Режим дебетовых абонплат позволяет изменять статус дебетовых договоров в случае, если начисление им абонентской платы может привести к опусканию остатка меньше лимита. Режим применяется только к договорам с режимом Дебет. Режим включается в конфигурации экземпляра модуля следующим образом.
Блок кода | ||||
---|---|---|---|---|
| ||||
debet.npay.status.manage=1
#Код активного статуса договора
debet.npay.active.status=0
#Код заблокированного статуса договора
debet.npay.locked.status=3
#Коды групп, для которых применяется режим; через запятую
#debet.npay.status.manage.groups=
#Коды тарифных планов; через запятую.
#При указании параметра блокировка осуществляется только, если на дату блокировки в договоре стоит один из указанных тарифов
#debet.npay.status.manage.tariff.ids=
#Учитываемый в дебетовых абонплатах набор услуг (если не указан, считается, что после разблокировки будут начислены все услуги из полного набора)
#debet.npay.service.set=
#сумма на балансе, для которой возможна разблокировка
#debet.npay.unlock.balance.limit=0
#при открытии статуса супердоговора открывать статусы зависимых договоров
debet.npay.processDependentSub= |
Закрытие статусов договоров производится задачей планировщика Закрытие статуса NPay договоров по балансу, запуск которой должен осуществляться в начале суток до переобсчёта абонентских плат. В конфигурации задачи указывается:
Блок кода | ||||
---|---|---|---|---|
| ||||
mid=<mid> |
Где <mid> - код экземпляра модуля NPay.
Для каждого активного договора оценивается сумма начислений абонентских плат при тарификации до текущих суток. Оценивается уже начисленная договору наработка за абонентские платы. В случае, если уже начисленная наработка более или равна планируемой к начислению, не выполняется никаких действий. В случае, если планируемая к начислению наработка больше уже начисленной и её начисление приведёт к понижению баланса договора ниже лимита, то статус договора меняется на определённый в переменной конфигурации debet.npay.locked.status.
При подневном начислении абонентских плат до текущего дня блокировка будет производится с начала любых суток. При подневном начислении до конца месяца, либо помесячном режиме начисления блокировка возможна только в начале месяца перед первым начислением. Для супердоговоров оценивается их совместная наработка со всеми зависимыми субдоговорами.
Перевод договора в активный статус, указанный в переменной debet.npay.active.status, происходит по платежу тогда, когда остаток баланса позволяет открыть договор от текущей даты, начислить ему абонентскую плату и баланс при этом не должен опуститься ниже лимита. Минимально необходимая для открытия сумма платежа должна отображаться в дереве карточки договора напротив экземпляра модуля NPay.
...