for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Apache OSL-2
* Use of this software requires acceptance of the Evaluation License Agreement. See LICENSE file.
*/
namespace SprykerEco\Zed\AmazonPay\Business\Payment\Handler\Transaction;
use Generated\Shared\Transfer\AmazonpayCallTransfer;
use SprykerEco\Shared\AmazonPay\AmazonPayConfig;
class CancelOrderTransaction extends AbstractAmazonpayTransaction
{
* @param \Generated\Shared\Transfer\AmazonpayCallTransfer $amazonPayCallTransfer
*
* @return \Generated\Shared\Transfer\AmazonpayCallTransfer
public function execute(AmazonpayCallTransfer $amazonPayCallTransfer)
$amazonPayCallTransfer = parent::execute($amazonPayCallTransfer);
$this->updatePaymentEntity($amazonPayCallTransfer);
return $amazonPayCallTransfer;
}
* @return void
protected function updatePaymentEntity(AmazonpayCallTransfer $amazonPayCallTransfer)
if (!$this->paymentEntity) {
return;
$isPartialProcessing = $this->isPartialProcessing($this->paymentEntity, $amazonPayCallTransfer);
if (!$this->apiResponse->getResponseHeader()->getIsSuccess()) {
if ($isPartialProcessing) {
$this->paymentEntity = $this->paymentProcessor->duplicatePaymentEntity($this->paymentEntity);
$this->paymentEntity->setStatus(AmazonPayConfig::STATUS_CANCELLED);
$this->paymentEntity->save();
$this->paymentProcessor->assignAmazonpayPaymentToItems($this->paymentEntity, $amazonPayCallTransfer);
* @return bool
protected function allowPartialProcessing()
return false;