|
|
(не показана 121 промежуточная версия 4 участников) |
Строка 1: |
Строка 1: |
− | == Сервис Поиск туров ==
| |
| | | |
− | Работа с сервисом осуществляется путем отправки POST запросов на адрес ... .
| + | == Назначение сервиса == |
| + | === Импорт данных в систему клиента === |
| + | Импорт данных в систему клиента может производиться для получения каких-то статистических показателей. Например расчета минимальных по каким-то параметрам. Или же организации каких-то своих сервисов. |
| | | |
− | Параметр request должен содержать xml запроса.
| + | В этом случае используется [[XML_-_результаты_поиска/Поиск_туров/Тип_поиска_-_БД|Тип поиска - БД]]. |
| | | |
− | В результате сервис вернет ответ в формате xml.
| + | === Организация поиска на сайте клиента === |
| + | Используется для организации сервиса подобного нашему модулю [[Поиск туров - результаты поиска]], когда клиент хочет самостоятельно управлять его работой. Позволяет получить результат в текущий момент наиболее соответствующий данным в системах туроператоров. |
| | | |
− | === Запрос к сервису ===
| + | В этом случае используется [[XML_-_результаты_поиска/Поиск туров/Тип_поиска_-_Комбинированный|Тип поиска - комбинированный]]. |
− | <source lang="xml">
| + | |
| | | |
− | <?xml version="1.0" encoding="UTF-8"?>
| |
− | <root>
| |
− | <TourSearchRequest>
| |
− | <dataOffset>0</dataOffset>
| |
− | <dataLimit>50</dataLimit>
| |
| | | |
− | <seatStatus>3</seatStatus>
| + | В зависимости от выбранного клиентом способа использования сервиса, администрацией TourClient выставляется соответствующая настройка сервиса - '''тип поиска'''. Клиенту изменение данной настройки недоступно. |
| + | |
| + | Тип поиска определяет поведение сервиса и предоставляемые им данные. |
| | | |
− | <cityId>1000</cityId>
| + | <br> |
− | <countryId>12</countryId>
| + | |
− | <roomSizeId>14</roomSizeId>
| + | |
| | | |
− | <adults>2</adults>
| + | == Описание интерфейсов == |
− | <children>0</children>
| + | |
| | | |
− | <childAge1>0</childAge1>
| + | * [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Результаты_поиска|Результаты поиска]] |
− | <childAge2>0</childAge2>
| + | * [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Статус_поиска|Статус поиска]] |
| + | * [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Результаты_поиска_по_отелю|Результаты поиска по отелю]] |
| + | * [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Сводный_прайс_по_ночам|Сводный прайс по ночам]] |
| | | |
− | <durationFrom>7</durationFrom>
| |
− | <durationTill>14</durationTill>
| |
| | | |
− | <departureFrom>2014-07-25</departureFrom>
| + | Результаты возвращаемые сервисом содержат общие для системы объекты, описанные в |
− | <departureTill>2014-08-10</departureTill>
| + | * [[XML_экспорт/Описание_объектов|Описании объектов]] |
− | | + | |
− | <ticket>1</ticket>
| + | |
− | | + | |
− | <priceFrom>500</priceFrom>
| + | |
− | <priceTill>50000</priceTill>
| + | |
− | <currency>3</currency>
| + | |
− | | + | |
− | <operatorIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </operatorIds>
| + | |
− | | + | |
− | <resortIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </resortIds>
| + | |
− | | + | |
− | <resortPlaceIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </resortPlaceIds>
| + | |
− | | + | |
− | <allocCatId>7</allocCatId>
| + | |
− | <allocRate>3.56</allocRate>
| + | |
− | | + | |
− | <allocationIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </allocationIds>
| + | |
− | | + | |
− | <mealIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </mealIds>
| + | |
− | | + | |
− | <roomViewIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </roomViewIds>
| + | |
− | | + | |
− | <roomTypeIds>
| + | |
− | <id>111</id>
| + | |
− | <id>222</id>
| + | |
− | <id>333</id>
| + | |
− | </roomTypeIds>
| + | |
− | | + | |
− | </TourSearchRequest>
| + | |
− | <TourExtraEntities>
| + | |
− | <entity>OnlineSeatsState</entity>
| + | |
− | <entity>ExtraCharges</entity>
| + | |
− | <entity>City</entity>
| + | |
− | <entity>Country</entity>
| + | |
− | <entity>RoomSize</entity>
| + | |
− | <entity>Resort</entity>
| + | |
− | <entity>ResortPlace</entity>
| + | |
− | <entity>Allocation</entity>
| + | |
− | <entity>AllocCat</entity>
| + | |
− | <entity>Meal</entity>
| + | |
− | <entity>RoomType</entity>
| + | |
− | <entity>RoomView</entity>
| + | |
− | </TourExtraEntities>
| + | |
− | | + | |
− | </root>
| + | |
− | </source>
| + | |
− | | + | |
− | === Ответ сервиса ===
| + | |
− | Сервис возвращает ответ, содержащий массив объектов Тур (Tours) и объект Статус поиска (SearchStatus)
| + | |
− | | + | |
− | <source lang="xml">
| + | |
− | | + | |
− | <?xml version="1.0" encoding="UTF-8"?>
| + | |
− | <root>
| + | |
− | <Tours>
| + | |
− | <Tour>...</Tour>
| + | |
− | <Tour>...</Tour>
| + | |
− | <Tour>...</Tour>
| + | |
− | ...
| + | |
− | </Tours>
| + | |
− | <SearchStatus>
| + | |
− | ...
| + | |
− | </SearchStatus>
| + | |
− | </root>
| + | |
− | | + | |
− | </source>
| + | |
| | | |
| <br> | | <br> |
| | | |
− | == Сервис Статус поиска == | + | == Дополнительная информация == |
− | Работа с сервисом осуществляется путем отправки POST запросов на адрес ... .
| + | |
| | | |
− | Параметр request должен содержать xml запроса.
| + | * [[XML_-_результаты_поиска/Поиск_туров/Буфер_поиска|Буфер поиска]] |
− | | + | * [[XML_-_результаты_поиска/Поиск_туров/Тип_поиска_-_БД|Тип поиска - БД]] |
− | В результате сервис вернет ответ в формате xml.
| + | * [[XML_-_результаты_поиска/Поиск туров/Тип_поиска_-_Комбинированный|Тип поиска - комбинированный]] |
− | | + | |
− | | + | |
− | === Запрос к сервису ===
| + | |
− | <source lang="xml">
| + | |
− | | + | |
− | <?xml version="1.0" encoding="UTF-8"?>
| + | |
− | <root>
| + | |
− | <SearchStatusRequest>
| + | |
− | <key>df1b446a09606710d301153157fc862b</key>
| + | |
− | </SearchStatusRequest>
| + | |
− | </root>
| + | |
− | | + | |
− | </source>
| + | |
− | | + | |
− | === Ответ сервиса ===
| + | |
− | Сервис возвращает ответ объект Статус поиска (SearchStatus)
| + | |
− | | + | |
− | Сервис возвращает ответ, содержащий массив объектов Тур (Tours) и объект Статус поиска (SearchStatus)
| + | |
− | | + | |
− | <source lang="xml">
| + | |
− | | + | |
− | <?xml version="1.0" encoding="UTF-8"?>
| + | |
− | <root>
| + | |
− | <SearchStatus>
| + | |
− | ...
| + | |
− | </SearchStatus>
| + | |
− | </root>
| + | |
− | | + | |
− | </source>
| + | |
| | | |
| <br> | | <br> |
− |
| |
− | == Описание объектов ==
| |
− | ===Объект Статус поиска===
| |
− |
| |
− | <source lang="xml">
| |
− |
| |
− | <SearchStatus>
| |
− | <key>df1b446a09606710d301153157fc862b</key>
| |
− | <inProgress>true</inProgress>
| |
− | <dataCount>450</dataCount>
| |
− | <exactCount>false</exactCount>
| |
− | </SearchStatus>
| |
− |
| |
− | </source>
| |
− |
| |
− |
| |
− | === Объект Тур ===
| |
− | <source lang="xml">
| |
− |
| |
− | <Tour>
| |
− | <id>3145968261@511</id> <!-- Уникальный идентификатор тура. -->
| |
− | <operatorId>308</operatorId> <!-- Идентификатор туроператора. -->
| |
− |
| |
− | <cityId>1000</cityId> <!-- Идентификатор города вылета. -->
| |
− | <countryId>12</countryId> <!-- Идентификатор страны прилета. -->
| |
− | <roomSizeId>14</roomSizeId> <!-- Идентификатор размещения (DBL,SNGL,TRL...). -->
| |
− |
| |
− | <departure>2014-07-10</departure>
| |
− | <arrival>2014-07-17</arrival>
| |
− | <duration>7</duration>
| |
− | <ticket>1</ticket>
| |
− | <directFlight>false</directFlight>
| |
− |
| |
− | <price>18000</price>
| |
− | <currency>2</currency>
| |
− | <priceIsApprox>true</priceIsApprox>
| |
− |
| |
− | <priceOrig>500</priceOrig>
| |
− | <currencyOrig>1</currencyOrig>
| |
− |
| |
− | <prevPriceOrig>0</prevPriceOrig>
| |
− | <priceDiffPercent>0</priceDiffPercent>
| |
− |
| |
− | <ch1From>0</ch1From>
| |
− | <ch1Till>0</ch1Till>
| |
− | <ch2From>0</ch2From>
| |
− | <ch2Till>0</ch2Till>
| |
− |
| |
− | <resortId>4</resortId>
| |
− | <resortPlaceId>2392</resortPlaceId>
| |
− | <allocationId>12395</allocationId>
| |
− | <allocCatId>7</allocCatId>
| |
− | <mealId>2</mealId>
| |
− | <roomTypeId>4</roomTypeId>
| |
− | <roomViewId>22</roomViewId>
| |
− |
| |
− | <isStop>false</isStop>
| |
− | <isStopAllocation>false</isStopAllocation>
| |
− | <isStopFlight>false</isStopFlight>
| |
− |
| |
− | <!-- Дополнительные объекты, описывающие параметры тура. Присутствуют объекте тур опционарно, в зависимости от параметров входящего запроса -->
| |
− | <OnlineSeatsState>...</OnlineSeatsState>
| |
− |
| |
− | <ExtraCharges>...</ExtraCharges>
| |
− |
| |
− | <City>...</City>
| |
− |
| |
− | <Country>...</Country>
| |
− |
| |
− | <Operator>...</Operator>
| |
− |
| |
− | <RoomSize>...</RoomSize>
| |
− |
| |
− | <Resort>...</Resort>
| |
− |
| |
− | <ResortPlace>...</ResortPlace>
| |
− |
| |
− | <Allocation>...</Allocation>
| |
− |
| |
− | <AllocCat>...</AllocCat>
| |
− |
| |
− | <Meal>...</Meal>
| |
− |
| |
− | <RoomType>...</RoomType>
| |
− |
| |
− | <RoomView>...</RoomView>
| |
− |
| |
− | </Tour>
| |
− |
| |
− | </source>
| |
− |
| |
− | ===Дополнительные объекты для объекта Тур===
| |
− | ==== Наличие мест ====
| |
− | <source lang="xml">
| |
− | <OnlineSeatsState>
| |
− | <allocation>1</allocation>
| |
− | <flightThereEco>1</flightThereEco>
| |
− | <flightBackEco>1</flightBackEco>
| |
− | <flightThereBus>2</flightThereBus>
| |
− | <flightBackBus>2</flightBackBus>
| |
− | <isStopFlight>false</isStopFlight>
| |
− | <isStopAllocation>false</isStopAllocation>
| |
− | </OnlineSeatsState>
| |
− | </source>
| |
− |
| |
− | ==== Доплаты ====
| |
− | <source lang="xml">
| |
− | <ExtraCharges>
| |
− | <visa>
| |
− | <min>25</min>
| |
− | <max>25</max>
| |
− | <currency>1</currency>
| |
− | </visa>
| |
− | <feeFuel>
| |
− | <min>0</min>
| |
− | <max>40</max>
| |
− | <currency>1</currency>
| |
− | </feeFuel>
| |
− | </ExtraCharges>
| |
− | </source>
| |
− |
| |
− | ==== Город вылета ====
| |
− | <source lang="xml">
| |
− | <City>
| |
− | <id>1000</id>
| |
− | <name>Москва</name>
| |
− | </City>
| |
− | </source>
| |
− |
| |
− | ==== Страна ====
| |
− | <source lang="xml">
| |
− | <Country>
| |
− | <id>12</id>
| |
− | <name>Египет</name>
| |
− | </Country>
| |
− | </source>
| |
− |
| |
− | ==== Туроператор ====
| |
− | <source lang="xml">
| |
− | <Operator>
| |
− | <id>308</id>
| |
− | <name>Troyka</name>
| |
− | </Operator>
| |
− | </source>
| |
− |
| |
− | ==== Размещение ====
| |
− | <source lang="xml">
| |
− | <RoomSize>
| |
− | <id>14</id>
| |
− | <name>DBL</name>
| |
− | <description>2-е взрослых</description>
| |
− | <adults>2</adults>
| |
− | <children>0</children>
| |
− | </RoomSize>
| |
− | </source>
| |
− |
| |
− | ==== Курорт ====
| |
− | <source lang="xml">
| |
− | <Resort>
| |
− | <id>4</id>
| |
− | <name>Хургада</name>
| |
− | </Resort>
| |
− | </source>
| |
− |
| |
− | ==== Район (курорта) ====
| |
− | <source lang="xml">
| |
− | <ResortPlace>
| |
− | <id>2392</id>
| |
− | <name>Эль-Дахар</name>
| |
− | </ResortPlace>
| |
− | </source>
| |
− |
| |
− | ==== Отель ====
| |
− | <source lang="xml">
| |
− | <Allocation>
| |
− | <id>12395</id>
| |
− | <name>Sea View</name>
| |
− | <rate>2.5</rate>
| |
− | </Allocation>
| |
− | </source>
| |
− |
| |
− | ==== Категория отеля ====
| |
− | <source lang="xml">
| |
− | <AllocCat>
| |
− | <id>7</id>
| |
− | <name>2*</name>
| |
− | </AllocCat>
| |
− | </source>
| |
− |
| |
− | ==== Питание ====
| |
− | <source lang="xml">
| |
− | <Meal>
| |
− | <id>1</id>
| |
− | <name>AI</name>
| |
− | <description>питание+напитки местного производства</description>
| |
− | </Meal>
| |
− | </source>
| |
− |
| |
− | ==== Тип номера ====
| |
− | <source lang="xml">
| |
− | <RoomType>
| |
− | <id>13</id>
| |
− | <name>Executive</name>
| |
− | <description>улучш. номер "Executive"</description>
| |
− | </RoomType>
| |
− | </source>
| |
− |
| |
− | ==== Вид из номера ====
| |
− | <source lang="xml">
| |
− | <RoomView>
| |
− | <id>22</id>
| |
− | <name>ROH</name>
| |
− | <description>без опред. вида из номера</description>
| |
− | </RoomView>
| |
− | </source>
| |
Импорт данных в систему клиента может производиться для получения каких-то статистических показателей. Например расчета минимальных по каким-то параметрам. Или же организации каких-то своих сервисов.
Тип поиска определяет поведение сервиса и предоставляемые им данные.