ru.bitel.bgbilling.modules.yamoney.server.bean

## Class YaManager

- java.lang.Object
- - ru.bitel.bgbilling.modules.yamoney.server.bean.YaManager

-     public class YaManager
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `YaManager(java.sql.Connection con, int mid)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `carryOutPayment(ru.bitel.bgbilling.modules.yamoney.common.YaTransaction transaction, Preferences moduleSetup)` Проведение платежа и занесение его в платежи договора.
    `void` | `deleteTransaction(int id)` Удаление платежа-транзакции из лога.
    `java.lang.String` | `formatComment(java.lang.String pattern, ru.bitel.bgbilling.modules.yamoney.common.YaTransaction transaction)` Форматируем камент из шаблона.
    `int` | `getFirstYear(int cid)` Возвращает год, с которого были платежи для этого договора.
    `ru.bitel.bgbilling.modules.yamoney.common.YaTransaction` | `getTransactionForInvoice(long invoiceId)` Возвращает транзакцию по ид_транзакции платёжной системы.
    `static ru.bitel.bgbilling.modules.yamoney.common.YaTransaction` | `getTransactionFromRS(java.sql.ResultSet rs)`
    `java.util.List<ru.bitel.bgbilling.modules.yamoney.common.YaTransaction>` | `getTransactionsList(int fCid, Period fPeriod, java.lang.String fGroups, java.lang.String fContract)` Запрос списка(лога) платежей, по фильтру. f_period (если !
    `void` | `updateTransaction(ru.bitel.bgbilling.modules.yamoney.common.YaTransaction transaction)` Обновление всех параметров из лога платежа.

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

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

- - ### Constructor Detail

    - #### YaManager

          public YaManager(java.sql.Connection con,
                           int mid)

  - ### Method Detail

    - #### getTransactionsList

          public java.util.List<ru.bitel.bgbilling.modules.yamoney.common.YaTransaction> getTransactionsList(int fCid,
                                                                                                             Period fPeriod,
                                                                                                             java.lang.String fGroups,
                                                                                                             java.lang.String fContract)
                                                                                                      throws ru.bitel.bgbilling.common.BGException

      Запрос списка(лога) платежей, по фильтру. f_period (если != null), действуют всегда. f_groups, f_contract, fCid тоже действуют иногда, если установлены. Ещё запрашивается для юзера из веба, там только cid и период. Заполняются также заголовок договора.
      Parameters:
        `fCid` - ид договора (действует если >0)
        `fPeriod` - период (действует если != null)
        `fGroups` - список ид групп (действует если !=null и не пустой)
        `fContract` - кусок текстового наименования договора, ищется по LIKE (действует если !=null и не пустой)
      Returns:
        соответствующий список объектов "Ya платёж"
      Throws:
        `ru.bitel.bgbilling.common.BGException` - ошибка.

    - #### getTransactionForInvoice

          public ru.bitel.bgbilling.modules.yamoney.common.YaTransaction getTransactionForInvoice(long invoiceId)
                                                                                           throws ru.bitel.bgbilling.common.BGException

      Возвращает транзакцию по ид_транзакции платёжной системы. Используется в экзекутере при проверке есть ли уже платёж с такой транзакцией у нас в БД, ибо может быть повторный запрос.
      Parameters:
        `invoiceId` - одноимённый параметр.
      Returns:
        объект транзакция.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getFirstYear

          public int getFirstYear(int cid)
                           throws ru.bitel.bgbilling.common.BGException

      Возвращает год, с которого были платежи для этого договора. Если не было ничего, то возвращает текущий.
      Parameters:
        `cid` - контракт_ид
      Returns:
        четырёхзначное число - год
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteTransaction

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

      Удаление платежа-транзакции из лога. Не используется, кажется, пока.
      Parameters:
        `id` - ид платежа в таблице yamoney_transactions_$mid.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateTransaction

          public void updateTransaction(ru.bitel.bgbilling.modules.yamoney.common.YaTransaction transaction)
                                 throws ru.bitel.bgbilling.common.BGException

      Обновление всех параметров из лога платежа. В объекте должен быть установлен id. Исползуется для модификации параметров (некоторых) после уточнения статуса платежа.
      Parameters:
        `payment` - объект для обновления.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getTransactionFromRS

          public static ru.bitel.bgbilling.modules.yamoney.common.YaTransaction getTransactionFromRS(java.sql.ResultSet rs)
                                                                                              throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### carryOutPayment

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

      Проведение платежа и занесение его в платежи договора.
      Parameters:
        `transaction` - транзакция проверенная на нужность добавления
        `paymentType` - тип платежа для занесения
        `paymentComment` - комментарий платежа
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### formatComment

          public java.lang.String formatComment(java.lang.String pattern,
                                                ru.bitel.bgbilling.modules.yamoney.common.YaTransaction transaction)

      Форматируем камент из шаблона. Комментарий расхода для нашего биллинга.
      Parameters:
        `pattern` - шаблон
        `transaction` - платёж-транзакция
      Returns:
        строка-камент