Passed
Pull Request — master (#29)
by Aleksey
08:31 queued 03:27
created

SetOrderReferenceDetailsTransaction::execute()   B

Complexity

Conditions 7
Paths 3

Size

Total Lines 25
Code Lines 17

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 7
eloc 17
nc 3
nop 1
dl 0
loc 25
rs 8.8333
c 0
b 0
f 0
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;
1 ignored issue
show
Bug introduced by
The type Generated\Shared\Transfer\AmazonpayCallTransfer was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
11
use SprykerEco\Shared\AmazonPay\AmazonPayConfig;
12
13
class SetOrderReferenceDetailsTransaction extends AbstractAmazonpayTransaction
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()
0 ignored issues
show
introduced by
Consider adding parentheses for clarity. Current Interpretation: ($amazonPayCallTransfer-...nPayConfig::STATUS_OPEN, Probably Intended Meaning: $amazonPayCallTransfer->...PayConfig::STATUS_OPEN)
Loading history...
23
            && $amazonPayCallTransfer->getAmazonpayPayment()
24
                ->getAuthorizationDetails()
25
            && $amazonPayCallTransfer->getAmazonpayPayment()
26
                ->getAuthorizationDetails()
27
                ->getAuthorizationStatus()
28
                ->getState() === AmazonPayConfig::STATUS_PAYMENT_METHOD_INVALID
29
            || $amazonPayCallTransfer->getAmazonpayPayment()
30
                ->getOrderReferenceStatus()
31
            && $amazonPayCallTransfer->getAmazonpayPayment()
32
                ->getOrderReferenceStatus()
33
                ->getState() === AmazonPayConfig::STATUS_OPEN
34
        ) {
35
            return $amazonPayCallTransfer;
36
        }
37
38
        if ($amazonPayCallTransfer->getAmazonpayPayment()) {
39
            $amazonPayCallTransfer->getAmazonpayPayment()->setSellerOrderId(
40
                $this->generateOperationReferenceId($amazonPayCallTransfer)
41
            );
42
        }
43
44
        return parent::execute($amazonPayCallTransfer);
45
    }
46
}
47