Passed
Push — master ( 31fd3d...9d78ee )
by Agaletskiy
52s queued 14s
created

__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 18

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 18
rs 9.6666
c 0
b 0
f 0
cc 1
nc 1
nop 7
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Lamoda\OmsClient\V2\Dto;
6
7
use DateTimeInterface;
8
9
final class CreateOrderForEmissionICRequestLight extends CreateOrderForEmissionICRequest
10
{
11
    public const RELEASE_METHOD_TYPE_PRODUCTION = 'PRODUCTION';
12
    public const RELEASE_METHOD_TYPE_IMPORT = 'IMPORT';
13
    public const RELEASE_METHOD_TYPE_REMAINS = 'REMAINS';
14
15
    public const CREATE_METHOD_TYPE_SELF_MADE = 'SELF_MADE';
16
    public const CREATE_METHOD_TYPE_CEM = 'CEM';
17
18
    /**
19
     * @var string
20
     */
21
    private $contactPerson;
22
    /**
23
     * @var string
24
     */
25
    private $releaseMethodType;
26
    /**
27
     * @var string
28
     */
29
    private $createMethodType;
30
    /**
31
     * @var string
32
     */
33
    private $productionOrderId;
34
    /**
35
     * @var string
36
     */
37
    private $contractNumber;
38
    /**
39
     * @var DateTimeInterface
40
     */
41
    private $contractDate;
42
43
    /**
44
     * CreateOrderForEmissionICRequestLight constructor.
45
     * @param string $contactPerson
46
     * @param string $releaseMethodType
47
     * @param string $createMethodType
48
     * @param string $productionOrderId
49
     * @param string $contractNumber
50
     * @param DateTimeInterface $contractDate
51
     * @param OrderProduct[] $products
52
     */
53
    public function __construct(
54
        string $contactPerson,
55
        string $releaseMethodType,
56
        string $createMethodType,
57
        string $productionOrderId,
58
        string $contractNumber,
59
        DateTimeInterface $contractDate,
60
        array $products
61
    ) {
62
        parent::__construct($products);
63
64
        $this->contactPerson = $contactPerson;
65
        $this->releaseMethodType = $releaseMethodType;
66
        $this->createMethodType = $createMethodType;
67
        $this->productionOrderId = $productionOrderId;
68
        $this->contractNumber = $contractNumber;
69
        $this->contractDate = $contractDate;
70
    }
71
72
    public function getContactPerson(): string
73
    {
74
        return $this->contactPerson;
75
    }
76
77
    public function getReleaseMethodType(): string
78
    {
79
        return $this->releaseMethodType;
80
    }
81
82
    public function getCreateMethodType(): string
83
    {
84
        return $this->createMethodType;
85
    }
86
87
    public function getProductionOrderId(): string
88
    {
89
        return $this->productionOrderId;
90
    }
91
92
    public function getContractNumber(): string
93
    {
94
        return $this->contractNumber;
95
    }
96
97
    public function getContractDate(): DateTimeInterface
98
    {
99
        return $this->contractDate;
100
    }
101
}