java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.common.dao.AbstarctDaoConstant
ru.bitel.bgbilling.kernel.contract.balance.server.bean.BalanceDao
All Implemented Interfaces:
AutoCloseable

public class BalanceDao extends ru.bitel.common.dao.AbstarctDaoConstant implements 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)
     
    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
    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 contractId, int yy, int mm, int serviceId, BigDecimal summa)
    Установка суммы наработки за услугу

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

    getSQLOrder, sqlLimit

    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

  • Method Details

    • addContractAccount

      public void addContractAccount(int contractId, int yy, int mm, int serviceId, BigDecimal account) throws SQLException
      Throws:
      SQLException
    • 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 contractId, int yy, int mm, int serviceId, BigDecimal summa) throws SQLException
      Установка суммы наработки за услугу
      Parameters:
      contractId - - код договора
      serviceId - - код услуги
      summa - - сумма
      time - - месяц
      Throws:
      SQLException
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • 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 - - код договора
      sids - - коды услуг
      time - - месяц
      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