Class AbstractQiwiProtocol

java.lang.Object
ru.bitel.bgbilling.modules.qiwi.server.bean.AbstractQiwiProtocol
Direct Known Subclasses:
QiwiRest, QiwiSoap

public abstract class AbstractQiwiProtocol
extends java.lang.Object
Абстрактный класс протокола модуля Qiwi. Все реализации должны быть наследниками этого класса. Не забыть про фабрику протоколов.
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    protected static class  AbstractQiwiProtocol.QiwiResultCode
    Коды ошибок.
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected java.sql.Connection connection
    Набор соединений с БД.
    protected ContractManager contractManager
    Менеджер для работы с договорами в БД.
    protected int moduleId
    Код модуля Qiwi
    protected ModuleSetup moduleSetup
    Конфигурация модуля Qiwi
  • Constructor Summary

    Constructors
    Constructor Description
    AbstractQiwiProtocol​(java.sql.Connection con, int mid, ModuleSetup moduleSetup)  
  • Method Summary

    Modifier and Type Method Description
    protected void addPayment​(Transaction transaction, TransactionManager manager)  
    abstract java.lang.String beginTransaction​(int contractId, java.lang.String phone, java.math.BigDecimal sum, java.lang.String successUrl, java.lang.String failUrl)
    Метод выставления счета абоненту из ЛК биллинга.
    abstract void cancelTransaction​(Transaction transaction)
    Отмена НЕОПЛАЧЕННОГО выставленного счета.
    abstract void checkRefundStatus​(Transaction transaction)  
    abstract void checkTransaction​(Transaction transaction)
    Проверка текущего состояния транзакции на сервере Qiwi.
    abstract void refundTransaction​(Transaction transaction)
    Возврат средств (полный или частичный) по оплаченному счету.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • moduleSetup

      protected ModuleSetup moduleSetup
      Конфигурация модуля Qiwi
    • moduleId

      protected int moduleId
      Код модуля Qiwi
    • connection

      protected java.sql.Connection connection
      Набор соединений с БД.
    • contractManager

      protected ContractManager contractManager
      Менеджер для работы с договорами в БД.
  • Constructor Details

    • AbstractQiwiProtocol

      public AbstractQiwiProtocol​(java.sql.Connection con, int mid, ModuleSetup moduleSetup)
  • Method Details

    • beginTransaction

      public abstract java.lang.String beginTransaction​(int contractId, java.lang.String phone, java.math.BigDecimal sum, java.lang.String successUrl, java.lang.String failUrl) throws ru.bitel.bgbilling.common.BGException
      Метод выставления счета абоненту из ЛК биллинга. Метод возвращет url, на который должен быть перенаправлен абонент после выставления счета.
      Parameters:
      contractId - код договора
      phone - номер телефона абонента в формате 7xxxxxxxxxx
      sum - сумма счета
      successUrl - url, куда будет перенаправлен абонент после успешной оплаты. Настраивается в конфигурации модуля, либо приходит в запросе от нового ЛК.
      failUrl - url, куда будет перенаправлен абонент в случае неудачной оплаты. Настраивается в конфигурации модуля, либо приходит в запросе от нового ЛК.
      Returns:
      url, на который будет перенаправлен абонент после успешного выставления счета
      Throws:
      ru.bitel.bgbilling.common.BGException
    • checkTransaction

      public abstract void checkTransaction​(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Проверка текущего состояния транзакции на сервере Qiwi.
      Parameters:
      transaction - экземпляр транзакции в бд биллинга
      Throws:
      ru.bitel.bgbilling.common.BGException
    • cancelTransaction

      public abstract void cancelTransaction​(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Отмена НЕОПЛАЧЕННОГО выставленного счета.
      Parameters:
      transaction - транзакция, которую хотим отменить.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • refundTransaction

      public abstract void refundTransaction​(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Возврат средств (полный или частичный) по оплаченному счету.
      Parameters:
      transaction - транзакция, по которой хотим вернуть средства.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • checkRefundStatus

      public abstract void checkRefundStatus​(Transaction transaction) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • addPayment

      protected void addPayment​(Transaction transaction, TransactionManager manager) throws java.sql.SQLException, ru.bitel.bgbilling.common.BGException
      Throws:
      java.sql.SQLException
      ru.bitel.bgbilling.common.BGException