ru.bitel.bgbilling.modules.mps.common.service

## Interface MPSService

-     public interface MPSService

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `checkContract(java.lang.String contract)` Метод проверяет наличие указанного договора в БД `MobiMoneyWSImpl`.
    `void` | `checkStatus(Transaction transaction)` Метод, принудительно проверяющий статус указанной транзакции.
    `boolean` | `checkTransaction(int contractId, java.lang.String transactionId)` Метод проверяет наличие у указанного договора платежа в указанный момент времени `MobiMoneyWSImpl`
    `java.lang.String[]` | `getMPSSystemList()` Возвращает список настроенных систем для модуля
    `Transaction` | `getTransaction(java.lang.String transactionId)` Получение одной единственной транзакции.
    `SearchResult<Transaction>` | `searchTransactions(int contractId, int systemId, java.lang.String status, Period period, Page page)` Cписок транзакций по договору
    `void` | `updateTransaction(Transaction transaction)` Метод, добавляющий/обновляющий транзакцию.

- - ### Method Detail

    - #### searchTransactions

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

      Cписок транзакций по договору
      Parameters:
        `contractId` - код договора
        `systemId` - код платежной системы
        `statusId` - статус транзакции
        `period` - период, за который искать транзакции
      Returns:
        отфильтрованный список транзакций
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getTransaction

          Transaction getTransaction(java.lang.String transactionId)
                              throws ru.bitel.bgbilling.common.BGException

      Получение одной единственной транзакции. Используется на серверной стороне, когда приходят запросы на обновление статуса и/или даты платежа.
      Parameters:
        `transactionId` - код транзакции на стороне сервера
      Returns:
        транзакция
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateTransaction

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

      Метод, добавляющий/обновляющий транзакцию. В случае, если у транзакции отсутствует идентификатор, то происходит добавление новой транзакции в БД, иначе в БД происходит обновление полей транзакции.
      Parameters:
        `transaction` - добавляемая/обновляемая транзакция
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### checkStatus

          void checkStatus(Transaction transaction)
                    throws ru.bitel.bgbilling.common.BGException

      Метод, принудительно проверяющий статус указанной транзакции. Происходит обращение к сервису и в случае, если статус изменился, то меняется статус в БД.
      Parameters:
        `transaction` -
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### checkContract

          int checkContract(java.lang.String contract)
                     throws ru.bitel.bgbilling.common.BGException

      Метод проверяет наличие указанного договора в БД `MobiMoneyWSImpl`.
      Parameters:
        `contract` -
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### checkTransaction

          boolean checkTransaction(int contractId,
                                   java.lang.String transactionId)
                            throws ru.bitel.bgbilling.common.BGException

      Метод проверяет наличие у указанного договора платежа в указанный момент времени `MobiMoneyWSImpl`
      Parameters:
        `contractId` - код договора
        `transactionId` - код транзакции
      Returns:
        если транзакция уже есть в БД, то возвращается она, иначе пустая транзакция
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getMPSSystemList

          java.lang.String[] getMPSSystemList()
                                       throws ru.bitel.bgbilling.common.BGException

      Возвращает список настроенных систем для модуля
      Returns:
        массив строк, где i элемент код системы, а i+1 элемент наименование системы
      Throws:
        `ru.bitel.bgbilling.common.BGException`