Модуль абонплат может производить начисление в зависимости от денежной наработки за услуги других модулей. Все используемые при тарификации денежные наработки должны быть описаны в конфигурации экземпляра модуля абонплат следующим образом.
module.account.<id>.title=<title> module.account.<id>.mid=<mid> module.account.<id>.class=<class_name> #module.account.<id>.sids=<sids>
Где:
- уникальный числовой идентификатор денежной наработки, нумерация должна быть последовательной и непреревной, число не должно меняться впоследствии, при изменении нумерации необходима правка всех тарифов, где используются данные денежные наработки; |
- название денежной наработки; |
- код экземпляра модуля, в котором рассчитывается объём, 0 для класса KernelAccount; |
- класс, рассчитывающий объём; |
- коды услуг через запятую (необязательный параметр). |
В данный момент поддерживаются следующие классы, которые могут быть указаны в
для расчёта денежной наработки:bitel.billing.server.npay.bean.DialUpModuleAccount - денежная наработка в экземпляре модуля DialUp; |
bitel.billing.server.npay.bean.PhoneModuleAccount - денежная наработка в экземпляре модуля Phone; |
ru.bitel.bgbilling.modules.inet.npay.InetModuleAccount - денежная наработка в экземпляре модуля Inet; |
bitel.billing.server.npay.bean.KernelAccount - денежная наработка в ядре, возможен расчёт только целиком за месяц. |
bitel.billing.server.npay.bean.VoipModuleAccount - денежная наработка в экземпляре модуля Voiceip; |
Указанную в конфигурации денежную наработку использовать в узле тарифного плана типа алгоритм) за исключением случая использования класса KernelAccount, который может вычислить только сумму за весь месяц, зато подходит для вычисления наработки любого модуля.
. Данный узел может быть размещён только в узле типа , денежная наработка будет вычисляться за рассчитываемый период (период сочетания, см.Рассмотрим пример конфигурации экземпляра модуля абонплат для начисления несколько типов абонплат и использующую при начислении значения денежной наработки экземпляра модуля DialUp с кодом 21.
module.account.1.title=Наработка в DialUp module.account.1.mid=21 module.account.1.class=bitel.billing.server.npay.bean.DialUpModuleAccount module.account.1.sids=<если нужно, уточнение услуг модуля> # module.account.1.title=Наработка в модуле Inet module.account.1.mid=179 module.account.1.class=ru.bitel.bgbilling.modules.inet.npay.InetModuleAccount
Приведённая выше конфигурация используется в следующих примерах тарифов:
Тариф начисляет дополнительную наработку в случае, если клиент недостаточно наработал по услугам DialUP модуля.
В данном случае
- это название услуги модуля абонплаты. Пропорциональный периоду режим обозначает, что 600 будет преобразовано в 300, если клиент подключён в середине месяца и период абонплаты в услугах договора также будет открыт серединой месяца. При этом наработка DialUP модуля также анализируется за этот период. Возможен и безусловный режим снятия, когда "доводимая" сумма не изменяется в зависимости от периода действия абонплаты. Режим оценивает сумму снятия при безусловном и пропорциональном режимах и выбирает максимальную из них.Тариф начисляет клиенту абонплату в 100 рублей в том случае, если его наработка DialUP была менее 400 рублей и 60 рублей в противном случае. Абонплата называется
.