Passed
Push — master ( 08a82c...2fb4d4 )
by
unknown
02:45
created

TransferTranslator::convertDTOToMangoPayTransfer()   A

Complexity

Conditions 3
Paths 2

Size

Total Lines 23
Code Lines 15

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 23
rs 9.0856
cc 3
eloc 15
nc 2
nop 1
1
<?php
2
/**
3
 * Created by Carl Owens ([email protected])
4
 * Company: PartFire Ltd (www.partfire.co.uk)
5
 * Copyright © 2016 PartFire Ltd. All rights reserved.
6
 *
7
 * User:    Carl Owens
8
 * Date:    06/12/2016
9
 * Time:    22:43
10
 * File:    TransferTranslator.php
11
 **/
12
13
namespace PartFire\MangoPayBundle\Models\DTOs\Translators;
14
15
16
use PartFire\MangoPayBundle\Models\DTOs\Transfer;
17
18
class TransferTranslator
19
{
20
    public function convertDTOToMangoPayTransfer(Transfer $transferDto)
21
    {
22
        $Transfer = new \MangoPay\Transfer();
23
        $Transfer->Tag = $transferDto->getTag();
24
        $Transfer->AuthorId = $transferDto->getAuthorId();
25
        $Transfer->CreditedUserId = $transferDto->getCreditedUserId();
26
27
        if ($transferDto->getDebitedCurrency() && $transferDto->getDebitedAmount()) {
28
            $Transfer->DebitedFunds = new \MangoPay\Money();
29
            $Transfer->DebitedFunds->Currency = $transferDto->getDebitedCurrency();
30
            $Transfer->DebitedFunds->Amount = $transferDto->getDebitedAmount();
31
        }
32
33
34
        $Transfer->Fees = new \MangoPay\Money();
35
        $Transfer->Fees->Currency = $transferDto->getFeeCurrency();
36
        $Transfer->Fees->Amount = $transferDto->getFeeAmount();
37
38
39
        $Transfer->DebitedWalletId = $transferDto->getDebitedWalledId();
40
        $Transfer->CreditedWalletId = $transferDto->getCreditedWalledId();
41
        return $Transfer;
42
    }
43
44
    public function convertMangoPayTransferToDTO(\MangoPay\Transfer $mangoPayTransfer)
45
    {
46
        $transfer = new Transfer();
47
        $transfer->setAuthorId($mangoPayTransfer->AuthorId);
48
        $transfer->setTag($mangoPayTransfer->Tag);
49
        $transfer->setCreditedUserId($mangoPayTransfer->CreditedUserId);
50
        $transfer->setDebitedWalledId($mangoPayTransfer->DebitedWalletId);
51
        $transfer->setCreditedWalledId($mangoPayTransfer->CreditedWalletId);
52
        $transfer->setStatus($mangoPayTransfer->Status);
53
        $transfer->setResultCode($mangoPayTransfer->ResultCode);
54
        $transfer->setResultMessage($mangoPayTransfer->ResultMessage);
55
56
        if (isset($mangoPayTransfer->Fees->Currency))
57
            $transfer->setFeeCurrency($mangoPayTransfer->Fees->Currency);
58
59
        if (isset($mangoPayTransfer->Fees->Amount))
60
            $transfer->setFeeAmount($mangoPayTransfer->Fees->Amount);
61
62
        if (isset($mangoPayTransfer->DebitedFunds->Currency))
63
            $transfer->setDebitedCurrency($mangoPayTransfer->DebitedFunds->Currency);
64
65
        if (isset($mangoPayTransfer->DebitedFunds->Amount))
66
            $transfer->setDebitedAmount($mangoPayTransfer->DebitedFunds->Amount);
67
68
        return $transfer;
69
    }
70
}