WsData.php
1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
namespace trader\struct;
require_once __DIR__ . '/WsDataTrade.php';
use trader\struct\WsDataTrade;
use trader\struct\WsDataPos;
use trader\struct\WsDataOrder;
use trader\struct\WsDataAccount;
// 综合ws数据
class WsData
{
public string $platform;
public string $dataType; // trade | order | account | pos
public ?WsDataTrade $trade = null;
public ?WsDataPos $pos = null;
public ?WsDataOrder $order = null;
public ?WsDataAccount $account = null;
public function __construct(string $platform, string $dataType, WsDataTrade $trade = null, WsDataPos $pos = null, WsDataOrder $order = null, $account = null)
{
$this->platform = $platform;
$this->dataType = $dataType;
$this->trade = $trade;
$this->pos = $pos;
$this->order = $order;
$this->account = $account;
}
public function toArray()
{
return [
'platform' => $this->platform,
'dataType' => $this->dataType,
'trade' => $this->trade?->toArray(),
'pos' => $this->pos?->toArray(),
'order' => $this->order?->toArray(),
'account' => $this->account?->toArray(),
];
}
}