CryptogramTransactionAcceptedModel   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 85
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 78
dl 0
loc 85
rs 10
c 0
b 0
f 0
wmc 1

1 Method

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