Completed
Push — master ( 8f260e...cc8332 )
by Oleksandr
17s queued 14s
created

PayoneEntityManager   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 22
dl 0
loc 50
rs 10
c 1
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A createPaymentPayoneOrderItem() 0 13 1
A updatePaymentPayoneOrderItem() 0 23 2
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;
9
10
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...
11
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...
12
use Spryker\Zed\Kernel\Persistence\AbstractEntityManager;
13
14
/**
15
 * @method \SprykerEco\Zed\Payone\Persistence\PayonePersistenceFactory getFactory()
16
 */
17
class PayoneEntityManager extends AbstractEntityManager implements PayoneEntityManagerInterface
18
{
19
    /**
20
     * @param \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer
21
     *
22
     * @return \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer
23
     */
24
    public function createPaymentPayoneOrderItem(PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer): PaymentPayoneOrderItemTransfer
25
    {
26
        $paymentPayoneOrderItemEntity = $this->getFactory()
27
            ->createPayonePersistenceMapper()
28
            ->mapPaymentPayoneOrderItemTransferToEntity($paymentPayoneOrderItemTransfer, new SpyPaymentPayoneOrderItem());
29
30
        $paymentPayoneOrderItemEntity->save();
31
32
        $paymentPayoneOrderItemTransfer->setIdPaymentPayoneOrderItem(
33
            $paymentPayoneOrderItemEntity->getIdPaymentPayoneOrderItem()
34
        );
35
36
        return $paymentPayoneOrderItemTransfer;
37
    }
38
39
    /**
40
     * @param \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer
41
     *
42
     * @return \Generated\Shared\Transfer\PaymentPayoneOrderItemTransfer
43
     */
44
    public function updatePaymentPayoneOrderItem(PaymentPayoneOrderItemTransfer $paymentPayoneOrderItemTransfer): PaymentPayoneOrderItemTransfer
45
    {
46
        $paymentPayoneOrderItemEntity = $this->getFactory()
47
            ->createPaymentPayoneOrderItemQuery()
48
            ->filterByFkSalesOrderItem($paymentPayoneOrderItemTransfer->getIdSalesOrderItem())
49
            ->filterByFkPaymentPayone($paymentPayoneOrderItemTransfer->getIdPaymentPayone())
50
            ->findOne();
51
52
        if (!$paymentPayoneOrderItemEntity) {
53
            return $paymentPayoneOrderItemTransfer;
54
        }
55
56
        $paymentPayoneOrderItemEntity = $this->getFactory()
57
            ->createPayonePersistenceMapper()
58
            ->mapPaymentPayoneOrderItemTransferToEntity($paymentPayoneOrderItemTransfer, $paymentPayoneOrderItemEntity);
59
60
        $paymentPayoneOrderItemEntity->save();
61
62
        $paymentPayoneOrderItemTransfer->setIdPaymentPayoneOrderItem(
63
            $paymentPayoneOrderItemEntity->getIdPaymentPayoneOrderItem()
64
        );
65
66
        return $paymentPayoneOrderItemTransfer;
67
    }
68
}
69