PayonePersistenceMapper   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 68
Duplicated Lines 0 %

Importance

Changes 3
Bugs 2 Features 0
Metric Value
wmc 4
eloc 18
c 3
b 2
f 0
dl 0
loc 68
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A mapPaymentPayoneEntityToPayonePaymentTransfer() 0 9 1
A mapPaymentPayoneOrderItemTransferToEntity() 0 13 1
A mapEntityToPaymentPayoneOrderItemTransfer() 0 10 1
A mapPaymentPayoneDetailToPaymentDetailTransfer() 0 5 1
1
<?php
2
3
/**
4
 * MIT License
5
 * Use of this software requires acceptance of the Evaluation License Agreement. See LICENSE file.
6
 */
7
8
namespace SprykerEco\Zed\Payone\Persistence\Propel\Mapper;
9
10
use Generated\Shared\Transfer\PaymentDetailTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfer\PaymentDetailTransfer 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 Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfe...PayoneOrderItemTransfer 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...
12
use Generated\Shared\Transfer\PayonePaymentTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfer\PayonePaymentTransfer 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...
13
use Orm\Zed\Payone\Persistence\SpyPaymentPayone;
0 ignored issues
show
Bug introduced by
The type Orm\Zed\Payone\Persistence\SpyPaymentPayone 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...
14
use Orm\Zed\Payone\Persistence\SpyPaymentPayoneDetail;
0 ignored issues
show
Bug introduced by
The type Orm\Zed\Payone\Persistence\SpyPaymentPayoneDetail 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...
15
use Orm\Zed\Payone\Persistence\SpyPaymentPayoneOrderItem;
0 ignored issues
show
Bug introduced by
The type Orm\Zed\Payone\Persisten...yPaymentPayoneOrderItem 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...
16
17
class PayonePersistenceMapper
18
{
19
    /**
20
     * @param \Orm\Zed\Payone\Persistence\SpyPaymentPayoneOrderItem $paymentPayoneOrderItemEntity
21
     * @param \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer
22
     *
23
     * @return \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer
24
     */
25
    public function mapEntityToPaymentPayoneOrderItemTransfer(
26
        SpyPaymentPayoneOrderItem $paymentPayoneOrderItemEntity,
27
        PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer
28
    ): PaymentPayoneOrderItemTransfer {
29
        $paymentPayoneOrderItemTransfer
30
            ->fromArray($paymentPayoneOrderItemEntity->toArray(), true)
31
            ->setIdPaymentPayone($paymentPayoneOrderItemEntity->getFkPaymentPayone())
32
            ->setIdSalesOrderItem($paymentPayoneOrderItemEntity->getFkSalesOrderItem());
33
34
        return $paymentPayoneOrderItemTransfer;
35
    }
36
37
    /**
38
     * @param \Orm\Zed\Payone\Persistence\SpyPaymentPayone $paymentPayoneEntity
39
     * @param \Generated\Shared\Transfer\PayonePaymentTransfer $payonePaymentTransfer
40
     *
41
     * @return \Generated\Shared\Transfer\PayonePaymentTransfer
42
     */
43
    public function mapPaymentPayoneEntityToPayonePaymentTransfer(
44
        SpyPaymentPayone $paymentPayoneEntity,
45
        PayonePaymentTransfer $payonePaymentTransfer
46
    ): PayonePaymentTransfer {
47
        $payonePaymentTransfer->fromArray($paymentPayoneEntity->toArray(), true);
48
        $paymentDetailTransfer = $this->mapPaymentPayoneDetailToPaymentDetailTransfer($paymentPayoneEntity->getSpyPaymentPayoneDetail());
49
        $payonePaymentTransfer->setPaymentDetail($paymentDetailTransfer);
50
51
        return $payonePaymentTransfer;
52
    }
53
54
    /**
55
     * @param \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer
56
     * @param \Orm\Zed\Payone\Persistence\SpyPaymentPayoneOrderItem $paymentPayoneOrderItemEntity
57
     *
58
     * @return \Orm\Zed\Payone\Persistence\SpyPaymentPayoneOrderItem
59
     */
60
    public function mapPaymentPayoneOrderItemTransferToEntity(
61
        PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer,
62
        SpyPaymentPayoneOrderItem $paymentPayoneOrderItemEntity
63
    ): SpyPaymentPayoneOrderItem {
64
        $paymentPayoneOrderItemEntity->fromArray(
65
            $paymentPayoneOrderItemTransfer->modifiedToArray()
66
        );
67
68
        $paymentPayoneOrderItemEntity
69
            ->setFkSalesOrderItem($paymentPayoneOrderItemTransfer->getIdSalesOrderItem())
70
            ->setFkPaymentPayone($paymentPayoneOrderItemTransfer->getIdPaymentPayone());
71
72
        return $paymentPayoneOrderItemEntity;
73
    }
74
75
    /**
76
     * @param \Orm\Zed\Payone\Persistence\SpyPaymentPayoneDetail $paymentPayoneDetailEntity
77
     *
78
     * @return \Generated\Shared\Transfer\PaymentDetailTransfer
79
     */
80
    public function mapPaymentPayoneDetailToPaymentDetailTransfer(SpyPaymentPayoneDetail $paymentPayoneDetailEntity): PaymentDetailTransfer
81
    {
82
        $paymentDetailTransfer = new PaymentDetailTransfer();
83
84
        return $paymentDetailTransfer->fromArray($paymentPayoneDetailEntity->toArray(), true);
85
    }
86
}
87