Test Failed
Pull Request — master (#13)
by Vladislav
09:26 queued 01:13
created

TradeHistoryResponseItem   A

Complexity

Total Complexity 29

Size/Duplication

Total Lines 355
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 72
dl 0
loc 355
rs 10
c 1
b 0
f 0
wmc 29

29 Methods

Rating   Name   Duplication   Size   Complexity  
A setExecFee() 0 4 1
A getOrderPrice() 0 3 1
A getTradeId() 0 3 1
A setMatchOrderId() 0 4 1
A setIsBuyer() 0 4 1
A __construct() 0 17 1
A getExecutionTime() 0 3 1
A getFeeTokenId() 0 3 1
A getMakerRebate() 0 3 1
A setCreatTime() 0 4 1
A setTradeId() 0 4 1
A getIsMaker() 0 3 1
A getId() 0 3 1
A getIsBuyer() 0 3 1
A getOrderId() 0 3 1
A setIsMaker() 0 4 1
A getCreatTime() 0 3 1
A setOrderQty() 0 4 1
A setOrderId() 0 4 1
A setSymbol() 0 4 1
A setOrderPrice() 0 4 1
A setExecutionTime() 0 4 1
A getMatchOrderId() 0 3 1
A setId() 0 4 1
A setMakerRebate() 0 4 1
A getOrderQty() 0 3 1
A setFeeTokenId() 0 4 1
A getExecFee() 0 3 1
A getSymbol() 0 3 1
1
<?php
2
3
namespace Carpenstar\ByBitAPI\Spot\Trade\TradeHistory\Response;
4
5
use Carpenstar\ByBitAPI\Core\Helpers\DateTimeHelper;
6
use Carpenstar\ByBitAPI\Core\Objects\AbstractResponse;
7
use Carpenstar\ByBitAPI\Spot\Trade\TradeHistory\Interfaces\ITradeHistoryResponseItemInterface;
8
9
class TradeHistoryResponseItem extends AbstractResponse implements ITradeHistoryResponseItemInterface
10
{
11
    /**
12
     * Name of the trading pair
13
     * @var string $symbol
14
     */
15
    private string $symbol;
16
17
    /**
18
     * Irrelevant for API usage. This field reflects the "Transaction ID" from the Trade History section of the website
19
     * @var int $id
20
     */
21
    private int $id;
22
23
    /**
24
     * Order ID
25
     * @var int $orderId
26
     */
27
    private int $orderId;
28
29
    /**
30
     * The ID for the trade
31
     * @var int $tradeId
32
     */
33
    private int $tradeId;
34
35
    /**
36
     * Last traded price
37
     * @var float $orderPrice
38
     */
39
    private float $orderPrice;
40
41
    /**
42
     * Order quantity
43
     * @var float $orderQty
44
     */
45
    private float $orderQty;
46
47
    /**
48
     * Trading fee (for a single fill)
49
     * @var float $execFee
50
     */
51
    private float $execFee;
52
53
    /**
54
     * Fee Token ID
55
     * @var string $feeTokenId
56
     */
57
    private string $feeTokenId;
58
59
    /**
60
     * Order created time in the match engine
61
     * @var \DateTime $creatTime
62
     */
63
    private \DateTime $creatTime;
64
65
    /**
66
     * 0:Buyer, 1:Seller
67
     * @var int $isBuyer
68
     */
69
    private int $isBuyer;
70
71
    /**
72
     * 0:Maker, 1:Taker
73
     * @var int $isMaker
74
     */
75
    private int $isMaker;
76
77
    /**
78
     * Order ID of the opponent trader
79
     * @var int $matchOrderId
80
     */
81
    private int $matchOrderId;
82
83
    /**
84
     * Maker rebate
85
     * @var int $makerRebate
86
     */
87
    private int $makerRebate;
88
89
    /**
90
     * Order execution time
91
     * @var \DateTime $executionTime
92
     */
93
    private \DateTime $executionTime;
94
95
    public function __construct(array $data)
96
    {
97
        $this
98
            ->setOrderId($data['orderId'])
99
            ->setOrderQty($data['orderQty'])
100
            ->setSymbol($data['symbol'])
101
            ->setOrderPrice($data['orderPrice'])
102
            ->setCreatTime($data['creatTime'])
103
            ->setExecFee($data['execFee'])
104
            ->setExecutionTime($data['executionTime'])
105
            ->setFeeTokenId($data['feeTokenId'])
106
            ->setIsBuyer($data['isBuyer'])
107
            ->setIsMaker($data['isMaker'])
108
            ->setMakerRebate($data['makerRebate'])
109
            ->setMatchOrderId($data['matchOrderId'])
110
            ->setTradeId($data['tradeId'])
111
            ->setId($data['id']);
112
    }
113
114
    /**
115
     * @return int
116
     */
117
    public function getOrderId(): int
118
    {
119
        return $this->orderId;
120
    }
121
122
    /**
123
     * @param int $orderId
124
     * @return TradeHistoryResponseItem
125
     */
126
    private function setOrderId(int $orderId): self
127
    {
128
        $this->orderId = $orderId;
129
        return $this;
130
    }
131
132
    /**
133
     * @return string
134
     */
135
    public function getSymbol(): string
136
    {
137
        return $this->symbol;
138
    }
139
140
    /**
141
     * @param string $symbol
142
     * @return TradeHistoryResponseItem
143
     */
144
    private function setSymbol(string $symbol): self
145
    {
146
        $this->symbol = $symbol;
147
        return $this;
148
    }
149
150
    /**
151
     * @return float
152
     */
153
    public function getOrderQty(): float
154
    {
155
        return $this->orderQty;
156
    }
157
158
    /**
159
     * @param float $orderQty
160
     * @return TradeHistoryResponseItem
161
     */
162
    private function setOrderQty(float $orderQty): self
163
    {
164
        $this->orderQty = $orderQty;
165
        return $this;
166
    }
167
168
    /**
169
     * @return float
170
     */
171
    public function getOrderPrice(): float
172
    {
173
        return $this->orderPrice;
174
    }
175
176
    /**
177
     * @param float $orderPrice
178
     * @return TradeHistoryResponseItem
179
     */
180
    private function setOrderPrice(float $orderPrice): self
181
    {
182
        $this->orderPrice = $orderPrice;
183
        return $this;
184
    }
185
186
    /**
187
     * @return \DateTime
188
     */
189
    public function getCreatTime(): \DateTime
190
    {
191
        return $this->creatTime;
192
    }
193
194
    /**
195
     * @param int $creatTime
196
     * @return TradeHistoryResponseItem
197
     */
198
    private function setCreatTime(int $creatTime): self
199
    {
200
        $this->creatTime = DateTimeHelper::makeFromTimestamp($creatTime);
201
        return $this;
202
    }
203
204
    /**
205
     * @return float
206
     */
207
    public function getExecFee(): float
208
    {
209
        return $this->execFee;
210
    }
211
212
    /**
213
     * @param float $execFee
214
     * @return TradeHistoryResponseItem
215
     */
216
    private function setExecFee(float $execFee): self
217
    {
218
        $this->execFee = $execFee;
219
        return $this;
220
    }
221
222
    /**
223
     * @return \DateTime
224
     */
225
    public function getExecutionTime(): \DateTime
226
    {
227
        return $this->executionTime;
228
    }
229
230
    /**
231
     * @param int $executionTime
232
     * @return TradeHistoryResponseItem
233
     */
234
    private function setExecutionTime(int $executionTime): self
235
    {
236
        $this->executionTime = DateTimeHelper::makeFromTimestamp($executionTime);
237
        return $this;
238
    }
239
240
    /**
241
     * @return string
242
     */
243
    public function getFeeTokenId(): string
244
    {
245
        return $this->feeTokenId;
246
    }
247
248
    /**
249
     * @param string $feeTokenId
250
     * @return TradeHistoryResponseItem
251
     */
252
    private function setFeeTokenId(string $feeTokenId): self
253
    {
254
        $this->feeTokenId = $feeTokenId;
255
        return $this;
256
    }
257
258
    /**
259
     * @return int
260
     */
261
    public function getId(): int
262
    {
263
        return $this->id;
264
    }
265
266
    /**
267
     * @param int $id
268
     * @return TradeHistoryResponseItem
269
     */
270
    private function setId(int $id): self
271
    {
272
        $this->id = $id;
273
        return $this;
274
    }
275
276
    /**
277
     * @return int
278
     */
279
    public function getIsBuyer(): int
280
    {
281
        return $this->isBuyer;
282
    }
283
284
    /**
285
     * @param int $isBuyer
286
     * @return TradeHistoryResponseItem
287
     */
288
    private function setIsBuyer(int $isBuyer): self
289
    {
290
        $this->isBuyer = $isBuyer;
291
        return $this;
292
    }
293
294
    /**
295
     * @return int
296
     */
297
    public function getIsMaker(): int
298
    {
299
        return $this->isMaker;
300
    }
301
302
    /**
303
     * @param int $isMaker
304
     * @return TradeHistoryResponseItem
305
     */
306
    private function setIsMaker(int $isMaker): self
307
    {
308
        $this->isMaker = $isMaker;
309
        return $this;
310
    }
311
312
    /**
313
     * @return int
314
     */
315
    public function getMakerRebate(): int
316
    {
317
        return $this->makerRebate;
318
    }
319
320
    /**
321
     * @param int $makerRebate
322
     * @return TradeHistoryResponseItem
323
     */
324
    private function setMakerRebate(int $makerRebate): self
325
    {
326
        $this->makerRebate = $makerRebate;
327
        return $this;
328
    }
329
330
    /**
331
     * @return int
332
     */
333
    public function getMatchOrderId(): int
334
    {
335
        return $this->matchOrderId;
336
    }
337
338
    /**
339
     * @param int $matchOrderId
340
     * @return TradeHistoryResponseItem
341
     */
342
    private function setMatchOrderId(int $matchOrderId): self
343
    {
344
        $this->matchOrderId = $matchOrderId;
345
        return $this;
346
    }
347
348
    /**
349
     * @return int
350
     */
351
    public function getTradeId(): int
352
    {
353
        return $this->tradeId;
354
    }
355
356
    /**
357
     * @param int $tradeId
358
     * @return TradeHistoryResponseItem
359
     */
360
    private function setTradeId(int $tradeId): self
361
    {
362
        $this->tradeId = $tradeId;
363
        return $this;
364
    }
365
}