Failed Conditions
Push — master ( 825113...ddc2dd )
by Adrien
02:43
created

EntryTransactionDetail::setReference()   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 0
Metric Value
cc 1
eloc 1
c 0
b 0
f 0
nc 1
nop 1
dl 0
loc 3
rs 10
ccs 2
cts 2
cp 1
crap 1
1
<?php
2
3
namespace Genkgo\Camt\DTO;
4
5
use Money\Money;
6
7
/**
8
 * Class EntryTransactionDetail
9
 *
10
 * @package Genkgo\Camt\DTO
11
 */
12
class EntryTransactionDetail
13
{
14
    /**
15
     * @var null|Reference
16
     */
17
    private $reference;
18
    /**
19
     * @var RelatedParty[]
20
     */
21
    private $relatedParties = [];
22
    /**
23
     * @var RelatedAgent[]
24
     */
25
    private $relatedAgents = [];
26
    /**
27
     * @var null|RemittanceInformation
28
     */
29
    private $remittanceInformation;
30
    /**
31
     * @var RelatedDates
32
     */
33
    private $relatedDates;
34
    /**
35
     * @var ReturnInformation
36
     */
37
    private $returnInformation;
38
    /**
39
     * @var null|AdditionalTransactionInformation
40
     */
41
    private $additionalTransactionInformation;
42
43
    /**
44
     * @var BankTransactionCode
45
     */
46
    private $bankTransactionCode;
47
48
    /**
49
     * @var Charges
50
     */
51
    private $charges;
52
53
    /**
54
     * @var null|Money
55
     */
56
    private $amountDetails;
57
58
    /**
59
     * @var null|Money
60
     */
61
    private $amount;
62
63
    /**
64
     * @param null|Reference $reference
65
     */
66 18
    public function setReference(?Reference $reference)
67
    {
68 18
        $this->reference = $reference;
69 18
    }
70
71
    /**
72
     * @return null|Reference
73
     */
74 2
    public function getReference(): ?Reference
75
    {
76 2
        return $this->reference;
77
    }
78
79
    /**
80
     * @param RelatedParty $relatedParty
81
     */
82 22
    public function addRelatedParty(RelatedParty $relatedParty)
83
    {
84 22
        $this->relatedParties[] = $relatedParty;
85 22
    }
86
87
    /**
88
     * @return RelatedParty[]
89
     */
90 3
    public function getRelatedParties()
91
    {
92 3
        return $this->relatedParties;
93
    }
94
95
    /**
96
     * @return null|RelatedParty
97
     */
98 1
    public function getRelatedParty(): ?RelatedParty
99
    {
100 1
        if (isset($this->relatedParties[0])) {
101 1
            return $this->relatedParties[0];
102
        }
103
104
        return null;
105
    }
106
107
    /**
108
     * @param RelatedAgent $relatedAgent
109
     */
110 17
    public function addRelatedAgent(RelatedAgent $relatedAgent)
111
    {
112 17
        $this->relatedAgents[] = $relatedAgent;
113 17
    }
114
115
    /**
116
     * @return RelatedAgent[]
117
     */
118 1
    public function getRelatedAgents()
119
    {
120 1
        return $this->relatedAgents;
121
    }
122
123
    /**
124
     * @return null|RelatedAgent
125
     */
126
    public function getRelatedAgent(): ?RelatedAgent
127
    {
128
        if (isset($this->relatedAgents[0])) {
129
            return $this->relatedAgents[0];
130
        }
131
132
        return null;
133
    }
134
135
    /**
136
     * @param null|RemittanceInformation $remittanceInformation
137
     */
138 18
    public function setRemittanceInformation(?RemittanceInformation $remittanceInformation)
139
    {
140 18
        $this->remittanceInformation = $remittanceInformation;
141 18
    }
142
143
    /**
144
     * @return null|RemittanceInformation
145
     */
146 4
    public function getRemittanceInformation(): ?RemittanceInformation
147
    {
148 4
        return $this->remittanceInformation;
149
    }
150
151
    /**
152
     * @param RelatedDates $relatedDates
153
     */
154
    public function setRelatedDates(RelatedDates $relatedDates)
155
    {
156
        $this->relatedDates = $relatedDates;
157
    }
158
159
    /**
160
     * @return RelatedDates
161
     */
162
    public function getRelatedDates()
163
    {
164
        return $this->relatedDates;
165
    }
166
167
    /**
168
     * @return null|ReturnInformation
169
     */
170
    public function getReturnInformation(): ?ReturnInformation
171
    {
172
        return $this->returnInformation;
173
    }
174
175
    /**
176
     * @param ReturnInformation $information
177
     */
178
    public function setReturnInformation(ReturnInformation $information)
179
    {
180
        $this->returnInformation = $information;
181
    }
182
183
    /**
184
     * @param null|AdditionalTransactionInformation $additionalTransactionInformation
185
     */
186
    public function setAdditionalTransactionInformation(?AdditionalTransactionInformation $additionalTransactionInformation)
187
    {
188
        $this->additionalTransactionInformation = $additionalTransactionInformation;
189
    }
190
191
    /**
192
     * @return null|AdditionalTransactionInformation
193
     */
194
    public function getAdditionalTransactionInformation(): ?AdditionalTransactionInformation
195
    {
196
        return $this->additionalTransactionInformation;
197
    }
198
199
    /**
200
     * @return BankTransactionCode
201
     */
202 1
    public function getBankTransactionCode()
203
    {
204 1
        return $this->bankTransactionCode;
205
    }
206
207
    /**
208
     * @param BankTransactionCode $bankTransactionCode
209
     */
210 22
    public function setBankTransactionCode(BankTransactionCode $bankTransactionCode)
211
    {
212 22
        $this->bankTransactionCode = $bankTransactionCode;
213 22
    }
214
215
    /**
216
     * @return Charges
217
     */
218
    public function getCharges()
219
    {
220
        return $this->charges;
221
    }
222
223
    /**
224
     * @param Charges $charges
225
     */
226 3
    public function setCharges(Charges $charges)
227
    {
228 3
        $this->charges = $charges;
229 3
    }
230
231
    /**
232
     * @return null|Money
233
     */
234
    public function getAmountDetails(): ?Money
235
    {
236
        return $this->amountDetails;
237
    }
238
239
    /**
240
     * @param null|Money $amountDetails
241
     */
242 7
    public function setAmountDetails(?Money $amountDetails)
243
    {
244 7
        $this->amountDetails = $amountDetails;
245 7
    }
246
247
    /**
248
     * @return null|Money
249
     */
250
    public function getAmount(): ?Money
251
    {
252
        return $this->amount;
253
    }
254
255
    /**
256
     * @param null|Money $amount
257
     */
258 14
    public function setAmount(?Money $amount)
259
    {
260 14
        $this->amount = $amount;
261 14
    }
262
}
263