bitel.billing.server.contract.bean

## Class BalanceUtils

- java.lang.Object
- - bitel.billing.server.contract.bean.BalanceUtils

- All Implemented Interfaces:
    java.lang.AutoCloseable

      public class BalanceUtils
      extends java.lang.Object
      implements java.lang.AutoCloseable

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BalanceUtils(java.sql.Connection con)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addBalanceAccount(Contract contract, java.util.Calendar time, float summa)` Приращение наработки в таблице баланса.
    `void` | `addContractAccount(int cid, java.util.Calendar time, int sid, float add)` Deprecated. использовать addContractAccount( int cid, Date time, int sid, float add )
    `void` | `addContractAccount(int cid, java.util.Date time, int sid, float add)` Приращение наработки за услугу
    `void` | `close()`
    `java.math.BigDecimal` | `getAccountSumma(Contract contract, java.util.Calendar month, java.lang.String sids)` Deprecated. использовать `getAccountSumma(int, Calendar, String)`
    `java.math.BigDecimal` | `getAccountSumma(int contractId, java.util.Calendar month, java.lang.String sids)` Получить наработку договора за указанный месяц по указанному перечню услуг.
    `java.math.BigDecimal` | `getBalance(java.util.Date time, Contract contract)` Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
    `java.math.BigDecimal` | `getBalance(java.util.Date time, Contract contract)`
    `java.math.BigDecimal` | `getBalance(java.util.Date time, int cid)` Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
    `java.math.BigDecimal` | `getBalanceSumma1(java.util.Date time, int cid)` Входящий остаток на начало месяца ВАЖНО!
    `java.util.Date` | `getLastBalanceMonth(Contract contract)` возращает самый старший месяц, за который есть данные по Балансу
    `float` | `getSaldo(java.util.Calendar time, int cid)` Deprecated. использовать `getSaldo(Date, int)`
    `java.math.BigDecimal` | `getSaldo(java.util.Date time, int cid)` Сальдо - входящий остаток на начало месяца.
    `void` | `recalculateBalance(int cid, java.util.Date dateFrom)` Пересчет баланса договора c даты
    `void` | `setAccount(java.sql.Connection con, org.apache.log4j.Logger logger, java.util.Calendar month, ServiceCostCache costCache, java.lang.String sids, java.lang.String cids, long groups)` Массовая установка наработки после какого-либо переобсчета.
    `void` | `setBalanceFromAccount(Contract contract, java.util.Calendar time)` Установка наработки в балансе как суммы наработок из contract_account
    `void` | `setBalanceFromAccount(int cid, java.util.Calendar time)` Установка баланса договора за какой-либо месяц.
    `void` | `setBalanceFromAccount(int cid, java.util.Calendar time, boolean lowPrior)` Deprecated.
    `void` | `setContractAccount(int cid, java.util.Date time, int sid, float summa)` Установка суммы наработки за услугу
    `void` | `transitBalanceToCurdate1(int cid, java.util.Calendar time)` Deprecated.
    `void` | `updateBalance(java.util.Calendar date, int cid)` Deprecated.
    `void` | `updateBalance(java.util.Date date, Contract contract)` Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.
    `void` | `updateBalance(java.util.Date date, int cid)` Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.
    `boolean` | `wasMoveByAccount(java.util.Calendar time, int cid)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BalanceUtils

          public BalanceUtils(java.sql.Connection con)

  - ### Method Detail

    - #### getSaldo

          @Deprecated
          public float getSaldo(java.util.Calendar time,
                                            int cid)

      Deprecated. использовать `getSaldo(Date, int)`

    - #### getSaldo

          public java.math.BigDecimal getSaldo(java.util.Date time,
                                               int cid)

      Сальдо - входящий остаток на начало месяца.
      ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.
      Parameters:
        `time` - месяц
        `cid` - код договора
      Returns:

    - #### getBalance

          public java.math.BigDecimal getBalance(java.util.Date time,
                                                 int cid)

      Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
      Parameters:
        `time` - месяц
        `cid` - код договора
      Returns:

    - #### getBalance

          public java.math.BigDecimal getBalance(java.util.Date time,
                                                 Contract contract)

      Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
      ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.
      Parameters:
        `time` - месяц
        `contract` - объект договора
      Returns:

    - #### getBalance

          public java.math.BigDecimal getBalance(java.util.Date time,
                                                 Contract contract)

    - #### getBalanceSumma1

          public java.math.BigDecimal getBalanceSumma1(java.util.Date time,
                                                       int cid)

      Входящий остаток на начало месяца ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.
      Parameters:
        `time` - - месяц на который требуется входящий остаток
        `cid` - - код договора
      Returns:
        входящий остаток на начала месяца

    - #### setContractAccount

          public void setContractAccount(int cid,
                                         java.util.Date time,
                                         int sid,
                                         float summa)

      Установка суммы наработки за услугу
      Parameters:
        `cid` - - код договора
        `time` - - месяц
        `sid` - - код услуги
        `summa` - - сумма

    - #### addContractAccount

          @Deprecated
          public void addContractAccount(int cid,
                                                     java.util.Calendar time,
                                                     int sid,
                                                     float add)

      Deprecated. использовать addContractAccount( int cid, Date time, int sid, float add )
      Parameters:
        `cid` -
        `time` -
        `sid` -
        `add` -

    - #### addContractAccount

          public void addContractAccount(int cid,
                                         java.util.Date time,
                                         int sid,
                                         float add)

      Приращение наработки за услугу
      Parameters:
        `cid` - - код договора
        `time` - - месяц
        `sid` - - код услуги
        `add` - - сумма приращения

    - #### addBalanceAccount

          public void addBalanceAccount(Contract contract,
                                        java.util.Calendar time,
                                        float summa)

      Приращение наработки в таблице баланса.
      Parameters:
        `contract` - - объект договора
        `time` - - месяц
        `summa` - - сумма приращения

    - #### transitBalanceToCurdate1

          @Deprecated
          public void transitBalanceToCurdate1(int cid,
                                                           java.util.Calendar time)

      Deprecated.
      Перенос остатков для договора с указанного месяца до текущего
      Parameters:
        `cid` - - код договора
        `time` - - месяц

    - #### wasMoveByAccount

          public boolean wasMoveByAccount(java.util.Calendar time,
                                          int cid)

      Parameters:
        `time` - Calendar
        `cid` - int
      Returns:
        boolean - было ли движение по счету в указанный месяц

    - #### updateBalance

          @Deprecated
          public void updateBalance(java.util.Calendar date,
                                                int cid)
                                         throws ru.bitel.bgbilling.common.BGException

      Deprecated.
      Установка баланса за месяц на основании приходов/расходов и наработки.
      Parameters:
        `date` -
        `cid` -
      Throws:
        `ru.bitel.bgbilling.common.BGException`
      See Also:
        `updateBalance(Date, int)`

    - #### updateBalance

          public void updateBalance(java.util.Date date,
                                    int cid)
                             throws ru.bitel.bgbilling.common.BGException

      Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы. Если такого договора нет, то просто выйдет из метода.
      Parameters:
        `date` - - месяц
        `cid` - - код договора
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateBalance

          public void updateBalance(java.util.Date date,
                                    Contract contract)
                             throws ru.bitel.bgbilling.common.BGException

      Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.
      Parameters:
        `date` - - месяц
        `contract` - - объект договора
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### recalculateBalance

          public void recalculateBalance(int cid,
                                         java.util.Date dateFrom)

      Пересчет баланса договора c даты
      Parameters:
        `cid` -
        `dateFrom` -

    - #### setBalanceFromAccount

          public void setBalanceFromAccount(int cid,
                                            java.util.Calendar time)

      Установка баланса договора за какой-либо месяц.
      Parameters:
        `cid` - - код договора
        `time` - - месяц

    - #### setBalanceFromAccount

          @Deprecated
          public void setBalanceFromAccount(int cid,
                                                        java.util.Calendar time,
                                                        boolean lowPrior)

      Deprecated.
      Установка баланса договора за какой-либо месяц, заменен на `setBalanceFromAccount(int, Calendar)`
      Parameters:
        `cid` - - код договора
        `time` - - месяц
        `lowPrior` - - параметр не используется

    - #### setBalanceFromAccount

          public void setBalanceFromAccount(Contract contract,
                                            java.util.Calendar time)

      Установка наработки в балансе как суммы наработок из contract_account
      Parameters:
        `contract` - - объект договора
        `time` - - месяц

    - #### setAccount

          public void setAccount(java.sql.Connection con,
                                 org.apache.log4j.Logger logger,
                                 java.util.Calendar month,
                                 ServiceCostCache costCache,
                                 java.lang.String sids,
                                 java.lang.String cids,
                                 long groups)
                          throws java.sql.SQLException

      Массовая установка наработки после какого-либо переобсчета.
      Parameters:
        `con` -
        `month` - - месяц, для которого устанавливается наработка
        `sids` - - коды услуг через запятую
        `cids` - - коды договоров через запятую, либо null, если для всех договоров
        `groups` - - битовая маска групп договоров
      Throws:
        `java.sql.SQLException`

    - #### getLastBalanceMonth

          public java.util.Date getLastBalanceMonth(Contract contract)

      возращает самый старший месяц, за который есть данные по Балансу

    - #### getAccountSumma

          public java.math.BigDecimal getAccountSumma(int contractId,
                                                      java.util.Calendar month,
                                                      java.lang.String sids)
                                               throws ru.bitel.bgbilling.common.BGException

      Получить наработку договора за указанный месяц по указанному перечню услуг. Для супердоговора выдаётся наработка его и всех зависимых субов.
      Parameters:
        `contractId` - - код договора.
        `month` - - месяц.
        `sids` - - услуги через запятые.
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAccountSumma

          @Deprecated
          public java.math.BigDecimal getAccountSumma(Contract contract,
                                                                  java.util.Calendar month,
                                                                  java.lang.String sids)
                                                           throws ru.bitel.bgbilling.common.BGException

      Deprecated. использовать `getAccountSumma(int, Calendar, String)`
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### close

          public void close()

      Specified by:
        `close` in interface `java.lang.AutoCloseable`