Passed
Push — feature/ECO-808-scrutinizer ( 956529...82fb0b )
by Andrey
05:28 queued 01:30
created

SetOrderReferenceDetailsTransaction   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 28
rs 10
c 0
b 0
f 0
wmc 5

1 Method

Rating   Name   Duplication   Size   Complexity  
B execute() 0 20 5
1
<?php
2
3
/**
4
 * Apache OSL-2
5
 * Use of this software requires acceptance of the Evaluation License Agreement. See LICENSE file.
6
 */
7
8
namespace SprykerEco\Zed\Amazonpay\Business\Payment\Handler\Transaction;
9
10
use Generated\Shared\Transfer\AmazonpayCallTransfer;
11
12
class SetOrderReferenceDetailsTransaction extends AbstractAmazonpayTransaction
13
{
14
15
    /**
16
     * @param \Generated\Shared\Transfer\AmazonpayCallTransfer $amazonpayCallTransfer
17
     *
18
     * @return \Generated\Shared\Transfer\AmazonpayCallTransfer
19
     */
20
    public function execute(AmazonpayCallTransfer $amazonpayCallTransfer)
21
    {
22
        if ($amazonpayCallTransfer->getAmazonpayPayment()
23
            && $amazonpayCallTransfer->getAmazonpayPayment()
24
                ->getAuthorizationDetails()
25
            && $amazonpayCallTransfer->getAmazonpayPayment()
26
                ->getAuthorizationDetails()
27
                ->getAuthorizationStatus()
28
                ->getIsPaymentMethodInvalid()
29
        ) {
30
            return $amazonpayCallTransfer;
31
        }
32
33
        if ($amazonpayCallTransfer->getAmazonpayPayment()) {
34
            $amazonpayCallTransfer->getAmazonpayPayment()->setSellerOrderId(
35
                $this->generateOperationReferenceId($amazonpayCallTransfer)
36
            );
37
        }
38
39
        return parent::execute($amazonpayCallTransfer);
40
    }
41
42
}
43