Package ru.bitel.bgbilling.modules.tv.server.runtime

# Class TvTarifficationManager

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.modules.tv.server.runtime.TvTarifficationManager

public class TvTarifficationManager extends ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `TvTarifficationManager.AccountDelta`
  `static final class`
  `TvTarifficationManager.CalculateResult`
  `static class`
  `TvTarifficationManager.MonthKey`
  `static class`
  `TvTarifficationManager.ProductAccountKey`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TvTarifficationManager(Setup setup, ConnectionSet connectionSet, int moduleId)`
  `TvTarifficationManager(Setup setup, ConnectionSet connectionSet, int moduleId, PoolEventPublisher<ContractBalanceChangedEvent> balanceEP)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `TvTarifficationManager.CalculateResult`
  `calculate(boolean detailAccount, boolean addAccount, ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffContext tariffContext, ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffWorkerContext workerContext, boolean activation, boolean period, ru.bitel.bgbilling.kernel.contract.runtime.ContractRuntime contractRuntime, int contractId, ContractTariffOptionList contractTariffOptions, TvAccountRuntimeRoot tvAccountRuntime, int accountId, List<ru.bitel.bgbilling.modules.tv.server.tariff.TvServiceCost> serviceCostList, ru.bitel.bgbilling.kernel.tariff.server.tree.TariffModuleTreeSet treeSet, Calendar tariffRequestTime, Date currentTime, BigDecimal balance, BigDecimal limit, boolean error, boolean recalculate, Date filterTimeFrom, Date filterTimeTo, ProductRejectCause reject)`
  Тарификация и начисление наработки, если денег хватает и ошибок нет.
  `ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest`
  `tarifficate(int contractId, TvAccountRuntime tvAccountRuntime, int accountId, List<ru.bitel.bgbilling.kernel.tariff.server.tree.TariffModuleTreeSet.Entry> treeList, List<ru.bitel.bgbilling.modules.tv.server.tariff.TvServiceCost> serviceCostList, Date date, Calendar calendar)`
  Тарификация предложений продуктов (чтобы показать цену до активации)
  `ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest`
  `tarifficate(int contractId, TvAccountRuntime tvAccountRuntime, Date date)`
  Тарификация текущих продуктов для выяснения опций.
  `ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest`
  `tarifficateOfferings(int contractId, int accountId, List<ProductOffering> productOfferingList, Date date)`
  Тарификация предложений продуктов (чтобы показать цену до активации)
  `ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest`
  `tarifficateOfferings(Connection con, int tariffPlanId, List<ProductOffering> productOfferingList, Date date)`

  ### 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

  - ### TvTarifficationManager

    public TvTarifficationManager(Setup setup, ConnectionSet connectionSet, int moduleId)

  - ### TvTarifficationManager

    public TvTarifficationManager(Setup setup, ConnectionSet connectionSet, int moduleId, PoolEventPublisher<ContractBalanceChangedEvent> balanceEP)

- ## Method Details

  - ### tarifficate

    public ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest tarifficate(int contractId, TvAccountRuntime tvAccountRuntime, Date date) throws Exception
    Тарификация текущих продуктов для выяснения опций.
    Parameters:
      `contractId` -
      `tvAccountRuntime` -
      `date` -
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `Exception`

  - ### tarifficate

    public ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest tarifficate(int contractId, TvAccountRuntime tvAccountRuntime, int accountId, List<ru.bitel.bgbilling.kernel.tariff.server.tree.TariffModuleTreeSet.Entry> treeList, List<ru.bitel.bgbilling.modules.tv.server.tariff.TvServiceCost> serviceCostList, Date date, Calendar calendar) throws Exception
    Тарификация предложений продуктов (чтобы показать цену до активации)
    Parameters:
      `contractId` -
      `accountId` -
      `date` -
    Throws:
      `Exception`

  - ### tarifficateOfferings

    public ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest tarifficateOfferings(int contractId, int accountId, List<ProductOffering> productOfferingList, Date date) throws Exception
    Тарификация предложений продуктов (чтобы показать цену до активации)
    Parameters:
      `contractId` -
      `accountId` -
      `productOfferingList` -
      `date` -
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `Exception`

  - ### tarifficateOfferings

    public ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffRequest tarifficateOfferings(Connection con, int tariffPlanId, List<ProductOffering> productOfferingList, Date date) throws Exception
    Throws:
      `Exception`

  - ### calculate

    public TvTarifficationManager.CalculateResult calculate(boolean detailAccount, boolean addAccount, ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffContext tariffContext, ru.bitel.bgbilling.modules.tv.server.tariff.TvTariffWorkerContext workerContext, boolean activation, boolean period, ru.bitel.bgbilling.kernel.contract.runtime.ContractRuntime contractRuntime, int contractId, ContractTariffOptionList contractTariffOptions, TvAccountRuntimeRoot tvAccountRuntime, int accountId, List<ru.bitel.bgbilling.modules.tv.server.tariff.TvServiceCost> serviceCostList, ru.bitel.bgbilling.kernel.tariff.server.tree.TariffModuleTreeSet treeSet, Calendar tariffRequestTime, Date currentTime, BigDecimal balance, BigDecimal limit, boolean error, boolean recalculate, Date filterTimeFrom, Date filterTimeTo, ProductRejectCause reject) throws Exception
    Тарификация и начисление наработки, если денег хватает и ошибок нет. Иначе флаг prolongation будет равен TvServiceCost.PROLONGATION_REJECTED.
    Parameters:
      `tariffContext` -
      `workerContext` -
      `activation` - обсчитываем активацию
      `period` - обсчитываем продление периода
      `contractRuntime` -
      `contractId` -
      `tvAccountRuntime` - - может быть null, если вызвано не из TvAccounting
      `accountId` -
      `serviceCostList` -
      `treeSet` -
      `currentTime` - текущее время
      `balance` -
      `limit` -
      `error` - нужно ли выдавать ошибку, если цена/услуга не найдена
      `filterTimeFrom` - время, с которого нужно продлевать
      `reject` - - если true, то нужно отклонить продление (например, статус договора закрыт)
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `Exception`