Passed
Push — main ( 15bc37...ad68f8 )
by Aleksandr
08:35
created

TransferMoneyAct::getDate()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 1
c 1
b 0
f 1
nc 1
nop 0
dl 0
loc 3
ccs 2
cts 2
cp 1
crap 1
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
namespace DalliSDK\Models;
6
7
use DalliSDK\Traits\Fillable;
8
use JMS\Serializer\Annotation as JMS;
9
10
/**
11
 * Модель для акта передачи денег
12
 *
13
 * @see https://api.dalli-service.com/v1/doc/moneyTransfers
14
 *
15
 * @JMS\XmlRoot("act")
16
 *
17
 * @template-implements \IteratorAggregate<int, OrderTransferMoney>
18
 */
19
class TransferMoneyAct implements \IteratorAggregate
20
{
21
    use Fillable;
22
23
    /**
24
     * Номер акта
25
     *
26
     * @JMS\XmlAttribute()
27
     * @JMS\Type("string")
28
     * @JMS\SerializedName("number")
29
     */
30
    private string $number;
31
32
    /**
33
     * Дата создания акта (Y-m-d)
34
     *
35
     * @JMS\XmlAttribute()
36
     * @JMS\Type("DateTimeImmutable<'Y-m-d'>")
37
     * @JMS\SerializedName("date")
38
     */
39
    private \DateTimeImmutable $date;
40
41
    /**
42
     * Дата оплаты (Y-m-d)
43
     *
44
     * @JMS\XmlAttribute()
45
     * @JMS\Type("DateTimeImmutable<'Y-m-d'>")
46
     * @JMS\SerializedName("pay")
47
     */
48
    private \DateTimeImmutable $pay;
49
50
    /**
51
     * Размер платёжного поручения
52
     *
53
     * @JMS\XmlAttribute()
54
     * @JMS\Type("float")
55
     * @JMS\SerializedName("price")
56
     */
57
    private float $price;
58
59
    /**
60
     * Номер платёжного поручения
61
     *
62
     * @JMS\XmlAttribute()
63
     * @JMS\Type("int")
64
     * @JMS\SerializedName("payNo")
65
     */
66
    private int $payNo;
67
68
    /**
69
     * @JMS\Type("array<DalliSDK\Models\OrderTransferMoney>")
70
     * @JMS\XmlList(inline = true, entry = "order")
71
     * @var OrderTransferMoney[]
72
     */
73
    private array $orders;
74
75
    /**
76
     * @return \Traversable|OrderTransferMoney[]
77
     */
78 1
    public function getIterator(): \ArrayIterator
79
    {
80 1
        return new \ArrayIterator($this->getOrders());
81
    }
82
83
    /**
84
     * @return OrderTransferMoney[]
85
     */
86 2
    public function getOrders(): array
87
    {
88 2
        return $this->orders;
89
    }
90
91
    /**
92
     * @return string
93
     */
94 2
    public function getNumber(): string
95
    {
96 2
        return $this->number;
97
    }
98
99
    /**
100
     * @return \DateTimeImmutable
101
     */
102 2
    public function getDate(): \DateTimeImmutable
103
    {
104 2
        return $this->date;
105
    }
106
107
    /**
108
     * @return \DateTimeImmutable
109
     */
110 2
    public function getPay(): \DateTimeImmutable
111
    {
112 2
        return $this->pay;
113
    }
114
115
    /**
116
     * @return float
117
     */
118 2
    public function getPrice(): float
119
    {
120 2
        return $this->price;
121
    }
122
123
    /**
124
     * @return int
125
     */
126 2
    public function getPayNo(): int
127
    {
128 2
        return $this->payNo;
129
    }
130
}
131