Class MPSTransactionManager
java.lang.Object
ru.bitel.bgbilling.modules.mps.server.bean.protocol.MPSTransactionManager
- Direct Known Subclasses:
- BiSysTransactionManager,- CitiPayTransactionManager,- ClickTransactionManager,- ComepayTransactionManager,- CPTransactionManager,- EasyPayTransactionManager,- ElecsnetAbstractTransactionManager,- EmpayTransactionManager,- EPortTransactionManager,- FreecashTransactionManager,- GenericOSMPTransactionManager,- KaspiTransactionManager,- MbankTransactionManager,- OptimaPlusTransactionManager,- OSMPTransactionManager,- Payfon24TransactionManager,- PaynetTransactionManager,- PegasTransactionManager,- QuickPayTransactionManager,- RapidaOldTransactionManager,- RapidaTransactionManager,- SberbankTransactionManager,- SbrfTransactionManager,- SfourAlternativeTransactionManager,- UepcTransactionManager,- UnikassaTransactionManager,- VtbTransactionManager,- XPlatTransactionManager
public abstract class MPSTransactionManager
extends java.lang.Object
- 
Field SummaryFields Modifier and Type Field Description static intACTION_CANCELstatic intACTION_CHANGEstatic intACTION_CHECKstatic intACTION_PAYstatic intACTION_PAY_ON_CHECKstatic intACTION_STATUSprotected javax.xml.parsers.DocumentBuilderdocumentBuilderstatic intERROR_MPS_CONTRACT_NOTFOUNDstatic intERROR_MPS_DATAstatic intERROR_MPS_DATEstatic intERROR_MPS_DATE_FIELDstatic intERROR_MPS_EDIT_NOT_SUPPORTEDstatic intERROR_MPS_HASHstatic intERROR_MPS_ISOFFstatic intERROR_MPS_NUMBER_PATTERNstatic intERROR_MPS_OUT_OF_MONEYstatic intERROR_MPS_PAY_EXISTstatic intERROR_MPS_PAY_NOTEXISTstatic intERROR_MPS_REQUESTstatic intERROR_MPS_SERVERstatic intERROR_MPS_SUM_BIGstatic intERROR_MPS_SUM_SMALLstatic intERROR_MPS_SUM_TOOSMALLORBIGstatic intERROR_MPS_TRANSACTION_ID_FIELDstatic intERROR_MPS_TYPEstatic java.lang.StringKEY_RESPONSE_PARAMETERSprotected static org.apache.logging.log4j.Loggerlogstatic intMPS_CYBERPLATstatic intMPS_FROMGATEWAYstatic intMPS_OSMPprotected static java.util.regex.Patternp1protected static java.util.regex.Patternp2protected static java.util.regex.Patternp3protected static java.util.regex.PatternpNumberstatic java.lang.StringREQUEST_ATTRIBUTE_PARAMETERSstatic java.lang.StringREQUEST_ATTRIBUTE_PATH_INFO
- 
Constructor SummaryConstructors Modifier Constructor Description protectedMPSTransactionManager()
- 
Method SummaryModifier and Type Method Description protected ContractactionCheck(MPSRequest request)action - проверка (поиск) договора, возвращает найденный ContractTransactionaddTransaction(int id, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment)Добавление платежа.TransactionaddTransaction(int id, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal scriptSum, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment)Добавление платежа.TransactionaddTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment)Добавление платежа.protected voidcancelPreparedTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, Transaction transaction)Отмена платежа, ранее подготовленного методом#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int).voidcancelTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, Transaction transaction)Отмена платежа если он еще не отмененprotected voidcheckTime(MPSRequest mpsRequest)protected voidcheckValid(Conf.MPSSystem system, MPSRequest mpsRequest, java.sql.Connection con)Проверка на валидность запросаprotected voidclearCanceledTransaction(java.sql.Connection con, int mid, int mpsId, Transaction transaction)protected voidcreateTemporaryTable(java.sql.Connection con, java.lang.String tableName)protected TransactionexecutePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment)Завершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.protected TransactionexecutePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment, java.math.BigDecimal sum)Завершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.protected TransactionexecutePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment, java.math.BigDecimal scriptSum, java.math.BigDecimal sum)Завершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.protected ContractfindContract(java.sql.Connection con, int moduleId, Conf.MPSSystem system, java.lang.String number, int type)protected java.lang.StringgetComment(Conf.MPSSystem system, Conf conf, java.sql.Connection con, Contract contract)protected java.lang.StringgetContractTitle(java.util.HashMap<java.lang.Integer,java.lang.String> contractTitles, java.sql.PreparedStatement getContractTitlePS, int contractId)java.lang.StringgetDefaultEncoding()java.lang.StringgetEncoding()static MPSTransactionManagergetInstance(java.lang.String mpsId, Setup setup, int moduleId)protected abstract byte[]getResponse(java.sql.Connection con, Conf.MPSSystem system, MPSResponse response)Формирование сырого ответа системе из MPSResponseprotected java.util.Map<java.lang.String,java.lang.String>getResponseAttributes(java.sql.Connection con, Conf.MPSSystem system, MPSResponse response)protected java.lang.StringgetTable(java.sql.Connection con, int moduleId, java.util.Date time)TransactiongetTransactionByTransId(java.sql.Connection con, int moduleId, java.lang.String mpsId, long transId, java.util.Date time)Получение MPSPayment по транзакцииTransactiongetTransactionByTransId(java.sql.Connection con, int mid, java.lang.String mpsId, java.lang.String transId, java.util.Date time)Получение MPSPayment по транзакцииTransactiongetTransactionByTransId(java.sql.Connection con, int moduleId, java.lang.String mpsId, java.math.BigInteger transId, java.util.Date time)protected TransactiongetTransactionFromRS(java.sql.ResultSet rs)Получение MPSPayment из ResultSetjava.util.List<Transaction>getTransactionList(java.sql.Connection con, int moduleId, int contractId, int yy, int mm)Получение списка платежей для договора за месяц (для web) upd 15.09 получение списка платежей всех системjava.util.List<Transaction>getTransactionList(java.sql.Connection con, int moduleId, int contractId, java.lang.String mpsId, java.lang.String status, Page page)java.util.List<Transaction>getTransactionList(java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.Calendar from, java.util.Calendar to, int paymentTypeId, java.lang.String status)Получение списка платежей за произвольный период с возможностью фильтрации по типу платежа (такая возможность используется, например, в платежной системе Paynet)java.util.List<Transaction>getTransactionList(java.sql.Connection con, int mid, java.lang.String mpsId, Conf conf, java.util.Calendar from, java.util.Calendar until, boolean onlyPayed)Получение списка платежей за период (Период в пределах одного месяца)java.util.List<Transaction>getTransactionList(Setup setup, java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.Calendar from, java.util.Calendar until, boolean onlyPayed)java.util.List<Transaction>getTransactionListForDay(java.sql.Connection con, int mid, int mpsId, java.util.Calendar date)Получение списка платежей за один деньprotected abstract java.util.List<Transaction>getTransactionListFromFile(Conf.MPSSystem system, java.lang.String file)protected java.util.List<Transaction>getTransactionListFromFileByConfig(Conf.MPSSystem system, java.lang.String fileString)protected java.util.List<Transaction>getTransactionListFromFileByPattern(java.util.regex.Pattern pattern, java.util.Map<java.lang.String,java.lang.Integer> patternOrder, java.lang.String timeFormat, boolean osmpPrefix, java.lang.String fileString)intgetUserLogin(java.sql.Connection con, int mid, int cid)java.lang.StringgetUserLoginFormatted(Setup setup, java.sql.Connection con, int mid, int cid)protected voidonPayment(Conf.MPSSystem system, Payment payment)protected java.math.BigIntegerparseBigInteger(java.lang.String value)protected abstract MPSRequestparseRequest(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, javax.servlet.http.HttpServletRequest request)Парсинг запроса от системыprotected TransactionprepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int contractId, java.util.Date time, java.math.BigDecimal sum, long transId, java.lang.String rawNumber, int type)Описание параметров метода смотри у метода#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)protected TransactionprepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int cid, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type)Подготовка к проведению платежа.protected TransactionprepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int cid, java.util.Date time, java.math.BigDecimal sum, java.math.BigInteger transId, java.lang.String rawNumber, int type)Описание параметров метода смотри у метода#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)protected voidpreProcess(Conf.MPSSystem system, MPSRequest mpsRequest, java.sql.Connection con)protected abstract voidprocessError(MPSException ex, MPSResponse response)Обработка ошибкиstatic ProcessRegisterprocessRegister(java.lang.String mpsId, java.lang.String file, java.lang.String fileName, java.util.Calendar from, java.util.Calendar until, Setup setup, java.sql.Connection con, int moduleId)protected ProcessRegisterprocessRegister(MPSTransactionManager paymentManager, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf conf, java.lang.String fileString, java.util.Calendar from, java.util.Calendar until)Обработка реестра за период.protected abstract byte[]processRequest(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf conf, Conf.MPSSystem system, javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse response)Обработка запроса от системыstatic byte[]processRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Setup setup, java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.concurrent.atomic.AtomicReference<Conf.MPSSystem> mpsSystem)В зависимости от запроса нужным менеджером обрабатывает запросprotected voidprocessResponseEvent(MPSResponse response, org.w3c.dom.Element responseElement)Создание и отправка синхронного события ДО ответа платёжной системе.voidreviseAddTransactions(java.sql.Connection con, int mid, java.lang.String mpsId, Setup setup, org.w3c.dom.Document payments)Добавление платежей которые нашлись в реестре но не было в базеvoidreviseCancelTransactions(java.sql.Connection con, int moduleId, java.lang.String mpsId, org.w3c.dom.Document payments)Отмена платежей которых небыло в реестреvoidreviseRestoreTransactions(java.sql.Connection con, int mid, java.lang.String mpsId, Setup setup, org.w3c.dom.Document payments)Восстановление платежей, которые в базе были отменены, но в реестре естьvoidsearchTransactionList(SearchResult<Transaction> searchResult, java.lang.String systemId, int contractId, java.lang.String status, java.sql.Connection con, int moduleId)Получение списка Transaction за периодvoidsetEncoding(java.lang.String encoding)protected voidsetResponseParameters(MPSResponse response, org.w3c.dom.Element responseElement)voidsetUserLogin(Setup setup, java.sql.Connection con, int moduleId, int contractId, java.lang.String _login)protected voidsystemAccountAdd(java.sql.Connection con, Conf.MPSSystem system, java.util.Date time, java.math.BigDecimal sum)protected voidsystemAccountDelete(java.sql.Connection con, int mid, Conf.MPSSystem system, java.util.Date time, java.math.BigDecimal sum)protected byte[]xmlSerialize(org.w3c.dom.Document doc)Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
- 
Field Details- 
logprotected static org.apache.logging.log4j.Logger log
- 
REQUEST_ATTRIBUTE_PATH_INFOpublic static final java.lang.String REQUEST_ATTRIBUTE_PATH_INFO- See Also:
- Constant Field Values
 
- 
REQUEST_ATTRIBUTE_PARAMETERSpublic static final java.lang.String REQUEST_ATTRIBUTE_PARAMETERS- See Also:
- Constant Field Values
 
- 
MPS_FROMGATEWAYpublic static final int MPS_FROMGATEWAY- See Also:
- Constant Field Values
 
- 
MPS_CYBERPLATpublic static final int MPS_CYBERPLAT- See Also:
- Constant Field Values
 
- 
MPS_OSMPpublic static final int MPS_OSMP- See Also:
- Constant Field Values
 
- 
ACTION_CHECKpublic static final int ACTION_CHECK- See Also:
- Constant Field Values
 
- 
ACTION_PAYpublic static final int ACTION_PAY- See Also:
- Constant Field Values
 
- 
ACTION_STATUSpublic static final int ACTION_STATUS- See Also:
- Constant Field Values
 
- 
ACTION_CANCELpublic static final int ACTION_CANCEL- See Also:
- Constant Field Values
 
- 
ACTION_CHANGEpublic static final int ACTION_CHANGE- See Also:
- Constant Field Values
 
- 
ACTION_PAY_ON_CHECKpublic static final int ACTION_PAY_ON_CHECK- See Also:
- Constant Field Values
 
- 
ERROR_MPS_SERVERpublic static final int ERROR_MPS_SERVER- See Also:
- Constant Field Values
 
- 
ERROR_MPS_REQUESTpublic static final int ERROR_MPS_REQUEST- See Also:
- Constant Field Values
 
- 
ERROR_MPS_CONTRACT_NOTFOUNDpublic static final int ERROR_MPS_CONTRACT_NOTFOUND- See Also:
- Constant Field Values
 
- 
ERROR_MPS_PAY_EXISTpublic static final int ERROR_MPS_PAY_EXIST- See Also:
- Constant Field Values
 
- 
ERROR_MPS_PAY_NOTEXISTpublic static final int ERROR_MPS_PAY_NOTEXIST- See Also:
- Constant Field Values
 
- 
ERROR_MPS_DATEpublic static final int ERROR_MPS_DATE- See Also:
- Constant Field Values
 
- 
ERROR_MPS_SUM_TOOSMALLORBIGpublic static final int ERROR_MPS_SUM_TOOSMALLORBIG- See Also:
- Constant Field Values
 
- 
ERROR_MPS_ISOFFpublic static final int ERROR_MPS_ISOFF- See Also:
- Constant Field Values
 
- 
ERROR_MPS_HASHpublic static final int ERROR_MPS_HASH- See Also:
- Constant Field Values
 
- 
ERROR_MPS_EDIT_NOT_SUPPORTEDpublic static final int ERROR_MPS_EDIT_NOT_SUPPORTED- See Also:
- Constant Field Values
 
- 
ERROR_MPS_TYPEpublic static final int ERROR_MPS_TYPE- See Also:
- Constant Field Values
 
- 
ERROR_MPS_NUMBER_PATTERNpublic static final int ERROR_MPS_NUMBER_PATTERN- See Also:
- Constant Field Values
 
- 
ERROR_MPS_TRANSACTION_ID_FIELDpublic static final int ERROR_MPS_TRANSACTION_ID_FIELD- See Also:
- Constant Field Values
 
- 
ERROR_MPS_DATE_FIELDpublic static final int ERROR_MPS_DATE_FIELD- See Also:
- Constant Field Values
 
- 
ERROR_MPS_OUT_OF_MONEYpublic static final int ERROR_MPS_OUT_OF_MONEY- See Also:
- Constant Field Values
 
- 
ERROR_MPS_DATApublic static final int ERROR_MPS_DATA- See Also:
- Constant Field Values
 
- 
ERROR_MPS_SUM_SMALLpublic static final int ERROR_MPS_SUM_SMALL- See Also:
- Constant Field Values
 
- 
ERROR_MPS_SUM_BIGpublic static final int ERROR_MPS_SUM_BIG- See Also:
- Constant Field Values
 
- 
KEY_RESPONSE_PARAMETERSpublic static final java.lang.String KEY_RESPONSE_PARAMETERS- See Also:
- Constant Field Values
 
- 
pNumberprotected static final java.util.regex.Pattern pNumber
- 
p1protected static final java.util.regex.Pattern p1
- 
p2protected static final java.util.regex.Pattern p2
- 
p3protected static final java.util.regex.Pattern p3
- 
documentBuilderprotected final javax.xml.parsers.DocumentBuilder documentBuilder
 
- 
- 
Constructor Details- 
MPSTransactionManagerprotected MPSTransactionManager()
 
- 
- 
Method Details- 
findContractprotected final Contract findContract(java.sql.Connection con, int moduleId, Conf.MPSSystem system, java.lang.String number, int type) throws MPSException- Throws:
- MPSException
 
- 
getContractTitleprotected final java.lang.String getContractTitle(java.util.HashMap<java.lang.Integer,java.lang.String> contractTitles, java.sql.PreparedStatement getContractTitlePS, int contractId)
- 
processRequestpublic static byte[] processRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Setup setup, java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.concurrent.atomic.AtomicReference<Conf.MPSSystem> mpsSystem) throws ru.bitel.bgbilling.modules.mps.server.RequestProcessExceptionВ зависимости от запроса нужным менеджером обрабатывает запрос- Throws:
- ru.bitel.bgbilling.modules.mps.server.RequestProcessException
 
- 
getInstance
- 
processRequestprotected abstract byte[] processRequest(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf conf, Conf.MPSSystem system, javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse response)Обработка запроса от системы
- 
parseRequestprotected abstract MPSRequest parseRequest(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, javax.servlet.http.HttpServletRequest request) throws MPSExceptionПарсинг запроса от системы- Throws:
- MPSException
 
- 
processErrorОбработка ошибки
- 
checkValidprotected void checkValid(Conf.MPSSystem system, MPSRequest mpsRequest, java.sql.Connection con) throws MPSExceptionПроверка на валидность запроса- Throws:
- MPSException
 
- 
preProcessprotected void preProcess(Conf.MPSSystem system, MPSRequest mpsRequest, java.sql.Connection con) throws MPSException- Throws:
- MPSException
 
- 
onPayment
- 
checkTime- Throws:
- MPSException
 
- 
parseBigIntegerprotected java.math.BigInteger parseBigInteger(java.lang.String value)
- 
getTableprotected final java.lang.String getTable(java.sql.Connection con, int moduleId, java.util.Date time) throws java.sql.SQLException- Throws:
- java.sql.SQLException
 
- 
createTemporaryTableprotected final void createTemporaryTable(java.sql.Connection con, java.lang.String tableName) throws java.sql.SQLException- Throws:
- java.sql.SQLException
 
- 
addTransactionpublic final Transaction addTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment) throws java.lang.ExceptionДобавление платежа.- Parameters:
- con- соединение с БД
- moduleId- код модуля MPS
- mpsId- код платежной системы в конфигурации модуля MPS
- system- набор настроек платежной системы
- contractId- код договора
- time- дата/время платежа
- sum- сумма платежа, пришедшая в запросе от платежной системы
- transId- код транзакции на стороне платежной системы
- rawNumber- идентификатор абонента, который присылает paynet в запросе
- type- тип поиска.
- paymentComment- комментарий платежа
- Returns:
- платеж mps, добавленный в БД.
- Throws:
- java.lang.Exception
 
- 
addTransactionpublic final Transaction addTransaction(int id, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment) throws java.lang.ExceptionДобавление платежа.- Parameters:
- id-
- con- соединение с БД
- moduleId- код модуля MPS
- mpsId- код платежной системы в конфигурации модуля MPS
- system- набор настроек платежной системы
- contractId- код договора
- time- дата/время платежа
- sum- сумма платежа, пришедшая в запросе от платежной системы
- transId- код транзакции на стороне платежной системы
- rawNumber- идентификатор абонента, который присылает paynet в запросе
- type- тип поиска.
- paymentComment- комментарий платежа
- Returns:
- платеж mps, добавленный в БД.
- Throws:
- java.lang.Exception
 
- 
addTransactionpublic Transaction addTransaction(int id, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, int contractId, java.util.Date time, java.math.BigDecimal scriptSum, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type, java.lang.String paymentComment) throws java.lang.ExceptionДобавление платежа.- Parameters:
- id-
- con- соединение с БД
- moduleId- код модуля MPS
- mpsId- код платежной системы в конфигурации модуля MPS
- system- набор настроек платежной системы
- contractId- код договора
- time- дата/время платежа
- scriptSum- сумма платежа, полученная в скрипте по событию- MPSBeforePaymentEvent.
- sum- сумма платежа, пришедшая в запросе от платежной системы
- transId- код транзакции на стороне платежной системы
- rawNumber- идентификатор абонента, который присылает paynet в запросе
- type- тип поиска.
- paymentComment- комментарий платежа
- Returns:
- платеж mps, добавленный в БД.
- Throws:
- java.lang.Exception
 
- 
prepareTransactionprotected final Transaction prepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int contractId, java.util.Date time, java.math.BigDecimal sum, long transId, java.lang.String rawNumber, int type) throws java.lang.ExceptionОписание параметров метода смотри у метода#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)- Throws:
- java.lang.Exception
 
- 
prepareTransactionprotected final Transaction prepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int cid, java.util.Date time, java.math.BigDecimal sum, java.math.BigInteger transId, java.lang.String rawNumber, int type) throws java.lang.ExceptionОписание параметров метода смотри у метода#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)- Throws:
- java.lang.Exception
 
- 
prepareTransactionprotected final Transaction prepareTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, int cid, java.util.Date time, java.math.BigDecimal sum, java.lang.String transId, java.lang.String rawNumber, int type) throws java.lang.ExceptionПодготовка к проведению платежа. Метод добавляет платеж в таблицу mps_payment со статусомTransactionStatus.PAYMENT_NOT_PAYED. Баланс договора не меняется.- Parameters:
- con- экземпляр соединения с БД.
- moduleId- код модуля mps.
- mpsId- код платежной системы, по которой проводится платеж. Настраивается в конфигурации модуля mps.
- cid- код договора, на который принимается платеж.
- time- время совершения платежа, приходящее от платежной системы.
- sum- сумма платежа, пришедшая в запросе от платежной системы.
- transId- код транзакции на стороне платежной системы.
- rawNumber- идентификатор абонента, пришедший в запросе от платежной системы.
- type- тип поиска
- Returns:
- платеж в виде сущности Transactionсо статусом#PAYMENT_NOT_PAYED.
- Throws:
- java.lang.Exception
 
- 
executePreparedTransactionprotected final Transaction executePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment) throws java.lang.ExceptionЗавершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.- Parameters:
- con- экземпляр соединения с БД
- mid- код модуля MPS
- system- конфигурация платежной системы
- result- экземпляр платежа, добавленный методом- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
- paymentComment- комментарий платежа
- Returns:
- Throws:
- ru.bitel.bgbilling.common.BGException- См.- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
- java.lang.Exception
 
- 
executePreparedTransactionprotected final Transaction executePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment, java.math.BigDecimal sum) throws ru.bitel.bgbilling.common.BGExceptionЗавершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.- Parameters:
- con- экземпляр соединения с БД
- mid- код модуля MPS
- system- конфигурация платежной системы
- result- экземпляр платежа, добавленный методом- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
- paymentComment- комментарий платежа
- sum- оригинальная сумма платежа, пришедшая в запросе от платежной системы.
- Returns:
- Throws:
- ru.bitel.bgbilling.common.BGException- См.- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
 
- 
executePreparedTransactionprotected final Transaction executePreparedTransaction(java.sql.Connection con, int mid, Conf.MPSSystem system, Transaction result, java.lang.String paymentComment, java.math.BigDecimal scriptSum, java.math.BigDecimal sum) throws ru.bitel.bgbilling.common.BGExceptionЗавершение процедуры платежа - установка статусаTransactionStatus.PAYMENT_PAYED, добавление платежа и обновление баланса договора.- Parameters:
- con- экземпляр соединения с БД
- mid- код модуля MPS
- system- конфигурация платежной системы
- result- экземпляр платежа, добавленный методом- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
- paymentComment- комментарий платежа
- scriptSum- сумма платежа, которая могла быть изменена скриптом на событие- MPSBeforePaymentEvent
- sum- оригинальная сумма платежа, пришедшая в запросе от платежной системы.
- Returns:
- Throws:
- ru.bitel.bgbilling.common.BGException- См.- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
 
- 
cancelPreparedTransactionprotected final void cancelPreparedTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, Transaction transaction) throws java.lang.ExceptionОтмена платежа, ранее подготовленного методом#prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int). Выставляется статусTransactionStatus.PAYMENT_CANCELED. Метод срабатывает только тогда, когда статус платежа неTransactionStatus.PAYMENT_CANCELED.- Parameters:
- con- экземлпяр соединения с БД
- moduleId- код модуля MPS
- mpsId- код платежной системы в конфигурации модуля MPS
- system- набор настроек платежной системы
- transaction- экземпляр платежа, добавленный методом- #prepareTransaction(Connection, int, int, int, Date, BigDecimal, String, String, int)
- Throws:
- java.lang.Exception
 
- 
getTransactionByTransIdpublic final Transaction getTransactionByTransId(java.sql.Connection con, int moduleId, java.lang.String mpsId, long transId, java.util.Date time) throws java.lang.ExceptionПолучение MPSPayment по транзакции- Parameters:
- transId-
- Returns:
- Throws:
- java.lang.Exception
 
- 
getTransactionByTransIdpublic final Transaction getTransactionByTransId(java.sql.Connection con, int moduleId, java.lang.String mpsId, java.math.BigInteger transId, java.util.Date time) throws java.lang.Exception- Throws:
- java.lang.Exception
 
- 
getTransactionByTransIdpublic final Transaction getTransactionByTransId(java.sql.Connection con, int mid, java.lang.String mpsId, java.lang.String transId, java.util.Date time) throws java.lang.ExceptionПолучение MPSPayment по транзакции- Parameters:
- transId-
- Returns:
- Throws:
- java.lang.Exception
 
- 
cancelTransactionpublic void cancelTransaction(java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf.MPSSystem system, Transaction transaction) throws java.lang.ExceptionОтмена платежа если он еще не отменен- Throws:
- java.lang.Exception
 
- 
clearCanceledTransactionprotected void clearCanceledTransaction(java.sql.Connection con, int mid, int mpsId, Transaction transaction) throws java.lang.Exception- Throws:
- java.lang.Exception
 
- 
searchTransactionListpublic void searchTransactionList(SearchResult<Transaction> searchResult, java.lang.String systemId, int contractId, java.lang.String status, java.sql.Connection con, int moduleId)Получение списка Transaction за период
- 
getTransactionListForDaypublic final java.util.List<Transaction> getTransactionListForDay(java.sql.Connection con, int mid, int mpsId, java.util.Calendar date) throws java.lang.ExceptionПолучение списка платежей за один день- Parameters:
- date-
- Returns:
- Throws:
- java.lang.Exception
 
- 
getTransactionListpublic java.util.List<Transaction> getTransactionList(java.sql.Connection con, int moduleId, int contractId, int yy, int mm)Получение списка платежей для договора за месяц (для web) upd 15.09 получение списка платежей всех систем- Parameters:
- contractId-
- yy-
- mm- is 0 based!
- Returns:
 
- 
getTransactionListpublic java.util.List<Transaction> getTransactionList(Setup setup, java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.Calendar from, java.util.Calendar until, boolean onlyPayed)
- 
getTransactionListpublic java.util.List<Transaction> getTransactionList(java.sql.Connection con, int mid, java.lang.String mpsId, Conf conf, java.util.Calendar from, java.util.Calendar until, boolean onlyPayed)Получение списка платежей за период (Период в пределах одного месяца)- Parameters:
- from-
- until-
- Returns:
 
- 
getTransactionListpublic java.util.List<Transaction> getTransactionList(java.sql.Connection con, int moduleId, java.lang.String mpsId, java.util.Calendar from, java.util.Calendar to, int paymentTypeId, java.lang.String status) throws ru.bitel.bgbilling.common.BGExceptionПолучение списка платежей за произвольный период с возможностью фильтрации по типу платежа (такая возможность используется, например, в платежной системе Paynet)- Parameters:
- con- экземпляр соединения с БД
- moduleId- код модуля MPS
- mpsId- код платежной системы, определяемый в конфигурации модуля MPS
- from- начало периода, с которого выгружаютя платежи
- to- конец период, по который выгружаются платежи
- paymentTypeId- код типа платежа
- status- статус платежа
- Returns:
- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
getTransactionListpublic java.util.List<Transaction> getTransactionList(java.sql.Connection con, int moduleId, int contractId, java.lang.String mpsId, java.lang.String status, Page page) throws ru.bitel.bgbilling.common.BGException- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
getTransactionFromRSprotected final Transaction getTransactionFromRS(java.sql.ResultSet rs) throws java.sql.SQLExceptionПолучение MPSPayment из ResultSet- Parameters:
- rs-
- Returns:
- Throws:
- java.sql.SQLException
 
- 
actionCheckaction - проверка (поиск) договора, возвращает найденный Contract- Parameters:
- request-
- Returns:
- Throws:
- MPSException
 
- 
processRegisterpublic static ProcessRegister processRegister(java.lang.String mpsId, java.lang.String file, java.lang.String fileName, java.util.Calendar from, java.util.Calendar until, Setup setup, java.sql.Connection con, int moduleId) throws ru.bitel.bgbilling.common.BGException- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
getTransactionListFromFileByConfigprotected final java.util.List<Transaction> getTransactionListFromFileByConfig(Conf.MPSSystem system, java.lang.String fileString)
- 
getTransactionListFromFileByPatternprotected final java.util.List<Transaction> getTransactionListFromFileByPattern(java.util.regex.Pattern pattern, java.util.Map<java.lang.String,java.lang.Integer> patternOrder, java.lang.String timeFormat, boolean osmpPrefix, java.lang.String fileString)
- 
processRegisterprotected ProcessRegister processRegister(MPSTransactionManager paymentManager, java.sql.Connection con, int moduleId, java.lang.String mpsId, Conf conf, java.lang.String fileString, java.util.Calendar from, java.util.Calendar until) throws ru.bitel.bgbilling.common.BGExceptionОбработка реестра за период.- Parameters:
- fileString- реестр
- from-
- until-
- Returns:
- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
reviseCancelTransactionspublic void reviseCancelTransactions(java.sql.Connection con, int moduleId, java.lang.String mpsId, org.w3c.dom.Document payments) throws ru.bitel.bgbilling.common.BGExceptionОтмена платежей которых небыло в реестре- Parameters:
- payments-
- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
reviseAddTransactionspublic void reviseAddTransactions(java.sql.Connection con, int mid, java.lang.String mpsId, Setup setup, org.w3c.dom.Document payments)Добавление платежей которые нашлись в реестре но не было в базе- Parameters:
- payments-
 
- 
reviseRestoreTransactionspublic void reviseRestoreTransactions(java.sql.Connection con, int mid, java.lang.String mpsId, Setup setup, org.w3c.dom.Document payments) throws ru.bitel.bgbilling.common.BGExceptionВосстановление платежей, которые в базе были отменены, но в реестре есть- Parameters:
- payments-
- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
getTransactionListFromFileprotected abstract java.util.List<Transaction> getTransactionListFromFile(Conf.MPSSystem system, java.lang.String file)
- 
getUserLoginpublic int getUserLogin(java.sql.Connection con, int mid, int cid)
- 
getUserLoginFormattedpublic java.lang.String getUserLoginFormatted(Setup setup, java.sql.Connection con, int mid, int cid)
- 
setUserLoginpublic void setUserLogin(Setup setup, java.sql.Connection con, int moduleId, int contractId, java.lang.String _login) throws ru.bitel.bgbilling.common.BGException- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
setEncodingpublic void setEncoding(java.lang.String encoding)
- 
getEncodingpublic java.lang.String getEncoding()
- 
getDefaultEncodingpublic java.lang.String getDefaultEncoding()
- 
getResponseprotected abstract byte[] getResponse(java.sql.Connection con, Conf.MPSSystem system, MPSResponse response)Формирование сырого ответа системе из MPSResponse
- 
processResponseEventСоздание и отправка синхронного события ДО ответа платёжной системе. Должно обрабатываться в динамическом коде скриптом-обработчиком. для внесения доп.информации, например "fields" - полей- Parameters:
- response- - ответ платёжной системе
 
- 
getCommentprotected final java.lang.String getComment(Conf.MPSSystem system, Conf conf, java.sql.Connection con, Contract contract)
- 
systemAccountAddprotected void systemAccountAdd(java.sql.Connection con, Conf.MPSSystem system, java.util.Date time, java.math.BigDecimal sum) throws ru.bitel.bgbilling.common.BGException- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
systemAccountDeleteprotected void systemAccountDelete(java.sql.Connection con, int mid, Conf.MPSSystem system, java.util.Date time, java.math.BigDecimal sum) throws ru.bitel.bgbilling.common.BGException- Throws:
- ru.bitel.bgbilling.common.BGException
 
- 
setResponseParameters
- 
getResponseAttributesprotected java.util.Map<java.lang.String,java.lang.String> getResponseAttributes(java.sql.Connection con, Conf.MPSSystem system, MPSResponse response)
- 
xmlSerializeprotected byte[] xmlSerialize(org.w3c.dom.Document doc)
 
-