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

# Interface PaymentService

    public interface PaymentService

Сервайс для приходов и типов приходов. Все операции над типом приход(PaymentType), настоятельно рекомендую совершать через справочники, такие как обновление(создание), удаление, получение элемента и получение списка всех типов.
Например так: getContext().getDirectory( PaymentType.class ).update/delete/list

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `int` | `paymentDelete​(int contractId, int paymentId)` | Удаление прихода договора.
  `Payment` | `paymentGet​(int paymentId)` | Получение прихода
  `java.util.List<Payment>` | `paymentList​(int contractId, Period period, int members, javax.xml.ws.Holder<java.math.BigDecimal> holderTotalSum)` | Возвращает список платежей за период для договора отсортированный по дате
  `int` | `paymentTypeDelete​(int paymentTypeId)` | Удаление типа прихода.
  `PaymentType` | `paymentTypeGet​(int paymentTypeId)` | Метод в первую очередь для directory, соответсвенно если нужет paymentType, то вытаскиваем его через directory, а не от сюда.
  `java.util.List<PaymentType>` | `paymentTypeList​(java.lang.Integer editable, java.lang.Integer type)` | Получение списка типов прихода.
  `void` | `paymentTypeMove​(int paymentTypeId, java.util.List<java.lang.Integer> idList)` | Один из способов редактирования типа приход, если необходимо изменить положение типов приход в дереве.
  `PaymentTypeItem` | `paymentTypeTree​(int editable, boolean showEmptyRoot)` |
  `int` | `paymentTypeUpdate​(PaymentType paymentType)` | Обновление или создание типа приход.
  `java.util.List<java.lang.Integer>` | `paymentUpdate​(Payment payment, java.lang.String distribution)` | Обновление или создание прихода.

- ## Method Details

  - ### paymentGet

    Payment paymentGet​(int paymentId) throws ru.bitel.bgbilling.common.BGException
    Получение прихода
    Parameters:
      `paymentId` - - ид прихода.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### paymentList

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

  - ### paymentDelete

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

  - ### paymentUpdate

    java.util.List<java.lang.Integer> paymentUpdate​(Payment payment, java.lang.String distribution) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Обновление или создание прихода.
    Parameters:
      `payment` - - bean в котором все данные и должны лежать.
      `distribution` - - при создании, если != null, распределяет сумму прихода между указанными договорами.( форамат: cid : sum,..... )
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### paymentTypeGet

    PaymentType paymentTypeGet​(int paymentTypeId) throws ru.bitel.bgbilling.common.BGException
    Метод в первую очередь для directory, соответсвенно если нужет paymentType, то вытаскиваем его через directory, а не от сюда.
    Parameters:
      `paymentTypeId` - - ид типа платежа.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### paymentTypeList

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

  - ### paymentTypeTree

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

  - ### paymentTypeUpdate

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

  - ### paymentTypeDelete

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

  - ### paymentTypeMove

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