Passed
Push — master ( 10cd5c...92ee40 )
by Jhao
02:18
created

TrackingEventItemParameters   A

Complexity

Total Complexity 12

Size/Duplication

Total Lines 165
Duplicated Lines 0 %

Test Coverage

Coverage 66.67%

Importance

Changes 0
Metric Value
eloc 25
dl 0
loc 165
ccs 16
cts 24
cp 0.6667
rs 10
c 0
b 0
f 0
wmc 12

12 Methods

Rating   Name   Duplication   Size   Complexity  
A getBarcode() 0 3 1
A getItemDescription() 0 3 1
A getMailRank() 0 3 1
A getMailType() 0 3 1
A getMaxInternationalWeight() 0 3 1
A getWeight() 0 3 1
A getMailCategory() 0 3 1
A getPostMark() 0 3 1
A getInternum() 0 3 1
A getValidInternationalType() 0 3 1
A getMaxDomesticWeight() 0 3 1
A getValidDomesticType() 0 3 1
1
<?php
2
3
/**
4
 * This file is part of RussianPost SDK package.
5
 *
6
 * © Appwilio (http://appwilio.com), greabock (https://github.com/greabock), JhaoDa (https://github.com/jhaoda)
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Appwilio\RussianPostSDK\Tracking\Single;
15
16
final class TrackingEventItemParameters
17
{
18
    /** @var string */
19
    private $Barcode;
20
21
    /** @var string|null */
22
    private $Internum;
23
24
    /** @var string */
25
    private $ValidRuType;
26
27
    /** @var string */
28
    private $ValidEnType;
29
30
    /** @var string */
31
    private $ComplexItemName;
32
33
    /** @var Parameter */
34
    private $MailRank;
35
36
    /** @var Parameter */
37
    private $PostMark;
38
39
    /** @var Parameter */
40
    private $MailType;
41
42
    /** @var Parameter */
43
    private $MailCtg;
44
45
    /** @var string */
46
    private $Mass;
47
48
    /** @var string */
49
    private $MaxMassRu;
50
51
    /** @var string */
52
    private $MaxMassEn;
53
54
    /**
55
     * Идентификатор (ШПИ) почтового отправления, текущий для данной операции (Barcode).
56
     *
57
     * @return string
58
     */
59 1
    public function getBarcode(): string
60
    {
61 1
        return $this->Barcode;
62
    }
63
64
    /**
65
     * Служебная информация, идентифицирующая отправление, может иметь значение ДМ квитанции,
66
     * связанной с отправлением или иметь значение `null` (Internum).
67
     *
68
     * @return string|null
69
     */
70
    public function getInternum(): ?string
71
    {
72
        return $this->Internum;
73
    }
74
75
    /**
76
     * Признак корректности вида и категории отправления для внутренней пересылки (ValidRuType).
77
     *
78
     * @return string
79
     */
80
    public function getValidDomesticType(): string
81
    {
82
        return $this->ValidRuType;
83
    }
84
85
    /**
86
     * Признак корректности вида и категории отправления для международной пересылки (ValidEnType).
87
     *
88
     * @return string
89
     */
90
    public function getValidInternationalType(): string
91
    {
92
        return $this->ValidEnType;
93
    }
94
95
    /**
96
     * Текстовое описание вида и категории отправления (ComplexItemName).
97
     *
98
     * @return string
99
     */
100
    public function getItemDescription(): string
101
    {
102
        return $this->ComplexItemName;
103
    }
104
105
    /**
106
     * Информация о разряде почтового отправления (MailRank).
107
     *
108
     * @link https://tracking.pochta.ru/support/dictionaries/mailrank
109
     *
110
     * @return Parameter
111
     */
112 1
    public function getMailRank(): Parameter
113
    {
114 1
        return $this->MailRank;
115
    }
116
117
    /**
118
     * Информация об отметках почтовых отправлений (PostMark).
119
     *
120
     * @link https://tracking.pochta.ru/support/dictionaries/postmark
121
     *
122
     * @return Parameter
123
     */
124 1
    public function getPostMark(): Parameter
125
    {
126 1
        return $this->PostMark;
127
    }
128
129
    /**
130
     * Данные о виде почтового отправления (MailType).
131
     *
132
     * @link https://tracking.pochta.ru/support/dictionaries/mailtype
133
     *
134
     * @return Parameter
135
     */
136 1
    public function getMailType(): Parameter
137
    {
138 1
        return $this->MailType;
139
    }
140
141
    /**
142
     * Данные о категории почтового отправления (MailCtg).
143
     *
144
     * @link https://tracking.pochta.ru/support/dictionaries/category_codes
145
     *
146
     * @return Parameter
147
     */
148 1
    public function getMailCategory(): Parameter
149
    {
150 1
        return $this->MailCtg;
151
    }
152
153
    /**
154
     * Вес отправления в граммах (Mass).
155
     *
156
     * @return int
157
     */
158 1
    public function getWeight(): int
159
    {
160 1
        return (int) $this->Mass;
161
    }
162
163
    /**
164
     * Значение максимально возможного веса для данного вида и категории отправления для внутренней пересылки (MaxMassRu).
165
     *
166
     * @return int
167
     */
168 1
    public function getMaxDomesticWeight(): int
169
    {
170 1
        return (int) $this->MaxMassRu;
171
    }
172
173
    /**
174
     * Значение максимально возможного веса для данного вида и категории отправления для международной пересылки (MaxMassEn).
175
     *
176
     * @return int
177
     */
178 1
    public function getMaxInternationalWeight(): int
179
    {
180 1
        return (int) $this->MaxMassEn;
181
    }
182
}
183