-
Notifications
You must be signed in to change notification settings - Fork 1
/
tracking_document.go
201 lines (197 loc) · 8.34 KB
/
tracking_document.go
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
package novapost
type (
StatusDocumentRequest struct {
DocumentNumber string
Phone string
}
Documents struct {
Documents []StatusDocumentRequest `xml:"Documents>item"`
}
StatusDocument struct {
Number string
RedeliverySum float64
RedeliveryNum string
RedeliveryPayer string
OwnerDocumentType string
LastCreatedOnTheBasisDocumentType string
LastCreatedOnTheBasisPayerType string
LastCreatedOnTheBasisDateTime string
LastTransactionStatusGM string
LastTransactionDateTimeGM string
LastAmountTransferGM string
DateCreated string
DocumentWeight float64
FactualWeight float64
VolumeWeight float64
CheckWeight string
CheckWeightMethod string
DocumentCost float64
CalculatedWeight float64
SumBeforeCheckWeight string
PayerType string
RecipientFullName string
RecipientDateTime string
ScheduledDeliveryDate string
PaymentMethod string
CargoDescriptionString string
CargoType string
CitySender string
CityRecipient string
WarehouseRecipient string
CounterpartyType string
AfterPaymentOnGoodsCost string `xml:"AfterpaymentOnGoodsCost" json:"AfterpaymentOnGoodsCost"`
ServiceType string
UndeliveryReasonsSubtypeDescription string
WarehouseRecipientNumber string
LastCreatedOnTheBasisNumber string
PhoneRecipient string
RecipientFullNameEW string
WarehouseRecipientInternetAddressRef string
MarketplacePartnerToken string
ClientBarcode string
RecipientAddress string
CounterpartyRecipientDescription string
CounterpartySenderType string
DateScan string
PaymentStatus string
PaymentStatusDate string
AmountToPay float64
AmountPaid float64
Status string
RefEW string
BackwardDeliverySubTypesActions string
BackwardDeliverySubTypesServices string
UndeliveryReasons string
DatePayedKeeping string
InternationalDeliveryType string
CardMaskedNumber string
ExpressWaybillPaymentStatus string
ExpressWaybillAmountToPay float64
PhoneSender string
TrackingUpdateDate string
WarehouseSender string
DateReturnCargo string
DateMoving string
DateFirstDayStorage string
RefCityRecipient string
RefCitySender string
RefSettlementRecipient string
RefSettlementSender string
SenderAddress string
SenderFullNameEW string
AnnouncedPrice float64
AdditionalInformationEW string
ActualDeliveryDate string
PostomatV3CellReservationNumber string
OwnerDocumentNumber string
LastAmountReceivedCommissionGM float64
DeliveryTimeframe string
CreatedOnTheBasis string
UndeliveryReasonsDate string
RecipientWarehouseTypeRef string
WarehouseRecipientRef string
CategoryOfWarehouse string
WarehouseRecipientAddress string
WarehouseSenderInternetAddressRef string
WarehouseSenderAddress string
AviaDelivery string
BarcodeRedBox string
LoyaltyCardRecipient string
StatusCode int
SeatsAmount int
DaysStorageCargo string
Packaging []any `xml:"Packaging>item"`
PartialReturnGoods []any `xml:"PartialReturnGoods>item"`
StoragePrice float64
StorageAmount int
FreeShipping bool
CargoReturnRefusal bool
PossibilityCreateReturn bool
PossibilityCreateRefusal bool
PossibilityChangeEW bool
PossibilityCreateRedirecting bool
Redelivery bool
SecurePayment bool
PossibilityChangeCash2Card bool
PossibilityChangeDeliveryIntervals bool
PossibilityTermExtensio bool
}
)
// GetStatusDocuments Трекінг
//
// Оновлений метод «getStatusDocuments» працює в моделі «TrackingDocument», цей метод дозволяє переглядати більш
// розширену інформацію щодо статусу відправлення.
//
// При введеному номері телефону можна отримати наступні відомості: дані відправника або одержувача, номер телефону.
//
// Метод дозволяє переглядати одночасно до 100 відправлень.
//
// Доступність: Не вимагає використання API-ключа.
//
// # Актуальні статуси трекінгу
//
// 1
// Відправник самостійно створив цю накладну, але ще не надав до відправки
//
// 2
// Видалено
//
// 3
// Номер не знайдено
//
// 4
// Відправлення у місті ХХXХ. (Статус для межобластных отправлений)
//
// 41
// Відправлення у місті ХХXХ. (Статус для услуг локал стандарт и локал экспресс - доставка в пределах города)
//
// 5
// Відправлення прямує до міста YYYY
//
// 6
// Відправлення у місті YYYY, орієнтовна доставка до ВІДДІЛЕННЯ-XXX dd-mm. Очікуйте додаткове повідомлення про прибуття
//
// 7
// Прибув на відділення
//
// 8
// Прибув на відділення (завантажено в Поштомат)
//
// 9
// Відправлення отримано
//
// 10
// Відправлення отримано %DateReceived%. Протягом доби ви одержите SMS-повідомлення про надходження грошового переказу та зможете отримати його в касі відділення «Нова пошта»
//
// 11
// Відправлення отримано %DateReceived%. Грошовий переказ видано одержувачу.
//
// 12
// Нова Пошта комплектує ваше відправлення
//
// 101
// На шляху до одержувача
//
// 102
// Відмова від отримання (Відправником створено замовлення на повернення)
//
// 103
// Відмова одержувача (отримувач відмовився від відправлення)
//
// 104
// Змінено адресу
//
// 105
// Припинено зберігання
//
// 106
// Одержано і створено ЄН зворотньої доставки
//
// 111
// Невдала спроба доставки через відсутність Одержувача на адресі або зв'язку з ним
//
// 112
// Дата доставки перенесена Одержувачем
func (c *Client) GetStatusDocuments(documents Documents) (*Response[StatusDocument], error) {
return RawRequest[StatusDocument](c, TrackingDocumentModel, "getStatusDocuments", documents)
}