Package ru.bitel.bgbilling.kernel.contract.balance.common.service

# Interface BalanceService

    @MTOM(enabled=true)
    public interface BalanceService

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.util.List<BalanceDetailItem>` | `balanceDetailList​(int contractId, Period period, boolean available)` | Получнение списка для детализированного баланса, как с учетом резервов, так и нет.
  `java.util.List<ContractAccountDetail>` | `contractAccountDetailList​(int contractId, int serviceId, Period period, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum)` |
  `java.util.List<ContractAccount>` | `contractAccountList​(int contractId, Period period, int members, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum)` |
  `ContractBalance` | `contractBalanceGet​(int contractId, int year, int month)` | Возвращает баланс договора.
  `java.util.List<ContractBalance>` | `contractBalanceList​(int contractId, Period period)` | Возвратит список помесячных данных баланса(такие как приходы,расходы,наработки и входящий остаток).
  `java.util.List<java.lang.Integer>` | `contractBalanceTransfer​(int contractId, java.util.Date date, java.util.List<BalanceDistributeData> balanceDistributeDataList, boolean customer)` | Перераспределение средств с супердоговора на субдоговора.
  `void` | `getDataSource​(java.lang.String type, int mode, int cid, Period period, javax.xml.ws.Holder<javax.activation.DataHandler> data)` | Выгружаем информацию о балансе.
  `boolean` | `sendEmail​(java.lang.String email, java.lang.String type, int mode, int cid, Period period)` | Отправляет на почту информацию о балансе в зависимости от выбранного режима отображения.

- ## Method Details

  - ### balanceDetailList

    java.util.List<BalanceDetailItem> balanceDetailList​(int contractId, Period period, boolean available) throws ru.bitel.bgbilling.common.BGException
    Получнение списка для детализированного баланса, как с учетом резервов, так и нет. Метод максимально соответсвует старому акшену( ActionContractBalanceDetail );
    Parameters:
      `contractId` - - код договора.
      `period` - - период, шагом является месяц.
      `available` - если = true, то вернет с учетом резервов, то есть с учетом доступной суммы.
    Returns:
      список в хронологическом порядке(ну кроме нароботков) приходов, расходов, нароботков, резервов(если available=true) за период.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractBalanceList

    java.util.List<ContractBalance> contractBalanceList​(int contractId, Period period) throws ru.bitel.bgbilling.common.BGException
    Возвратит список помесячных данных баланса(такие как приходы,расходы,наработки и входящий остаток).
    Parameters:
      `cid` - - код договора.
      `period` - - за какой период.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractAccountList

    java.util.List<ContractAccount> contractAccountList​(int contractId, Period period, int members, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum) throws ru.bitel.bgbilling.common.BGException
    Parameters:
      `contractId` - - код договора.
      `period` - - период, если == null, то все наработки.Если какая нибудь из дат == null, то она принемается за текущую дату.
      `members` - - если == 1, то вернет только данного договора, если = 2 то вернет еще и зависемых субдоговоров, если = 3 то только зависемых субдоговоров.
      `holderTotalSum` - - возвращаемое поле, если != null, то сюда занесется общая сумма по всем выбранным позициям. Если вам не нужно это, ставте null.
    Returns:
      список наработок
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractAccountDetailList

    java.util.List<ContractAccountDetail> contractAccountDetailList​(int contractId, int serviceId, Period period, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum) throws ru.bitel.bgbilling.common.BGException
    Parameters:
      `contractId` - - код договора.
      `period` - - период, если == null, то все наработки.Если какая нибудь из дат == null, то она принемается за текущую дату.
      `holderTotalSum` - - возвращаемое поле, если != null, то сюда занесется общая сумма по всем выбранным позициям. Если вам не нужно это, ставте null.
    Returns:
      список наработок
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractBalanceGet

    ContractBalance contractBalanceGet​(int contractId, int year, int month) throws ru.bitel.bgbilling.common.BGException
    Возвращает баланс договора. Внимание! Метод возвращает баланс указанного договора, даже если он зависимый субдоговор!
    Вернет с учетом резервов, если запрашивается на текущий месяц( ну и если в конфиге включено влияние резервов на баланс).
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### sendEmail

    boolean sendEmail​(java.lang.String email, java.lang.String type, int mode, int cid, Period period) throws ru.bitel.bgbilling.common.BGException
    Отправляет на почту информацию о балансе в зависимости от выбранного режима отображения.
    Parameters:
      `email` - - адрес эл. почты
      `type` - - html/csv
      `mode` - - режим отображения баланса
      `cid` - - код договора
      `period` - - период за который необходимо отправить баланс
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getDataSource

    void getDataSource​(java.lang.String type, int mode, int cid, Period period, javax.xml.ws.Holder<javax.activation.DataHandler> data) throws ru.bitel.bgbilling.common.BGException
    Выгружаем информацию о балансе.
    Используется при печати и сохрании в файл из клиента.
    Parameters:
      `type` - - html/csv
      `mode` - - режим отображения баланса
      `cid` - - код договора
      `period` - - период за который необходимо отправить баланс
      `data` - - дата сурс
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractBalanceTransfer

    java.util.List<java.lang.Integer> contractBalanceTransfer​(int contractId, java.util.Date date, java.util.List<BalanceDistributeData> balanceDistributeDataList, boolean customer) throws ru.bitel.bgbilling.common.BGException
    Перераспределение средств с супердоговора на субдоговора.
    Parameters:
      `contractId` -
      `date` -
      `balanceDistributeDataList` -
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`