TokenTransactionAcceptedModel   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 83
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 76
dl 0
loc 83
rs 10
c 0
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A toArray() 0 40 1
1
<?php
2
3
declare(strict_types = 1);
4
5
namespace Korobovn\CloudPayments\Message\Response\Model;
6
7
use Korobovn\CloudPayments\Message\Traits\ModelField\NameString;
8
use Korobovn\CloudPayments\Message\Traits\ModelField\AmountFloat;
9
use Korobovn\CloudPayments\Message\Traits\ModelField\TokenString;
10
use Korobovn\CloudPayments\Message\Traits\ModelField\IssuerString;
11
use Korobovn\CloudPayments\Message\Traits\ModelField\ReasonString;
12
use Korobovn\CloudPayments\Message\Traits\ModelField\StatusString;
13
use Korobovn\CloudPayments\Message\Traits\ModelField\TestModeBool;
14
use Korobovn\CloudPayments\Message\Traits\ModelField\ReasonCodeInt;
15
use Korobovn\CloudPayments\Message\Traits\ModelField\StatusCodeInt;
16
use Korobovn\CloudPayments\Message\Traits\ModelField\AuthCodeString;
17
use Korobovn\CloudPayments\Message\Traits\ModelField\AuthDateString;
18
use Korobovn\CloudPayments\Message\Traits\ModelField\CardTypeString;
19
use Korobovn\CloudPayments\Message\Traits\ModelField\CurrencyString;
20
use Korobovn\CloudPayments\Message\Traits\ModelField\AccountIdString;
21
use Korobovn\CloudPayments\Message\Traits\ModelField\CardTypeCodeInt;
22
use Korobovn\CloudPayments\Message\Traits\ModelField\CurrencyCodeInt;
23
use Korobovn\CloudPayments\Message\Traits\ModelField\EmailStringNull;
24
use Korobovn\CloudPayments\Message\Traits\ModelField\InvoiceIdString;
25
use Korobovn\CloudPayments\Message\Traits\ModelField\IpAddressString;
26
use Korobovn\CloudPayments\Message\Traits\ModelField\IpCountryString;
27
use Korobovn\CloudPayments\Message\Traits\ModelField\IpCityStringNull;
28
use Korobovn\CloudPayments\Message\Traits\ModelField\TransactionIdInt;
29
use Korobovn\CloudPayments\Message\Traits\ModelField\AuthDateIsoString;
30
use Korobovn\CloudPayments\Message\Traits\ModelField\CreatedDateString;
31
use Korobovn\CloudPayments\Message\Traits\ModelField\DescriptionString;
32
use Korobovn\CloudPayments\Message\Traits\ModelField\CardFirstSixString;
33
use Korobovn\CloudPayments\Message\Traits\ModelField\CardLastFourString;
34
use Korobovn\CloudPayments\Message\Traits\ModelField\IpRegionStringNull;
35
use Korobovn\CloudPayments\Message\Traits\ModelField\JsonDataStringNull;
36
use Korobovn\CloudPayments\Message\Traits\ModelField\IpLatitudeFloatNull;
37
use Korobovn\CloudPayments\Message\Traits\ModelField\CreatedDateIsoString;
38
use Korobovn\CloudPayments\Message\Traits\ModelField\IpDistrictStringNull;
39
use Korobovn\CloudPayments\Message\Traits\ModelField\IpLongitudeFloatNull;
40
use Korobovn\CloudPayments\Message\Traits\ModelField\ConfirmDateStringNull;
41
use Korobovn\CloudPayments\Message\Traits\ModelField\CardHolderMessageString;
42
use Korobovn\CloudPayments\Message\Traits\ModelField\IssuerBankCountryString;
43
use Korobovn\CloudPayments\Message\Traits\ModelField\ConfirmDateIsoStringNull;
44
45
/**
46
 * @see https://developers.cloudpayments.ru/#oplata-po-kriptogramme
47
 */
48
class TokenTransactionAcceptedModel extends AbstractModel
49
{
50
    use TransactionIdInt,
51
        AmountFloat,
52
        CurrencyString,
53
        CurrencyCodeInt,
54
        InvoiceIdString,
55
        AccountIdString,
56
        EmailStringNull,
57
        DescriptionString,
58
        JsonDataStringNull,
59
        CreatedDateString,
60
        CreatedDateIsoString,
61
        AuthDateString,
62
        AuthDateIsoString,
63
        ConfirmDateStringNull,
64
        ConfirmDateIsoStringNull,
65
        AuthCodeString,
66
        TestModeBool,
67
        IpAddressString,
68
        IpCountryString,
69
        IpCityStringNull,
70
        IpRegionStringNull,
71
        IpDistrictStringNull,
72
        IpLatitudeFloatNull,
73
        IpLongitudeFloatNull,
74
        CardFirstSixString,
75
        CardLastFourString,
76
        CardTypeString,
77
        CardTypeCodeInt,
78
        IssuerString,
79
        IssuerBankCountryString,
80
        StatusString,
81
        StatusCodeInt,
82
        ReasonString,
83
        ReasonCodeInt,
84
        CardHolderMessageString,
85
        NameString,
86
        TokenString;
87
88
    /**
89
     * {@inheritDoc}
90
     */
91
    public function toArray(): array
92
    {
93
        return [
94
            'TransactionId'     => $this->getTransactionId(),
95
            'Amount'            => $this->getAmount(),
96
            'Currency'          => $this->getCurrency(),
97
            'CurrencyCode'      => $this->getCurrencyCode(),
98
            'InvoiceId'         => $this->getInvoiceId(),
99
            'AccountId'         => $this->getAccountId(),
100
            'Email'             => $this->getEmail(),
101
            'Description'       => $this->getDescription(),
102
            'JsonData'          => $this->getJsonData(),
103
            'CreatedDate'       => $this->getCreatedDate(),
104
            'CreatedDateIso'    => $this->getCreatedDateIso(),
105
            'AuthDate'          => $this->getAuthDate(),
106
            'AuthDateIso'       => $this->getAuthDateIso(),
107
            'ConfirmDate'       => $this->getConfirmDate(),
108
            'ConfirmDateIso'    => $this->getConfirmDateIso(),
109
            'AuthCode'          => $this->getAuthCode(),
110
            'TestMode'          => $this->isTestMode(),
111
            'IpAddress'         => $this->getIpAddress(),
112
            'IpCountry'         => $this->getIpCountry(),
113
            'IpCity'            => $this->getIpCity(),
114
            'IpRegion'          => $this->getIpRegion(),
115
            'IpDistrict'        => $this->getIpDistrict(),
116
            'IpLatitude'        => $this->getIpLatitude(),
117
            'IpLongitude'       => $this->getIpLongitude(),
118
            'CardFirstSix'      => $this->getCardFirstSix(),
119
            'CardLastFour'      => $this->getCardLastFour(),
120
            'CardType'          => $this->getCardType(),
121
            'CardTypeCode'      => $this->getCardTypeCode(),
122
            'Issuer'            => $this->getIssuer(),
123
            'IssuerBankCountry' => $this->getIssuerBankCountry(),
124
            'Status'            => $this->getStatus(),
125
            'StatusCode'        => $this->getStatusCode(),
126
            'Reason'            => $this->getReason(),
127
            'ReasonCode'        => $this->getReasonCode(),
128
            'CardHolderMessage' => $this->getCardHolderMessage(),
129
            'Name'              => $this->getName(),
130
            'Token'             => $this->getToken(),
131
        ];
132
    }
133
}
134