Package ru.bitel.bgbilling.kernel.contract.autopayment.server.bean

# Class AbstractAutopaymentManager

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.common.dao.AbstarctDaoConstant
ru.bitel.bgbilling.common.dao.AbstractDao<Autopayment>
ru.bitel.bgbilling.kernel.contract.autopayment.server.bean.AbstractAutopaymentManager

Direct Known Subclasses:
  `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`, `AutopaymentManager`

public abstract class AbstractAutopaymentManager extends ru.bitel.bgbilling.common.dao.AbstractDao<Autopayment>

- ## Field Summary

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

  `orderByPattern`

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

  `con, ERROR, fields, moduleId, SQL_ALL, SQL_AND, SQL_CALC_FOUND_ROWS, SQL_DELETE, SQL_DISTINCT, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_JOIN, SQL_LEFT_JOIN, SQL_LIMIT, SQL_NOT_IN, SQL_ON, SQL_ON_DUPLICATE_KEY_UPDATE, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_VALUES, SQL_WHERE, tableName`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractAutopaymentManager(Connection con, String tableNamePrefix, int moduleId)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `autopaymentOff(Autopayment autopayment)`
  `Autopayment`
  `getAutopayment(int id)`
  `Autopayment`
  `getCurrentAutopayment(int contractId)`
  `protected Autopayment`
  `getFromRS(ResultSet rs)`
  `void`
  `invokeAutopayment(int contractId, BigDecimal amount)`
  `<T extends BGAbstractTransaction>
  T`
  `registerAutopayment(int contractId, ContractAutopaymentMode mode, Function<BigDecimal,T> registerOrder)`
  `static <T> Autopayment`
  `registerAutopayment(Connection con, int moduleId, AbstractAutopaymentManager autopaymentManager, int contractId, ContractAutopaymentMode mode, ru.bitel.common.function.ThrowingFunction<Autopayment,T> registerFunction)`
  Регистрация автоплатежа - создается Autopayment, вызывается registerFunction.
  `void`
  `searchActivateAutopayment(SearchResult<Autopayment> searchResult, Date date, int mode)`
  `void`
  `searchAutopayment(SearchResult<Autopayment> searchResult, int contractId)`
  `void`
  `searchCurrentAutopayment(SearchResult<Autopayment> searchResult, Date date, AutopaymentMode mode)`
  Выбрать подписки которые должны исполниться в указанный день
  `static void`
  `unregisterAutopayment(Connection con, int moduleId, AbstractAutopaymentManager autopaymentManager, int contractId)`
  Отмена автоплатежа в биллинге.
  `Autopayment`
  `updateAutopayment(Autopayment autopayment)`
  `protected void`
  `updateImpl(Autopayment autopayment)`

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

  `delete, deleteImpl, eq, get, getById, getImpl, getListFromRS, getPeriod, getQueryById, getSQLOrder, list, list, list, listImpl, listImpl, listImplPS, listImplPS, ormFromResultSet, ormUpdateImpl, ormUpdateImpl, ormUpdateImpl, ormUpdateImpl, psSetPeriod, queryPeriod, setStatementParam, update`

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

  `getSQLOrder, getTableName, psSetDate, psSetInt, psSetString`

  ### Methods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

  `error, error, error, getLogger, logError, logError, warn`

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

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

- ## Constructor Details

  - ### AbstractAutopaymentManager

    public AbstractAutopaymentManager(Connection con, String tableNamePrefix, int moduleId)

- ## Method Details

  - ### getAutopayment

    public Autopayment getAutopayment(int id) throws SQLException
    Throws:
      `SQLException`

  - ### getCurrentAutopayment

    public Autopayment getCurrentAutopayment(int contractId) throws SQLException
    Throws:
      `SQLException`

  - ### updateImpl

    protected void updateImpl(Autopayment autopayment) throws SQLException
    Specified by:
      `updateImpl` in class `ru.bitel.bgbilling.common.dao.AbstractDao<Autopayment>`
    Throws:
      `SQLException`

  - ### updateAutopayment

    public Autopayment updateAutopayment(Autopayment autopayment) throws SQLException
    Throws:
      `SQLException`

  - ### searchAutopayment

    public void searchAutopayment(SearchResult<Autopayment> searchResult, int contractId) throws SQLException
    Throws:
      `SQLException`

  - ### searchActivateAutopayment

    public void searchActivateAutopayment(SearchResult<Autopayment> searchResult, Date date, int mode) throws SQLException
    Throws:
      `SQLException`

  - ### searchCurrentAutopayment

    public void searchCurrentAutopayment(SearchResult<Autopayment> searchResult, Date date, AutopaymentMode mode) throws SQLException
    Выбрать подписки которые должны исполниться в указанный день
    Parameters:
      `searchResult` -
      `date` -
      `mode` -
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `SQLException`

  - ### getFromRS

    protected Autopayment getFromRS(ResultSet rs) throws SQLException
    Specified by:
      `getFromRS` in class `ru.bitel.bgbilling.common.dao.AbstractDao<Autopayment>`
    Throws:
      `SQLException`

  - ### registerAutopayment

    public <T extends BGAbstractTransaction> T registerAutopayment(int contractId, ContractAutopaymentMode mode, Function<BigDecimal,T> registerOrder) throws Exception
    Throws:
      `Exception`

  - ### autopaymentOff

    public void autopaymentOff(Autopayment autopayment) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### invokeAutopayment

    public void invokeAutopayment(int contractId, BigDecimal amount) throws Exception
    Throws:
      `Exception`

  - ### registerAutopayment

    public static <T> Autopayment registerAutopayment(Connection con, int moduleId, AbstractAutopaymentManager autopaymentManager, int contractId, ContractAutopaymentMode mode, ru.bitel.common.function.ThrowingFunction<Autopayment,T> registerFunction) throws Exception
    Регистрация автоплатежа - создается Autopayment, вызывается registerFunction.
    Parameters:
      `con` -
      `moduleId` -
      `contractId` -
      `mode` -
      `registerFunction` -
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `Exception`

  - ### unregisterAutopayment

    public static void unregisterAutopayment(Connection con, int moduleId, AbstractAutopaymentManager autopaymentManager, int contractId) throws Exception
    Отмена автоплатежа в биллинге. Если есть какой-то вызов к платежной системе - то его нужно вызвать (кроме вызова данного метода).
    Parameters:
      `con` -
      `moduleId` -
      `contractId` -
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `Exception`