Выгрузка заказа трансферов
Выгружая заказ трансфера при помощи метода GetSimpleReserveByIdV2 мы получаем стандартный ответ, в котором можно обратить внимание на специфичные поля трансферов используя XPath:
.//OrderSpecificData/UniversalTransfersSelectedVariantContainer
<UniversalTransfersSelectedVariantContainer RequestId="6b084e65-6281-497a-a45a-aae4d495d6fe">
<TabletText>Путин</TabletText>
<Comment>С любовью к себе и миру!</Comment>
<DepartureVariant>
<UniversalTransferVariant ProviderName="i'way" ProviderOfferId="2961599" Price="2848" ServiceFee="0" Currency="2961599" CarCapactity="3" PriceEquiv="2848" id_Agent="1" id_Agreement="41" id_Provider="1">
<AgentName>demo agency</AgentName>
<ProviderLogo>iway</ProviderLogo>
<CarImage><https://iwayex.com/images/cars/kaknoo5tp6.png</CarImage>>
<CarDescription>Skoda Octavia, до 3 чел. в салоне.</CarDescription>
<MetaDataContainer/>
<PayedServices>
<UniversalTransferVariantPayedService IsSelected="true">
<ProviderServiceId>9</ProviderServiceId>
<Price>500</Price>
<PriceEquiv>500</PriceEquiv>
<Currency>RUB</Currency>
<Text>Табличка</Text>
<Description>table</Description>
</UniversalTransferVariantPayedService>
<UniversalTransferVariantPayedService IsSelected="false">
<ProviderServiceId>10</ProviderServiceId>
<Price>250</Price>
<PriceEquiv>250</PriceEquiv>
<Currency>RUB</Currency>
<Text>Детское кресло “от 0 до 1 года”</Text>
<Description>infant_seat</Description>
</UniversalTransferVariantPayedService>
<UniversalTransferVariantPayedService IsSelected="false">
<ProviderServiceId>11</ProviderServiceId>
<Price>200</Price>
<PriceEquiv>200</PriceEquiv>
<Currency>RUB</Currency>
<Text>Детское кресло “от 1 до 3 лет”</Text>
<Description>seat</Description>
</UniversalTransferVariantPayedService>
<UniversalTransferVariantPayedService IsSelected="false">
<ProviderServiceId>12</ProviderServiceId>
<Price>150</Price>
<PriceEquiv>150</PriceEquiv>
<Currency>RUB</Currency>
<Text>Детское кресло “от 3+ лет”</Text>
<Description>booster</Description>
</UniversalTransferVariantPayedService>
</PayedServices>
<IncludedServices>
<UniversalTransferVariantService ServiceName="Встреча с табличкой" Value="Да"/>
<UniversalTransferVariantService ServiceName="Бесплатное ожидание" Value="60"/>
<UniversalTransferVariantService ServiceName="Дополнительный заезд (зависит от настроек заказчика)" Value="Да"/>
</IncludedServices>
<CarClass>2</CarClass>
<UniversalTransferGeoPoint DisplayName="Внуково Международный Аэропорт, Внуково, Московская область, Россия" CountryCode="ru" Address="Внуково Международный Аэропорт, Внуково, Московская область, Россия" PlaceId="ChIJc_siRKhWtUYRhxc_ze0X1-s" IsRailwayStation="false" IsAirport="true" Latitude="0" Longitude="0">
<AllTerminals>
<Terminal>A</Terminal>
<Terminal>D</Terminal>
</AllTerminals>
<Time>10:40</Time>
<TrainNumber/>
<TrainCarNumber/>
<FlightNumber>SU-123</FlightNumber>
<FlightTerminalNumber>A</FlightTerminalNumber>
</UniversalTransferGeoPoint>
<UniversalTransferGeoPoint DisplayName="Ресторан на Шаболовке | ГастроПаб 31, улица Шаболовка, Москва, Россия" CountryCode="ru" Address="Ресторан на Шаболовке | ГастроПаб 31, улица Шаболовка, Москва, Россия" PlaceId="ChIJLSMUPGlLtUYRFwxLZRJTw90" IsRailwayStation="false" IsAirport="false" Latitude="0" Longitude="0">
<Time/>
<TrainNumber/>
<TrainCarNumber/>
<FlightNumber/>
<FlightTerminalNumber/>
</UniversalTransferGeoPoint>
</UniversalTransferVariant>
</DepartureVariant>
</UniversalTransfersSelectedVariantContainer>
Рассмотрим значимые поля:
ProviderName="i'way" - название постащика
ProviderOfferId="2961599" - это НЕ номер брони в системе поставщика, его можно найти в поле Locator контейнера верхнего уровня - Locator="261121714-1974148-IWAY"
Price="2848" - базовая цена услуги от поставщика
ServiceFee="0" - сервисный сбор агента
CarCapactity="3" - вместимость машины, количество пассажиров
id_Agreement="41" - идентификатор договора с клиентом(ORG_Agreement.id_Agreement)
id_Provider="1" - идентификатор поставщика
1 - i’way
PayedServices/UniversalTransferVariantPayedService - сервисы за доп плату, их цена НЕ включена в Price
IsSelected - выбрал ли пользователь этот сервис для включения в заказ
Price - цена платной услуги в рублях
Text - название услуги
Description - описание услуги
IncludedServices/UniversalTransferVariantService - бесплатные(включенные в стоимость) услуги
ServiceName - название услуги
Value - значение(смысл его не известен и берется as is из системы поставщика)
CarClass - класс машины
0 уточняется/Unknown
1 эконом/Economy
2 стандарт/Standard
3 комфорт/Comfort
4 представительский/Representative
5 микроавтобус (до 18 чел. в салоне)/MicroBus
6 минивэн/Minivan
7 автобус (до 44 чел. в салоне)/Bus
8 минивэн (V-класс)/VClassMinivan
9 автобус (до 35 чел. в салоне)/Bus35
11 внедорожник (до 6 чел. в салоне)/Allroad
12 бизнес/Business
13 автобус (до 50 чел. в салоне)/Bus50
14 микроавтобус (до 8 чел. в салоне)/MicroBus8
15 микроавтобус (до 24 чел. в салоне)/MicroBus24
16 микроавтобус (до 16 чел. в салоне)/MicroBus16
19 микроавтобус (до 14 чел. в салоне)/MicroBus14
22 автобус (до 72 чел. в салоне)/Bus72
27 Tesla
28 комфорт — платная дорога/ComfortOnPayedRoad
29 стандарт — платная дорога/StandardOnPayedRoad
30 бизнес — платная дорога/BusinessOnPayedRoad
31 автобус (до 53 чел. в салоне)/Bus53
34 стандарт Такси/StandardTaxi
35 комфорт Такси/ComfortTaxi
36 микроавтобус (до 12 чел. в салоне)/MicroBus12
43 микроавтобус (до 10 чел. в салоне)/MicroBus10
44 внедорожник (до 3 чел. в салоне)/Allroad3
45 микроавтобус/MicroBusCommon
46 автобус/BusCommon
47 бизнес плюс/BusinessPlus
48 джип/Jeep
49 микроавтобус ВИП/MicroBusVip
50 комфорт/Comfort1
51 VIP
52 представительский плюс/RepresentativePlus
53 средний/MiddleTaxi
54 такси бизнес/ BusinessTaxi
55 премиум класс/Premium
56 микроавтобус (до 6 чел. в салоне)/MicroBus6
63 бизнес лайт/BusinessLite
UniversalTransferGeoPoint - первая точка подачи, вторая - пункт назначения
DisplayName="Внуково Международный Аэропорт, Внуково, Московская область, Россия" - понятное пользователю название точки
CountryCode="ru" - код страны alpha2
Address="Внуково Международный Аэропорт, Внуково, Московская область, Россия" - адрес, может совпадать с DisplayName
IsRailwayStation="false" - является ли точка жд станцией
IsAirport="true" - является ли она аэропортом
Time - время подачи/прибытия ЧЧ:мм
TrainNumber - номер поезда, заполняется только если IsRailwayStation == true
TrainCarNumber - номер вагона, заполняется только если IsRailwayStation == true
FlightNumber - номер рейса, например, SU-123, заполняется, только если IsAirport == true
FlightTerminalNumber - номер терминала