java.lang.Object
ru.bitel.common.dao.AbstarctDaoConstant
ru.bitel.bgbilling.kernel.contract.balance.server.bean.BalanceDao
All Implemented Interfaces:
AutoCloseable, ru.bitel.common.worker.Recyclable

public class BalanceDao extends ru.bitel.common.dao.AbstarctDaoConstant implements ru.bitel.common.worker.Recyclable, AutoCloseable
  • Field Summary

    Fields inherited from class ru.bitel.common.dao.AbstarctDaoConstant

    ERROR, fields, SQL_ALL, SQL_AND, SQL_CALC_FOUND_ROWS, SQL_DELETE, SQL_DISTINCT, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_JOIN, SQL_LEFT_JOIN, SQL_LIMIT, SQL_NOT_IN, SQL_ON, SQL_ON_DUPLICATE_KEY_UPDATE, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_VALUES, SQL_WHERE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    accountClear(int yy, int mm, List<Integer> contractIds, List<Integer> contractLabelIds, String sidList)
     
    void
    accountDetailClear(int yy, int mm, List<Integer> contractIds, List<Integer> contractLabelIds, String sidList)
     
    void
    addBalanceAccount(int contractId, int superContractId, int yy, int mm, BigDecimal account)
    Нужно вызывать только после того как добавили наработку в contract_account!
    void
    addContractAccount(int contractId, int yy, int mm, int serviceId, BigDecimal account)
     
    protected void
    addContractAccount2(int contractId, int yy, int mm, int serviceId, BigDecimal account)
     
    void
     
    void
    Удаление старых записей детализации (чистка таблицы) удаляются записи старше 365 дней (по умолчанию), может быть изменено параметром в конфиге contract.account.detail.remove.day=365
    void
     
    getBalance(int contractId, int yy, int mm)
    Отличается от BalanceUtils тем что нет проверки, является ли договор дочерним!
    void
    getContractAccountDetailList(SearchResult<ContractAccountDetail> searchResult, int contractId, int serviceId)
     
    getContractAccountList(int contractId, Period period, int members)
    Наработки договора, поддерживается за несколько месяцев, и апционально с субдоговоров.
    getContractBalance(int contractId, int yy, int mm)
    Возвращает баланс договора.
    getContractBalanceList(int contractId, Period period)
    Возвратит список помесячных данных баланса (такие как приходы, расходы, наработки и входящий остаток).
    void
     
    void
    removeContractAccount(int cid, int yy, int mm, String sids)
    Удаление наработки за услугу
    void
    removeContractAccount(int yy, int mm, Set<Integer> cids, String sids, long groupMask)
    Удаление наработки за услугу *
    void
    removeContractAccountDetail(int contractId, int year, int month, Set<Integer> serviceIds)
    Удаление детализации наработки за услуги
    setBalanceAccount(int contractId, int superContractId, int yy, int mm)
    Установка наработки (summa3) в contract_balance из суммы contract_account.
    void
    setContractAccount(int cid, int yy, int mm, int serviceId, BigDecimal summa)
    Установка суммы наработки за услугу

    Methods inherited from class ru.bitel.common.dao.AbstarctDaoConstant

    getLogger, getSQLOrder

    Methods inherited from class java.lang.Object

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

  • Method Details

    • addContractAccount

      public void addContractAccount(int contractId, int yy, int mm, int serviceId, BigDecimal account) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • addContractAccount2

      protected void addContractAccount2(int contractId, int yy, int mm, int serviceId, BigDecimal account) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • addBalanceAccount

      public void addBalanceAccount(int contractId, int superContractId, int yy, int mm, BigDecimal account) throws ru.bitel.bgbilling.common.BGException
      Нужно вызывать только после того как добавили наработку в contract_account!
      Parameters:
      contractId - - id договора
      superContractId - - id супердоговора, если это субдоговор с зависимым балансом
      yy -
      mm -
      account -
      Throws:
      ru.bitel.bgbilling.common.BGException
    • setBalanceAccount

      public BigDecimal setBalanceAccount(int contractId, int superContractId, int yy, int mm) throws ru.bitel.bgbilling.common.BGException
      Установка наработки (summa3) в contract_balance из суммы contract_account.
      Parameters:
      contractId - - id договора
      superContractId - - id супердоговора, если это субдоговор с зависимым балансом
      yy -
      mm -
      Returns:
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getContractBalance

      public ContractBalance getContractBalance(int contractId, int yy, int mm) throws ru.bitel.bgbilling.common.BGException
      Возвращает баланс договора. Внимание! Метод возвращает баланс указанного договора, даже если он зависимый субдоговор!
      Вернет с учетом резервов, если запрашивается на текущий месяц( ну и если в конфиге включено влияние резервов на баланс).
      Parameters:
      contractId -
      yy -
      mm -
      Returns:
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getContractBalanceList

      public List<ContractBalance> getContractBalanceList(int contractId, Period period)
      Возвратит список помесячных данных баланса (такие как приходы, расходы, наработки и входящий остаток).
      Parameters:
      contractId - - код договора.
      period - - за какой период.
    • getBalance

      public BigDecimal getBalance(int contractId, int yy, int mm) throws ru.bitel.bgbilling.common.BGException
      Отличается от BalanceUtils тем что нет проверки, является ли договор дочерним! Это должно происходить выше. Вернет с учетом резервов, если запрашивается на текущий месяц( ну и если в конфиге включено влияние резервов на баланс).
      Parameters:
      contractId -
      yy -
      mm -
      Returns:
      Throws:
      ru.bitel.bgbilling.common.BGException
    • setContractAccount

      public void setContractAccount(int cid, int yy, int mm, int serviceId, BigDecimal summa) throws SQLException
      Установка суммы наработки за услугу
      Parameters:
      cid - - код договора
      time - - месяц
      serviceId - - код услуги
      summa - - сумма
      Throws:
      SQLException
    • recycle

      public void recycle()
      Specified by:
      recycle in interface ru.bitel.common.worker.Recyclable
    • close

      public void close() throws ru.bitel.bgbilling.common.BGException
      Specified by:
      close in interface AutoCloseable
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getContractAccountList

      public SearchResult<ContractAccount> getContractAccountList(int contractId, Period period, int members) throws ru.bitel.bgbilling.common.BGException
      Наработки договора, поддерживается за несколько месяцев, и апционально с субдоговоров.
      Parameters:
      contractId - - код договора.
      period - - период, если == null, то все наработки. Если какая нибудь из дат == null, то она принимается за текущую дату.
      members - - если == 1, то вернет только данного договора, если = 2 то вернет еще и зависимых субдоговоров, если = 3 то только зависимых субдоговоров.
      Returns:
      список наработок
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getContractAccountDetailList

      public void getContractAccountDetailList(SearchResult<ContractAccountDetail> searchResult, int contractId, int serviceId) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • addContractAccountDetail

      public void addContractAccountDetail(List<ContractAccountDetail> accountDetails) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • removeContractAccountDetail

      public void removeContractAccountDetail(int contractId, int year, int month, Set<Integer> serviceIds) throws SQLException
      Удаление детализации наработки за услуги
      Parameters:
      contractId - - код договора
      period - - период начала и конца месяца
      serviceId - - код услуги
      Throws:
      SQLException
    • cleanContractAccountDetail

      public void cleanContractAccountDetail() throws ru.bitel.bgbilling.common.BGException
      Удаление старых записей детализации (чистка таблицы) удаляются записи старше 365 дней (по умолчанию), может быть изменено параметром в конфиге contract.account.detail.remove.day=365
      Throws:
      ru.bitel.bgbilling.common.BGException
    • removeContractAccount

      public void removeContractAccount(int cid, int yy, int mm, String sids) throws SQLException
      Удаление наработки за услугу
      Parameters:
      cid - - код договора
      time - - месяц
      sids - - коды услуг
      Throws:
      SQLException
    • removeContractAccount

      public void removeContractAccount(int yy, int mm, Set<Integer> cids, String sids, long groupMask) throws ru.bitel.bgbilling.common.BGException
      Удаление наработки за услугу *
      Parameters:
      yy - - год
      yy - - месяц
      serviceId - - код услуги
      summa - - сумма
      Throws:
      SQLException
      ru.bitel.bgbilling.common.BGException
    • accountClear

      public void accountClear(int yy, int mm, List<Integer> contractIds, List<Integer> contractLabelIds, String sidList) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • accountDetailClear

      public void accountDetailClear(int yy, int mm, List<Integer> contractIds, List<Integer> contractLabelIds, String sidList) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException