ru.bitel.bgbilling.modules.rurupay.server.bean

## Class TransactionManager

- java.lang.Object
- - ru.bitel.common.dao.AbstarctDaoConstant
  - - ru.bitel.common.dao.AbstractDao<B>
    - - ru.bitel.common.dao.AbstractIdDao<Transaction>
      - - ru.bitel.bgbilling.modules.rurupay.server.bean.TransactionManager

- All Implemented Interfaces:
    java.lang.AutoCloseable

      public class TransactionManager
      extends ru.bitel.common.dao.AbstractIdDao<Transaction>

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class ru.bitel.common.dao.AbstractDao

      `ru.bitel.common.dao.AbstractDao.ResultSetIterator`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `DEFAULT_PAYMENT_COMMENT`
    `java.util.Map<java.lang.String,java.lang.String>` | `fields`

    - ### Fields inherited from class ru.bitel.common.dao.AbstractDao

      `cacheFilter, cacheJoin, cacheOrderBy, cachePaged, cachePS, cacheWhat, con, getByIdPS, mid, moduleId, orderByPattern, tableName`

    - ### Fields inherited from class ru.bitel.common.dao.AbstarctDaoConstant

      `ERROR, SQL_CALC_FOUND_ROWS, SQL_DELETE, SQL_DISTINCT, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_LIMIT, SQL_ON_DUPLICATE_KEY_UPDATE, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_VALUES, SQL_WHERE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TransactionManager(java.sql.Connection con, int moduleId)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `carryOutPayment(Transaction transaction, Preferences moduleSetup)` Проведение платежа.
    `Transaction` | `getByOrder(java.lang.String order)` Получение записи из БД по номеру заказа.
    `protected Transaction` | `getFromRS(java.sql.ResultSet rs)`
    `Result<Transaction>` | `getList(Period period, Page page, int cid, int statusmask)` Список платежей.
    `void` | `searchTransactionList(SearchResult<Transaction> searchResult, int contractId, java.lang.String contractTitle, java.lang.String status)`
    `protected void` | `updateImpl(Transaction b)`
    `void` | `updateLogEntry(Transaction transaction)` Добавление платежа в лог.

    - ### Methods inherited from class ru.bitel.common.dao.AbstractIdDao

      `delete, get, getAndDelete, getAndUpdate`

    - ### Methods inherited from class ru.bitel.common.dao.AbstractDao

      `close, delete, deleteImpl, eq, get, getById, getImpl, getListFromRS, getPeriod, getSQLOrder, getTableName, list, list, listImpl, listImpl, listImplPS, listImplPS, processException, recycle, setStatementParam, update`

    - ### Methods inherited from class ru.bitel.common.dao.AbstarctDaoConstant

      `getSQLOrder`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### fields

          public java.util.Map<java.lang.String,java.lang.String> fields

    - #### DEFAULT_PAYMENT_COMMENT

          public static java.lang.String DEFAULT_PAYMENT_COMMENT

  - ### Constructor Detail

    - #### TransactionManager

          public TransactionManager(java.sql.Connection con,
                                    int moduleId)

  - ### Method Detail

    - #### searchTransactionList

          public void searchTransactionList(SearchResult<Transaction> searchResult,
                                            int contractId,
                                            java.lang.String contractTitle,
                                            java.lang.String status)
                                     throws ru.bitel.bgbilling.common.BGException

      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getList

          public Result<Transaction> getList(Period period,
                                             Page page,
                                             int cid,
                                             int statusmask)
                                      throws ru.bitel.bgbilling.common.BGException

      Список платежей.
      Parameters:
        `period` - период-фильтр. Может быть null, тогда не искользуется.
        `page` - пагинация. Может быть null (тогда и кол-во найденных записей не возьмётся).
        `cid` - договор-фильтр. Может быть -1, тогда не используется.
        `status` - маска статусов которые надо выбрать
      Returns:
        возвращается Result.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getByOrder

          public Transaction getByOrder(java.lang.String order)
                                 throws ru.bitel.bgbilling.common.BGException

      Получение записи из БД по номеру заказа. Проверки по cid дополнительной нет, т.к. order содержит и так cid.
      Parameters:
        `order` - ид заказа
      Returns:
        запись о платеже, или null если платежа с таким номером заказа нету.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateLogEntry

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

      Добавление платежа в лог. Если есть уже в логе с таким ИД, то обновляется.
      Parameters:
        `transaction` - запись для добавления заполненная.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### carryOutPayment

          public void carryOutPayment(Transaction transaction,
                                      Preferences moduleSetup)
                               throws ru.bitel.bgbilling.common.BGException

      Проведение платежа. Проверяется, чтобы статус у переданного был OK. Используется в экзекутере.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getFromRS

          protected Transaction getFromRS(java.sql.ResultSet rs)
                                   throws java.sql.SQLException,
                                          ru.bitel.bgbilling.common.BGException

      Specified by:
        `getFromRS` in class `ru.bitel.common.dao.AbstractDao<Transaction>`
      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### updateImpl

          protected void updateImpl(Transaction b)
                             throws ru.bitel.bgbilling.common.BGException,
                                    java.sql.SQLException

      Specified by:
        `updateImpl` in class `ru.bitel.common.dao.AbstractDao<Transaction>`
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `java.sql.SQLException`