gillbus 0.18.11 → 0.18.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8da5c8db70d86e4d8c1cbd13f711523042530de1
4
- data.tar.gz: 3ffc015cf541aee88af01cfb6bb0ffac56c59381
3
+ metadata.gz: 53d34fefe296ecc11f49cd37137181072b56d41b
4
+ data.tar.gz: a953e3865743ce98116e0686c718199286f77238
5
5
  SHA512:
6
- metadata.gz: b275a605ec7828c72f759ee990141f2c86b4ca98a85520d5091585de2c22ca97028401070dba7158aa0c08bafa638cbbe0fd67cd626a22931bfe572bc05aafeb
7
- data.tar.gz: 8fe535b1b06237a17f0028ca27a6b2e205489c9edb0e1b9f043ccc1c9b6ce3f294f5490b7841b24702865c8c03ec42671f0617392fbe4ed2b25c7efa995a996d
6
+ metadata.gz: f131776c032b52fcb0c8fc7bbecd9b13c5f971abb92d638aceabafb24d75204b045b1891be07e08b7d3c86a439073bf05476cf0a83dd2cd2c9505eef6c5d5ced
7
+ data.tar.gz: '08c3bdeb51e7a2cdbac2aba4c17f7ac9c0b9ef211363ec793c61f3bd4e03380c7e1cf7833c9ee8444b0ae4808d6168e2fb3f6a37ba2e4c3d7cef648112f0f69b'
@@ -66,7 +66,7 @@ class Gillbus
66
66
  require 'gillbus/structs/seat'
67
67
  require 'gillbus/structs/item'
68
68
  require 'gillbus/structs/carrier'
69
- require 'gillbus/structs/nearby_trip'
69
+ require 'gillbus/structs/nearby_cities_trip'
70
70
 
71
71
  require 'gillbus/parse_error'
72
72
  require 'gillbus/base_request'
@@ -81,6 +81,7 @@ class Gillbus
81
81
  require 'gillbus/get_time_table'
82
82
  require 'gillbus/get_dates_new'
83
83
  require 'gillbus/search_trips'
84
+ require 'gillbus/search_nearby_trips'
84
85
  require 'gillbus/get_trips'
85
86
  require 'gillbus/get_trip_seats'
86
87
  require 'gillbus/get_bus_image'
@@ -0,0 +1,39 @@
1
+ class Gillbus
2
+ module SearchTripNearbyCities
3
+ Gillbus.register self, :search_nearby_cities_trips
4
+
5
+ class Request < BaseRequest
6
+ def path; '/online2/searchTripNearbyCities' end
7
+
8
+ # startCityId
9
+ # ИД пункта отправления
10
+ attr_accessor :start_city_id
11
+
12
+ # endCityId
13
+ # ИД пункта прибытия
14
+ attr_accessor :end_city_id
15
+
16
+ # startDateSearch
17
+ # Дата отправления, на которую будет произведен поиск рейсов.
18
+ attr_accessor :start_date_search
19
+
20
+ # ticketCount
21
+ # Количество оформляемых билетов. От 1 до k.
22
+ attr_accessor :ticket_count
23
+
24
+ def params
25
+ compact(
26
+ startCityId: start_city_id,
27
+ endCityId: end_city_id,
28
+ startDateSearch: date(start_date_search),
29
+ ticketCount: ticket_count,
30
+ )
31
+ end
32
+ end
33
+
34
+ class Response < BaseResponse
35
+ field :completed, :bool
36
+ field :trips, [NearbyCitiesTrip], key: 'TRIP', root: 'NEARBY_CITIES'
37
+ end
38
+ end
39
+ end
@@ -91,9 +91,6 @@ class Gillbus
91
91
 
92
92
  attr_accessor :insurance_id
93
93
 
94
- # extendedSearch number Признак отображения в результате поиска соседних городов
95
- attr_accessor :extended_search
96
-
97
94
  def params
98
95
  compact(
99
96
  selectedModes: modes(selected_modes),
@@ -110,7 +107,6 @@ class Gillbus
110
107
  onlyBranded: bool(only_branded),
111
108
  tripOptions: bool(trip_options),
112
109
  insuranceId: insurance_id,
113
- extendedSearch: extended_search,
114
110
  **passengers_data,
115
111
  )
116
112
  end
@@ -136,7 +132,6 @@ class Gillbus
136
132
  class Response < BaseResponse
137
133
  field :completed, :bool
138
134
  field :trips, [Trip], key: 'TRIP'
139
- field :nearby_trips, [NearbyTrip], key: 'TRIP', root: 'NEARBY_CITIES'
140
135
  end
141
136
  end
142
137
  end
@@ -1,6 +1,6 @@
1
1
  # результаты поиска по соседним городам, берется из кеша и содержит меньше данных, чем поездка из выдачи
2
2
  class Gillbus
3
- class NearbyTrip
3
+ class NearbyCitiesTrip
4
4
  extend Fields
5
5
  include UpdateAttrs
6
6
 
@@ -1,3 +1,3 @@
1
1
  class Gillbus
2
- VERSION = '0.18.11'.freeze
2
+ VERSION = '0.18.12'.freeze
3
3
  end
@@ -22,7 +22,7 @@ class ErrorTest < Minitest::Test
22
22
 
23
23
  def test_malformed_errorness
24
24
  assert malformed_response.error?
25
- assert_equal "Malformed response: invalid format, expected < at line 1, column 1 [parse.c:147]\n", malformed_response.error_message
25
+ assert_equal "Malformed response: invalid format, expected < at line 1, column 1 [parse.c:146]\n", malformed_response.error_message
26
26
  end
27
27
 
28
28
  def test_malformed_2_errorness
@@ -0,0 +1,707 @@
1
+ <DATA>
2
+ <COMPLETED>true</COMPLETED>
3
+ <NEARBY_CITIES>
4
+ <TRIP>
5
+ <START_CITY_NAME>Москва</START_CITY_NAME>
6
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
7
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
8
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
9
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
10
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
11
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
12
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
13
+ <START_TIME>09:00:00</START_TIME>
14
+ <END_TIME>13:15:00</END_TIME>
15
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
16
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
17
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
18
+ <TOTAL_COST>465.5</TOTAL_COST>
19
+ <CURRENCY>RUB</CURRENCY>
20
+ <CURRENCY_CODE>643</CURRENCY_CODE>
21
+ </TRIP>
22
+ <TRIP>
23
+ <START_CITY_NAME>Москва</START_CITY_NAME>
24
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
25
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
26
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
27
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
28
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
29
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
30
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
31
+ <START_TIME>18:00:00</START_TIME>
32
+ <END_TIME>22:15:00</END_TIME>
33
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
34
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
35
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
36
+ <TOTAL_COST>465.5</TOTAL_COST>
37
+ <CURRENCY>RUB</CURRENCY>
38
+ <CURRENCY_CODE>643</CURRENCY_CODE>
39
+ </TRIP>
40
+ <TRIP>
41
+ <START_CITY_NAME>Москва</START_CITY_NAME>
42
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
43
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
44
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
45
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
46
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
47
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
48
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
49
+ <START_TIME>15:00:00</START_TIME>
50
+ <END_TIME>19:15:00</END_TIME>
51
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
52
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
53
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
54
+ <TOTAL_COST>465.5</TOTAL_COST>
55
+ <CURRENCY>RUB</CURRENCY>
56
+ <CURRENCY_CODE>643</CURRENCY_CODE>
57
+ </TRIP>
58
+ <TRIP>
59
+ <START_CITY_NAME>Москва</START_CITY_NAME>
60
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
61
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
62
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
63
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
64
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
65
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
66
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
67
+ <START_TIME>11:00:00</START_TIME>
68
+ <END_TIME>15:15:00</END_TIME>
69
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
70
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
71
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
72
+ <TOTAL_COST>465.5</TOTAL_COST>
73
+ <CURRENCY>RUB</CURRENCY>
74
+ <CURRENCY_CODE>643</CURRENCY_CODE>
75
+ </TRIP>
76
+ <TRIP>
77
+ <START_CITY_NAME>Москва</START_CITY_NAME>
78
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
79
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
80
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
81
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
82
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
83
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
84
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
85
+ <START_TIME>07:00:00</START_TIME>
86
+ <END_TIME>11:15:00</END_TIME>
87
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
88
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
89
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
90
+ <TOTAL_COST>465.5</TOTAL_COST>
91
+ <CURRENCY>RUB</CURRENCY>
92
+ <CURRENCY_CODE>643</CURRENCY_CODE>
93
+ </TRIP>
94
+ <TRIP>
95
+ <START_CITY_NAME>Москва</START_CITY_NAME>
96
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
97
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
98
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
99
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
100
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
101
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
102
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
103
+ <START_TIME>16:00:00</START_TIME>
104
+ <END_TIME>20:15:00</END_TIME>
105
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
106
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
107
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
108
+ <TOTAL_COST>465.5</TOTAL_COST>
109
+ <CURRENCY>RUB</CURRENCY>
110
+ <CURRENCY_CODE>643</CURRENCY_CODE>
111
+ </TRIP>
112
+ <TRIP>
113
+ <START_CITY_NAME>Москва</START_CITY_NAME>
114
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
115
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
116
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
117
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
118
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
119
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
120
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
121
+ <START_TIME>20:30:00</START_TIME>
122
+ <END_TIME>00:45:00</END_TIME>
123
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
124
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
125
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
126
+ <TOTAL_COST>465.5</TOTAL_COST>
127
+ <CURRENCY>RUB</CURRENCY>
128
+ <CURRENCY_CODE>643</CURRENCY_CODE>
129
+ </TRIP>
130
+ <TRIP>
131
+ <START_CITY_NAME>Москва</START_CITY_NAME>
132
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
133
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
134
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
135
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
136
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
137
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
138
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
139
+ <START_TIME>20:00:00</START_TIME>
140
+ <END_TIME>00:15:00</END_TIME>
141
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
142
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
143
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
144
+ <TOTAL_COST>465.5</TOTAL_COST>
145
+ <CURRENCY>RUB</CURRENCY>
146
+ <CURRENCY_CODE>643</CURRENCY_CODE>
147
+ </TRIP>
148
+ <TRIP>
149
+ <START_CITY_NAME>Москва</START_CITY_NAME>
150
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
151
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
152
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
153
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
154
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
155
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
156
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
157
+ <START_TIME>09:00:00</START_TIME>
158
+ <END_TIME>13:30:00</END_TIME>
159
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
160
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
161
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
162
+ <TOTAL_COST>524.3</TOTAL_COST>
163
+ <CURRENCY>RUB</CURRENCY>
164
+ <CURRENCY_CODE>643</CURRENCY_CODE>
165
+ </TRIP>
166
+ <TRIP>
167
+ <START_CITY_NAME>Москва</START_CITY_NAME>
168
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
169
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
170
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
171
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
172
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
173
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
174
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
175
+ <START_TIME>16:00:00</START_TIME>
176
+ <END_TIME>19:45:00</END_TIME>
177
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
178
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
179
+ <TIME_IN_ROAD>225</TIME_IN_ROAD>
180
+ <TOTAL_COST>524.3</TOTAL_COST>
181
+ <CURRENCY>RUB</CURRENCY>
182
+ <CURRENCY_CODE>643</CURRENCY_CODE>
183
+ </TRIP>
184
+ <TRIP>
185
+ <START_CITY_NAME>Москва</START_CITY_NAME>
186
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
187
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
188
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
189
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
190
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
191
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
192
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
193
+ <START_TIME>20:00:00</START_TIME>
194
+ <END_TIME>23:45:00</END_TIME>
195
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
196
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
197
+ <TIME_IN_ROAD>225</TIME_IN_ROAD>
198
+ <TOTAL_COST>524.3</TOTAL_COST>
199
+ <CURRENCY>RUB</CURRENCY>
200
+ <CURRENCY_CODE>643</CURRENCY_CODE>
201
+ </TRIP>
202
+ <TRIP>
203
+ <START_CITY_NAME>Москва</START_CITY_NAME>
204
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
205
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
206
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
207
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
208
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
209
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
210
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
211
+ <START_TIME>18:00:00</START_TIME>
212
+ <END_TIME>21:45:00</END_TIME>
213
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
214
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
215
+ <TIME_IN_ROAD>225</TIME_IN_ROAD>
216
+ <TOTAL_COST>524.3</TOTAL_COST>
217
+ <CURRENCY>RUB</CURRENCY>
218
+ <CURRENCY_CODE>643</CURRENCY_CODE>
219
+ </TRIP>
220
+ <TRIP>
221
+ <START_CITY_NAME>Москва</START_CITY_NAME>
222
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
223
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
224
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
225
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
226
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
227
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
228
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
229
+ <START_TIME>15:00:00</START_TIME>
230
+ <END_TIME>18:50:00</END_TIME>
231
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
232
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
233
+ <TIME_IN_ROAD>230</TIME_IN_ROAD>
234
+ <TOTAL_COST>513.6</TOTAL_COST>
235
+ <CURRENCY>RUB</CURRENCY>
236
+ <CURRENCY_CODE>643</CURRENCY_CODE>
237
+ </TRIP>
238
+ <TRIP>
239
+ <START_CITY_NAME>Москва</START_CITY_NAME>
240
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
241
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
242
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
243
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
244
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
245
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
246
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
247
+ <START_TIME>21:30:00</START_TIME>
248
+ <END_TIME>02:15:00</END_TIME>
249
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
250
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
251
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
252
+ <TOTAL_COST>417.3</TOTAL_COST>
253
+ <CURRENCY>RUB</CURRENCY>
254
+ <CURRENCY_CODE>643</CURRENCY_CODE>
255
+ </TRIP>
256
+ <TRIP>
257
+ <START_CITY_NAME>Москва</START_CITY_NAME>
258
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
259
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
260
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
261
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
262
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
263
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
264
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
265
+ <START_TIME>20:30:00</START_TIME>
266
+ <END_TIME>00:45:00</END_TIME>
267
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
268
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
269
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
270
+ <TOTAL_COST>524.3</TOTAL_COST>
271
+ <CURRENCY>RUB</CURRENCY>
272
+ <CURRENCY_CODE>643</CURRENCY_CODE>
273
+ </TRIP>
274
+ <TRIP>
275
+ <START_CITY_NAME>Москва</START_CITY_NAME>
276
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
277
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
278
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
279
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
280
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
281
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
282
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
283
+ <START_TIME>14:15:00</START_TIME>
284
+ <END_TIME>18:45:00</END_TIME>
285
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
286
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
287
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
288
+ <TOTAL_COST>417.3</TOTAL_COST>
289
+ <CURRENCY>RUB</CURRENCY>
290
+ <CURRENCY_CODE>643</CURRENCY_CODE>
291
+ </TRIP>
292
+ <TRIP>
293
+ <START_CITY_NAME>Москва</START_CITY_NAME>
294
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
295
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
296
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
297
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
298
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
299
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
300
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
301
+ <START_TIME>08:00:00</START_TIME>
302
+ <END_TIME>12:00:00</END_TIME>
303
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
304
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
305
+ <TIME_IN_ROAD>240</TIME_IN_ROAD>
306
+ <TOTAL_COST>535</TOTAL_COST>
307
+ <CURRENCY>RUB</CURRENCY>
308
+ <CURRENCY_CODE>643</CURRENCY_CODE>
309
+ </TRIP>
310
+ <TRIP>
311
+ <START_CITY_NAME>Москва</START_CITY_NAME>
312
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
313
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
314
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
315
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
316
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
317
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
318
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
319
+ <START_TIME>15:00:00</START_TIME>
320
+ <END_TIME>19:15:00</END_TIME>
321
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
322
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
323
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
324
+ <TOTAL_COST>524.3</TOTAL_COST>
325
+ <CURRENCY>RUB</CURRENCY>
326
+ <CURRENCY_CODE>643</CURRENCY_CODE>
327
+ </TRIP>
328
+ <TRIP>
329
+ <START_CITY_NAME>Москва</START_CITY_NAME>
330
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
331
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
332
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
333
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
334
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
335
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
336
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
337
+ <START_TIME>09:00:00</START_TIME>
338
+ <END_TIME>13:15:00</END_TIME>
339
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
340
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
341
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
342
+ <TOTAL_COST>524.3</TOTAL_COST>
343
+ <CURRENCY>RUB</CURRENCY>
344
+ <CURRENCY_CODE>643</CURRENCY_CODE>
345
+ </TRIP>
346
+ <TRIP>
347
+ <START_CITY_NAME>Москва</START_CITY_NAME>
348
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
349
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
350
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
351
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
352
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
353
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
354
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
355
+ <START_TIME>07:00:00</START_TIME>
356
+ <END_TIME>11:15:00</END_TIME>
357
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
358
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
359
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
360
+ <TOTAL_COST>524.3</TOTAL_COST>
361
+ <CURRENCY>RUB</CURRENCY>
362
+ <CURRENCY_CODE>643</CURRENCY_CODE>
363
+ </TRIP>
364
+ <TRIP>
365
+ <START_CITY_NAME>Москва</START_CITY_NAME>
366
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
367
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
368
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
369
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
370
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
371
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
372
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
373
+ <START_TIME>07:30:00</START_TIME>
374
+ <END_TIME>12:15:00</END_TIME>
375
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
376
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
377
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
378
+ <TOTAL_COST>417.3</TOTAL_COST>
379
+ <CURRENCY>RUB</CURRENCY>
380
+ <CURRENCY_CODE>643</CURRENCY_CODE>
381
+ </TRIP>
382
+ <TRIP>
383
+ <START_CITY_NAME>Москва</START_CITY_NAME>
384
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
385
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
386
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
387
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
388
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
389
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
390
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
391
+ <START_TIME>09:30:00</START_TIME>
392
+ <END_TIME>14:15:00</END_TIME>
393
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
394
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
395
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
396
+ <TOTAL_COST>417.3</TOTAL_COST>
397
+ <CURRENCY>RUB</CURRENCY>
398
+ <CURRENCY_CODE>643</CURRENCY_CODE>
399
+ </TRIP>
400
+ <TRIP>
401
+ <START_CITY_NAME>Москва</START_CITY_NAME>
402
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
403
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
404
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
405
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
406
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
407
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
408
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
409
+ <START_TIME>23:15:00</START_TIME>
410
+ <END_TIME>04:00:00</END_TIME>
411
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
412
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
413
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
414
+ <TOTAL_COST>417.3</TOTAL_COST>
415
+ <CURRENCY>RUB</CURRENCY>
416
+ <CURRENCY_CODE>643</CURRENCY_CODE>
417
+ </TRIP>
418
+ <TRIP>
419
+ <START_CITY_NAME>Москва</START_CITY_NAME>
420
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
421
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
422
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
423
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
424
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
425
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
426
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
427
+ <START_TIME>12:15:00</START_TIME>
428
+ <END_TIME>16:30:00</END_TIME>
429
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
430
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
431
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
432
+ <TOTAL_COST>535</TOTAL_COST>
433
+ <CURRENCY>RUB</CURRENCY>
434
+ <CURRENCY_CODE>643</CURRENCY_CODE>
435
+ </TRIP>
436
+ <TRIP>
437
+ <START_CITY_NAME>Москва</START_CITY_NAME>
438
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
439
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
440
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
441
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
442
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
443
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
444
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
445
+ <START_TIME>18:00:00</START_TIME>
446
+ <END_TIME>22:15:00</END_TIME>
447
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
448
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
449
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
450
+ <TOTAL_COST>524.3</TOTAL_COST>
451
+ <CURRENCY>RUB</CURRENCY>
452
+ <CURRENCY_CODE>643</CURRENCY_CODE>
453
+ </TRIP>
454
+ <TRIP>
455
+ <START_CITY_NAME>Москва</START_CITY_NAME>
456
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
457
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
458
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
459
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
460
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
461
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
462
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
463
+ <START_TIME>11:00:00</START_TIME>
464
+ <END_TIME>15:15:00</END_TIME>
465
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
466
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
467
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
468
+ <TOTAL_COST>524.3</TOTAL_COST>
469
+ <CURRENCY>RUB</CURRENCY>
470
+ <CURRENCY_CODE>643</CURRENCY_CODE>
471
+ </TRIP>
472
+ <TRIP>
473
+ <START_CITY_NAME>Москва</START_CITY_NAME>
474
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
475
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
476
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
477
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
478
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
479
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
480
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
481
+ <START_TIME>16:00:00</START_TIME>
482
+ <END_TIME>20:15:00</END_TIME>
483
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
484
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
485
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
486
+ <TOTAL_COST>524.3</TOTAL_COST>
487
+ <CURRENCY>RUB</CURRENCY>
488
+ <CURRENCY_CODE>643</CURRENCY_CODE>
489
+ </TRIP>
490
+ <TRIP>
491
+ <START_CITY_NAME>Москва</START_CITY_NAME>
492
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
493
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
494
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
495
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
496
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
497
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
498
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
499
+ <START_TIME>15:15:00</START_TIME>
500
+ <END_TIME>20:00:00</END_TIME>
501
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
502
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
503
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
504
+ <TOTAL_COST>417.3</TOTAL_COST>
505
+ <CURRENCY>RUB</CURRENCY>
506
+ <CURRENCY_CODE>643</CURRENCY_CODE>
507
+ </TRIP>
508
+ <TRIP>
509
+ <START_CITY_NAME>Москва</START_CITY_NAME>
510
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
511
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
512
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
513
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
514
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
515
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
516
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
517
+ <START_TIME>11:15:00</START_TIME>
518
+ <END_TIME>16:00:00</END_TIME>
519
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
520
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
521
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
522
+ <TOTAL_COST>417.3</TOTAL_COST>
523
+ <CURRENCY>RUB</CURRENCY>
524
+ <CURRENCY_CODE>643</CURRENCY_CODE>
525
+ </TRIP>
526
+ <TRIP>
527
+ <START_CITY_NAME>Москва</START_CITY_NAME>
528
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
529
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
530
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
531
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
532
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
533
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
534
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
535
+ <START_TIME>13:30:00</START_TIME>
536
+ <END_TIME>18:15:00</END_TIME>
537
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
538
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
539
+ <TIME_IN_ROAD>285</TIME_IN_ROAD>
540
+ <TOTAL_COST>417.3</TOTAL_COST>
541
+ <CURRENCY>RUB</CURRENCY>
542
+ <CURRENCY_CODE>643</CURRENCY_CODE>
543
+ </TRIP>
544
+ <TRIP>
545
+ <START_CITY_NAME>Москва</START_CITY_NAME>
546
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
547
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
548
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
549
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
550
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
551
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
552
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
553
+ <START_TIME>20:00:00</START_TIME>
554
+ <END_TIME>00:15:00</END_TIME>
555
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
556
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
557
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
558
+ <TOTAL_COST>524.3</TOTAL_COST>
559
+ <CURRENCY>RUB</CURRENCY>
560
+ <CURRENCY_CODE>643</CURRENCY_CODE>
561
+ </TRIP>
562
+ <TRIP>
563
+ <START_CITY_NAME>Москва</START_CITY_NAME>
564
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
565
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
566
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
567
+ <END_CITY_NAME>Тутаев</END_CITY_NAME>
568
+ <END_CITY_GUID>1AD612F336C0D988E0508E5B3557F149</END_CITY_GUID>
569
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
570
+ <DISTANCE_TO_END>35</DISTANCE_TO_END>
571
+ <START_TIME>16:15:00</START_TIME>
572
+ <END_TIME>21:30:00</END_TIME>
573
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
574
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
575
+ <TIME_IN_ROAD>315</TIME_IN_ROAD>
576
+ <TOTAL_COST>749</TOTAL_COST>
577
+ <CURRENCY>RUB</CURRENCY>
578
+ <CURRENCY_CODE>643</CURRENCY_CODE>
579
+ </TRIP>
580
+ <TRIP>
581
+ <START_CITY_NAME>Москва</START_CITY_NAME>
582
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
583
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
584
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
585
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
586
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
587
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
588
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
589
+ <START_TIME>16:15:00</START_TIME>
590
+ <END_TIME>20:30:00</END_TIME>
591
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
592
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
593
+ <TIME_IN_ROAD>255</TIME_IN_ROAD>
594
+ <TOTAL_COST>535</TOTAL_COST>
595
+ <CURRENCY>RUB</CURRENCY>
596
+ <CURRENCY_CODE>643</CURRENCY_CODE>
597
+ </TRIP>
598
+ <TRIP>
599
+ <START_CITY_NAME>Москва</START_CITY_NAME>
600
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
601
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
602
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
603
+ <END_CITY_NAME>Тутаев</END_CITY_NAME>
604
+ <END_CITY_GUID>1AD612F336C0D988E0508E5B3557F149</END_CITY_GUID>
605
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
606
+ <DISTANCE_TO_END>35</DISTANCE_TO_END>
607
+ <START_TIME>12:15:00</START_TIME>
608
+ <END_TIME>17:30:00</END_TIME>
609
+ <CARRIER_NAME>"Артмарк" ООО</CARRIER_NAME>
610
+ <CARRIER_LEGAL_NAME>RU "Артмарк" ООО</CARRIER_LEGAL_NAME>
611
+ <TIME_IN_ROAD>315</TIME_IN_ROAD>
612
+ <TOTAL_COST>749</TOTAL_COST>
613
+ <CURRENCY>RUB</CURRENCY>
614
+ <CURRENCY_CODE>643</CURRENCY_CODE>
615
+ </TRIP>
616
+ <TRIP>
617
+ <START_CITY_NAME>Москва</START_CITY_NAME>
618
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
619
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
620
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
621
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
622
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
623
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
624
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
625
+ <START_TIME>07:00:00</START_TIME>
626
+ <END_TIME>11:30:00</END_TIME>
627
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
628
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
629
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
630
+ <TOTAL_COST>524.3</TOTAL_COST>
631
+ <CURRENCY>RUB</CURRENCY>
632
+ <CURRENCY_CODE>643</CURRENCY_CODE>
633
+ </TRIP>
634
+ <TRIP>
635
+ <START_CITY_NAME>Москва</START_CITY_NAME>
636
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
637
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
638
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
639
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
640
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
641
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
642
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
643
+ <START_TIME>11:00:00</START_TIME>
644
+ <END_TIME>15:30:00</END_TIME>
645
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
646
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
647
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
648
+ <TOTAL_COST>524.3</TOTAL_COST>
649
+ <CURRENCY>RUB</CURRENCY>
650
+ <CURRENCY_CODE>643</CURRENCY_CODE>
651
+ </TRIP>
652
+ <TRIP>
653
+ <START_CITY_NAME>Москва</START_CITY_NAME>
654
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
655
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
656
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
657
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
658
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
659
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
660
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
661
+ <START_TIME>20:30:00</START_TIME>
662
+ <END_TIME>01:00:00</END_TIME>
663
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
664
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
665
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
666
+ <TOTAL_COST>524.3</TOTAL_COST>
667
+ <CURRENCY>RUB</CURRENCY>
668
+ <CURRENCY_CODE>643</CURRENCY_CODE>
669
+ </TRIP>
670
+ <TRIP>
671
+ <START_CITY_NAME>Москва</START_CITY_NAME>
672
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
673
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
674
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
675
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
676
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
677
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
678
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
679
+ <START_TIME>15:00:00</START_TIME>
680
+ <END_TIME>19:30:00</END_TIME>
681
+ <CARRIER_NAME>"РУС-Билет" ООО</CARRIER_NAME>
682
+ <CARRIER_LEGAL_NAME>RU "РУС-Билет" ООО</CARRIER_LEGAL_NAME>
683
+ <TIME_IN_ROAD>270</TIME_IN_ROAD>
684
+ <TOTAL_COST>524.3</TOTAL_COST>
685
+ <CURRENCY>RUB</CURRENCY>
686
+ <CURRENCY_CODE>643</CURRENCY_CODE>
687
+ </TRIP>
688
+ <TRIP>
689
+ <START_CITY_NAME>Москва</START_CITY_NAME>
690
+ <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
691
+ <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
692
+ <DISTANCE_TO_START>20</DISTANCE_TO_START>
693
+ <END_CITY_NAME>Ярославль</END_CITY_NAME>
694
+ <END_CITY_GUID>CA975BC2A17DCF7FE040B859C14327B3</END_CITY_GUID>
695
+ <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
696
+ <DISTANCE_TO_END>0</DISTANCE_TO_END>
697
+ <START_TIME>15:00:00</START_TIME>
698
+ <END_TIME>18:50:00</END_TIME>
699
+ <CARRIER_NAME>"ОднаКасса" ООО</CARRIER_NAME>
700
+ <CARRIER_LEGAL_NAME>RU "ОднаКасса" ООО</CARRIER_LEGAL_NAME>
701
+ <TIME_IN_ROAD>230</TIME_IN_ROAD>
702
+ <TOTAL_COST>456</TOTAL_COST>
703
+ <CURRENCY>RUB</CURRENCY>
704
+ <CURRENCY_CODE>643</CURRENCY_CODE>
705
+ </TRIP>
706
+ </NEARBY_CITIES>
707
+ </DATA>
@@ -0,0 +1,18 @@
1
+ require 'test_helper'
2
+
3
+ class SearchNearbyTripsRequestTest < Minitest::Test
4
+ def get_trips_with_nearby_cities
5
+ Gillbus::SearchTripNearbyCities::Response.parse_string(File.read('test/responses/searchTripsNearby.xml'))
6
+ end
7
+
8
+ def test_trips_with_nearby_cities
9
+ response = get_trips_with_nearby_cities
10
+ assert response.completed
11
+ trip = response.trips.first
12
+ assert_equal 'Москва', trip.start_city_name
13
+ assert_equal 'Ярославль', trip.end_city_name
14
+ assert_equal '465.5 RUB'.to_money, trip.total_cost
15
+ assert_equal '"ОднаКасса" ООО', trip.carrier_name
16
+ assert_equal '09:00', trip.start_time
17
+ end
18
+ end
@@ -65,10 +65,6 @@ class SearchTripsResponseTest < Minitest::Test
65
65
  Gillbus::SearchTrips::Response.parse_string(File.read('test/responses/searchTrips-insurance.xml'))
66
66
  end
67
67
 
68
- def get_trips_with_nearby_cities
69
- Gillbus::SearchTrips::Response.parse_string(File.read('test/responses/searchTrips-nearby.xml'))
70
- end
71
-
72
68
  def test_empty_completed
73
69
  response = get_empty_search_trips
74
70
  assert response.completed
@@ -239,15 +235,4 @@ class SearchTripsResponseTest < Minitest::Test
239
235
  assert_equal 1, tariff.insurance_id
240
236
  assert_equal '100000 RUB'.to_money, tariff.insurance_sum
241
237
  end
242
-
243
- def test_trips_with_nearby_cities
244
- response = get_trips_with_nearby_cities
245
- assert response.completed
246
- trip = response.nearby_trips.first
247
- assert_equal 'Москва', trip.start_city_name
248
- assert_equal 'Санкт-Петербург', trip.end_city_name
249
- assert_equal '1200 RUB'.to_money, trip.total_cost
250
- assert_equal '"Авто-Транс-Ком" ООО ', trip.carrier_name
251
- assert_equal '21:30', trip.start_time
252
- end
253
238
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gillbus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.11
4
+ version: 0.18.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey "codesnik" Trofimenko
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-08-29 00:00:00.000000000 Z
12
+ date: 2018-09-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -198,13 +198,14 @@ files:
198
198
  - lib/gillbus/reserve_tickets.rb
199
199
  - lib/gillbus/return_position.rb
200
200
  - lib/gillbus/return_position_forced.rb
201
+ - lib/gillbus/search_nearby_trips.rb
201
202
  - lib/gillbus/search_trips.rb
202
203
  - lib/gillbus/session_login.rb
203
204
  - lib/gillbus/structs/bus_photo.rb
204
205
  - lib/gillbus/structs/carrier.rb
205
206
  - lib/gillbus/structs/commission.rb
206
207
  - lib/gillbus/structs/item.rb
207
- - lib/gillbus/structs/nearby_trip.rb
208
+ - lib/gillbus/structs/nearby_cities_trip.rb
208
209
  - lib/gillbus/structs/passenger_discount.rb
209
210
  - lib/gillbus/structs/point.rb
210
211
  - lib/gillbus/structs/return_cause.rb
@@ -267,16 +268,17 @@ files:
267
268
  - test/responses/returnPositionSuccess.xml
268
269
  - test/responses/searchTrips-empty.xml
269
270
  - test/responses/searchTrips-insurance.xml
270
- - test/responses/searchTrips-nearby.xml
271
271
  - test/responses/searchTrips-prod-invalid.xml
272
272
  - test/responses/searchTrips-prod.xml
273
273
  - test/responses/searchTrips-segments-roundtrip.xml
274
274
  - test/responses/searchTrips-segments.xml
275
+ - test/responses/searchTripsNearby.xml
275
276
  - test/responses/sessionLogin.xml
276
277
  - test/responses/ticketsBooking.xml
277
278
  - test/responses/ticketsBookingAllCommissions.xml
278
279
  - test/responses/very_empty.xml
279
280
  - test/return_position_test.rb
281
+ - test/search_nearby_trips_test.rb
280
282
  - test/search_trips_test.rb
281
283
  - test/session_login_test.rb
282
284
  - test/test_helper.rb
@@ -347,16 +349,17 @@ test_files:
347
349
  - test/responses/returnPositionSuccess.xml
348
350
  - test/responses/searchTrips-empty.xml
349
351
  - test/responses/searchTrips-insurance.xml
350
- - test/responses/searchTrips-nearby.xml
351
352
  - test/responses/searchTrips-prod-invalid.xml
352
353
  - test/responses/searchTrips-prod.xml
353
354
  - test/responses/searchTrips-segments-roundtrip.xml
354
355
  - test/responses/searchTrips-segments.xml
356
+ - test/responses/searchTripsNearby.xml
355
357
  - test/responses/sessionLogin.xml
356
358
  - test/responses/ticketsBooking.xml
357
359
  - test/responses/ticketsBookingAllCommissions.xml
358
360
  - test/responses/very_empty.xml
359
361
  - test/return_position_test.rb
362
+ - test/search_nearby_trips_test.rb
360
363
  - test/search_trips_test.rb
361
364
  - test/session_login_test.rb
362
365
  - test/test_helper.rb
@@ -1,41 +0,0 @@
1
- <DATA>
2
- <COMPLETED>true</COMPLETED>
3
- <NEARBY_CITIES>
4
- <TRIP>
5
- <START_CITY_NAME>Москва</START_CITY_NAME>
6
- <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
7
- <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
8
- <DISTANCE_TO_START>20</DISTANCE_TO_START>
9
- <END_CITY_NAME>Санкт-Петербург</END_CITY_NAME>
10
- <END_CITY_GUID>CA975BC2ACDBCF7FE040B859C14327B3</END_CITY_GUID>
11
- <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
12
- <DISTANCE_TO_END>0</DISTANCE_TO_END>
13
- <START_TIME>21:30</START_TIME>
14
- <END_TIME>08:45</END_TIME>
15
- <CARRIER_NAME>"Авто-Транс-Ком" ООО </CARRIER_NAME>
16
- <CARRIER_LEGAL_NAME>RU "Авто-Транс-Ком" ООО </CARRIER_LEGAL_NAME>
17
- <TIME_IN_ROAD>675</TIME_IN_ROAD>
18
- <TOTAL_COST>1200</TOTAL_COST>
19
- <CURRENCY>RUB</CURRENCY>
20
- <CURRENCY_CODE>643</CURRENCY_CODE>
21
- </TRIP>
22
- <TRIP>
23
- <START_CITY_NAME>Москва</START_CITY_NAME>
24
- <START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
25
- <START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
26
- <DISTANCE_TO_START>20</DISTANCE_TO_START>
27
- <END_CITY_NAME>Санкт-Петербург</END_CITY_NAME>
28
- <END_CITY_GUID>CA975BC2ACDBCF7FE040B859C14327B3</END_CITY_GUID>
29
- <END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
30
- <DISTANCE_TO_END>0</DISTANCE_TO_END>
31
- <START_TIME>21:30</START_TIME>
32
- <END_TIME>09:00</END_TIME>
33
- <CARRIER_NAME>"Автофлот Автоколонна-1601" ООО</CARRIER_NAME>
34
- <CARRIER_LEGAL_NAME>RU "Автофлот Автоколонна-1601" ООО</CARRIER_LEGAL_NAME>
35
- <TIME_IN_ROAD>690</TIME_IN_ROAD>
36
- <TOTAL_COST>1000</TOTAL_COST>
37
- <CURRENCY>RUB</CURRENCY>
38
- <CURRENCY_CODE>643</CURRENCY_CODE>
39
- </TRIP>
40
- </NEARBY_CITIES>
41
- </DATA>