Class TransactionManager

java.lang.Object
ru.bitel.common.dao.AbstarctDaoConstant
ru.bitel.common.dao.AbstractDao<B>
ru.bitel.common.dao.AbstractIdDao<B>
ru.bitel.bgbilling.server.bean.AbstractTransactionManager<Transaction>
ru.bitel.bgbilling.modules.yoomoney.server.bean.TransactionManager
All Implemented Interfaces:
AutoCloseable

public class TransactionManager extends AbstractTransactionManager<Transaction>
  • Constructor Details

    • TransactionManager

      public TransactionManager(Connection con, int moduleId)
  • Method Details

    • searchTransactionList

      public void searchTransactionList(SearchResult<Transaction> searchResult, int contractId, String contractTitle, String status) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getCheckIds

      public List<String> getCheckIds(int intervalMinute) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getTransactionForInvoice

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

      public Transaction getTransactionByYoomoneyId(String yoomoneyId) throws ru.bitel.bgbilling.common.BGException
      Parameters:
      yoomoneyId - - код( например 22e12f66-000f-5000-8000-18db351245c7 )
      Returns:
      транзакция
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getTransactionByPaymentId

      public Transaction getTransactionByPaymentId(int paymentId) throws ru.bitel.bgbilling.common.BGException
      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 - ид платежа в таблице yoomoney_transactions_$mid.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • carryOutPayment

      @Deprecated public void carryOutPayment(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Deprecated.
      Проведение платежа и занесение его в платежи договора.
      Parameters:
      transaction - транзакция, проверенная на нужность добавления
      Throws:
      ru.bitel.bgbilling.common.BGException
    • formatComment

      public String formatComment(String pattern, Transaction transaction)
      Форматируем камент из шаблона. Комментарий расхода для нашего биллинга.
      Parameters:
      pattern - шаблон
      transaction - платёж-транзакция
      Returns:
      строка-камент
    • getFromRS

      protected Transaction getFromRS(ResultSet rs) throws SQLException, ru.bitel.bgbilling.common.BGException
      Specified by:
      getFromRS in class ru.bitel.common.dao.AbstractDao<Transaction>
      Throws:
      SQLException
      ru.bitel.bgbilling.common.BGException
    • updateImpl

      protected void updateImpl(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Specified by:
      updateImpl in class ru.bitel.common.dao.AbstractDao<Transaction>
      Throws:
      ru.bitel.bgbilling.common.BGException
    • setConnectionTimeout

      protected void setConnectionTimeout(HttpsURLConnection connection)
      Overrides:
      setConnectionTimeout in class AbstractTransactionManager<Transaction>
    • getPaymentRequestJSON

      public org.json.JSONObject getPaymentRequestJSON(BigDecimal sum, int contractId, String contractTitle, String autoId, YoomoneyPaymentType paymentType) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • doPaymentRequest

      public String doPaymentRequest(String data, String idempotenceKey)
    • doCheckRequest

      public void doCheckRequest(String objectId)
    • doTransaction

      public void doTransaction(String yoomoneyId, String status, BigDecimal sum, org.json.JSONObject resultJsonObject)
    • checkAutopayment

      protected void checkAutopayment(int contractId, org.json.JSONObject resultJsonObject)
    • cancelAutopayment

      protected void cancelAutopayment(int contractId)