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

# Interface ChargeService

    public interface ChargeService

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `int` | `chargeDelete​(int chargeId)` | Удаление расхода договора.
  `int` | `chargeDelete​(int contractId, int chargeId)` | Удаление расхода договора.
  `Charge` | `chargeGet​(int chargeId)` | Получение расхода договора по его ид.
  `java.util.List<Charge>` | `chargeList​(int contractId, int type, Period period, int members, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum)` | Получает список расходов для договора
  `int` | `chargeTypeDelete​(int chargeTypeId)` | Удаление типа расход/возврат.
  `ChargeType` | `chargeTypeGet​(int chargeTypeId)` | Получение типа расхода. На прямую лучше не использовать, берите через справочник.
  `java.util.List<ChargeType>` | `chargeTypeList​(java.lang.Integer editable, java.lang.Integer type, java.lang.Boolean isPayback)` | Получение списка типов расхода. Если нужны все, на прямую лучше не использовать, берите через справочник.
  `void` | `chargeTypeMove​(int chargeTypeId, java.util.List<java.lang.Integer> idList)` | Один из способов редактирования типа расход, если необходимо изменить положение типов расхода в дереве.
  `PaymentTypeItem` | `chargeTypeTree​(int editable, boolean isPayback, boolean showEmptyRoot)` | Получение дерева типов.
  `int` | `chargeTypeUpdate​(ChargeType chargeType)` | Обновление или создание типа расход/возврат
  `int` | `chargeUpdate​(Charge charge)` | Создание или обновление расхода.
  `java.util.List<Charge>` | `paybackList​(int contractId, int paybackTypeId, Period period, int members, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum)` | Получает список возвратов для договора

- ## Method Details

  - ### chargeGet

    Charge chargeGet​(int chargeId) throws ru.bitel.bgbilling.common.BGException
    Получение расхода договора по его ид.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeList

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

  - ### chargeDelete

    @RequestWrapper(className="ru.bitel.bgbilling.kernel.contract.balance.common.jaxws.ChargeDeleteByIdRequest") @ResponseWrapper(className="ru.bitel.bgbilling.kernel.contract.balance.common.jaxws.ChargeDeleteByIdResponse") int chargeDelete​(int chargeId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Удаление расхода договора.
    Parameters:
      `chargeId` -
    Returns:
      - кол-во удаленных строк
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### chargeDelete

    int chargeDelete​(int contractId, int chargeId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Удаление расхода договора.
    Parameters:
      `chargeId` -
    Returns:
      - кол-во удаленных строк
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### chargeUpdate

    int chargeUpdate​(Charge charge) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Создание или обновление расхода.
    Parameters:
      `charge` - - bean расхода.
    Returns:
      ид созданного/обнавленного расхода.
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### paybackList

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

  - ### chargeTypeGet

    ChargeType chargeTypeGet​(int chargeTypeId) throws ru.bitel.bgbilling.common.BGException
    Получение типа расхода.
    На прямую лучше не использовать, берите через справочник.
    Parameters:
      `chargeTypeId` - - ид типа расхода.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeTypeList

    java.util.List<ChargeType> chargeTypeList​(java.lang.Integer editable, java.lang.Integer type, java.lang.Boolean isPayback) throws ru.bitel.bgbilling.common.BGException
    Получение списка типов расхода.
    Если нужны все, на прямую лучше не использовать, берите через справочник.
    Parameters:
      `editable` - если = 0 - только редактируемые, = 1 - не редактируемые, null или меньше 0 - все.
      `type` - - 0 - элемент группы, 1 - группа, null или меньше 0 - все
      `isPayback` - - если true, то возврат , если false приход, если null - все. Если editable или type будут иметь другие значения, то результатом будет пустой список.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeTypeTree

    PaymentTypeItem chargeTypeTree​(int editable, boolean isPayback, boolean showEmptyRoot) throws ru.bitel.bgbilling.common.BGException
    Получение дерева типов.
    Parameters:
      `editable` - - 0 - редактируемые, 1 - не редактируемые, меньше 0 - все.
      `isPayback` - - если true то только возвраты, false - расходы
      `showEmptyRoot` - - показывать ли пустые элементы группы.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeTypeMove

    void chargeTypeMove​(int chargeTypeId, java.util.List<java.lang.Integer> idList) throws ru.bitel.bgbilling.common.BGException
    Один из способов редактирования типа расход, если необходимо изменить положение типов расхода в дереве.
    Parameters:
      `chargeTypeId` - - ид типа в который станет предком
      `idList` - - список ид которые будут перемещены.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeTypeUpdate

    int chargeTypeUpdate​(ChargeType chargeType) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Обновление или создание типа расход/возврат
    Parameters:
      `chargeTypeId` -
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGMessageException` - - если передаваемый тип == null, или его поля неворно заполнены.
      `ru.bitel.bgbilling.common.BGException`

  - ### chargeTypeDelete

    int chargeTypeDelete​(int chargeTypeId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Удаление типа расход/возврат.
    Parameters:
      `chargeTypeId` - - код удаляемого расхода.
    Returns:
      - число удаленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGMessageException` - - в случае, если удаление невозможно в связи с нарушением ссылочной целостности.
      `ru.bitel.bgbilling.common.BGException`