Class DefaultAlipayPaymentTransactionStrategy
- java.lang.Object
-
- de.hybris.platform.chinesepspalipayservices.strategies.impl.DefaultAlipayPaymentTransactionStrategy
-
- All Implemented Interfaces:
AlipayPaymentTransactionStrategy
public class DefaultAlipayPaymentTransactionStrategy extends java.lang.Object implements AlipayPaymentTransactionStrategy
-
-
Constructor Summary
Constructors Constructor Description DefaultAlipayPaymentTransactionStrategy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancheckCaptureTransactionEntry(OrderModel orderModel, TransactionStatus status)Checks if the alipay payment transaction exists under an order that has capture entryvoidcreateForNewRequest(OrderModel orderModel, java.lang.String requestUrl)Saves new transaction entry once new direct_pay request is createdprotected voidcreateTransacionForNewRequest(OrderModel orderModel, java.lang.String requestUrl)protected AlipayPaymentTransactionEntryModelcreateTransactionEntryForNewRequest(OrderModel orderModel, AlipayPaymentTransactionModel alipayPaymentTransactionModel)protected AlipayPaymentTransactionDaogetAlipayPaymentTransactionDao()protected AlipayPaymentTransactionEntryDaogetAlipayPaymentTransactionEntryDao()protected ModelServicegetModelService()java.util.Optional<AlipayPaymentTransactionEntryModel>getPaymentTransactionEntry(OrderModel orderModel, TransactionStatus status, PaymentTransactionType paymentTransactionType)Finds payment transaction entry with given parametersprotected java.util.List<AlipayPaymentTransactionEntryModel>getPaymentTransactionEntryByType(OrderModel orderModel, TransactionStatus status, PaymentTransactionType paymentTransactionType)protected KeyGeneratorgetPaymentTransactionKeyGenerator()protected AlipayPaymentTransactionModelgetPaymentTransactionToUpdate(OrderModel orderModel, TransactionStatus status, java.lang.String alipayCode)java.util.Optional<AlipayPaymentTransactionModel>getPaymentTransactionWithCaptureEntry(OrderModel orderModel, TransactionStatus status)Finds payment transaction whose type is captureAlipayPaymentTransactionEntryModelsaveForStatusCheck(OrderModel orderModel, AlipayRawPaymentStatus alipayRawPaymentStatus)Saves alipay payment transaction entry upon the completion of payment status checkvoidsetAlipayPaymentTransactionDao(AlipayPaymentTransactionDao alipayPaymentTransactionDao)voidsetAlipayPaymentTransactionEntryDao(AlipayPaymentTransactionEntryDao alipayPaymentTransactionEntryDao)protected voidsetEntryByNotification(AlipayRawDirectPayNotification directPayNotifyResponseData, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)protected voidsetEntryByRawPaymentStatus(AlipayRawPaymentStatus alipayRawPaymentStatus, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)protected voidsetEntryByTransaction(AlipayPaymentTransactionModel alipayPaymentTransaction, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)voidsetModelService(ModelService modelService)voidsetPaymentTransactionKeyGenerator(KeyGenerator paymentTransactionKeyGenerator)voidupdateForCancelPayment(OrderModel orderModel, AlipayRawCancelPaymentResult alipayRawCancelPaymentResult)Updates alipay payment transaction and entry upon canceling tradevoidupdateForError(OrderModel orderModel, AlipayRawDirectPayErrorInfo alipayRawDirectPayErrorInfo)Updates alipay payment transaction and entry upon receiving error data from alipayvoidupdateForNotification(OrderModel orderModel, AlipayRawDirectPayNotification directPayNotifyResponseData)Updates alipay payment transaction and entry upon receiving notification data from alipayjava.util.Map<OrderModel,java.lang.Boolean>updateForRefundNotification(java.util.List<AlipayRefundData> alipayRefundData)Updates transaction for refund notificationvoidupdateTransactionForRefundRequest(OrderModel orderModel, AlipayRefundRequestData alipayRefundRequestData)Creates a transaction entry when user creates a refund request
-
-
-
Method Detail
-
createForNewRequest
public void createForNewRequest(OrderModel orderModel, java.lang.String requestUrl)
Description copied from interface:AlipayPaymentTransactionStrategySaves new transaction entry once new direct_pay request is created- Specified by:
createForNewRequestin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- the orderrequestUrl- accessible URL
-
createTransacionForNewRequest
protected final void createTransacionForNewRequest(OrderModel orderModel, java.lang.String requestUrl)
-
createTransactionEntryForNewRequest
protected AlipayPaymentTransactionEntryModel createTransactionEntryForNewRequest(OrderModel orderModel, AlipayPaymentTransactionModel alipayPaymentTransactionModel)
-
saveForStatusCheck
public AlipayPaymentTransactionEntryModel saveForStatusCheck(OrderModel orderModel, AlipayRawPaymentStatus alipayRawPaymentStatus)
Description copied from interface:AlipayPaymentTransactionStrategySaves alipay payment transaction entry upon the completion of payment status check- Specified by:
saveForStatusCheckin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- the orderalipayRawPaymentStatus- the trade status check- Returns:
- AlipayPaymentTransactionEntryModel
-
checkCaptureTransactionEntry
public boolean checkCaptureTransactionEntry(OrderModel orderModel, TransactionStatus status)
Description copied from interface:AlipayPaymentTransactionStrategyChecks if the alipay payment transaction exists under an order that has capture entry- Specified by:
checkCaptureTransactionEntryin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order needed to checkstatus- transaction statusTransactionStatus- Returns:
- false if the transaction exists
-
updateForCancelPayment
public void updateForCancelPayment(OrderModel orderModel, AlipayRawCancelPaymentResult alipayRawCancelPaymentResult)
Description copied from interface:AlipayPaymentTransactionStrategyUpdates alipay payment transaction and entry upon canceling trade- Specified by:
updateForCancelPaymentin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- transaction related orderalipayRawCancelPaymentResult- response from alipay upon canceling tradeAlipayRawCancelPaymentResult
-
updateForNotification
public void updateForNotification(OrderModel orderModel, AlipayRawDirectPayNotification directPayNotifyResponseData)
Description copied from interface:AlipayPaymentTransactionStrategyUpdates alipay payment transaction and entry upon receiving notification data from alipay- Specified by:
updateForNotificationin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order handled by the notification dataOrderModeldirectPayNotifyResponseData- notification from alipayAlipayRawDirectPayNotification
-
updateForError
public void updateForError(OrderModel orderModel, AlipayRawDirectPayErrorInfo alipayRawDirectPayErrorInfo)
Description copied from interface:AlipayPaymentTransactionStrategyUpdates alipay payment transaction and entry upon receiving error data from alipay- Specified by:
updateForErrorin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order handled by the error dataalipayRawDirectPayErrorInfo- error data from alipayAlipayRawDirectPayErrorInfo
-
getPaymentTransactionWithCaptureEntry
public java.util.Optional<AlipayPaymentTransactionModel> getPaymentTransactionWithCaptureEntry(OrderModel orderModel, TransactionStatus status)
Description copied from interface:AlipayPaymentTransactionStrategyFinds payment transaction whose type is capture- Specified by:
getPaymentTransactionWithCaptureEntryin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order needed to checkstatus- transaction statusTransactionStatus- Returns:
- an Optional describing the result of AlipayPaymentTransactionEntryModel if a value is present, otherwise an empty Optional
-
getPaymentTransactionEntry
public java.util.Optional<AlipayPaymentTransactionEntryModel> getPaymentTransactionEntry(OrderModel orderModel, TransactionStatus status, PaymentTransactionType paymentTransactionType)
Description copied from interface:AlipayPaymentTransactionStrategyFinds payment transaction entry with given parameters- Specified by:
getPaymentTransactionEntryin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order needed to checkstatus- transaction statusTransactionStatuspaymentTransactionType- payment transaction statusPaymentTransactionType- Returns:
- an optional describing the result of AlipayPaymentTransactionEntryModel if a value is present, otherwise an empty Optional
-
updateForRefundNotification
public java.util.Map<OrderModel,java.lang.Boolean> updateForRefundNotification(java.util.List<AlipayRefundData> alipayRefundData)
Description copied from interface:AlipayPaymentTransactionStrategyUpdates transaction for refund notification- Specified by:
updateForRefundNotificationin interfaceAlipayPaymentTransactionStrategy- Returns:
- refund order payment status map
-
updateTransactionForRefundRequest
public void updateTransactionForRefundRequest(OrderModel orderModel, AlipayRefundRequestData alipayRefundRequestData)
Description copied from interface:AlipayPaymentTransactionStrategyCreates a transaction entry when user creates a refund request- Specified by:
updateTransactionForRefundRequestin interfaceAlipayPaymentTransactionStrategy- Parameters:
orderModel- order needed to refundalipayRefundRequestData- request data sent to alipay
-
getPaymentTransactionEntryByType
protected java.util.List<AlipayPaymentTransactionEntryModel> getPaymentTransactionEntryByType(OrderModel orderModel, TransactionStatus status, PaymentTransactionType paymentTransactionType)
-
getPaymentTransactionToUpdate
protected AlipayPaymentTransactionModel getPaymentTransactionToUpdate(OrderModel orderModel, TransactionStatus status, java.lang.String alipayCode)
-
setEntryByTransaction
protected void setEntryByTransaction(AlipayPaymentTransactionModel alipayPaymentTransaction, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)
-
setEntryByRawPaymentStatus
protected void setEntryByRawPaymentStatus(AlipayRawPaymentStatus alipayRawPaymentStatus, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)
-
setEntryByNotification
protected void setEntryByNotification(AlipayRawDirectPayNotification directPayNotifyResponseData, AlipayPaymentTransactionEntryModel alipayPaymentTransactionEntry)
-
setModelService
public void setModelService(ModelService modelService)
-
setPaymentTransactionKeyGenerator
public void setPaymentTransactionKeyGenerator(KeyGenerator paymentTransactionKeyGenerator)
-
setAlipayPaymentTransactionEntryDao
public void setAlipayPaymentTransactionEntryDao(AlipayPaymentTransactionEntryDao alipayPaymentTransactionEntryDao)
-
setAlipayPaymentTransactionDao
public void setAlipayPaymentTransactionDao(AlipayPaymentTransactionDao alipayPaymentTransactionDao)
-
getModelService
protected ModelService getModelService()
-
getPaymentTransactionKeyGenerator
protected KeyGenerator getPaymentTransactionKeyGenerator()
-
getAlipayPaymentTransactionEntryDao
protected AlipayPaymentTransactionEntryDao getAlipayPaymentTransactionEntryDao()
-
getAlipayPaymentTransactionDao
protected AlipayPaymentTransactionDao getAlipayPaymentTransactionDao()
-
-