Class NpayFutureAccrualTask

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.kernel.task.server.TaskBase
ru.bitel.bgbilling.modules.npay.server.task.NpayFutureAccrualTask

public class NpayFutureAccrualTask extends ru.bitel.bgbilling.kernel.task.server.TaskBase
Задача планировщика: расчет прогноза доначисления за текущий месяц для договоров модуля NPay (contract_account_future) и отметка успешного расчета в журнале (contract_module_calc_log).

По каждому договору: plan — план месяца прогоном Calculator в режиме предрасчета (Calculator.setPreCalc(int), без записи в БД; Calculator.setActiveFromDate(Calendar) — null, статусы учитываются как есть, как в задаче закрытия статусов по балансу); accr — наработка месяца из contract_account по услугам модуля; положительная дельта future = plan - accr записывается в прогноз.

Точная разбивка дельты по узлам тарифного дерева (параметр calcType: подневной режим — future_day, остальные — future_month) в этой версии не выполняется: вся дельта относится к месячному горизонту (future_day — ноль). Сумма обеих колонок при этом остается равной plan - accr, а потребитель (блокировщик) складывает обе колонки, поэтому значение прогноза не искажается.

Параметры задачи (task params):

  • mid — код модуля (обязательный, проверяется в initTask()).
  • service.set — код набора услуг для расчета (по умолчанию 0, то есть полный набор услуг модуля). Должен совпадать со значением настройки debet.npay.{1}.service.set блокировщика статусов: иначе план считается по другому набору услуг, чем начисляется, и дельта получится неверной.

Ограничение: прогноз в таблице адресуется парой (договор, модуль), то есть он один на модуль. Если в модуле несколько конфигураций дебета с разными наборами услуг, обслужить их одним прогнозом нельзя - он будет соответствовать только одному из наборов.

  • Field Summary

    Fields inherited from class ru.bitel.bgbilling.kernel.task.server.TaskBase

    defaultDescription, error, moduleId, setup, taskId, taskSetup
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     
     
    protected boolean
     
     

    Methods inherited from class ru.bitel.bgbilling.kernel.task.server.TaskBase

    getError, getFinishTime, getModuleId, getOperatingTime, getPriority, getStartTime, getTaskSetup, getTaskStatus, getWorkingTime, initModuleId, initTask, putMyselfIntoTable, removeMyselfFromTable, run, runLocal, setExecutingTime, setModuleId, setPriority, startTask, to

    Methods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

    error, error, error, getLogger, logError, logError, warn

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NpayFutureAccrualTask

      public NpayFutureAccrualTask()
  • Method Details

    • initTask

      protected boolean initTask()
      Specified by:
      initTask in class ru.bitel.bgbilling.kernel.task.server.TaskBase
    • executeTask

      protected void executeTask()
      Specified by:
      executeTask in class ru.bitel.bgbilling.kernel.task.server.TaskBase
    • getDescription

      public String getDescription()
      Specified by:
      getDescription in class ru.bitel.bgbilling.kernel.task.server.TaskBase
    • taskParameters

      public List<TaskParameter> taskParameters()
      Overrides:
      taskParameters in class ru.bitel.bgbilling.kernel.task.server.TaskBase