ru.bitel.bgbilling.modules.pscb.common.service

## Interface PSCBService

-     public interface PSCBService

  Веб-сервис модуля PSCB, выполняющий запросы из клиента, веба и сервлета pscbexecuter по получению как отдельно взятого платежа, так и списка платежей с фильтрацией по периоду, договору, статусу, а также позволяющий добавлять и изменять платежи, уведомления о которых приходят на pscbexecuter
  Author:
    reflexive

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `deleteTransaction(int transactionId)` Удаление платежа по его коду.
    `Transaction` | `getTransaction(int transactionId)` Получение одного платежа по его коду.
    `void` | `refundTransaction(int transactionId)` Возврат платежа.
    `SearchResult<Transaction>` | `searchTransactions(int contractId, java.lang.String contractTitle, java.lang.String status, Period period, Page page, java.lang.String[] sort)` Получение списка платежей, разбитого на страницы определенного размера (номер и размер страницы задаются в клиенте), с фильтрацией по коду и названию договора, периоду и статусу платежей.
    `void` | `updateTransaction(Transaction payment)` Добавление/изменение платежа.

- - ### Method Detail

    - #### searchTransactions

          SearchResult<Transaction> searchTransactions(int contractId,
                                                       java.lang.String contractTitle,
                                                       java.lang.String status,
                                                       Period period,
                                                       Page page,
                                                       java.lang.String[] sort)
                                                throws ru.bitel.bgbilling.common.BGException

      Получение списка платежей, разбитого на страницы определенного размера (номер и размер страницы задаются в клиенте), с фильтрацией по коду и названию договора, периоду и статусу платежей.
      Parameters:
        `contractId` - код договора
        `contractTitle` - название договора. Может быть не полным. В таком случае метод находит все платежи, имеющие совпадение с введенным текстом.
        `status` - статус договора. Возможные значения см. в `TransactionStatus`
        `period` - период, за который выводятся платежи
        `page` - номер и размер страницы.
      Returns:
        отфильтрованный список платежей
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getTransaction

          Transaction getTransaction(int transactionId)
                              throws ru.bitel.bgbilling.common.BGException

      Получение одного платежа по его коду.
      Parameters:
        `paymentId` - код платежа
      Returns:
        объект платежа
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateTransaction

          void updateTransaction(Transaction payment)
                          throws ru.bitel.bgbilling.common.BGException

      Добавление/изменение платежа. В случае, если код платежа <=0, то происходит добавление платежа, в противном случае - изменение (например, изменение даты совершения платежа или статуса)
      Parameters:
        `payment` - объект платежа
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteTransaction

          void deleteTransaction(int transactionId)
                          throws ru.bitel.bgbilling.common.BGException

      Удаление платежа по его коду.
      Parameters:
        `paymentId` - код платежа
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### refundTransaction

          void refundTransaction(int transactionId)
                          throws ru.bitel.bgbilling.common.BGException

      Возврат платежа. В данный момент не реализовано.
      Parameters:
        `paymentId` - код возвращаемого платежа
      Throws:
        `ru.bitel.bgbilling.common.BGException`