Мастер-Тур(15):API для разработки онлайн поиска и бронирования

Материал из Megatec
Перейти к: навигация, поиск

Версия статьи от 19-04-2019.

Поддерживаемые версии ПК «Мастер-Тур»:
Начиная с 15 версии


Содержание

[править] Введение

Данный web-сервис разработан для разработки собственного сайта туроператору на основе API.

[править] Установка

Для работы с web-сервисом необходимо на отдающей стороне установить службу поиска.
После установки web-сервис будет доступен по адресу http://значение настройки "serviceAddress" в TourSearchOwin/"название метода" (пример: http://localhost:9000/TourSearchOwin/Settings)

[править] Список методов

Последовательность вызова методов сервиса
Последовательность вызова методов сервиса

[править] Авторизация (Token)

Метод производит получение авторизационного токена (описание стандарта).

  • Формат запроса:
    • POST .../TourSearchOwin/Token?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/x-www-form-urlencoded
  • Принимаемые параметры POST запроса ( * – обязательный):
    • grant_type * – текст password
    • username * – логин представителя партнера или частного лица
    • password * – пароль представителя партнера или частного лица
  • Возвращаемый результат:
    • access_token – токен
    • token_type – тип токена
    • expires_in – код
    • userKey – ключ пользователя
    • userType – тип пользователя (0 – представитель партнера, 1 – частное лицо)
    • .issued – дата получения
    • .expires – дата действия до
Пример

Вызов метода Token

POST http://localhost:9000/TourSearchOwin/Token HTTP/1.1
Content-Type: application/x-www-form-urlencoded

grant_type=password&username=test&password=1

Возвращаемый результат метода Token (в формате JSON)

{
        "access_token": "AQAAANCMnd8BFdERjHoAwE_Cl-sBAAAAdsCC8X7m9E-2bg0-uS0VfgAAAAAAAAADZgAAwAAAA-
EqAAAAAASAAACgAAAAEAAAAO4S-VrqBhQuhqliqrAKKfIgAQAAn-gfgP-rYjk-Krr1Ck2A-IGCw6FBhamUOzFxgTtk1hR-
GLMryFIH8VK5GmHdHubZWj4S7XcazGL1Kn5-VlbiYdW2ZVWpYlk638aV-XS2kpZ9YrKgViiM_x8RH5TPo4-
9LhE7V-SjiB_CP_qs58DRKcyohq3Tz9QaiFgH1Ko7O2XKjTBG7SHyQPDPYjaqg9kDxmzq0UcIT6Fm4YkDxmm9-
CW7u3cEFWcpiqKOc2VvZFKPPHc07uDOO4w9FXPhpXZwOqrJBxzhbr73RuhzPs_e-hgxKaIlsMaK5b0v5ReAMy1kuY0ebXA"
,",
        "
token_type": "bearer",
        "
expires_in": 1209599,
        "
userKey": "333",
        "
userType": "0",
        "
.issued": "Thu, 05 Apr 2018 12:05:31 GMT",
        "
.expires": "Thu, 19 Apr 2018 12:05:31 GMT"
}

[править] Выгрузка настроек службы поиска (Settings)

Метод производит выгрузку настроек службы поиска.

  • Формат запроса:
    • GET .../TourSearchOwin/Settings?
  • Принимаемые параметры:
    • нет принимаемых параметров
  • Возвращаемый результат:
    • ChildAgesSetting – регулируется настройкой максимальный возраст ребенка (массив возрастов, при которых турист будет считаться ребенком
    • DurationSetting – регулируется настройкой максимальная продолжительность тура (массив продолжительностей, доступных в фильтрах для поиска)
    • RoundServiceSetting – признак округления цены (количество знаков после запятой)
    • CacheReady – статус готовности службы поиска к работе (true/false)
    • EnableFiterTree – устаревшая настройка, будет убрана (по умолчанию всегда false)
    • EnableActualFilters – включены ли актуальные фильтры (true/false)
    • CorrectLicense – проверка лицензии (true/false)
    • CorrectLicenseMessage – сообщение, если проверка лицензии не прошла
    • IsCorrectUser – проверка наличия пользователя в таблице Userlist, под которым запущена служба поиска (true/false)
    • IsShowCitizenAuthTourist – настройка запрашивать гражданство при регистрации частного лица (true/false)
    • IsShowFewCountPlaces – настройка отображения числового значения оставшихся мест, когда достигнуто значение «Мало» (true/false)
    • IsShowBusTransferPlaces – использовать фильтр наличие мест на автобусный переезд в поиске (true/false)
    • UseBusSeatChecks – план рассадки автобусного переезда (0 – не отображать, 1 – отображать без проверки, 2 – отображать с проверкой)
    • UseTransferSeatChecks – план рассадки трансфера (0 – не отображать, 1 – отображать без проверки, 2 – отображать с проверкой)
    • IsShowFiltersByCity – отображать фильтр по городам на главной странице поиска (true/false)
    • CheckRealCourses – включена ли проверка курсов реальных валют при поиске (true/false)
    • CommonImagesFolderPath – путь к папке для хранения изображений
    • UseApplyFiltersButton – отображать кнопку «Применить фильтры» (true/false)
    • AutoSearchFiltersTimeout – задержка между выбором дополнительных фильтров и выводом результатов (в секундах)
    • UseFastSearchAlgoritm – использовать быстрый алгоритм поиска (true/false)
    • MaxSearchDatesCountClient – максимальное количество дат, которое будет обрабатываться в клиенте поиска
    • MaxDurationsCountClient – максимальное количество продолжительностей, которое будет обрабатываться в клиенте поиска
Пример

Вызов метода Settings

GET http://localhost:9000/TourSearchOwin/Settings

Возвращаемый результат метода Settings (в формате JSON)

{
   "ChildAgesSetting":    [
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16
   ],
   "DurationSetting":    [
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17,
      18,
      19,
      20
   ],
   "RoundServiceSetting": 2,
   "CacheReady": true,
   "EnableFiterTree": false,
   "EnableActualFilters": true,
   "CorrectLicense": true,
   "CorrectLicenseMessage": "0deb1f882da1ec6301c961780507a180",
   "IsCorrectUser": true,
   "IsShowCitizenAuthTourist": true,
   "IsShowFewCountPlaces": true,
   "IsShowBusTransferPlaces": true,
   "UseBusSeatChecks": 1,
   "UseTransferSeatChecks": 2,
   "IsShowFiltersByCity": true,
   "CheckRealCourses": true,
   "CommonImagesFolderPath": "\\\\server\\Icons",
   "UseApplyFiltersButton": false,
   "AutoSearchFiltersTimeout": 1,
   "UseFastSearchAlgoritm": true,
   "MaxSearchDatesCountClient": 10,
   "MaxDurationsCountClient": 14
}

[править] Выгрузка списка валют (Currency)

Метод возвращает список используемых валют.

  • Формат запроса:
    • GET .../TourSearchOwin/Currency
  • Принимаемые параметры:
    • нет принимаемых параметров
  • Возвращаемый результат:
    • Code – код валюты
    • Name – наименование валюты
    • IsMain – признак валюты «Главная»
    • IsNational – признак валюты «Национальная»
    • IsoCode – ISO код валюты
    • Key – идентификатор валюты
    • IsShowInSearch – признак показывать ли валюту в поиске
Пример

Вызов метода Currency

GET http://localhost:9000/TourSearchOwin/Currency

Возвращаемый результат метода Currency (в формате JSON)

[
      {
      "Code": "EU",
      "Name": "Euro",
      "IsMain": false,
      "IsNational": false,
      "IsoCode": "EUR",
      "Key": 2,
      "IsShowInSearch": true
   },
      {
      "Code": "рб",
      "Name": "Рубль",
      "IsMain": false,
      "IsNational": true,
      "IsoCode": "RUR",
      "Key": 14,
      "IsShowInSearch": true
   },
      {
      "Code": "$",
      "Name": "US Dollar",
      "IsMain": true,
      "IsNational": false,
      "IsoCode": "USD",
      "Key": 1,
      "IsShowInSearch": true
   }
]

[править] Выгрузка квотируемых услуг системы (QuotedServices)

Метод производит выгрузку услуг с признаком «Квотируемая»

  • Формат запроса:
    • GET .../TourSearchOwin/QuotedServices
  • Принимаемые параметры:
    • нет принимаемых параметров
  • Возвращаемый результат:
    • Key – идентификатор услуги
    • Code – код услуги
    • Name – наименование услуги (русский)
    • NameLat – наименование услуги (английский)
    • IsDuration – наличие продолжительности у услуги
    • IsCity – наличие города у услуги
    • IsSubCode1 – признак наличия SubCode1 у услуги (вид проживания у отеля, тариф у авиаперелета)
    • IsSubCode2 – признак наличия SubCode2 у услуги (тип питания у отеля)
    • Quoted – признак квотируемости услуги
    • CheckGeoPoint – наличие геоточек у услуги
    • IsRoute – признак маршрутной услуги
    • IsPartnerBasedOn – признак сопоставления партнера услуги в зависимости от отеля
    • Control – идентификатор статуса услуги
Пример

Вызов метода QuotedServices

GET http://localhost:9000/TourSearchOwin/QuotedServices

Возвращаемый результат метода QuotedServices (в формате JSON)

[
      {
      "Key": 1,
      "Code": "А_П",
      "Name": "Авиаперелет",
      "NameLat": "Flight",
      "IsDuration": false,
      "IsCity": true,
      "IsSubCode1": true,
      "IsSubCode2": false,
      "Quoted": true,
      "CheckGeoPoint": true,
      "IsRoute": true,
      "IsPartnerBasedOn": false,
      "Control": 1
   },
      {
      "Key": 3,
      "Code": "HOTEL",
      "Name": "Отель/Круиз",
      "NameLat": "Hotel/Cruise",
      "IsDuration": true,
      "IsCity": true,
      "IsSubCode1": true,
      "IsSubCode2": true,
      "Quoted": true,
      "CheckGeoPoint": true,
      "IsRoute": true,
      "IsPartnerBasedOn": false,
      "Control": 1
   }
]

[править] Выгрузка городов отправления (departureCities)

Метод производит выгрузку всех доступных городов отправления для поискового запроса.

  • Формат запроса:
    • GET .../TourSearchOwin/departureCities?
  • Принимаемые параметры:
    • нет принимаемых параметров
  • Возвращаемый результат:
    • Key – идентификатор города
    • Name – название города
Пример

Вызов метода departureCities

GET http://localhost:9000/TourSearchOwin/departureCities

Возвращаемый результат метода departureCities (в формате JSON)

[
      {
      "Key": -1,
      "Name": "Без перелета"
   },
      {
      "Key": 312,
      "Name": "Астрахань"
   },
      {
      "Key": 1,
      "Name": "Москва"
   }
]

[править] Выгрузка списка стран (Destination)

Метод производит выгрузку всех доступных направлений туроператора.

  • Формат запроса:
    • GET .../TourSearchOwin/Destination?
  • Принимаемые параметры ( * – обязательный):
    • departureCities * – идентификатор города отправления (из контроллера .../TourSearchOwin/departureCities?)
    • term – фильтрация результатов по контекстному поиску (по умолчанию параметр пустой)
  • Возвращаемый результат:
    • Name – название страны
    • Key – идентификатор страны
    • DestinationType – тип результата (всегда возвращается в JSON = 1, в xml = country)
Пример

Вызов метода Destination

GET http://localhost:9000/TourSearchOwin/Destination?departureCities=1

Возвращаемый результат метода Destination (в формате JSON)

[
      {
      "Name": "Болгария",
      "Key": 359,
      "DestinationType": 1
   },
      {
      "Name": "Индия",
      "Key": 26,
      "DestinationType": 1
   },
      {
      "Name": "Финляндия",
      "Key": 64,
      "DestinationType": 1
   }
]

[править] Выгрузка списка городов (ActualizeCities)

Метод возвращает список всех доступных городов по определенному городу отправления и стране прибытия.

  • Формат запроса:
    • GET .../TourSearchOwin/ActualizeCities?
  • Принимаемые параметры ( * – обязательный):
    • cityKeys * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • Key * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • term – фильтрация результатов по контекстному поиску (по умолчанию параметр пустой)
  • Возвращаемый результат:
    • Key – идентификатор города
    • Name – название города
Пример

Вызов метода ActualizeCities

GET http://localhost:9000/TourSearchOwin/ActualizeCities?cityKeys=1&Key=90

Возвращаемый результат метода ActualizeCities (в формате JSON)

[
      {
      "Key": -1,
      "Name": "Все"
   },
      {
      "Key": 35,
      "Name": "Вена"
   },
      {
      "Key": 440,
      "Name": "Зельден"
   }
]

[править] Выгрузка типов туров (ActualizeTourType)

Метод возвращает список типов туров по определенному городу отправления, стране и городу прибытия.

  • Формат запроса:
    • GET .../TourSearchOwin/ActualizeTourType?
  • Принимаемые параметры ( * – обязательный):
    • departureCityKeys * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • Key * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • Type * – тип результата (всегда возвращается в JSON = 1, в xml = country)
    • destinationCity * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/ActualizeCities?), по умолчанию передается -1, то есть все города в рамках данной страны
    • terms – фильтрация результатов по контекстному поиску (по умолчанию параметр пустой)
  • Возвращаемый результат:
    • Key – идентификатор типа тура
    • Name – название типа тура
    • ParentId – идентификатор группы, к которой относится данный типа тура (если тип тура не относится к группе, то возвращается null)
Пример

Вызов метода ActualizeTourType

GET http://localhost:9000/TourSearchOwin/ActualizeTourType?departureCityKeys=1&Key=90&Type=1&destinationCity=-1

Возвращаемый результат метода ActualizeTourType (в формате JSON)

[
      {
      "Key": -1,
      "Name": "Все",
      "ParentId": null
   },
      {
      "Key": 2,
      "Name": "Стандартный тур",
      "ParentId": null
   },
      {
      "Key": 16,
      "Name": "Экскурсионный тур",
      "ParentId": 35
   }
]

[править] Выгрузка актуальных дат заездов (TourDate)

Метод производит выгрузку доступных дат заездов для поискового запроса.

  • Формат запроса:
    • GET .../TourSearchOwin/TourDate?
  • Принимаемые параметры ( * – обязательный):
    • departureCity * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • destinationCity * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/ActualizeCities?), по умолчанию передается -1, то есть все города в рамках данной страны
    • Key * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • Type * – тип результата (всегда возвращается в JSON = 1, в xml = country)
    • tourTypes * – идентификатор типа тура (полученный из метода .../TourSearchOwin/ActualizeTourType?), по умолчанию передается -1, то есть все типы тура в рамках данной страны
  • Возвращаемый результат:
    • массив дат
Пример

Вызов метода TourDate

GET http://localhost:9000/TourSearchOwin/TourDate?departureCity=1&destinationCity=-1&Key=90&Type=1&tourTypes=-1

Возвращаемый результат метода TourDate (в формате JSON)

[
   "21.02.2018",
   "22.02.2018",
   "23.02.2018",
   "24.02.2018",
   "25.02.2018",
   "26.02.2018",
   "27.02.2018",
   "28.02.2018"
]

[править] Выгрузка актуальных продолжительностей (Duration)

Метод производит выгрузку доступных продолжительностей для поискового запроса.

  • Формат запроса:
    • GET .../TourSearchOwin/Duration?
  • Принимаемые параметры ( * – обязательный):
    • departureCity * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • destinationCity * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/ActualizeCities?), по умолчанию передается -1, то есть все города в рамках данной страны
    • Key * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • Type * – тип результата (всегда возвращается в JSON = 1, в xml = country)
    • tourDate * – массив дат заезда (полученные из метода .../TourSearchOwin/TourDate?). Если параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • tourTypes * – идентификатор типа тура (полученный из метода .../TourSearchOwin/ActualizeTourType?), по умолчанию передается -1, то есть все типы тура в рамках данной страны
  • Возвращаемый результат:
    • массив продолжительностей
Пример

Вызов метода Duration

GET http://localhost:9000/TourSearchOwin/Duration?departureCity=1&destinationCity=-1
&Key=90&Type=1&tourDate=25.02.2018&tourDate=26.02.2018&tourTypes=-1

Возвращаемый результат метода Duration (в формате JSON)

[
   7,
   8,
   10,
   12,
   15,
   18
]

[править] Поиск туров (Tour)

Метод поиска туров использует множество параметров для поиска и фильтрации туров. Метод возвращает наиболее дешевые предложения, найденные по предоставленным параметрам и сгруппированные по отелям в порядке возрастания цены.

  • Формат запроса:
    • GET .../TourSearchOwin/Tour?
  • Принимаемые параметры ( * – обязательный):
    • DepartureCityKeys * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • Dates * – массив дат заезда (полученные из метода .../TourSearchOwin/TourDate?). Если параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • Durations * – массив продолжительностей (полученные из метода .../TourSearchOwin/Duration?). Если параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • Groups – группировка результатов (2 – по названию тура, 4 – по дате тура, 8 – по продолжительности тура, 16 – по городу вылета, 32 – по отелю, 64 – по городу отеля, 128 – по курорту отеля, 256 – по категории отеля)
    • PageNumber * – номер возвращаемой страницы (по умолчанию возвращается 1)
    • PageSize * – количество возвращаемых результатов на одной странице (возвращается 20)
    • HotelScheme – пустой по умолчанию. Заполняется при вызове вариантов размещений в рамках одного отеля. Передаются следующие параметры: TemplateId – идентификатор шаблона услуги, DurationInNight – продолжительность отеля в ночах, Code – ключ отеля, PacketKey – ключ пакета, PartnerKey – ключ партнера
    • BusTransferPointKeys – данный признак проставляется в true в том случае, когда происходит запрос вариантов проживания (кнопка Варианты) в автобусных переездах
    • TourKey – пустой по умолчанию. Заполняется при вызове вариантов размещений в рамках одного отеля: ключ программы тура
    • TourDuration – пустой по умолчанию. Заполняется при вызове вариантов размещений в рамках одного отеля: продолжительность тура в днях
    • isFromBasket * – происходит ли обращение из корзины или из поиска туров (true/false)
    • isFillSecondaryFilters * – заполнены ли дополнительные фильтры (по умолчанию всегда приходит true)
    • DestinationType * – тип результата (всегда возвращается в JSON = 1, в xml = country)
    • DestinationKey * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • AdultCount * – количество взрослых
    • ChildAges – возраст детей. Если детей несколько, и параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • CurrencyName – код валюты
    • AviaQuota * – информация о квотах на авиаперелет (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • HotelQuota * – информация о квотах на отель (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • BusTransferQuota – информация о квотах на автобусный переезд (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • MinPrice * – минимальная цена (по умолчанию не задана, передается NaN)
    • MaxPrice – максимальная цена (по умолчанию не передается)
    • TourType – идентификатор типа тура (полученный из метода .../TourSearchOwin/ActualizeTourType?), по умолчанию передается -1, то есть все типы тура в рамках данной страны. Возможна множественная передача параметров.
    • Tour – ключ программы тура (дополнительный фильтр)
    • Duration – продолжительность тура (дополнительный фильтр)
    • DateTour – дата тура (дополнительный фильтр)
    • HotelResort – ключ курорта отеля (дополнительный фильтр)
    • HotelCity – ключ города отеля (дополнительный фильтр)
    • HotelType – ключ признака отеля (дополнительный фильтр)
    • HotelStars – ключ категории отеля (дополнительный фильтр)
    • Hotel – ключ отеля (дополнительный фильтр)
    • Pansions – ключ питания (дополнительный фильтр)
    • Airline – ключ авиакомпании (дополнительный фильтр)
    • AirportDeparture – ключ аэропорта вылета (дополнительный фильтр)
    • AirportArrival – ключ аэропорта прилета (дополнительный фильтр)
    • CityIds – идентификатор города прибытия (полученный из метода .../TourSearchOwin/ActualizeCities?), по умолчанию передается -1, то есть все города в рамках данной страны. Возможна множественная передача параметров.
    • TimeDepartureFrom – время отправления с (по умолчанию возвращается 00:00)
    • TimeDepartureTo – время отправления по (по умолчанию возвращается 23:59)
    • TimeArrivalFrom – время прибытия с (по умолчанию возвращается 00:00)
    • TimeArrivalTo – время прибытия по (по умолчанию возвращается 23:59)
    • ArrivalFlightNoTransfer – производить поиск без пересадок в прямом направлении (true/false, по умолчанию false)
    • DepartureFlightNoTransfer – производить поиск без пересадок в обратном направлении (true/false, по умолчанию false)
    • DepartureFlightNumberTransfer – наличие пересадок в прямом направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более). Обрабатывается начиная с релиза 15.3.
    • ArrivalFlightNumberTransfer – наличие пересадок в обратном направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более). Обрабатывается начиная с релиза 15.3.
    • Tariff – ключ класса авиаперелета (дополнительный фильтр)
    • CombineAirlines — разрешить комбинировать авиаперелеты (дополнительный фильтр). Параметр применяется только при наличии параметра airline. Обрабатывается начиная с релиза 15.3.
    • CombineTariffs — разрешить комбинировать классы перелета (дополнительный фильтр). Параметр применяется только при наличии параметра tariff. Обрабатывается начиная с релиза 15.3.
    • FlightCityDeparture – ключ город вылета в параметрах авиаперелета (дополнительный фильтр)
    • CityDeparture – ключ города начала поездки (дополнительный фильтр)
  • Возвращаемый результат:
    • CheckMessages – сообщения для логики проверки тура (не используется)
    • Message – сообщение об ошибке
      • Key – код ошибки
      • Value – сообщение об ошибке
    • Result – результаты поиска
      • Key – идентификатов программы тура
      • Name – название программы тура
      • TourUrl – ссылка на программу тура
      • BookingConditions – условия бронирования программы туров
      • StartDate – дата начала тура
      • Duration – продолжительность тура (в днях)
      • DurationInNight – продолжительность проживания (в ночах)
      • Types – идентификатор типа туров
      • Cost – цена тура
      • Rate – код валюты тура
      • CityDepature – город отправления
        • Key – идентификатор города отправления
        • Value – название города отправления
      • CountryId – всегда возвращается ключ 0
      • Services – услуги в туре
        • DepartureCity – город отправления
          • Key – идентификатор
          • Value – название
        • DepartureCountry – страна отправления
          • Key – идентификатор
          • Value – название
        • ArrivalCity – город прибытия
          • Key – идентификатор
          • Value – название
        • ArrivalCountry – страна прибытия
          • Key – идентификатор
          • Value – название
        • DepartureAirport – аэропорт отправления
          • Key – идентификатор
          • Value – название
        • ArrivalAirport – аэропорт прибытия
          • Key – идентификатор
          • Value – название
        • Airline – авиакомпания
          • Key – идентификатор
          • Value – название
        • Aircraft – воздушное судно
          • Key – идентификатор
          • Value – название
        • Flight – рейс
          • Key – идентификатор
          • Value – название
        • DepartureTime – время вылета
        • ArrivalTime – время прилета
        • EndDateTime – дата и время прилета
        • FlightDetails – информация об авиаперелете
          • Tariff – информация о тарифе перелета
            • Key – идентификатор
            • Code – код тарифа
            • Name – название тарифа
          • Cost – разница в стоимости с самым дешевым вариантом
          • QuotaStatus – информация о квоте
            • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
            • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
            • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
          • PartnerId – ключ партнера
          • ByPax – цена за человека (true/false)
          • Partner – информация о партнере
            • Key – идентификатор
            • Value – название
        • FlightSetting – внутренняя информация о перелете из программы туров
          • ServiceId – идентификатор класса услуги (внутренняя информация из программы туров)
          • PatternId – идентификатор паттерна услуги (внутренняя информация из программы туров)
          • FlightId – идентификатор перелета (внутренняя информация из программы туров)
        • FlightSourceMode – локальный или удаленный перелет (внутренняя информация из программы туров)
        • Id – идентификатор базового шаблона услуги (внутренняя информация из программы туров)
        • SvKey – ключ типа услуги
        • IsSubCode1 – признак наличия доп. описания 1
        • IsSubCode2 – признак наличия доп. описания 2
        • IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • BeginDateTime – дата предоставления услуги
        • IsHooded – признак скрытая услуга
        • IsDeleted – признак удаляемая услуга
        • IsNotCalculate – признак не рассчитываемая услуга
        • PacketId – ключ пакета
        • Index – порядковый номер услуги
      • NotRouteServices – массив коллекций немаршрутных услуг (например если две экскурсии будут являться одним элементом массива, то это будет говорить о том, что эти экскурсии можно будет выбрать в выпадающем списке)
        • ServiceName – название типа услуги
        • City – объект город
          • Key – ключ города
          • Value – название города
        • Country – ключ страны
        • Code – объект код услуги
          • Key – ключ услуги
          • Value – название услуги
        • ByScheduler – флаг услуга по расписанию или нет
        • Details – объект детализация услуги
          • SubCode1 – объект доп. описание 1
            • Key – ключ доп. описания 1
            • Value – название доп. описания 1
          • SubCode2 – объект доп. описание 2
            • Key – ключ доп. описания 2
            • Value – название доп. описания 2
          • Date – дата услуги
          • IsShowTransportPlan – признак показывать ли план рассадки (для автобусов)
          • Cost – цена
          • QuotaStatus – объект информация по квотам
            • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
            • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
            • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
          • PartnerId – идентификатор партнера
          • ByPax – признак цены за человека
          • Partner – объект партнер (не заполняется)
            • Key – ключ (не заполняется)
            • Value – название (не заполняется)
        • ParentId – идентификатор родительской услуги (для вложенных услуг)
        • PartnerBasedOnServiceTemplateId – ключ шаблона услуги, по которой приоритетно выбирается партнер текущей услуги
        • Id – идентификатор услуги
        • SvKey – ключ типа услуги
        • IsSubCode1 – наличие доп. описания 1
        • IsSubCode2 – наличие доп. описания 2
        • IsPartnerBasedOn – услуга с подбором приоритетного поставщика услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • BeginDateTime – дата предоставления услуги
        • EndDateTime – дата окончания услуги
        • IsHooded – скрытая ли услуга
        • IsDeleted – удаляемая ли услуга
        • IsNotCalculate – не рассчитываемая ли услуга
        • PacketId – пакет услуги
        • Index – индекс услуги
      • MinCostServicesComposition – массив состав услуг минимальной цены
        • Key – ключ
          • TemplateId – идентификатор шаблона
          • PatternId – идентификатор вкладки
          • SettingId – идентификатор услуги
        • Value – значение
          • ServiceType – тип услуги
          • Code – ключ услуги
          • SubCode1 – доп. описание 1
          • SubCode2 – доп. описание 2
          • PacketId – пакет услуги
          • PartnerId – партнер услуги
          • CountryId – страна услуги
          • CityId – город услуги
          • Day – день предоставления услуги
          • DurationInNight – продолжительность услуги в ночах
      • FlightWeight
      • LinkingFlightsRules – объект правил связывания
        • notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
          • airlines – авиакомпании
          • flightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • checkPlusMinus1CharterRule – объект Отличие номера рейса на 1
          • FlightSettingPairs – массив чартеров, для которых это правило будет выполняться
          • enabled – флаг включен/выключен
        • notCombineDifferentTariffGroupRule – объект не комбинировать рейсы от разных классов перелетов
          • FlightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • notCombineDifferentPartnerRule – объект не комбинировать рейсы от разных партнеров
          • FlightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • departureCityEqualsArrivalCityRule – объект Город вылета = городу прилета
          • FlightSettingPairs – чартеры, для которых это будет выполняться
          • enabled – флаг включен/выключен
        • combineOnlySpecificChartersRule – объект не комбинировать различные классы перелетов
          • settings – массив ключей чартеров CharterIds и ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
      • RouteSubVariants – подварианты услуг (используется в основном поиске)
    • SecondaryFiltersResult
      • TourTypes – типы тура
        • Id
        • Name
        • ParentId
        • Type
      • TourPrograms – информация по каждой турпрограмме
        • Key
        • Name
        • TourUrl
        • BookingConditions
        • IsLandOnly
        • IsRestrictMultiHotels
        • IsHotelTemplates
        • IsRouteServices
        • MultiHotelDelta
        • Rate
        • DateStart
        • DateEnd
        • Status
          • Key
          • Value
        • Templates
          • $id
          • $id
        • Types
          • Id
          • Name
          • ParentId
          • Type
        • LinkingFlightsRules
          • notCombineDifferentAirlineRule
            • airlines
            • flightSettings
            • enabled
          • checkPlusMinus1CharterRule
            • FlightSettingPairs
            • enabled
          • notCombineDifferentTariffGroupRule
            • FlightSettings
            • enabled
          • notCombineDifferentPartnerRule
            • FlightSettings
            • enabled
          • departureCityEqualsArrivalCityRule
            • FlightSettingPairs
            • enabled
          • combineOnlySpecificChartersRule
            • settings
            • enabled
        • XmlSettings – xml
        • Type
      • TourDurations
      • TourDates
        • HotelCities – город в дополнительных фильтрах
          • '
        • HotelResorts – курорты в дополнительных фильтрах
          • '
        • HotelCategories – категории отеля в дополнительных фильтрах
          • '
        • Hotels – отели в дополнительных фильтрах
          • '
        • Pansions – питания в дополнительных фильтрах
          • '
        • Airlines – авиакомпании в дополнительных фильтрах
          • '
        • FlightTariffs – класс перелета в дополнительных фильтрах
          • '
        • DepartureCities – города вылета в дополнительных фильтрах
          • '
        • DepartureAirports – аэропорты вылета в дополнительных фильтрах
          • '
        • ArrivalCities – города прибытия в дополнительных фильтрах
          • '
        • ArrivalAirports – аэропорты прибытия в дополнительных фильтрах
          • '
        • HotelTypes – признаки отелей в дополнительных фильтрах
          • '
Пример

Вызов метода Tour

GET http://localhost:9000/TourSearchOwin/Tour?DepartureCityKeys=1&Dates=25.02.2018&Durations=4
&PageNumber=1&PageSize=20&HotelScheme=&TourKey=&TourDuration=&isFromBasket=false
&isFillSecondaryFilters=true&DestinationType=1&DestinationKey=90&AdultCount=2&ChildAges=2
&ChildAges=2&CurrencyName=EU&AviaQuota=5&HotelQuota=5&BusTransferQuota=5&MinPrice=NaN&TourType=-1
&CityIds=-1&TimeDepartureFrom=00%3A00&TimeDepartureTo=23%3A59&TimeArrivalFrom=00%3A00
&TimeArrivalTo=23%3A59&ArrivalFlightNoTransfer=false&DepartureFlightNoTransfer=false

Возвращаемый результат метода Tour (в формате JSON)

{
   "CheckMessages": null,
   "Message":    {
      "Key": 0,
      "Value": null
   },
   "Result":    [
            {
         "Key": 100000004,
         "Name": "Общая проверка системы",
         "TourUrl": "www.megatec.ru",
         "BookingConditions": "<p>Условия бронирования тура.<\/p>",
         "StartDate": "2018-02-25T00:00:00",
         "Duration": 4,
         "DurationInNight": 3,
         "Types": [2],
         "Cost": 260,
         "Rate": "EU",
         "CityDepature":          {
            "Key": 1,
            "Value": "Москва"
         },
         "CountryId": 0,
         "Services":          [
                        {
               "DepartureCity":                {
                  "Key": 1,
                  "Value": "Москва"
               },
               "DepartureCountry":                {
                  "Key": 460,
                  "Value": "Россия"
               },
               "ArrivalCity":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "ArrivalCountry":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "DepartureAirport":                {
                  "Key": "SVO4",
                  "Value": "Шереметьево-24"
               },
               "ArrivalAirport":                {
                  "Key": "VIE1",
                  "Value": "Vena1"
               },
               "Airline":                {
                  "Key": "BA7",
                  "Value": "BRITISH  AIRWAYS"
               },
               "Aircraft":                {
                  "Key": "319",
                  "Value": "AIRBUS "
               },
               "Flight":                {
                  "Key": 882,
                  "Value": "4444"
               },
               "DepartureTime": "10:00:00",
               "ArrivalTime": "12:00:00",
               "EndDateTime": "2018-02-25T12:00:00",
               "FlightDetails": [               {
                  "Tariff":                   {
                     "Key": 89,
                     "Code": "Y",
                     "Name": "Экономический класс"
                  },
                  "Cost": 10,
                  "QuotaStatus":                   {
                     "PlacesStatus": 4,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 12668,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "FlightSetting":                {
                  "ServiceId": 3,
                  "PatternId": 13,
                  "FlightId": 13
               },
               "FlightSourceMode": 1,
               "Id": 3,
               "SvKey": 1,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": false,
               "Day": 1,
               "DurationInNight": 0,
               "BeginDateTime": "2018-02-25T10:00:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 0
            },
                        {
               "Hotel":                {
                  "Key": 709,
                  "Value": "Am Brilliantengrund"
               },
               "City":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "Stars":                {
                  "Key": -1,
                  "Value": null
               },
               "Resort":                {
                  "Key": -1,
                  "Value": null
               },
               "ImageURL": "",
               "Http": null,
               "Description": "",
               "Country":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "HotelDetails": [               {
                  "HotelRoom": 46463,
                  "Room":                   {
                     "Key": 129,
                     "Value": "DBL"
                  },
                  "RoomCategory":                   {
                     "Key": 3493,
                     "Value": "Cosy"
                  },
                  "AccomodationType":                   {
                     "Key": 1256,
                     "Value": "2+1_K",
                     "AdultCount": 2,
                     "ChildCount": 1
                  },
                  "Pansion":                   {
                     "Key": 4,
                     "Value": "Завтрак"
                  },
                  "Cost": 19.47,
                  "QuotaStatus":                   {
                     "PlacesStatus": 4,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 12667,
                  "ByPax": false,
                  "Partner":                   {
                     "Key": 12667,
                     "Value": "Партнер-покупатель1"
                  }
               }],
               "HotelTypes": [               {
                  "Key": 5,
                  "Value": "Рекомендуемые"
               }],
               "Id": 1,
               "SvKey": 3,
               "IsSubCode1": true,
               "IsSubCode2": true,
               "IsPartnerBasedOn": false,
               "Day": 1,
               "DurationInNight": 3,
               "BeginDateTime": "2018-02-25T12:00:00",
               "EndDateTime": "2018-02-28T12:00:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 1
            },
                        {
               "DepartureCity":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "DepartureCountry":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "ArrivalCity":                {
                  "Key": 1,
                  "Value": "Москва"
               },
               "ArrivalCountry":                {
                  "Key": 460,
                  "Value": "Россия"
               },
               "DepartureAirport":                {
                  "Key": "VIE1",
                  "Value": "Vena1"
               },
               "ArrivalAirport":                {
                  "Key": "DME",
                  "Value": "Домодедово"
               },
               "Airline":                {
                  "Key": "7U",
                  "Value": "Авиаэнерго"
               },
               "Aircraft":                {
                  "Key": "727",
                  "Value": "Boeing"
               },
               "Flight":                {
                  "Key": 774,
                  "Value": "222"
               },
               "DepartureTime": "00:00:00",
               "ArrivalTime": "00:00:00",
               "EndDateTime": "2018-02-28T00:00:00",
               "FlightDetails": [               {
                  "Tariff":                   {
                     "Key": 89,
                     "Code": "Y",
                     "Name": "Экономический класс"
                  },
                  "Cost": 0,
                  "QuotaStatus":                   {
                     "PlacesStatus": 4,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 10760,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "FlightSetting":                {
                  "ServiceId": 4,
                  "PatternId": 5,
                  "FlightId": 4
               },
               "FlightSourceMode": 1,
               "Id": 4,
               "SvKey": 1,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": false,
               "Day": 4,
               "DurationInNight": 0,
               "BeginDateTime": "2018-02-28T00:00:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 4
            }
         ],
         "NotRouteServices":          [
            [            {
               "ServiceName": "страховка",
               "City": null,
               "Country": 6245,
               "Code":                {
                  "Key": 297,
                  "Value": "Страховка от несчастного случая"
               },
               "ByScheduler": false,
               "Details": [               {
                  "SubCode1":                   {
                     "Key": 18,
                     "Value": "2"
                  },
                  "SubCode2":                   {
                     "Key": null,
                     "Value": ""
                  },
                  "Date": null,
                  "IsShowTransportPlan": true,
                  "Cost": 16,
                  "QuotaStatus":                   {
                     "PlacesStatus": 1,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 12668,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "ParentId": null,
               "PartnerBasedOnServiceTemplateId": null,
               "Id": 10,
               "SvKey": 6,
               "IsSubCode1": true,
               "IsSubCode2": true,
               "IsPartnerBasedOn": false,
               "Day": 1,
               "DurationInNight": 3,
               "BeginDateTime": "2018-02-25T00:00:00",
               "EndDateTime": "2018-02-28T00:00:00",
               "IsHooded": false,
               "IsDeleted": true,
               "IsNotCalculate": true,
               "PacketId": 882,
               "Index": 2
            }],
            [            {
               "ServiceName": "экскурсия",
               "City":                {
                  "Key": 1046,
                  "Value": "Санто-Доминго"
               },
               "Country": 6245,
               "Code":                {
                  "Key": 743,
                  "Value": "4"
               },
               "ByScheduler": false,
               "Details": [               {
                  "SubCode1":                   {
                     "Key": 37,
                     "Value": "Мини-автобус 10 чел."
                  },
                  "SubCode2":                   {
                     "Key": null,
                     "Value": ""
                  },
                  "Date": null,
                  "IsShowTransportPlan": false,
                  "Cost": 85.22,
                  "QuotaStatus":                   {
                     "PlacesStatus": 1,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 12667,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "ParentId": null,
               "PartnerBasedOnServiceTemplateId": null,
               "Id": 7,
               "SvKey": 4,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": true,
               "Day": 1,
               "DurationInNight": 0,
               "BeginDateTime": "2018-02-25T00:00:00",
               "EndDateTime": "2018-02-26T00:00:00",
               "IsHooded": false,
               "IsDeleted": true,
               "IsNotCalculate": true,
               "PacketId": 779,
               "Index": 3
            }]
         ],
         "MinCostServicesComposition":          [
                        {
               "Key":                {
                  "TemplateId": 3,
                  "PatternId": 13,
                  "SettingId": 13
               },
               "Value":                {
                  "ServiceType": 1,
                  "Code": 882,
                  "SubCode1": 89,
                  "SubCode2": 1,
                  "PacketId": 779,
                  "PartnerId": 12668,
                  "CountryId": 90,
                  "CityId": 35,
                  "Day": 1,
                  "DurationInNight": 0
               }
            },
                        {
               "Key":                {
                  "TemplateId": 1,
                  "PatternId": 0,
                  "SettingId": 0
               },
               "Value":                {
                  "ServiceType": 3,
                  "Code": 709,
                  "SubCode1": 46463,
                  "SubCode2": 4,
                  "PacketId": 779,
                  "PartnerId": 12667,
                  "CountryId": 90,
                  "CityId": 35,
                  "Day": 1,
                  "DurationInNight": 3
               }
            },
                        {
               "Key":                {
                  "TemplateId": 4,
                  "PatternId": 5,
                  "SettingId": 4
               },
               "Value":                {
                  "ServiceType": 1,
                  "Code": 774,
                  "SubCode1": 89,
                  "SubCode2": 35,
                  "PacketId": 779,
                  "PartnerId": 10760,
                  "CountryId": 460,
                  "CityId": 1,
                  "Day": 4,
                  "DurationInNight": 0
               }
            }
         ],
         "FlightWeight": 2,
         "LinkingFlightsRules":          {
            "notCombineDifferentAirlineRule":             {
               "airlines": ["AY2"],
               "flightSettings": [],
               "enabled": true
            },
            "checkPlusMinus1CharterRule":             {
               "FlightSettingPairs": [],
               "enabled": false
            },
            "notCombineDifferentTariffGroupRule":             {
               "FlightSettings": [],
               "enabled": true
            },
            "notCombineDifferentPartnerRule":             {
               "FlightSettings": [],
               "enabled": false
            },
            "departureCityEqualsArrivalCityRule":             {
               "FlightSettingPairs": [],
               "enabled": false
            },
            "combineOnlySpecificChartersRule":             {
               "settings": [],
               "enabled": false
            }
         },
         "RouteSubVariants": []
      }
   ],
   "SecondaryFiltersResult":    {
      "TourTypes": [      {
         "Id": 2,
         "Name": "Стандартный тур",
         "ParentId": null,
         "Type": "TourType"
      }],
      "TourPrograms":       [
                      {
            "Key": 100000004,
            "Name": "Общая проверка системы",
            "TourUrl": "www.megatec.ru",
            "BookingConditions": "<p>Условия бронирования тура.<\/p>",
            "IsLandOnly": false,
            "IsRestrictMultiHotels": false,
            "IsHotelTemplates": true,
            "IsRouteServices": true,
            "MultiHotelDelta": 0,
            "Rate": "EU",
            "DateStart": "2018-01-30T00:00:00Z",
            "DateEnd": "2018-02-27T00:00:00Z",
            "Status":             {
               "Key": 3,
               "Value": "Доступен для продажи"
            },
            "Templates":             [
               {"$id": "5"},
               {"$id": "6"},
               {"$id": "7"},
               {"$id": "8"},
               {"$id": "9"}
            ],
            "Types": [            {
               "Id": 2,
               "Name": "Стандартный тур",
               "ParentId": null,
               "Type": "TourType"
            }],
            "LinkingFlightsRules":             {
               "notCombineDifferentAirlineRule":                {
                  "airlines": ["AY2"],
                  "flightSettings": [],
                  "enabled": true
               },
               "checkPlusMinus1CharterRule":                {
                  "FlightSettingPairs": [],
                  "enabled": false
               },
               "notCombineDifferentTariffGroupRule":                {
                  "FlightSettings": [],
                  "enabled": true
               },
               "notCombineDifferentPartnerRule":                {
                  "FlightSettings": [],
                  "enabled": false
               },
               "departureCityEqualsArrivalCityRule":                {
                  "FlightSettingPairs": [],
                  "enabled": false
               },
               "combineOnlySpecificChartersRule":                {
                  "settings": [],
                  "enabled": false
               }
            },
            "XmlSettings": "информация о туре в формате xml",
            "Type": "TourProgram"
         }
      ],
      "TourDurations": [4],
      "TourDates": ["2018-02-25T00:00:00"],
      "HotelCities": [      {
         "key": 35,
         "Country":          {
            "key": 90,
            "name": "Австрия",
            "Code": "AUS",
            "CitizenName": "Австрия",
            "CitizenNameLat": "AUSTRIA",
            "PassportMinDurCheckFrom": 0,
            "CheckINN": false,
            "PassportMinDur": null,
            "INNName": "ИНН",
            "Web": 1,
            "WebImage": "/pics/animate/austria.gif",
            "WebHTTP": "",
            "AnkLang": 0,
            "Type": "Country"
         },
         "name": "Вена",
         "Code": "VIE",
         "Web": 0,
         "RSKey": 0,
         "WebImage": null,
         "IsDeparture": 1,
         "Type": "City"
      }],
      "HotelResorts": [      {
         "Key": -1,
         "CountryKey": 0,
         "Name": "Не указан",
         "NameLat": null,
         "Type": "Resort"
      }],
      "HotelCategories":       [
                  {
            "Key": 23,
            "Name": "1*",
            "PrintNumber": 1,
            "Type": "HotelCatigory"
         },
                  {
            "Key": 56,
            "Name": "2*",
            "PrintNumber": 2,
            "Type": "HotelCatigory"
         },
                  {
            "Key": 66,
            "Name": "4*Boutique",
            "PrintNumber": null,
            "Type": "HotelCatigory"
         }
      ],
      "Hotels":       [
                  {
            "Key": 705,
            "Country":             {
               "key": 90,
               "name": "Австрия",
               "Code": "AUS",
               "CitizenName": "Австрия",
               "CitizenNameLat": "AUSTRIA",
               "PassportMinDurCheckFrom": 0,
               "CheckINN": false,
               "PassportMinDur": null,
               "INNName": "ИНН",
               "Web": 1,
               "WebImage": "/pics/animate/austria.gif",
               "WebHTTP": "",
               "AnkLang": 0,
               "Type": "Country"
            },
            "City":             {
               "key": 35,
               "Country":                {
                  "key": 90,
                  "name": "Австрия",
                  "Code": "AUS",
                  "CitizenName": "Австрия",
                  "CitizenNameLat": "AUSTRIA",
                  "PassportMinDurCheckFrom": 0,
                  "CheckINN": false,
                  "PassportMinDur": null,
                  "INNName": "ИНН",
                  "Web": 1,
                  "WebImage": "/pics/animate/austria.gif",
                  "WebHTTP": "",
                  "AnkLang": 0,
                  "Type": "Country"
               },
               "name": "Вена",
               "Code": "VIE",
               "Web": 0,
               "RSKey": 0,
               "WebImage": null,
               "IsDeparture": 1,
               "Type": "City"
            },
            "Resort": null,
            "Name": "Continental",
            "Category":             {
               "Key": 23,
               "Name": "1*",
               "PrintNumber": 1,
               "Type": "HotelCatigory"
            },
            "TimeFrom": null,
            "TimeTo": null,
            "HTTP": null,
            "Stars": "1*",
            "TimeIsEmpty": true,
            "NameLat": "Continental",
            "Address": null,
            "IsCruise": 0,
            "Phone": null,
            "Code": null,
            "Type": "Hotel"
         },
                  {
            "Key": 178,
            "Country":             {
               "key": 90,
               "name": "Австрия",
               "Code": "AUS",
               "CitizenName": "Австрия",
               "CitizenNameLat": "AUSTRIA",
               "PassportMinDurCheckFrom": 0,
               "CheckINN": false,
               "PassportMinDur": null,
               "INNName": "ИНН",
               "Web": 1,
               "WebImage": "/pics/animate/austria.gif",
               "WebHTTP": "",
               "AnkLang": 0,
               "Type": "Country"
            },
            "City":             {
               "key": 35,
               "Country":                {
                  "key": 90,
                  "name": "Австрия",
                  "Code": "AUS",
                  "CitizenName": "Австрия",
                  "CitizenNameLat": "AUSTRIA",
                  "PassportMinDurCheckFrom": 0,
                  "CheckINN": false,
                  "PassportMinDur": null,
                  "INNName": "ИНН",
                  "Web": 1,
                  "WebImage": "/pics/animate/austria.gif",
                  "WebHTTP": "",
                  "AnkLang": 0,
                  "Type": "Country"
               },
               "name": "Вена",
               "Code": "VIE",
               "Web": 0,
               "RSKey": 0,
               "WebImage": null,
               "IsDeparture": 1,
               "Type": "City"
            },
            "Resort": null,
            "Name": "Ananas",
            "Category":             {
               "Key": 56,
               "Name": "2*",
               "PrintNumber": 2,
               "Type": "HotelCatigory"
            },
            "TimeFrom": "1900-01-01T11:00:00",
            "TimeTo": "1900-01-01T12:00:00",
            "HTTP": "http://booking.panteon.ru/TourPrograms/Home/Tour/?tourKey=100000007",
            "Stars": "2*",
            "TimeIsEmpty": false,
            "NameLat": "Ananas",
            "Address": null,
            "IsCruise": 0,
            "Phone": "(+43/1) 546200",
            "Code": null,
            "Type": "Hotel"
         },
                  {
            "Key": 707,
            "Country":             {
               "key": 90,
               "name": "Австрия",
               "Code": "AUS",
               "CitizenName": "Австрия",
               "CitizenNameLat": "AUSTRIA",
               "PassportMinDurCheckFrom": 0,
               "CheckINN": false,
               "PassportMinDur": null,
               "INNName": "ИНН",
               "Web": 1,
               "WebImage": "/pics/animate/austria.gif",
               "WebHTTP": "",
               "AnkLang": 0,
               "Type": "Country"
            },
            "City":             {
               "key": 35,
               "Country":                {
                  "key": 90,
                  "name": "Австрия",
                  "Code": "AUS",
                  "CitizenName": "Австрия",
                  "CitizenNameLat": "AUSTRIA",
                  "PassportMinDurCheckFrom": 0,
                  "CheckINN": false,
                  "PassportMinDur": null,
                  "INNName": "ИНН",
                  "Web": 1,
                  "WebImage": "/pics/animate/austria.gif",
                  "WebHTTP": "",
                  "AnkLang": 0,
                  "Type": "Country"
               },
               "name": "Вена",
               "Code": "VIE",
               "Web": 0,
               "RSKey": 0,
               "WebImage": null,
               "IsDeparture": 1,
               "Type": "City"
            },
            "Resort": null,
            "Name": "Beim Theresianum",
            "Category":             {
               "Key": 66,
               "Name": "4*Boutique",
               "PrintNumber": null,
               "Type": "HotelCatigory"
            },
            "TimeFrom": null,
            "TimeTo": null,
            "HTTP": null,
            "Stars": "4*Boutique",
            "TimeIsEmpty": true,
            "NameLat": "Beim Theresianum",
            "Address": null,
            "IsCruise": 0,
            "Phone": null,
            "Code": null,
            "Type": "Hotel"
         },
                  {
            "Key": 709,
            "Country":             {
               "key": 90,
               "name": "Австрия",
               "Code": "AUS",
               "CitizenName": "Австрия",
               "CitizenNameLat": "AUSTRIA",
               "PassportMinDurCheckFrom": 0,
               "CheckINN": false,
               "PassportMinDur": null,
               "INNName": "ИНН",
               "Web": 1,
               "WebImage": "/pics/animate/austria.gif",
               "WebHTTP": "",
               "AnkLang": 0,
               "Type": "Country"
            },
            "City":             {
               "key": 35,
               "Country":                {
                  "key": 90,
                  "name": "Австрия",
                  "Code": "AUS",
                  "CitizenName": "Австрия",
                  "CitizenNameLat": "AUSTRIA",
                  "PassportMinDurCheckFrom": 0,
                  "CheckINN": false,
                  "PassportMinDur": null,
                  "INNName": "ИНН",
                  "Web": 1,
                  "WebImage": "/pics/animate/austria.gif",
                  "WebHTTP": "",
                  "AnkLang": 0,
                  "Type": "Country"
               },
               "name": "Вена",
               "Code": "VIE",
               "Web": 0,
               "RSKey": 0,
               "WebImage": null,
               "IsDeparture": 1,
               "Type": "City"
            },
            "Resort": null,
            "Name": "Am Brilliantengrund",
            "Category": null,
            "TimeFrom": null,
            "TimeTo": null,
            "HTTP": null,
            "Stars": "",
            "TimeIsEmpty": true,
            "NameLat": "Am Brilliantengrund",
            "Address": null,
            "IsCruise": 0,
            "Phone": null,
            "Code": null,
            "Type": "Hotel"
         }
      ],
      "Pansions":       [
                  {
            "Key": 46,
            "Code": "RO",
            "Name": "RO",
            "NameLat": null,
            "Type": "Pansion"
         },
                  {
            "Key": 4,
            "Code": "BB2",
            "Name": "Завтрак",
            "NameLat": null,
            "Type": "Pansion"
         },
                  {
            "Key": 2,
            "Code": "HB",
            "Name": "Полупансион",
            "NameLat": null,
            "Type": "Pansion"
         }
      ],
      "Airlines":       [
                  {
            "Key": 8,
            "Code": "BA7",
            "Name": "BRITISH  AIRWAYS",
            "NameLat": "en_BRITISH  AIRWAYS",
            "Type": "AirLine"
         },
                  {
            "Key": 3,
            "Code": "7U",
            "Name": "Авиаэнерго",
            "NameLat": "en_Авиаэнерго",
            "Type": "AirLine"
         }
      ],
      "FlightTariffs": [      {
         "Key": 89,
         "Code": "Y",
         "Name": "Экономический класс",
         "NameLat": "Coach economy",
         "Group": null,
         "Type": "AirService"
      }],
      "DepartureCities": [      {
         "key": 1,
         "Country":          {
            "key": 460,
            "name": "Россия",
            "Code": null,
            "CitizenName": "Россия",
            "CitizenNameLat": "Russia",
            "PassportMinDurCheckFrom": 0,
            "CheckINN": true,
            "PassportMinDur": null,
            "INNName": "ИНН",
            "Web": 0,
            "WebImage": "",
            "WebHTTP": "",
            "AnkLang": 0,
            "Type": "Country"
         },
         "name": "Москва",
         "Code": "MOW",
         "Web": 0,
         "RSKey": 0,
         "WebImage": null,
         "IsDeparture": 1,
         "Type": "City"
      }],
      "DepartureAirports": [      {
         "Key": 52,
         "Code": "SVO4",
         "Name": "Шереметьево-24",
         "NameLat": "Шереметьево-",
         "CityKey": 1,
         "CountryKey": 460,
         "Letter": "S",
         "Site": 0,
         "Type": "Airport"
      }],
      "ArrivalCities": [      {
         "key": 1,
         "Country":          {
            "key": 460,
            "name": "Россия",
            "Code": null,
            "CitizenName": "Россия",
            "CitizenNameLat": "Russia",
            "PassportMinDurCheckFrom": 0,
            "CheckINN": true,
            "PassportMinDur": null,
            "INNName": "ИНН",
            "Web": 0,
            "WebImage": "",
            "WebHTTP": "",
            "AnkLang": 0,
            "Type": "Country"
         },
         "name": "Москва",
         "Code": "MOW",
         "Web": 0,
         "RSKey": 0,
         "WebImage": null,
         "IsDeparture": 1,
         "Type": "City"
      }],
      "ArrivalAirports": [      {
         "Key": 12,
         "Code": "DME",
         "Name": "Домодедово",
         "NameLat": "Домодедово",
         "CityKey": 1,
         "CountryKey": 460,
         "Letter": "D",
         "Site": 0,
         "Type": "Airport"
      }],
      "HotelTypes":       [
                  {
            "key": 94,
            "name": "Молодежный отдых",
            "Type": "HotelType"
         },
                  {
            "key": 5,
            "name": "Рекомендуемые",
            "Type": "HotelType"
         }
      ]
   }
}

[править] Выгрузка транспортного плана (TransportPlan)

Метод производит выгрузку транспортного плана.

  • Формат запроса:
    • GET .../TourSearchOwin/TransportPlan?
  • Принимаемые параметры ( * – обязательный):
    • code – код услуги
    • dateBegin – дата услуги
    • serviceType – тип услуги
    • transportKey – ключ справочника транспорт
  • Возвращаемый результат:
    • TransportKey – ключ справочника транспорт
    • Title – описание
    • AreasCount – количество уровней
    • RowsCount – количество рядов
    • ColumnsCount – количество мест в ряду
    • BusySeats – не используется
    • Cells – массив описаний всех мест
      • Row – ряд
      • Column – место в ряду
      • Area – уровень места
      • Type – тип (None = 0, Seat = 1, Block = 4, Busy = 5)
      • Name – название/номер
    • UserSeats – не используется
    • BlockSeat – не используется
Пример

Вызов метода TransportPlan

GET http://localhost:9000/TourSearchOwin/TransportPlan?code=1311&dateBegin=17.04.2018&serviceType=14&transportKey=39

Возвращаемый результат метода TransportPlan (в формате JSON)

{
        "TransportKey": 39,
        "Title": "__",
        "AreasCount": 1,
        "RowsCount": 12,
        "ColumnsCount": 5,
        "BusySeats": [],
        "Cells": [{
                "Row": 5,
                "Column": 0,
                "Area": 0,
                "Type": 4,
                "Name": "21"
        },
        {
                "Row": 5,
                "Column": 1,
                "Area": 0,
                "Type": 1,
                "Name": "22"
        },
        {
                "Row": 5,
                "Column": 2,
                "Area": 0,
                "Type": 2,
                "Name": ""
        },
        {
                "Row": 5,
                "Column": 3,
                "Area": 0,
                "Type": 1,
                "Name": "23"
        },
        {
                "Row": 5,
                "Column": 4,
                "Area": 0,
                "Type": 1,
                "Name": "24"
        }],
        "UserSeats": {
               
        },
        "BlockSeat": {
               
        }
}

[править] Выгрузка первоначального варианта в корзину для бронирования (Tour)

Метод поиска, который возвращает варианты только по данной турпрограмме и схеме отеля.

  • Формат запроса:
    • GET .../TourSearchOwin/Tour?
  • Принимаемые параметры ( * – обязательный):
    • DepartureCityKeys * – идентификатор города отправления (полученный из метода .../TourSearchOwin/departureCities?)
    • DestinationType * – тип результата (всегда возвращается в JSON = 1, в xml = country)
    • DestinationKey * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/Destination?)
    • Dates * – массив дат заезда (полученные из метода .../TourSearchOwin/TourDate?). Если параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • Durations * – массив продолжительностей (полученные из метода .../TourSearchOwin/Duration?). Если параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • AdultCount * – количество взрослых
    • ChildAges – возраст детей. Если детей несколько, и параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
    • CurrencyName * – код валюты
    • HotelQuota * – информация о квотах на отель (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • AviaQuota * – информация о квотах на авиаперелет (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • BusTransferQuota – информация о квотах на автобусный переезд (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
    • HotelScheme * – объект схемы отеля
      • TemplateId – идентификатор шаблона услуги
      • DurationInNight – продолжительность отеля в ночах
      • Code – ключ отеля
      • PacketKey – ключ пакета
      • PartnerKey – ключ партнера
    • TourKey – пустой по умолчанию. Заполняется при вызове вариантов размещений в рамках одного отеля: ключ программы тура
    • TourDuration – пустой по умолчанию. Заполняется при вызове вариантов размещений в рамках одного отеля: продолжительность тура в днях
    • PageNumber * – номер возвращаемой страницы (по умолчанию возвращается 1)
    • PageSize * – количество возвращаемых результатов на одной странице (возвращается 20)
    • isFromBasket * – происходит ли обращение из корзины или из поиска туров (true/false).
    • isFillSecondaryFilters * – заполнены ли дополнительные фильтры (true/false)
  • Возвращаемый результат:
    • CheckMessages – сообщения для логики проверки тура (не используется)
    • Message – сообщение об ошибке
      • Key – код ошибки
      • Value – сообщение об ошибке
    • Result – результаты поиска
      • Key – идентификатов программы тура
      • Name – название программы тура
      • TourUrl – ссылка на программу тура
      • BookingConditions – условия бронирования программы туров
      • StartDate – дата начала тура
      • Duration – продолжительность тура (в днях)
      • DurationInNight – продолжительность проживания (в ночах)
      • Types – идентификатор типа туров
      • Cost – цена тура
      • Rate – код валюты тура
      • CityDepature – город отправления
        • Key – идентификатор города отправления
        • Value – название города отправления
      • CountryId – всегда возвращается ключ 0
      • Services – услуги в туре
        • DepartureCity – город отправления
          • Key – идентификатор
          • Value – название
        • DepartureCountry – страна отправления
          • Key – идентификатор
          • Value – название
        • ArrivalCity – город прибытия
          • Key – идентификатор
          • Value – название
        • ArrivalCountry – страна прибытия
          • Key – идентификатор
          • Value – название
        • DepartureAirport – аэропорт отправления
          • Key – идентификатор
          • Value – название
        • ArrivalAirport – аэропорт прибытия
          • Key – идентификатор
          • Value – название
        • Airline – авиакомпания
          • Key – идентификатор
          • Value – название
        • Aircraft – воздушное судно
          • Key – идентификатор
          • Value – название
        • Flight – рейс
          • Key – идентификатор
          • Value – название
        • DepartureTime – время вылета
        • ArrivalTime – время прилета
        • EndDateTime – дата и время прилета
        • FlightDetails – информация об авиаперелете
          • Tariff – информация о тарифе перелета
            • Key – идентификатор
            • Code – код тарифа
            • Name – название тарифа
          • Cost – разница в стоимости с самым дешевым вариантом
          • QuotaStatus – информация о квоте
            • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
            • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
            • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
          • PartnerId – ключ партнера
          • ByPax – цена за человека (true/false)
          • Partner – информация о партнере
            • Key – идентификатор
            • Value – название
        • FlightSetting – внутренняя информация о перелете из программы туров
          • ServiceId – идентификатор класса услуги (внутренняя информация из программы туров)
          • PatternId – идентификатор паттерна услуги (внутренняя информация из программы туров)
          • FlightId – идентификатор перелета (внутренняя информация из программы туров)
        • FlightSourceMode – локальный или удаленный перелет (внутренняя информация из программы туров)
        • Id – идентификатор базового шаблона услуги (внутренняя информация из программы туров)
        • SvKey – ключ типа услуги
        • IsSubCode1 – признак наличия доп. описания 1
        • IsSubCode2 – признак наличия доп. описания 2
        • IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • BeginDateTime – дата предоставления услуги
        • IsHooded – признак скрытая услуга
        • IsDeleted – признак удаляемая услуга
        • IsNotCalculate – признак не рассчитываемая услуга
        • PacketId – ключ пакета
        • Index – порядковый номер услуги
      • NotRouteServices – массив коллекций немаршрутных услуг (например если две экскурсии будут являться одним элементом массива, то это будет говорить о том, что эти экскурсии можно будет выбрать в выпадающем списке)
        • ServiceName – название типа услуги
        • City – объект город
          • Key – ключ города
          • Value – название города
        • Country – ключ страны
        • Code – объект код услуги
          • Key – ключ услуги
          • Value – название услуги
        • ByScheduler – флаг услуга по расписанию или нет
        • Details – объект детализация услуги
          • SubCode1 – объект доп. описание 1
            • Key – ключ доп. описания 1
            • Value – название доп. описания 1
          • SubCode2 – объект доп. описание 2
            • Key – ключ доп. описания 2
            • Value – название доп. описания 2
          • Date – дата услуги
          • IsShowTransportPlan – признак показывать ли план рассадки (для автобусов)
          • Cost – цена
          • QuotaStatus – объект информация по квотам
            • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
            • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
            • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
          • PartnerId – идентификатор партнера
          • ByPax – признак цены за человека
          • Partner – объект партнер (не заполняется)
            • Key – ключ (не заполняется)
            • Value – название (не заполняется)
        • ParentId – идентификатор родительской услуги (для вложенных услуг)
        • PartnerBasedOnServiceTemplateId – ключ шаблона услуги, по которой приоритетно выбирается партнер текущей услуги
        • Id – идентификатор услуги
        • SvKey – ключ типа услуги
        • IsSubCode1 – наличие доп. описания 1
        • IsSubCode2 – наличие доп. описания 2
        • IsPartnerBasedOn – услуга с подбором приоритетного поставщика услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • BeginDateTime – дата предоставления услуги
        • EndDateTime – дата окончания услуги
        • IsHooded – скрытая ли услуга
        • IsDeleted – удаляемая ли услуга
        • IsNotCalculate – не рассчитываемая ли услуга
        • PacketId – пакет услуги
        • Index – индекс услуги
      • MinCostServicesComposition – массив состав услуг минимальной цены
        • Key – ключ
          • TemplateId – идентификатор шаблона
          • PatternId – идентификатор вкладки
          • SettingId – идентификатор услуги
        • Value – значение
          • ServiceType – тип услуги
          • Code – ключ услуги
          • SubCode1 – доп. описание 1
          • SubCode2 – доп. описание 2
          • PacketId – пакет услуги
          • PartnerId – партнер услуги
          • CountryId – страна услуги
          • CityId – город услуги
          • Day – день предоставления услуги
          • DurationInNight – продолжительность услуги в ночах
      • FlightWeight
      • LinkingFlightsRules – объект правил связывания
        • notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
          • airlines – авиакомпании
          • flightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • checkPlusMinus1CharterRule – объект Отличие номера рейса на 1
          • FlightSettingPairs – массив чартеров, для которых это правило будет выполняться
          • enabled – флаг включен/выключен
        • notCombineDifferentTariffGroupRule – объект не комбинировать рейсы от разных классов перелетов
          • FlightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • notCombineDifferentPartnerRule – объект не комбинировать рейсы от разных партнеров
          • FlightSettings – массив ключей ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
        • departureCityEqualsArrivalCityRule – объект Город вылета = городу прилета
          • FlightSettingPairs – чартеры, для которых это будет выполняться
          • enabled – флаг включен/выключен
        • combineOnlySpecificChartersRule – объект не комбинировать различные классы перелетов
          • settings – массив ключей чартеров CharterIds и ServiceId, PatternId, FlightId
          • enabled – флаг включен/выключен
      • RouteSubVariants – подварианты услуг (используется в основном поиске)
    • SecondaryFiltersResult – доп. фильтры (не используется при вызове из корзины)


Пример

Вызов метода Tour (первоначальный вариант Tour в корзине для бронирования)

GET http://localhost:9000/TourSearchOwin/Tour?DepartureCityKeys=1&DestinationType=1&DestinationKey=90
&Dates=31.03.18&Durations=8&AdultCount=2&CurrencyName=EU&HotelQuota=5&AviaQuota=5&BusTransferQuota=5
&HotelScheme=[{"TemplateId":"1","DurationInNight":"7","Code":"707","PacketKey":"779","PartnerKey":"12667"}]
&TourKey=100003404&TourDuration=8&PageNumber=1&PageSize=20&IsFromBasket=true&isFillSecondaryFilters=false

Возвращаемый результат метода Tour (в формате JSON)

{
   "CheckMessages": null,
   "Message":    {
      "Key": 0,
      "Value": null
   },
   "Result":    [
            {
         "Key": 100003404,
         "Name": "Удалить этот тур",
         "TourUrl": "www.megatec.ru",
         "BookingConditions": "Условия бронирования тура",
         "StartDate": "2018-03-31T00:00:00",
         "Duration": 8,
         "DurationInNight": 7,
         "Types": [2],
         "Cost": 122,
         "Rate": "EU",
         "CityDepature":          {
            "Key": 1,
            "Value": "Москва"
         },
         "CountryId": 90,
         "Services":          [
                        {
               "DepartureCity":                {
                  "Key": 1,
                  "Value": "Москва"
               },
               "DepartureCountry":                {
                  "Key": 460,
                  "Value": "Россия"
               },
               "ArrivalCity":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "ArrivalCountry":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "DepartureAirport":                {
                  "Key": "DME",
                  "Value": "Домодедово"
               },
               "ArrivalAirport":                {
                  "Key": "VIE1",
                  "Value": "Vena1"
               },
               "Airline":                {
                  "Key": "3G",
                  "Value": "Атлант Союз_d;kgmdlfkgnfdlkhndlfkhnlkfnh"
               },
               "Aircraft":                {
                  "Key": "319",
                  "Value": "AIRBUS "
               },
               "Flight":                {
                  "Key": 858,
                  "Value": "1111"
               },
               "DepartureTime": "10:00:00",
               "ArrivalTime": "11:59:00",
               "EndDateTime": "2018-03-31T11:59:00",
               "FlightDetails": [               {
                  "Tariff":                   {
                     "Key": 67,
                     "Code": "C",
                     "Name": "Бизнес класс"
                  },
                  "Cost": 6.45,
                  "QuotaStatus":                   {
                     "PlacesStatus": 4,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 10760,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "FlightSetting":                {
                  "ServiceId": 3,
                  "PatternId": 14,
                  "FlightId": 14
               },
               "FlightSourceMode": 1,
               "Id": 3,
               "SvKey": 1,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": false,
               "Day": 1,
               "DurationInNight": 0,
               "BeginDateTime": "2018-03-31T10:00:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 0
            },
                        {
               "Hotel":                {
                  "Key": 707,
                  "Value": "Beim Theresianum"
               },
               "City":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "Stars":                {
                  "Key": 66,
                  "Value": "4*Boutique"
               },
               "Resort":                {
                  "Key": -1,
                  "Value": null
               },
               "ImageURL": "",
               "Http": null,
               "Description": "",
               "Country":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "HotelDetails":                [
                                    {
                     "HotelRoom": 10468,
                     "Room":                      {
                        "Key": 2,
                        "Value": "Double"
                     },
                     "RoomCategory":                      {
                        "Key": 776,
                        "Value": "Standart133"
                     },
                     "AccomodationType":                      {
                        "Key": 328,
                        "Value": "2Ad",
                        "AdultCount": 2,
                        "ChildCount": 0
                     },
                     "Pansion":                      {
                        "Key": 4,
                        "Value": "Завтрак"
                     },
                     "Cost": 112.96,
                     "QuotaStatus":                      {
                        "PlacesStatus": 4,
                        "FreePlaces": 0,
                        "IsFewPlaces": false
                     },
                     "PartnerId": 12667,
                     "ByPax": false,
                     "Partner":                      {
                        "Key": 12667,
                        "Value": "Партнер-покупатель1"
                     }
                  },
                                    {
                     "HotelRoom": 38636,
                     "Room":                      {
                        "Key": 2,
                        "Value": "Double"
                     },
                     "RoomCategory":                      {
                        "Key": 3764,
                        "Value": "Standart Without window"
                     },
                     "AccomodationType":                      {
                        "Key": 328,
                        "Value": "2Ad",
                        "AdultCount": 2,
                        "ChildCount": 0
                     },
                     "Pansion":                      {
                        "Key": 4,
                        "Value": "Завтрак"
                     },
                     "Cost": 338.9,
                     "QuotaStatus":                      {
                        "PlacesStatus": 4,
                        "FreePlaces": 0,
                        "IsFewPlaces": false
                     },
                     "PartnerId": 12667,
                     "ByPax": false,
                     "Partner":                      {
                        "Key": 12667,
                        "Value": "Партнер-покупатель1"
                     }
                  }
               ],
               "HotelTypes": [],
               "Id": 1,
               "SvKey": 3,
               "IsSubCode1": true,
               "IsSubCode2": true,
               "IsPartnerBasedOn": false,
               "Day": 1,
               "DurationInNight": 7,
               "BeginDateTime": "2018-03-31T11:59:00",
               "EndDateTime": "2018-04-07T11:59:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 1
            },
                        {
               "DepartureCity":                {
                  "Key": 35,
                  "Value": "Вена"
               },
               "DepartureCountry":                {
                  "Key": 90,
                  "Value": "Австрия"
               },
               "ArrivalCity":                {
                  "Key": 1,
                  "Value": "Москва"
               },
               "ArrivalCountry":                {
                  "Key": 460,
                  "Value": "Россия"
               },
               "DepartureAirport":                {
                  "Key": "VIE1",
                  "Value": "Vena1"
               },
               "ArrivalAirport":                {
                  "Key": "DME",
                  "Value": "Домодедово"
               },
               "Airline":                {
                  "Key": "7U",
                  "Value": "Авиаэнерго"
               },
               "Aircraft":                {
                  "Key": "727",
                  "Value": "Boeing"
               },
               "Flight":                {
                  "Key": 774,
                  "Value": "222"
               },
               "DepartureTime": "00:00:00",
               "ArrivalTime": "00:00:00",
               "EndDateTime": "2018-04-07T00:00:00",
               "FlightDetails": [               {
                  "Tariff":                   {
                     "Key": 67,
                     "Code": "C",
                     "Name": "Бизнес класс"
                  },
                  "Cost": 1.61,
                  "QuotaStatus":                   {
                     "PlacesStatus": 4,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 10760,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "FlightSetting":                {
                  "ServiceId": 4,
                  "PatternId": 5,
                  "FlightId": 4
               },
               "FlightSourceMode": 1,
               "Id": 4,
               "SvKey": 1,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": false,
               "Day": 8,
               "DurationInNight": 0,
               "BeginDateTime": "2018-04-07T00:00:00",
               "IsHooded": false,
               "IsDeleted": false,
               "IsNotCalculate": false,
               "PacketId": 779,
               "Index": 3
            }
         ],
         "NotRouteServices": [         [
                        {
               "ServiceName": "экскурсия",
               "City":                {
                  "Key": 1046,
                  "Value": "Санто-Доминго"
               },
               "Country": 6245,
               "Code":                {
                  "Key": 743,
                  "Value": "4"
               },
               "ByScheduler": false,
               "Details": [               {
                  "SubCode1":                   {
                     "Key": 37,
                     "Value": "Мини-автобус 10 чел."
                  },
                  "SubCode2":                   {
                     "Key": null,
                     "Value": ""
                  },
                  "Date": null,
                  "IsShowTransportPlan": false,
                  "Cost": 56.48,
                  "QuotaStatus":                   {
                     "PlacesStatus": 1,
                     "FreePlaces": 0,
                     "IsFewPlaces": false
                  },
                  "PartnerId": 12667,
                  "ByPax": true,
                  "Partner":                   {
                     "Key": 0,
                     "Value": null
                  }
               }],
               "ParentId": null,
               "PartnerBasedOnServiceTemplateId": null,
               "Id": 7,
               "SvKey": 4,
               "IsSubCode1": true,
               "IsSubCode2": false,
               "IsPartnerBasedOn": true,
               "Day": 1,
               "DurationInNight": 0,
               "BeginDateTime": "2018-03-31T00:00:00",
               "EndDateTime": "2018-04-01T00:00:00",
               "IsHooded": false,
               "IsDeleted": true,
               "IsNotCalculate": true,
               "PacketId": 779,
               "Index": 2
            }
         ]],
         "MinCostServicesComposition":          [
                        {
               "Key":                {
                  "TemplateId": 3,
                  "PatternId": 14,
                  "SettingId": 14
               },
               "Value":                {
                  "ServiceType": 1,
                  "Code": 858,
                  "SubCode1": 67,
                  "SubCode2": 1,
                  "PacketId": 779,
                  "PartnerId": 10760,
                  "CountryId": 90,
                  "CityId": 35,
                  "Day": 1,
                  "DurationInNight": 0
               }
            },
                        {
               "Key":                {
                  "TemplateId": 1,
                  "PatternId": 0,
                  "SettingId": 0
               },
               "Value":                {
                  "ServiceType": 3,
                  "Code": 707,
                  "SubCode1": 10468,
                  "SubCode2": 4,
                  "PacketId": 779,
                  "PartnerId": 12667,
                  "CountryId": 90,
                  "CityId": 35,
                  "Day": 1,
                  "DurationInNight": 7
               }
            },
                        {
               "Key":                {
                  "TemplateId": 4,
                  "PatternId": 5,
                  "SettingId": 4
               },
               "Value":                {
                  "ServiceType": 1,
                  "Code": 774,
                  "SubCode1": 67,
                  "SubCode2": 35,
                  "PacketId": 779,
                  "PartnerId": 10760,
                  "CountryId": 460,
                  "CityId": 1,
                  "Day": 8,
                  "DurationInNight": 0
               }
            }
         ],
         "FlightWeight": 2,
         "LinkingFlightsRules":          {
            "notCombineDifferentAirlineRule":             {
               "airlines": ["AY2"],
               "flightSettings": [],
               "enabled": true
            },
            "checkPlusMinus1CharterRule":             {
               "FlightSettingPairs": [],
               "enabled": false
            },
            "notCombineDifferentTariffGroupRule":             {
               "FlightSettings": [],
               "enabled": true
            },
            "notCombineDifferentPartnerRule":             {
               "FlightSettings": [],
               "enabled": false
            },
            "departureCityEqualsArrivalCityRule":             {
               "FlightSettingPairs": [],
               "enabled": false
            },
            "combineOnlySpecificChartersRule":             {
               "settings": [],
               "enabled": false
            }
         },
         "RouteSubVariants": []
      }
   ],
   "SecondaryFiltersResult": null
}

[править] Выгрузка настройки отображения полей по туристам (TouristDataSettings)

Метод производит выгрузку настроек отображения полей по туристам.

  • Формат запроса:
    • GET .../TourSearchOwin/TouristDataSettings?
  • Принимаемые параметры ( * – обязательный):
    • countryId * – ключ страны, для которой будут выгружаться настройки
  • Возвращаемый результат:
    • TouristFieldsSettings – массив полей с информацией о туристах (из админки Мастер-Web)
      • lastname – объект фамилия туриста (лат)
        • Code – код поля
        • HeaderText – название поля
        • IsVisible – видимость поля
        • IsRequired – признак обязательности заполнения поля
        • IsEdit – признак редактируемости поля
        • Translit – настройки транслитерации (0 – нет, 1 – транслитерация, 2 – латиница)
        • LetterCase – настройки регистра (0 – по умолчанию, 1 – с заглавной, 2 – большие, 3 – маленькие)
      • patronymic – объект отчество туриста (лат)
      • sex – объект пол туриста
      • firstname – объект имя туриста (лат)
      • passportbywhom – объект кем выдан заграничный паспорт
      • birthplace – объект место рождения
      • birthdate – объект дата рождения
      • patronymicrus – объект отчество (рус)
      • lastnamerus – объект фамилия туриста (рус)
      • citizenid – объект ID туриста
      • passport – объект серия и номер заграничного паспорта
      • passportrus – объект серия и номер национального паспорт а
      • ismain – объект признак главного туриста
      • passportdate – объект дата выдачи заграничного паспорта
      • firstnamerus – объект имя туриста (рус)
      • passportbywhomrus – объект кем выдан национальный паспорт
      • citizenship – объект гражданство
      • passportdaterus – объект дата выдачи национального паспорта
      • phone – объект телефон
      • number – объект порядковый номер
      • passportdateend – объект дата окончания заграничного паспорта
      • email – объект e-mail туриста
    • PassportDurationOfExpiry – объект минимальный срок действия загранпаспорта туриста
      • StartPoint – точка отсчета
      • Duration – минимальная продолжительность
    • ChildAgeSetting – максимальный возраст ребенка, когда он считается ребенком (лет)
    • InfantAgeSetting – максимальный возраст младенца (месяцев)
Пример

Вызов метода TouristDataSettings

GET http://localhost:9000/TourSearchOwin/TouristDataSettings?countryId=90

Возвращаемый результат метода TouristDataSettings (в формате JSON)

{
   "TouristFieldsSettings":    {
      "lastname":       {
         "Code": "lastname",
         "HeaderText": "Фамилия<font color=\"red\">*<\/font>",
         "IsVisible": true,
         "IsRequired": true,
         "IsEdit": true,
         "Translit": 1,
         "LetterCase": 2
      },
      "patronymic":       {
         "Code": "patronymic",
         "HeaderText": "Отчество",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 2
      },
      "sex":       {
         "Code": "sex",
         "HeaderText": "Пол<font color=\"red\">*<\/font>",
         "IsVisible": true,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "firstname":       {
         "Code": "firstname",
         "HeaderText": "Имя<font color=\"red\">*<\/font>",
         "IsVisible": true,
         "IsRequired": true,
         "IsEdit": true,
         "Translit": 1,
         "LetterCase": 2
      },
      "passportbywhom":       {
         "Code": "passportbywhom",
         "HeaderText": "Кем выдан",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "birthplace":       {
         "Code": "birthplace",
         "HeaderText": "Место рождения",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "birthdate":       {
         "Code": "birthdate",
         "HeaderText": "Дата рождения<br />(dd.MM.yyyy)",
         "IsVisible": true,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "patronymicrus":       {
         "Code": "patronymicrus",
         "HeaderText": "Отчество",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 3
      },
      "lastnamerus":       {
         "Code": "lastnamerus",
         "HeaderText": "Нац. паспорт: Фамилия",
         "IsVisible": false,
         "IsRequired": true,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "citizenid":       {
         "Code": "citizenid",
         "HeaderText": "ID туриста1",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 2,
         "LetterCase": 2
      },
      "passport":       {
         "Code": "passport",
         "HeaderText": "Загран-паспорт: Паспорт<br />(серия/номер)",
         "IsVisible": true,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 2
      },
      "passportrus":       {
         "Code": "passportrus",
         "HeaderText": "серия/номер",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "ismain":       {
         "Code": "ismain",
         "HeaderText": "<img src=\"images/mw_main_tourist.gif\" border=\"0\" alt=\"Главный турист\" />",
         "IsVisible": true,
         "IsRequired": true,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "passportdate":       {
         "Code": "passportdate",
         "HeaderText": "Загран-паспорт: дата выдачи",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "firstnamerus":       {
         "Code": "firstnamerus",
         "HeaderText": "Нац. паспорт: Имя",
         "IsVisible": false,
         "IsRequired": true,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "passportbywhomrus":       {
         "Code": "passportbywhomrus",
         "HeaderText": "Паспорт: кем выдан",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "citizenship":       {
         "Code": "citizenship",
         "HeaderText": "Гражданство",
         "IsVisible": true,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "passportdaterus":       {
         "Code": "passportdaterus",
         "HeaderText": "Нац. паспорт:дата выдачи",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "phone":       {
         "Code": "phone",
         "HeaderText": "Телефон",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "number":       {
         "Code": "number",
         "HeaderText": "№",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      },
      "passportdateend":       {
         "Code": "passportdateend",
         "HeaderText": "Действителен до<br />(dd.MM.yyyy)",
         "IsVisible": true,
         "IsRequired": false,
         "IsEdit": true,
         "Translit": 0,
         "LetterCase": 0
      },
      "email":       {
         "Code": "email",
         "HeaderText": "Email",
         "IsVisible": false,
         "IsRequired": false,
         "IsEdit": false,
         "Translit": 0,
         "LetterCase": 0
      }
   },
   "PassportDurationOfExpiry":    {
      "StartPoint": 0,
      "Duration": null
   },
   "ChildAgeSetting": 16,
   "InfantAgeSetting": 24
}

[править] Выгрузка услуг доплат к авиаперелетам (GetFlightsAdditionalServices)

Метод производит выгрузку услуг доплат к авиаперелетам.

  • Формат запроса:
    • POST .../TourSearchOwin/GetFlightsAdditionalServices?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/json
  • Принимаемые параметры POST запроса ( * – обязательный):
    • TourProgramId – ключ турпрограммы
    • BeginDate – дата начала тура
    • Duration – продолжительность тура
    • Currency – код валюты
    • Services – массив услуг авиаперелетов для получения доплат
      • Service – объект услуга авиаперелет
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание 1 услуги
        • SubCode2 – доп. описание 2 услуги
        • Packet – ключ пакета услуги
        • Partner – ключ партнера услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • City – ключ города
        • Country – страна услуги
        • Attributes – битовая маска атрибутов услуг
        • IsRemovable – (не обрабатывается)
        • Type – тип услуги в путевке (базовая дополнительная)
        • IsHooded – признак скрытая услуга
        • IsNotCalculated – признак не рассчитываемая услуга
        • BeginDateTimeString – дата и время начала услуги
        • EndDateTimeString – дата и время окончания услуги
        • TemplateId – шаблон услуги
        • Cost – цена услуги
        • ByPax – цена за человека
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • Index – индекс услуги
        • IsRoute – признак маршрутная услуга
        • ServiceTemplateIndex – индекс шаблона услуги
      • TouristNumbersList – массив туристов, привязанных к услуге
    • Tourists – массив туристов
      • IsMain – главный турист
      • Number – порядковый номер туриста
      • AgeType – тип туриста (взрослый, ребенок, инфант)
      • MaleFemaleSex – пол
      • FirstName – имя (лат)
      • LastName – фамилия (лат)
      • Patronymic – отчество (лат)
      • FirstNameRus – имя (рус)
      • LastNameRus – фамилия (рус)
      • PatronymicRus – отчество (рус)
      • InternationalPassportSeries – серия загранпаспорта
      • InternationalPassportNumber – номер загранпаспорта
      • InternationalPassportDateOfIssue – дата выдачи загранпаспорта
      • InternationalPassportDateOfIssueString – дата выдачи загранпаспорта в строке
      • InternationalPassportDateOfExpiry – дата окончания действия загранпаспорта
      • InternationalPassportDateOfExpiryString – дата окончания действия загранпаспорта в строке
      • internationalPassportByWhom – кем выдан загранпаспорт
      • PassportSeries – серия паспорта
      • PassportNumber – номер паспорта
      • PassportDateOfIssue – дата выдачи паспорта
      • PassportDateOfIssueString – дата выдачи паспорта в строке
      • PassportByWhom – кем выдан паспорт
      • Citizenship – название страны
      • Phone – телефон
      • Email – e-mail
      • BirthDay – дата рождения (YYYY-MM-DDThh:mm:ssz)
      • BirthDayString – дата рождения в строковом формате (DD.MM.YYYY)
      • BirthPlace – место рождения
      • CitizenID – гражданство
      • Age – количество полных лет на момент окончания тура
  • Возвращаемый результат:
    • Массив – массив объектов доплат к авиаперелетам
      • ServiceName – название услуги
      • City – объект город
      • Country – ключ страны
      • Code – объект код услуги
        • Key – ключ услуги
        • Value – название услуги
      • ByScheduler – признак по расписанию
      • Details - объект детализация
        • SubCode1 – объект доп. описание1
          • Key – ключ
          • Value – название
        • SubCode2 – объект доп. описание2
          • Key – ключ
          • Value – название
        • Date – дата услуги
        • IsShowTransportPlan – признак показать транспортный план (для автобусов)
        • Cost – цена
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • PartnerId – ключ партнера
        • ByPax – признак за человека
        • Partner – объект партнер (не заполняется)
          • Key – ключ (не заполняется)
          • Value – название (не заполняется)
      • ParentId – ключ родительской услуги
      • PartnerBasedOnServiceTemplateId – шаблон услуги для подбора поставщика
      • ShowOrder – порядок при печати (сортировка) по услуге
      • ShowOrderAddDescript1 – порядок при печати (сортировка) по доп. описанию 1
      • ShowOrderAddDescript2 – порядок при печати (сортировка) по доп. описанию 2
      • Id – идентификатор услуги
      • SvKey – тип услуги
      • IsSubCode1 – признак наличия доп. описания 1
      • IsSubCode2 – признак наличия доп. описания 2
      • IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
      • Day – день предоставления услуги
      • DurationInNight – продолжительность услуги в ночах
      • BeginDateTime – дата начала услуги
      • EndDateTime – дата окончания
      • IsHooded – признак скрытая
      • IsDeleted – признак удаляемая
      • IsNotCalculate – признак не рассчитываемая
      • PacketId – ключ пакета
      • Index – индекс шаблона услуги
Пример

Вызов метода GetHotelsAdditionalServices

POST http://localhost:9000/TourSearchOwin/GetHotelsAdditionalServices? HTTP/1.1
Content-Type: application/json
{
        "TourProgramId": 100003404,
        "BeginDate": "2018-04-16T00:00:00",
        "Duration": 8,
        "Currency": "EU",
        "Services": [{
                "Service": {
                        "ServiceType": 1,
                        "Code": 858,
                        "SubCode1": 67,
                        "SubCode2": 1,
                        "Packet": 779,
                        "Partner": 10760,
                        "Day": 1,
                        "DurationInNight": 0,
                        "City": 35,
                        "Country": 90,
                        "Attributes": 0,
                        "IsRemovable": false,
                        "Type": 1,
                        "IsHooded": false,
                        "IsNotCalculated": false,
                        "BeginDateTimeString": "2018-04-16T10:00:00",
                        "EndDateTimeString": "2018-04-16T11:59:00",
                        "TemplateId": 3,
                        "Cost": 6,
                        "ByPax": true,
                        "QuotaStatus": {
                                "PlacesStatus": 4,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "Index": 0,
                        "IsRoute": true,
                        "ServiceTemplateIndex": 0
                },
                "TouristNumbersList": [1,
                2]
        },
        {
                "Service": {
                        "ServiceType": 1,
                        "Code": 774,
                        "SubCode1": 67,
                        "SubCode2": 35,
                        "Packet": 779,
                        "Partner": 10760,
                        "Day": 8,
                        "DurationInNight": 0,
                        "City": 1,
                        "Country": 460,
                        "Attributes": 0,
                        "IsRemovable": false,
                        "Type": 1,
                        "IsHooded": false,
                        "IsNotCalculated": false,
                        "BeginDateTimeString": "2018-04-23T00:00:00",
                        "EndDateTimeString": "2018-04-23T00:00:00",
                        "TemplateId": 4,
                        "Cost": 2,
                        "ByPax": true,
                        "QuotaStatus": {
                                "PlacesStatus": 4,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "Index": 3,
                        "IsRoute": true,
                        "ServiceTemplateIndex": 3
                },
                "TouristNumbersList": [1,
                2]
        }],
        "Tourists": [{
                "IsMain": true,
                "Number": 1,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        },
        {
                "IsMain": false,
                "Number": 2,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        }]
}

Возвращаемый результат метода GetHotelsAdditionalServices (в формате JSON)

[{
        "ServiceName": "Доплаты к авиаперелетам",
        "City": null,
        "Country": 90,
        "Code": {
                "Key": 357,
                "Value": "Топливный сбор"
        },
        "ByScheduler": false,
        "Details": [{
                "SubCode1": {
                        "Key": 41,
                        "Value": "3G1111 DME-VIE1 ()"
                },
                "SubCode2": {
                        "Key": null,
                        "Value": ""
                },
                "Date": "2018-04-16T10:00:00",
                "IsShowTransportPlan": false,
                "Cost": 24,
                "QuotaStatus": {
                        "PlacesStatus": 0,
                        "FreePlaces": 0,
                        "IsFewPlaces": false
                },
                "PartnerId": 10760,
                "ByPax": false,
                "Partner": {
                        "Key": 0,
                        "Value": null
                }
        }],
        "ParentId": null,
        "PartnerBasedOnServiceTemplateId": null,
        "ShowOrder": 0,
        "ShowOrderAddDescript1": 0,
        "ShowOrderAddDescript2": 0,
        "Id": -1,
        "SvKey": 12,
        "IsSubCode1": false,
        "IsSubCode2": false,
        "IsPartnerBasedOn": false,
        "Day": 1,
        "DurationInNight": 0,
        "BeginDateTime": "2018-04-16T10:00:00",
        "EndDateTime": "0001-01-01T00:00:00",
        "IsHooded": false,
        "IsDeleted": false,
        "IsNotCalculate": true,
        "PacketId": 777,
        "Index": 0
}]

[править] Выгрузка услуг доплат к отелям (GetHotelsAdditionalServices)

Метод производит выгрузку услуг доплат к отелям.

  • Формат запроса:
    • POST .../TourSearchOwin/GetHotelsAdditionalServices?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/json
  • Принимаемые параметры POST запроса ( * – обязательный):
    • TourProgramId – ключ турпрограммы
    • BeginDate – дата начала тура
    • Duration – продолжительность тура
    • Currency – код валюты
    • Services – массив услуг отелей для получения доплат
      • Service – объект услуга отель
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание 1 услуги
        • SubCode2 – доп. описание 2 услуги
        • Packet – ключ пакета услуги
        • Partner – ключ партнера услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • City – ключ города
        • Country – страна услуги
        • Attributes – битовая маска атрибутов услуг
        • IsRemovable – (не обрабатывается)
        • Type – тип услуги в путевке (базовая дополнительная)
        • IsHooded – признак скрытая услуга
        • IsNotCalculated – признак не рассчитываемая услуга
        • BeginDateTimeString – дата и время начала услуги
        • EndDateTimeString – дата и время окончания услуги
        • TemplateId – шаблон услуги
        • Cost – цена услуги
        • ByPax – цена за человека
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • Index – индекс услуги
        • IsRoute – признак маршрутная услуга
        • ServiceTemplateIndex – индекс шаблона услуги
        • RemoteId – (в доплатах не используется)
      • TouristNumbersList – массив туристов, привязанных к услуге
    • Tourists – массив туристов
      • IsMain – главный турист
      • Number – порядковый номер туриста
      • AgeType – тип туриста (взрослый, ребенок, инфант)
      • MaleFemaleSex – пол
      • FirstName – имя (лат)
      • LastName – фамилия (лат)
      • Patronymic – отчество (лат)
      • FirstNameRus – имя (рус)
      • LastNameRus – фамилия (рус)
      • PatronymicRus – отчество (рус)
      • InternationalPassportSeries – серия загранпаспорта
      • InternationalPassportNumber – номер загранпаспорта
      • InternationalPassportDateOfIssue – дата выдачи загранпаспорта
      • InternationalPassportDateOfIssueString – дата выдачи загранпаспорта в строке
      • InternationalPassportDateOfExpiry – дата окончания действия загранпаспорта
      • InternationalPassportDateOfExpiryString – дата окончания действия загранпаспорта в строке
      • internationalPassportByWhom – кем выдан загранпаспорт
      • PassportSeries – серия паспорта
      • PassportNumber – номер паспорта
      • PassportDateOfIssue – дата выдачи паспорта
      • PassportDateOfIssueString – дата выдачи паспорта в строке
      • PassportByWhom – кем выдан паспорт
      • Citizenship – название страны
      • Phone – телефон
      • Email – e-mail
      • BirthDay – дата рождения
      • BirthDayString – дата рождения в строковом формате
      • BirthPlace – место рождения
      • CitizenID – гражданство
      • Age – количество полных лет на момент окончания тура
  • Возвращаемый результат:
    • Массив – массив объектов связок Возраст-Отель-Доп. услуги
      • Age – возраст туриста
      • Hotel – объект отель
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание1
        • SubCode2 – доп. описание2
        • PacketId – ключ пакета
        • PartnerId – ключ партнера
        • Day – день предоставления услуги
        • BeginTime – время начала услуги
        • EndTime – время окончания услуги
        • DurationInNight – продолжительность услуги в ночах
        • Attributes – маска атрибутов услуги
        • CountryId – ключ страны услуги
        • CityId – ключ города
        • Type – тип услуги в путевке
        • ShowOrder – порядок при печати (сортировка) по услуге
        • ShowOrderAddDescript1 – порядок при печати (сортировка) по доп. описанию 1
        • ShowOrderAddDescript2 – порядок при печати (сортировка) по доп. описанию 2
        • IsCommission – признак, комиссионная ли услуга
        • BaseFlightsParams – параметр не обрабатывается
      • AdditionalServices – массив доплат
      • ServiceName – название услуги
      • City – объект город
      • Country – ключ страны
      • Code – объект код услуги
        • Key – ключ услуги
        • Value – название услуги
      • ByScheduler – признак по расписанию
      • Details - объект детализация
        • SubCode1 – объект доп. описание1
          • Key – ключ
          • Value – название
        • SubCode2 – объект доп. описание2
          • Key – ключ
          • Value – название
        • Date – дата услуги
        • IsShowTransportPlan – признак показать транспортный план (для автобусов)
        • Cost – цена
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • PartnerId – ключ партнера
        • ByPax – признак за человека
        • Partner – объект партнер (не заполняется)
          • Key – ключ (не заполняется)
          • Value – название (не заполняется)
      • ParentId – ключ родительской услуги
      • PartnerBasedOnServiceTemplateId – шаблон услуги для подбора поставщика
      • ShowOrder – порядок при печати (сортировка) по услуге
      • ShowOrderAddDescript1 – порядок при печати (сортировка) по доп. описанию 1
      • ShowOrderAddDescript2 – порядок при печати (сортировка) по доп. описанию 2
      • Id – идентификатор услуги
      • SvKey – тип услуги
      • IsSubCode1 – признак наличия доп. описания 1
      • IsSubCode2 – признак наличия доп. описания 2
      • IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
      • Day – день предоставления услуги
      • DurationInNight – продолжительность услуги в ночах
      • BeginDateTime – дата начала услуги
      • EndDateTime – дата окончания
      • IsHooded – признак скрытая
      • IsDeleted – признак удаляемая
      • IsNotCalculate – признак не рассчитываемая
      • PacketId – ключ пакета
      • Index – индекс шаблона услуги
Пример

Вызов метода GetHotelsAdditionalServices

POST http://localhost:9000/TourSearchOwin/GetHotelsAdditionalServices? HTTP/1.1
Content-Type: application/json

{       "TourProgramId": 100003404,
        "BeginDate": "2018-04-16T00:00:00",
        "Duration": 8,
        "Currency": "EU",
        "Services": [{
                "Service": {
                        "ServiceType": 3,
                        "Code": 178,
                        "SubCode1": 46387,
                        "SubCode2": 57,
                        "Packet": 779,
                        "Partner": 12667,
                        "Day": 1,
                        "DurationInNight": 7,
                        "City": 35,
                        "Country": 90,
                        "Attributes": 0,
                        "IsRemovable": false,
                        "Type": 1,
                        "IsHooded": false,
                        "IsNotCalculated": false
                        "BeginDateTimeString": "2018-04-16T11:59:00"
                        "EndDateTimeString": "2018-04-23T11:59:00",
                        "TemplateId": 1,
                        "Cost": 122,
                        "ByPax": false,
                        "QuotaStatus": {
                                "PlacesStatus": 4,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "Index": 1,
                        "IsRoute": true,
                        "ServiceTemplateIndex": 1,
                        "RemoteId": null
                },
                "TouristNumbersList": [1,
                2
        }],
        "Tourists": [{
                "IsMain": true,
                "Number": 1,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        },
        {
                "IsMain": false,
                "Number": 2,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        }]
}

Возвращаемый результат метода GetHotelsAdditionalServices (в формате JSON)

[{
        "Age": 17,
        "Hotel": {
                "ServiceType": 3,
                "Code": 178,
                "SubCode1": 46387,
                "SubCode2": 57,
                "PacketId": 779,
                "PartnerId": 12667,
                "Day": 1,
                "BeginTime": "11:59:00",
                "EndTime": "11:59:00",
                "DurationInNight": 7,
                "Attributes": 0,
                "CountryId": 90,
                "CityId": 35,
                "Type": 1,
                "ShowOrder": 1,
                "ShowOrderAddDescript1": 0,
                "ShowOrderAddDescript2": 0,
                "IsCommission": false,
                "BaseFlightsParams": null
        },
        "AdditionalServices": [{
                "ServiceName": "Доплаты к отелям",
                "City": null,
                "Country": 90,
                "Code": {
                        "Key": 364,
                        "Value": "Праздник"
                },
                "ByScheduler": false,
                "Details": [{
                        "SubCode1": {
                                "Key": 109,
                                "Value": "Ananas"
                        },
                        "SubCode2": {
                                "Key": null,
                                "Value": ""
                        },
                        "Date": "2018-04-16T11:59:00",
                        "IsShowTransportPlan": false,
                        "Cost": 2,
                        "QuotaStatus": {
                                "PlacesStatus": 0,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "PartnerId": 12667,
                        "ByPax": false,
                        "Partner": {
                                "Key": 0,
                                "Value": null
                        }
                }],
                "ParentId": null,
                "PartnerBasedOnServiceTemplateId": null,
                "ShowOrder": 0,
                "ShowOrderAddDescript1": 0,
                "ShowOrderAddDescript2": 0,
                "Id": -1,
                "SvKey": 13,
                "IsSubCode1": false,
                "IsSubCode2": false,
                "IsPartnerBasedOn": false,
                "Day": 1,
                "DurationInNight": 0,
                "BeginDateTime": "2018-04-16T11:59:00",
                "EndDateTime": "0001-01-01T00:00:00",
                "IsHooded": false,
                "IsDeleted": false,
                "IsNotCalculate": true,
                "PacketId": 879,
                "Index": 1
        }]
}]

[править] Расчет индивидуальных услуг (CalculateIndividualServiceCosts)

Метод производит расчет услуг с индивидуальным выбором у туристов.

  • Формат запроса:
    • POST .../TourSearchOwin/CalculateIndividualServiceCosts?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/json
  • Принимаемые параметры POST запроса ( * – обязательный):
    • TourProgramId – ключ тура
    • TourDate – дата тура
    • TourDuration – продолжительность тура
    • Currency – код валюты
    • Services – массив индивидуальных услуг
      • ServiceType – тип услуги
      • Code – код услуги
      • SubCode1 – доп. описание 1
      • SubCode2 – доп. описание 2
      • Packet – ключ пакета
      • Partner – ключ партнера
      • Day – день предоставления услуги
      • DurationInNight – продолжительность услуги в ночах
      • City – объект город
      • Country – страна услуги
      • Attributes – маска атрибутов услуги
      • Type – тип услуги
      • IsHooded – признак скрытая
      • IsNotCalculated – признак не рассчитываемая
      • BeginDateTimeString – дата начала услуги в строке
      • EndDateTimeString – дата начала услуги в строке
      • TemplateId – номер шаблона услуги
      • Cost – цена услуги
      • ByPax – цена за человека
      • QuotaStatus – объект статус квотирования
        • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
        • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
        • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
      • Index – индекс услуги
      • IsRoute – признак маршрутная услуга
      • ServiceTemplateIndex – индекс шаблона услуги
      • RemoteId – (не используется)
    • Ages – массив возрастов туристов
  • Возвращаемый результат:
    • Массив – массив связок Возраст-Услуга-Цена
      • Age – возраст
      • Service – объект услуга
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание 1
        • SubCode2 – доп. описание 2
        • PacketId – ключ пакета услуги
        • PartnerId – ключ партнера
        • Day – день предоставления услуги
        • BeginTime – время начала услуги
        • EndTime – время окончания услуги
        • DurationInNight – продолжительность услуги в ночах
        • Attributes – маска атрибутов услуги
        • CountryId – ключ страны
        • CityId – ключ города
        • Type – тип услуги
        • ShowOrder – порядковый номер
      • SimpleServiceCost – объект цена
        • Brutto – брутто
        • Discount – скидка
Пример

Вызов метода CalculateIndividualServiceCosts

POST http://localhost:9000/TourSearchOwin/CalculateIndividualServiceCosts? HTTP/1.1
Content-Type: application/json

{
        "TourProgramId": 100003403,
        "TourDate": "2018-04-16T00:00:00",
        "TourDuration": 8,
        "Currency": "EU",
        "Services": [{
                "ServiceType": 6,
                "Code": 155,
                "SubCode1": 7,
                "SubCode2": 10,
                "Packet": 779,
                "Partner": 10760,
                "Day": 1,
                "DurationInNight": 7,
                "City": null,
                "Country": 90,
                "Attributes": 0,
                "Type": 1,
                "IsHooded": false,
                "IsNotCalculated": false,
                "BeginDateTimeString": "2018-04-16T00:00:00",
                "EndDateTimeString": null,
                "TemplateId": 12,
                "Cost": 26,
                "ByPax": false,
                "QuotaStatus": {
                        "PlacesStatus": 1,
                        "FreePlaces": 0,
                        "IsFewPlaces": false
                },
                "Index": null,
                "IsRoute": null,
                "ServiceTemplateIndex": null,
                "RemoteId": null
        }],
        "Ages": [17]
}

Возвращаемый результат метода CalculateIndividualServiceCosts (в формате JSON)

[{
        "Age": 17,
        "Service": {
                "ServiceType": 6,
                "Code": 155,
                "SubCode1": 7,
                "SubCode2": 10,
                "PacketId": 779,
                "PartnerId": 10760,
                "Day": 1,
                "BeginTime": null,
                "EndTime": null,
                "DurationInNight": 7,
                "Attributes": 0,
                "CountryId": 90,
                "CityId": null,
                "Type": 1,
                "ShowOrder": 0
        },
        "SimpleServiceCost": {
                "Brutto": 13,
                "Discount": 0
        }
}]

[править] Загрузка филиалов (Branches) начиная с релиза 15.3

Метод производит выгрузку филиалов бронирования.

  • Формат запроса:
    • GET .../TourSearchOwin/Branches?
  • Принимаемые параметры GET запроса ( * – обязательный):
    • ids – массив ключей филиалов
    • cityKey – фильтр по городу филиала (если 0 или не задан, то выбираются все филиалы)
  • Возвращаемый результат:
    • Key – ключ филиала (ключ партнера)
    • Value – название филиала (название партнера)
Пример

Вызов метода Branches

GET http://localhost:9000/TourSearchOwin/Branches?

Возвращаемый результат метода Branches (в формате JSON)

[{
        "Key": 12848,
        "Value": "Филиал 1"
},
{
        "Key": 12849,
        "Value": "Филиал 2"
},
{
        "Key": 12850,
        "Value": "Филиал 3"
}]


[править] Загрузка ведущих менеджеров (Users) начиная с релиза 15.3

Метод производит выгрузку ведущих менеджеров.

  • Формат запроса:
    • GET .../TourSearchOwin/Users?
  • Принимаемые параметры GET запроса ( * – обязательный):
    • ids – массив ключей ведущих менеджеров
    • branchKey – ключ филиала бронирования, к которому они привязаны
  • Возвращаемый результат:
    • Key – ключ ведущего менеджера
    • Value – полное имя ведущего менеджера
Пример

Вызов метода Users

GET http://localhost:9000/TourSearchOwin/Users?

Возвращаемый результат метода Users (в формате JSON)

[{
        "Key": 1532,
        "Value": "Иванов И."
},
{
        "Key": 12849,
        "Value": "Петров П."
}]


[править] Расчет путевки (CalculateReservation)

Метод производит расчет стоимости путевки.

  • Формат запроса:
    • POST .../TourSearchOwin/CalculateReservation?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/json
  • Принимаемые параметры POST запроса:
    • TourProgramId – ключ турпрограммы
    • BeginDate – дата начала тура
    • Duration – продолжительность тура
    • Currency – код валюты
    • initialPrice – объект изначальная цена
      • price – цена
      • currency – код валюты
    • Services – массив услуг
      • Service – объект услуга отель
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание 1 услуги
        • SubCode2 – доп. описание 2 услуги
        • Packet – ключ пакета услуги
        • Partner – ключ партнера услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • City – ключ города
        • Country – страна услуги
        • Attributes – битовая маска атрибутов услуг
        • IsRemovable – (не обрабатывается)
        • Type – тип услуги в путевке (базовая дополнительная)
        • IsHooded – признак скрытая услуга
        • IsNotCalculated – признак не рассчитываемая услуга
        • BeginDateTimeString – дата и время начала услуги
        • EndDateTimeString – дата и время окончания услуги
        • TemplateId – шаблон услуги
        • Cost – цена услуги
        • ByPax – цена за человека
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • Index – индекс услуги
        • IsRoute – признак маршрутная услуга
        • ServiceTemplateIndex – индекс шаблона услуги
        • RemoteId – информация об услуге в удаленной системе
        • IsCommission – признак, комиссионная ли услуга
        • BaseFlightsParams – параметры рассчитанных авиаперелетов
          • CityArrival – ключ города прибытия прямого перелета
          • FlightCode – ключ прямого авиаперелета
          • TariffKey – ключ тарифа прямого авиаперелета
          • PartnerId – ключ партнера прямого авиаперелета
          • CityArrival – ключ города прибытия обратного перелета
          • FlightCode – ключ обратного авиаперелета
          • TariffKey – ключ тарифа обратного авиаперелета
          • PartnerId – ключ партнера обратного авиаперелета
      • TouristNumbersList – массив туристов, привязанных к услуге
    • Tourists – массив туристов
      • IsMain – главный турист
      • Number – порядковый номер туриста
      • AgeType – тип туриста (взрослый, ребенок, инфант)
      • MaleFemaleSex – пол
      • FirstName – имя (лат)
      • LastName – фамилия (лат)
      • Patronymic – отчество (лат)
      • FirstNameRus – имя (рус)
      • LastNameRus – фамилия (рус)
      • PatronymicRus – отчество (рус)
      • InternationalPassportSeries – серия загранпаспорта
      • InternationalPassportNumber – номер загранпаспорта
      • InternationalPassportDateOfIssue – дата выдачи загранпаспорта
      • InternationalPassportDateOfIssueString – дата выдачи загранпаспорта в строке
      • InternationalPassportDateOfExpiry – дата окончания действия загранпаспорта
      • InternationalPassportDateOfExpiryString – дата окончания действия загранпаспорта в строке
      • internationalPassportByWhom – кем выдан загранпаспорт
      • PassportSeries – серия паспорта
      • PassportNumber – номер паспорта
      • PassportDateOfIssue – дата выдачи паспорта
      • PassportDateOfIssueString – дата выдачи паспорта в строке
      • PassportByWhom – кем выдан паспорт
      • Citizenship – название страны
      • Phone – телефон
      • Email – e-mail
      • BirthDay – дата рождения
      • BirthDayString – дата рождения в строковом формате
      • BirthPlace – место рождения
      • CitizenID – гражданство
      • Age – количество полных лет на момент окончания тура
    • Day – день (перевод)
    • Day2 – дня (перевод)
    • Days – дней (перевод)
    • Night – ночь (перевод)
    • Night2 – ночи (перевод)
    • Nights – ночей (перевод)
    • adultsCountOverServiceLimit – Количество взрослых туристов превышает лимит услуги (перевод)
    • at – на (перевод)
    • incorrectChildrenInf – Возраст детей не соответствует допустимому в выбранном варианте размещения (см. Услуги: Проживание) (перевод)
  • Возвращаемый результат:
    • IsValid – признак валидности путевки
    • ErrorMessage – сообщение об ошибке, если есть
    • CalculatedReservation – объект рассчитанной путевки
      • TourKey – ключ тура
      • BeginDate – дата начала тура
      • Duration – продолжительность путевки в днях
      • Currency – код валюты тура
      • CalculatedServicesPrice – сумма обязательных услуг, входящих в состав тура
      • ChangedPrice – сумма, на которую изменилась итоговая стоимость TotalPrice в результате добавления обязательных и дополнительных услуг
      • Price – итоговая стоимость тура для агентства, рассчитывается как стоимость обязательных услуг, входящих в состав тура + стоимость обязательных услуг, не входящих в состав тура + стоимость дополнительных услуг - партнерская комиссия (в валюте тура)
      • TotalPrice – итоговая стоимость тура для туриста, рассчитывается как стоимость обязательных услуг, входящих в состав тура + стоимость обязательных услуг, не входящих в состав тура + стоимость дополнительных услуг (в валюте тура)
      • IsDiscountIsPercent – признак, в процентах ли дается партнерская комиссия или в y.e.
      • NationalChangedPrice – сумма, на которую изменилась итоговая стоимость TotalPrice в результате добавления обязательных и дополнительных услуг (в национальной валюте)
      • NationalTotalDiscount – партнерская комиссия агентству (в национальной валюте)
      • NationalTotalPrice – итоговая стоимость тура для туриста, рассчитывается как стоимость обязательных услуг, входящих в состав тура + стоимость обязательных услуг, не входящих в состав тура + стоимость дополнительных услуг (в национальной валюте)
      • NatinoalCalculatedServicesPrice – сумма обязательных услуг, входящих в состав тура (в национальной валюте)
      • NationalPrice – итоговая стоимость тура для агентства, рассчитывается как стоимость обязательных услуг, входящих в состав тура + стоимость обязательных услуг, не входящих в состав тура + стоимость дополнительных услуг - партнерская комиссия (в национальной валюте)
      • Discount – партнерская комиссия агентству (в процентах или y.e.)
      • TotalDiscount – партнерская комиссия агентству (в валюте тура)
      • ServiceTourists – массив услуг, входящих в тур
        • ServiceType – тип услуги
        • Day – день предоставления
        • DurationInNight – продолжительность в ночах
        • Time – время начала услуги
        • Name – полное описание услуги
        • TouristCount – количество туристов на услуге
        • Attributes – битовая маска атрибутов
        • Type – тип услуги (основная/дополнительная)
        • Brutto – цена брутто
        • NationalBrutto – цена брутто в национальной валюте
        • TotalBrutto – итоговое брутто
    • TourName – название тура
    • BookingConditions – разметка условия бронирования
    • EndDate – дата окончания тура
    • DurationInNights – продолжительность тура в ночах
    • NationalCurrency – код национальной валюты
Пример

Вызов метода CalculateReservation

POST http://localhost:9000/TourSearchOwin/CalculateReservation? HTTP/1.1
Content-Type: application/json

{
        "tourProgramId": 100003404,
        "beginDate": "2018-04-16T00:00:00",
        "duration": 8,
        "currency": "EU",
        "initialPrice": {
                "price": 122,
                "currency": "EU"
        },
        "services": [{
                "Service": {
                        "ServiceType": 3,
                        "Code": 707,
                        "SubCode1": 10468,
                        "SubCode2": 4,
                        "Packet": 779,
                        "Partner": 12667,
                        "Day": 1,
                        "DurationInNight": 7,
                        "City": 35,
                        "Country": 90,
                        "Attributes": 0,
                        "IsRemovable": false,
                        "Type": 1,
                        "IsHooded": false,
                        "IsNotCalculated": false,
                        "BeginDateTimeString": "2018-04-16T11:59:00",
                        "EndDateTimeString": "2018-04-23T11:59:00",
                        "TemplateId": 1,
                        "Cost": 114,
                        "ByPax": false,
                        "QuotaStatus": {
                                "PlacesStatus": 4,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "Index": 1,
                        "IsRoute": true,
                        "ServiceTemplateIndex": 1,
                        "RemoteId": null,
                        "IsCommission": true,
                        "BaseFlightsParams": [{
                                "CityArrival": 35,
                                "FlightCode": 882,
                                "TariffKey": 67,
                                "PartnerId": 12668
                        },
                        {
                                "CityArrival": 1,
                                "FlightCode": 774,
                                "TariffKey": 67,
                                "PartnerId": 10760
                        }]
                },
                "TouristNumbersList": [1,
                2]
        },
        {
                "Service": {
                        "ServiceType": 12,
                        "Code": 347,
                        "SubCode1": 42,
                        "SubCode2": null,
                        "Packet": 777,
                        "Partner": 10760,
                        "Day": 8,
                        "DurationInNight": 0,
                        "City": null,
                        "Country": 460,
                        "Attributes": 32768,
                        "Type": 2,
                        "IsHooded": false,
                        "IsNotCalculated": true,
                        "EndDateTimeString": false,
                        "Cost": 10,
                        "ByPax": false,
                        "QuotaStatus": 0,
                        "Index": 3,
                        "IsRoute": false,
                        "ServiceTemplateIndex": 3,
                        "RemoteId": null,
                        "IsCommission": true,
                        "BaseFlightsParams": [{
                                "CityArrival": 35,
                                "FlightCode": 882,
                                "TariffKey": 67,
                                "PartnerId": 12668
                        },
                        {
                                "CityArrival": 1,
                                "FlightCode": 774,
                                "TariffKey": 67,
                                "PartnerId": 10760
                        }]
                },
                "TouristNumbersList": [1,
                2]
        }],
        "tourists": [{
                "IsMain": true,
                "Number": 1,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        },
        {
                "IsMain": false,
                "Number": 2,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "",
                "LastName": "",
                "Patronymic": "",
                "FirstNameRus": "",
                "LastNameRus": "",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        }],
        "Day": "день",
        "Day2": "дня",
        "Days": "дней",
        "Night": "ночь",
        "Night2": "ночи",
        "Nights": "ночей",
        "adultsCountOverServiceLimit": "Количество взрослых туристов превышает лимит услуги",
        "at": "на",
        "incorrectChildrenInf": "Возраст детей не соответствует допустимому в выбранном варианте размещения (см. Услуги: Проживание)"
}

Возвращаемый результат метода CalculateReservation (в формате JSON)

{
        "IsValid": true,
        "ErrorMessage": "",
        "CalculatedReservation": {
                "TourKey": 100003404,
                "BeginDate": "2018-04-16T00:00:00",
                "Duration": 8,
                "Currency": "EU",
                "CalculatedServicesPrice": 122.0,
                "ChangedPrice": 34.0,
                "Price": 156.0,
                "TotalPrice": 156.0,
                "IsDiscountIsPercent": true,
                "NationalChangedPrice": 2411.3038000000000000000000023,
                "NationalTotalDiscount": 0.0,
                "NationalTotalPrice": 11063.629200000000000000000011,
                "NatinoalCalculatedServicesPrice": 8652.325400000000000000000008,
                "NationalPrice": 11063.629200000000000000000011,
                "Discount": 0.0,
                "TotalDiscount": 0.0,
                "ServiceTourists": [{
                        "ServiceType": 1,
                        "Day": 1,
                        "DurationInNight": 0,
                        "Time": "10:00:00",
                        "Name": "А_П::Москва/Вена/3G1111, DME-VIE1, 10:00-11:59/C Бизнес класс",
                        "TouristCount": 2,
                        "Attributes": 0,
                        "Type": 1,
                        "Brutto": 6.0,
                        "NationalBrutto": 425.52420000000000000000000041,
                        "TotalBrutto": 6.0
                },
                {
                        "ServiceType": 3,
                        "Day": 1,
                        "DurationInNight": 7,
                        "Time": "11:59:00",
                        "Name": "HOTEL::Вена/Beim Theresianum-4*Boutique,7 ночей/Double(Standart133),2Ad/BB2 Завтрак",
                        "TouristCount": 2,
                        "Attributes": 0,
                        "Type": 1,
                        "Brutto": 114.0,
                        "NationalBrutto": 8084.959800000000000000000008,
                        "TotalBrutto": 114.0
                },
                {
                        "ServiceType": 1,
                        "Day": 8,
                        "DurationInNight": 0,
                        "Time": "00:00:00",
                        "Name": "А_П::Вена/Москва/7U222, VIE1-DME, 00:00-00:00/C Бизнес класс",
                        "TouristCount": 2,
                        "Attributes": 0,
                        "Type": 1,
                        "Brutto": 2.0,
                        "NationalBrutto": 141.84140000000000000000000014,
                        "TotalBrutto": 2.0
                }]
        },
        "TourName": "Удалить этот тур",
        "BookingConditions": "Условия бронирования тура.</p>",
        "EndDate": "2018-04-23T00:00:00",
        "DurationInNights": 7,
        "NationalCurrency": "рб"
}

[править] Бронирование путевки (CreateReservation)

Метод производит бронирование путевки.

  • Формат запроса:
    • PUT .../TourSearchOwin/CreateReservation/1?
  • Принимаемые параметры headers ( * – обязательный):
    • Content-Type * – application/json
    • Authorization – token_type + access_token (полученные из метода .../TourSearchOwin/Token?)
  • Принимаемые параметры PUT запроса:
    • TourProgramId – ключ турпрограммы
    • BeginDate – дата начала тура
    • Duration – продолжительность тура
    • Currency – код валюты
    • Services – массив услуг
      • Service – объект услуга отель
        • ServiceType – тип услуги
        • Code – код услуги
        • SubCode1 – доп. описание 1 услуги
        • SubCode2 – доп. описание 2 услуги
        • Packet – ключ пакета услуги
        • Partner – ключ партнера услуги
        • Day – день предоставления услуги
        • DurationInNight – продолжительность услуги в ночах
        • City – ключ города
        • Country – страна услуги
        • Attributes – битовая маска атрибутов услуг
        • IsRemovable – (не обрабатывается)
        • Type – тип услуги в путевке (базовая дополнительная)
        • IsHooded – признак скрытая услуга
        • IsNotCalculated – признак не рассчитываемая услуга
        • BeginDateTimeString – дата и время начала услуги
        • EndDateTimeString – дата и время окончания услуги
        • TemplateId – шаблон услуги
        • Cost – цена услуги
        • ByPax – цена за человека
        • QuotaStatus – объект статус квотирования
          • PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
          • FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
          • IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
        • Index – индекс услуги
        • IsRoute – признак маршрутная услуга
        • ServiceTemplateIndex – индекс шаблона услуги
        • RemoteId – информация об услуге в удаленной системе
        • IsCommission – признак, комиссионная ли услуга
        • BaseFlightsParams – параметры рассчитанных авиаперелетов
          • CityArrival – ключ города прибытия прямого перелета
          • FlightCode – ключ прямого авиаперелета
          • TariffKey – ключ тарифа прямого авиаперелета
          • PartnerId – ключ партнера прямого авиаперелета
          • CityArrival – ключ города прибытия обратного перелета
          • FlightCode – ключ обратного авиаперелета
          • TariffKey – ключ тарифа обратного авиаперелета
          • PartnerId – ключ партнера обратного авиаперелета
      • TouristNumbersList – массив туристов, привязанных к услуге
    • Tourists – массив туристов
      • IsMain – главный турист
      • Number – порядковый номер туриста
      • AgeType – тип туриста (взрослый, ребенок, инфант)
      • MaleFemaleSex – пол
      • FirstName – имя (лат)
      • LastName – фамилия (лат)
      • Patronymic – отчество (лат)
      • FirstNameRus – имя (рус)
      • LastNameRus – фамилия (рус)
      • PatronymicRus – отчество (рус)
      • InternationalPassportSeries – серия загранпаспорта
      • InternationalPassportNumber – номер загранпаспорта
      • InternationalPassportDateOfIssue – дата выдачи загранпаспорта
      • InternationalPassportDateOfIssueString – дата выдачи загранпаспорта в строке
      • InternationalPassportDateOfExpiry – дата окончания действия загранпаспорта
      • InternationalPassportDateOfExpiryString – дата окончания действия загранпаспорта в строке
      • internationalPassportByWhom – кем выдан загранпаспорт
      • PassportSeries – серия паспорта
      • PassportNumber – номер паспорта
      • PassportDateOfIssue – дата выдачи паспорта
      • PassportDateOfIssueString – дата выдачи паспорта в строке
      • PassportByWhom – кем выдан паспорт
      • Citizenship – название страны
      • Phone – телефон
      • Email – e-mail
      • BirthDay – дата рождения (YYYY-MM-DDThh:mm:ssz)
      • BirthDayString – дата рождения в строковом формате (DD.MM.YYYY)
      • BirthPlace – место рождения
      • CitizenID – гражданство
      • Age – количество полных лет на момент окончания тура
    • BranchId – ключ филиала бронирования (начиная с релиза 15.3). Если не передан, то филиал бронирования берется из менеджера по умолчанию либо из пользователя, создавшего тур.
    • OwnerId – ключ ведущего менеджера (начиная с релиза 15.3). Если 0, то берется по умолчанию. Если по умолчанию не указан, то берется создатель тура.
    • Day – день (перевод)
    • Day2 – дня (перевод)
    • Days – дней (перевод)
    • Night – ночь (перевод)
    • Night2 – ночи (перевод)
    • Nights – ночей (перевод)
    • adultsCountOverServiceLimit – Количество взрослых туристов превышает лимит услуги (перевод)
    • incorrectChildrenInf – Возраст детей не соответствует допустимому в выбранном варианте размещения (см. Услуги: Проживание) (перевод)
  • Возвращаемый результат:
    • Reservation – объект забронированной путевки. Объект полностью идентичный записи в базу данных tbl_Dogovor со связками к tbl_DogovorList, tbl_Partners, tbl_Turist. При успешном бронировании происходит переход сразу в Мастер_Web.
    • ValidationResultSummary – объект статус результата бронирования
      • ValidationResult – объект с ошибками и флагом валидности путевки
        • Errors – массив ошибок бронирования
        • IsValid – признак валидности бронирования
      • ValidationResultAttributes – атрибут результата бронирования
Пример запроса

Вызов метода CreateReservation

PUT http://localhost:9000/TourSearchOwin/CreateReservation/1? HTTP/1.1
Content-Type: application/json
Authorization: Bearer AQAAANCMnd8BFdERjHoAwE_Cl-sBAAAAdsCC8X7m9E-2bg0-uS0VfgAAAAAAAAADZgAAwAAAA-
EqAAAAAASAAACgAAAAEAAAAO4S-VrqBhQuhqliqrAKKfIgAQAAn-gfgP-rYjk-Krr1Ck2A-IGCw6FBhamUOzFxgTtk1hR-
GLMryFIH8VK5GmHdHubZWj4S7XcazGL1Kn5-VlbiYdW2ZVWpYlk638aV-XS2kpZ9YrKgViiM_x8RH5TPo4-
9LhE7V-SjiB_CP_qs58DRKcyohq3Tz9QaiFgH1Ko7O2XKjTBG7SHyQPDPYjaqg9kDxmzq0UcIT6Fm4YkDxmm9-
CW7u3cEFWcpiqKOc2VvZFKPPHc07uDOO4w9FXPhpXZwOqrJBxzhbr73RuhzPs_e-hgxKaIlsMaK5b0v5ReAMy1kuY0ebXA

{
        "TourProgramId": 100003404,
        "BeginDate": "2018-04-16T00:00:00",
        "Duration": 8,
        "Currency": "EU",
        "Services": [{
                "Service": {
                        "ServiceType": 3,
                        "Code": 707,
                        "SubCode1": 10468,
                        "SubCode2": 4,
                        "Packet": 779,
                        "Partner": 12667,
                        "Day": 1,
                        "DurationInNight": 7,
                        "City": 35,
                        "Country": 90,
                        "Attributes": 0,
                        "IsRemovable": false,
                        "Type": 1,
                        "IsHooded": false,
                        "IsNotCalculated": false,
                        "BeginDateTimeString": "2018-04-16T11:59:00",
                        "EndDateTimeString": "2018-04-23T11:59:00",
                        "TemplateId": 1,
                        "Cost": 114,
                        "ByPax": false,
                        "QuotaStatus": {
                                "PlacesStatus": 4,
                                "FreePlaces": 0,
                                "IsFewPlaces": false
                        },
                        "Index": 1,
                        "IsRoute": true,
                        "ServiceTemplateIndex": 1,
                        "RemoteId": null,
                        "IsCommission": true,
                        "BaseFlightsParams": [{
                                "CityArrival": 35,
                                "FlightCode": 882,
                                "TariffKey": 67,
                                "PartnerId": 12668
                        },
                        {
                                "CityArrival": 1,
                                "FlightCode": 774,
                                "TariffKey": 67,
                                "PartnerId": 10760
                        }]
                },
                "TouristNumbersList": [1,
                2]
        },
        {
                "Service": {
                        "ServiceType": 12,
                        "Code": 357,
                        "SubCode1": 41,
                        "SubCode2": null,
                        "Packet": 777,
                        "Partner": 10760,
                        "Day": 1,
                        "DurationInNight": 0,
                        "City": null,
                        "Country": 90,
                        "Attributes": 32768,
                        "Type": 2,
                        "IsHooded": false,
                        "IsNotCalculated": true,
                        "EndDateTimeString": false,
                        "Cost": 24,
                        "ByPax": false,
                        "QuotaStatus": 0,
                        "Index": 0,
                        "IsRoute": false,
                        "ServiceTemplateIndex": 0
                },
                "TouristNumbersList": [1,
                2]
        }],
        "Tourists": [{
                "IsMain": true,
                "Number": 1,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "555",
                "LastName": "55",
                "Patronymic": "",
                "FirstNameRus": "555",
                "LastNameRus": "55",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        },
        {
                "IsMain": false,
                "Number": 2,
                "AgeType": 0,
                "MaleFemaleSex": 0,
                "FirstName": "666",
                "LastName": "66",
                "Patronymic": "",
                "FirstNameRus": "666",
                "LastNameRus": "66",
                "PatronymicRus": "",
                "InternationalPassportSeries": "",
                "InternationalPassportNumber": "",
                "InternationalPassportDateOfIssue": "",
                "InternationalPassportDateOfIssueString": "",
                "InternationalPassportDateOfExpiry": "",
                "InternationalPassportDateOfExpiryString": "",
                "internationalPassportByWhom": "",
                "PassportSeries": "",
                "PassportNumber": "",
                "PassportDateOfIssue": "",
                "PassportDateOfIssueString": "",
                "PassportByWhom": "",
                "Citizenship": "",
                "Phone": "",
                "Email": "",
                "BirthDay": null,
                "BirthDayString": "",
                "BirthPlace": "",
                "CitizenID": "",
                "Age": null
        }],
        "BranchId": 12848,
        "OwnerId": 135,
        "Day": "день",
        "Day2": "дня",
        "Days": "дней",
        "Night": "ночь",
        "Night2": "ночи",
        "Nights": "ночей",
        "adultsCountOverServiceLimit": "Количество взрослых туристов превышает лимит услуги",
        "incorrectChildrenInf": "Возраст детей не соответствует допустимому в выбранном варианте размещения (см. Услуги: Проживание)"
}

Пример ответа

Возвращаемый результат метода CreateReservation (в формате JSON)

{
        "RemoteReservations": [],
        "Reservation": {
                "$id": "1",
                "Code": "AU01060006",
                "TurDate": "2019-06-01T00:00:00",
                "TRKey": 100000004,
                "CNKey": 90,
                "CTKey": 35,
                "NMen": 2,
                "Price": 156,
                "Payed": 0,
                "NDay": 8,
                "MainMan": "Тестовый Представитель",
                "MainManPhone": "9379992",
                "MainManAddress": "",
                "MainManPassport": "",
                "PartnerKey": 12667,
                "Operator": "Иванов Г.Н.",
                "PrintDogovor": null,
                "PrintVaucher": null,
                "TypeCount": 1,
                "Discount": 8,
                "DiscountSum": 14,
                "Creator": 106,
                "Owner": 95,
                "SORCode": 0,
                "CrDate": "2019-04-16T11:01:20.1",
                "Rate": "EU",
                "Advertise": 0,
                "Locked": null,
                "CauseDisc": null,
                "VisaDate": null,
                "PPaymentDate": null,
                "PaymentDate": "2019-04-18T00:00:00+03:00",
                "TurPutDate": null,
                "Document": "",
                "TurPutPlace": null,
                "Procent": 1,
                "OldTourDate": null,
                "RowID": "AAAAAAGY8fM=",
                "TurDateBfrAnnul": null,
                "ARKey": 0,
                "Key": 43295,
                "CodePartner": null,
                "FilialKey": 1,
                "IsOutDoc": 0,
                "AgentID": null,
                "Transferred": null,
                "Notes": null,
                "InvoiceCost": null,
                "DCRClient": null,
                "DCRPayment": null,
                "IsMakeDiscount": null,
                "DiscSumBfrAnn": null,
                "PriceBfrAnn": null,
                "RazmerP": 0,
                "LeadDepartment": 0,
                "MainManEmail": "kononenko@megatec.ru",
                "MainManComment": "",
                "DupUserKey": 333,
                "BTKey": 1,
                "ConfirmedDate": null,
                "PrtDogKey": 422,
                "CTDepartureKey": 1,
                "SalePrice": null,
                "SaleDiscount": null,
                "PDTType": 0,
                "NationalCurrencyPrice": null,
                "NationalCurrencyDiscountSum": null,
                "DAKey": null,
                "NationalCurrencyPayed": null,
                "CurrencyKey": null,
                "CurrencyRate": null,
                "ProTourFlag": null,
                "ClientKey": null,
                "tbl_Partners": null,
                "tbl_Partners_1": {
                        "$id": "2",
                        "Key": 12667,
                        "FullName": null,
                        "Name": null,
                        "NameEng": null,
                        "BossName": null,
                        "Boss": null,
                        "Male": null,
                        "MainMan": null,
                        "MainManPhone": null,
                        "Discount": null,
                        "Account": null,
                        "Address": null,
                        "Phones": null,
                        "Fax": null,
                        "Email": null,
                        "CTKey": null,
                        "Creator": 0,
                        "AgentDogovor": null,
                        "Type": null,
                        "City": null,
                        "WebAgent": null,
                        "AgentDate": null,
                        "AgentDogovor2": null,
                        "AgentDate2": null,
                        "Fax1": null,
                        "Remark": null,
                        "CreateDate": null,
                        "UpdateDate": null,
                        "Art": null,
                        "UserLast": null,
                        "COD": null,
                        "RowID": "AAAAAAGY8g8=",
                        "Filial": 0,
                        "DateLastContact": "2019-04-16T11:01:23.237",
                        "ExchangePwd": null,
                        "GUID": null,
                        "ExchangeData": null,
                        "DogovorType": 0,
                        "ICQ": null,
                        "GDSPrefix": null,
                        "GDSSuffix": null,
                        "Owner": null,
                        "IPAddress": null,
                        "Deleted": 0,
                        "LicenseNumber": null,
                        "AdditionalInfo": null,
                        "LegalAddress": null,
                        "INN": null,
                        "ForeignAccInfo": null,
                        "KPP": null,
                        "CodeOKONH": null,
                        "CodeOKPO": null,
                        "HomePage": null,
                        "PGKey": 0,
                        "BlockedForAnnul": 0,
                        "PostIndex": null,
                        "LegalPostIndex": null,
                        "RegisterSeries": null,
                        "RegisterNumber": null,
                        "WebServiceUrl": null,
                        "PrivatePerson": false,
                        "pr_sortOrder": 0,
                        "PK_RLID": null,
                        "PrtTypesToPartners": [],
                        "tbl_Costs": [],
                        "tbl_Dogovor_asFilial": [],
                        "TP_Tours": [],
                        "CityDictionary": null,
                        "DUP_USER": [],
                        "tbl_Dogovor_asPartner": [{
                                "$ref": "1"
                        }],
                        "CostOffers": [],
                        "PrtWarns": [],
                        "PrtDogs": [],
                        "PrtGroups": null,
                        "PrtBonuses": [],
                        "Communications": [],
                        "Discounts": [],
                        "PrtDeps": [],
                        "BlankRanges": []
                },
                "Rates": null,
                "PrtBonusDetails": [],
                "Communications": [],
                "tbl_DogovorList": [{
                        "$id": "3",
                        "DGCod": "AU01060006",
                        "TurDate": "2019-06-01T00:00:00",
                        "Key": 215524,
                        "PaketKey": 779,
                        "TRKey": 100000004,
                        "SVKey": 1,
                        "Name": "А_П::Москва/Вена/BA74444, DME-VIE1, 10:01-12:15/C Бизнес класс",
                        "Day": 1,
                        "Code": 882,
                        "SubCode1": 67,
                        "SubCode2": 1,
                        "Men": 2,
                        "Days": 0,
                        "CNKey": 90,
                        "CTKey": 35,
                        "PartnerKey": 12668,
                        "Cost": 89.0630566441040256501603135,
                        "RealNetto": null,
                        "Brutto": 81.63000000000000000000000001,
                        "Payed": null,
                        "Wait": null,
                        "Warning": 0,
                        "TimeBeg": "1899-01-01T10:01:00",
                        "Control": 4,
                        "Creator": 106,
                        "Owner": 106,
                        "Attribute": 65695,
                        "IsPayed": null,
                        "DateBeg": "2019-06-01T00:00:00",
                        "DateEnd": "2019-06-01T00:00:00",
                        "Discount": 7.37,
                        "QuoteKey": 0,
                        "Agent": 12667,
                        "RowId": "AAAAAAGY8fc=",
                        "AgentId": 0,
                        "Comment": null,
                        "Reserved": null,
                        "DGKey": 43295,
                        "FormulaNetto": null,
                        "FormulaBrutto": null,
                        "Blocked": null,
                        "NameLat": "А_П::Москва/Вена/BA74444, DME-VIE1, 10:01-12:15/C Бизнес класс",
                        "PRTDogKey": null,
                        "TaxZoneId": null,
                        "Long": 8,
                        "IsDeleted": null,
                        "SalePrice": null,
                        "SaleDiscount": null,
                        "FormulaDiscount": null,
                        "TRFId": 0,
                        "CreateDate": "2019-04-16T11:01:20.1",
                        "IsSendPartner": null,
                        "DogCodePartner": null,
                        "ProviderStatuseKey": null,
                        "CalculatePriceDate": "2019-04-16T11:01:20.1",
                        "RejectComment": null,
                        "ShowOrder": 1,
                        "NettoDescription": "1д=50$*2чел. (комис, ЦБ \"5656_49\");<br>
                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Итого: 89,06EU<br>"
,
                        "BruttoDescription": "1д=50$*2чел. (комис, ЦБ \"5656_49\");<br>
                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Скидка: 8,00%<br>Итого: 81,87EUИтого: 81,63EU"
,
                        "Service": null,
                        "TuristService": [{
                                "$id": "4",
                                "TUKey": 97385,
                                "DLKey": 215524,
                                "NumDoc": null,
                                "NumRoom": 0,
                                "Seat": null,
                                "Area": null,
                                "DocDate": null,
                                "RowId": "AAAAAAGY8gc=",
                                "Id": 46828,
                                "tbl_DogovorList": {
                                        "$ref": "3"
                                },
                                "tbl_Turist": {
                                        "$id": "5",
                                        "DGCod": "AU01060006",
                                        "Key": 97385,
                                        "TurDate": "2019-06-01T00:00:00",
                                        "NameRus": "IVANOV",
                                        "NameLat": "IVANOV",
                                        "ShortName": "I.",
                                        "Sex": 0,
                                        "FNameRus": "IVAN",
                                        "FNameLat": "IVAN",
                                        "SNameRus": "",
                                        "SNameLat": "",
                                        "BirthDay": null,
                                        "BirthCountry": null,
                                        "BirthCity": "",
                                        "Citizen": "",
                                        "PostIndex": null,
                                        "PostCity": null,
                                        "PostStreet": null,
                                        "PostBild": null,
                                        "PostFlat": null,
                                        "Phone": "",
                                        "PhoneCode": null,
                                        "PasportType": "",
                                        "PasportNum": "",
                                        "PasportDate": null,
                                        "PasportDateEnd": null,
                                        "PasportByWhom": "",
                                        "Place": null,
                                        "IsAnketa": null,
                                        "Creator": 106,
                                        "Owner": 95,
                                        "PaspRuser": "",
                                        "PaspRuNum": "",
                                        "PaspRuDate": null,
                                        "PaspRuByWhom": "",
                                        "INSurPolis": null,
                                        "INSurSum": null,
                                        "Discount": null,
                                        "TypeDiscount": null,
                                        "ClientId": null,
                                        "IsMain": 1,
                                        "RowId": "AAAAAAGY8gQ=",
                                        "AgentId": null,
                                        "DGKey": 43295,
                                        "RealSex": 0,
                                        "Email": "",
                                        "EnableSmsNotifications": 0,
                                        "InsuredEvent": false,
                                        "CitizenID": "",
                                        "TuristService": [{
                                                "$ref": "4"
                                        },
                                        {
                                                "$id": "6",
                                                "TUKey": 97385,
                                                "DLKey": 215523,
                                                "NumDoc": null,
                                                "NumRoom": 0,
                                                "Seat": null,
                                                "Area": null,
                                                "DocDate": null,
                                                "RowId": "AAAAAAGY8gk=",
                                                "Id": 46829,
                                                "tbl_DogovorList": {
                                                        "$id": "7",
                                                        "DGCod": "AU01060006",
                                                        "TurDate": "2019-06-01T00:00:00",
                                                        "Key": 215523,
                                                        "PaketKey": 779,
                                                        "TRKey": 100000004,
                                                        "SVKey": 2,
                                                        "Name": "Трансфер::Арльберг/ТРАНСФЕР_2,17:30:00/Coach 14 чел.",
                                                        "Day": 1,
                                                        "Code": 852,
                                                        "SubCode1": 30,
                                                        "SubCode2": 0,
                                                        "Men": 2,
                                                        "Days": 0,
                                                        "CNKey": 90,
                                                        "CTKey": 275,
                                                        "PartnerKey": 11246,
                                                        "Cost": 17.8126113288208051300320627,
                                                        "RealNetto": null,
                                                        "Brutto": 16.53,
                                                        "Payed": null,
                                                        "Wait": null,
                                                        "Warning": 0,
                                                        "TimeBeg": "1899-01-01T17:30:00",
                                                        "Control": 0,
                                                        "Creator": 106,
                                                        "Owner": 106,
                                                        "Attribute": 65695,
                                                        "IsPayed": null,
                                                        "DateBeg": "2019-06-01T00:00:00",
                                                        "DateEnd": "2019-06-01T00:00:00",
                                                        "Discount": 1.47,
                                                        "QuoteKey": 0,
                                                        "Agent": 12667,
                                                        "RowId": "AAAAAAGY8fY=",
                                                        "AgentId": 0,
                                                        "Comment": null,
                                                        "Reserved": null,
                                                        "DGKey": 43295,
                                                        "FormulaNetto": null,
                                                        "FormulaBrutto": null,
                                                        "Blocked": null,
                                                        "NameLat": "Трансфер::Арльберг/ТРАНСФЕР_2,17:30:00/Coach 14 чел.",
                                                        "PRTDogKey": null,
                                                        "TaxZoneId": null,
                                                        "Long": 8,
                                                        "IsDeleted": null,
                                                        "SalePrice": null,
                                                        "SaleDiscount": null,
                                                        "FormulaDiscount": null,
                                                        "TRFId": 0,
                                                        "CreateDate": "2019-04-16T11:01:20.1",
                                                        "IsSendPartner": null,
                                                        "DogCodePartner": null,
                                                        "ProviderStatuseKey": null,
                                                        "CalculatePriceDate": "2019-04-16T11:01:20.1",
                                                        "RejectComment": null,
                                                        "ShowOrder": 2,
                                                        "NettoDescription": "1д=20$ (комис, ЦБ \"Baron Travel _3\");<br>
                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Итого: 17,81EU<br>"
,
                                                        "BruttoDescription": "1д=20$ (комис, ЦБ \"Baron Travel _3\");<br>
                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Скидка: 8,00%<br>Итого: 16,57EUИтого: 16,53EU"
,
                                                        "Service": null,
                                                        "TuristService": [{
                                                                "$ref": "6"
                                                        },
                                                        {
                                                                "$id": "8",
                                                                "TUKey": 97384,
                                                                "DLKey": 215523,
                                                                "NumDoc": null,
                                                                "NumRoom": 0,
                                                                "Seat": null,
                                                                "Area": null,
                                                                "DocDate": null,
                                                                "RowId": "AAAAAAGY8fs=",
                                                                "Id": 46824,
                                                                "tbl_DogovorList": {
                                                                        "$ref": "7"
                                                                },
                                                                "tbl_Turist": {
                                                                        "$id": "9",
                                                                        "DGCod": "AU01060006",
                                                                        "Key": 97384,
                                                                        "TurDate": "2019-06-01T00:00:00",
                                                                        "NameRus": "IVANOV",
                                                                        "NameLat": "IVANOV",
                                                                        "ShortName": "P.",
                                                                        "Sex": 0,
                                                                        "FNameRus": "PETR",
                                                                        "FNameLat": "PETR",
                                                                        "SNameRus": "",
                                                                        "SNameLat": "",
                                                                        "BirthDay": null,
                                                                        "BirthCountry": null,
                                                                        "BirthCity": "",
                                                                        "Citizen": "",
                                                                        "PostIndex": null,
                                                                        "PostCity": null,
                                                                        "PostStreet": null,
                                                                        "PostBild": null,
                                                                        "PostFlat": null,
                                                                        "Phone": "",
                                                                        "PhoneCode": null,
                                                                        "PasportType": "",
                                                                        "PasportNum": "",
                                                                        "PasportDate": null,
                                                                        "PasportDateEnd": null,
                                                                        "PasportByWhom": "",
                                                                        "Place": null,
                                                                        "IsAnketa": null,
                                                                        "Creator": 106,
                                                                        "Owner": 95,
                                                                        "PaspRuser": "",
                                                                        "PaspRuNum": "",
                                                                        "PaspRuDate": null,
                                                                        "PaspRuByWhom": "",
                                                                        "INSurPolis": null,
                                                                        "INSurSum": null,
                                                                        "Discount": null,
                                                                        "TypeDiscount": null,
                                                                        "ClientId": null,
                                                                        "IsMain": 0,
                                                                        "RowId": "AAAAAAGY8fo=",
                                                                        "AgentId": null,
                                                                        "DGKey": 43295,
                                                                        "RealSex": 0,
                                                                        "Email": "",
                                                                        "EnableSmsNotifications": 0,
                                                                        "InsuredEvent": false,
                                                                        "CitizenID": "",
                                                                        "TuristService": [{
                                                                                "$id": "10",
                                                                                "TUKey": 97384,
                                                                                "DLKey": 215524,
                                                                                "NumDoc": null,
                                                                                "NumRoom": 0,
                                                                                "Seat": null,
                                                                                "Area": null,
                                                                                "DocDate": null,
                                                                                "RowId": "AAAAAAGY8f0=",
                                                                                "Id": 46825,
                                                                                "tbl_DogovorList": {
                                                                                        "$ref": "3"
                                                                                },
                                                                                "tbl_Turist": {
                                                                                        "$ref": "9"
                                                                                },
                                                                                "VisaTouristServices": [],
                                                                                "RemoteFlightsBooksRelations": []
                                                                        },
                                                                        {
                                                                                "$ref": "8"
                                                                        },
                                                                        {
                                                                                "$id": "11",
                                                                                "TUKey": 97384,
                                                                                "DLKey": 215522,
                                                                                "NumDoc": null,
                                                                                "NumRoom": 0,
                                                                                "Seat": null,
                                                                                "Area": null,
                                                                                "DocDate": null,
                                                                                "RowId": "AAAAAAGY8f8=",
                                                                                "Id": 46826,
                                                                                "tbl_DogovorList": {
                                                                                        "$id": "12",
                                                                                        "DGCod": "AU01060006",
                                                                                        "TurDate": "2019-06-01T00:00:00",
                                                                                        "Key": 215522,
                                                                                        "PaketKey": 779,
                                                                                        "TRKey": 100000004,
                                                                                        "SVKey": 3,
                                                                                        "Name": "HOTEL::Вена/Continental-1-Condotela,5 ночей/
                                                                                         2 Adult(1 bedroom Jacuzzi Suite),2 ADL/HH2 HH для удаления2"
,
                                                                                        "Day": 2,
                                                                                        "Code": 705,
                                                                                        "SubCode1": 47289,
                                                                                        "SubCode2": 62,
                                                                                        "Men": 2,
                                                                                        "Days": 5,
                                                                                        "CNKey": 90,
                                                                                        "CTKey": 35,
                                                                                        "PartnerKey": 12667,
                                                                                        "Cost": 44.53152832205201282508015675,
                                                                                        "RealNetto": null,
                                                                                        "Brutto": 41.31,
                                                                                        "Payed": null,
                                                                                        "Wait": null,
                                                                                        "Warning": 0,
                                                                                        "TimeBeg": "1899-01-01T17:00:00",
                                                                                        "Control": 1,
                                                                                        "Creator": 106,
                                                                                        "Owner": 106,
                                                                                        "Attribute": 65695,
                                                                                        "IsPayed": null,
                                                                                        "DateBeg": "2019-06-02T00:00:00",
                                                                                        "DateEnd": "2019-06-06T00:00:00",
                                                                                        "Discount": 3.69,
                                                                                        "QuoteKey": 0,
                                                                                        "Agent": 12667,
                                                                                        "RowId": "AAAAAAGY8fU=",
                                                                                        "AgentId": 0,
                                                                                        "Comment": null,
                                                                                        "Reserved": null,
                                                                                        "DGKey": 43295,
                                                                                        "FormulaNetto": null,
                                                                                        "FormulaBrutto": null,
                                                                                        "Blocked": null,
                                                                                        "NameLat": "HOTEL::Вена/Continental-1-Condotela,5 ночей/
                                                                                         2 Adult(1 bedroom Jacuzzi Suite),2 ADL/HH2 HH для удаления2"
,
                                                                                        "PRTDogKey": 422,
                                                                                        "TaxZoneId": null,
                                                                                        "Long": 8,
                                                                                        "IsDeleted": null,
                                                                                        "SalePrice": null,
                                                                                        "SaleDiscount": null,
                                                                                        "FormulaDiscount": null,
                                                                                        "TRFId": 0,
                                                                                        "CreateDate": "2019-04-16T11:01:20.1",
                                                                                        "IsSendPartner": null,
                                                                                        "DogCodePartner": null,
                                                                                        "ProviderStatuseKey": null,
                                                                                        "CalculatePriceDate": "2019-04-16T11:01:20.1",
                                                                                        "RejectComment": null,
                                                                                        "ShowOrder": 3,
                                                                                        "NettoDescription": "5д*10$ (комис, ЦБ \"Партнер-покупатель1_77\");<br>
                                                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Итого: 44,53EU<br>"
,
                                                                                        "BruttoDescription": "5д*10$ (комис, ЦБ \"Партнер-покупатель1_77\");<br>
                                                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Скидка: 8,00%<br>
                                                                                         Итого: 41,44EUИтого: 41,31EU"
,
                                                                                        "Service": null,
                                                                                        "TuristService": [{
                                                                                                "$id": "13",
                                                                                                "TUKey": 97385,
                                                                                                "DLKey": 215522,
                                                                                                "NumDoc": null,
                                                                                                "NumRoom": 0,
                                                                                                "Seat": null,
                                                                                                "Area": null,
                                                                                                "DocDate": null,
                                                                                                "RowId": "AAAAAAGY8gs=",
                                                                                                "Id": 46830,
                                                                                                "tbl_DogovorList": {
                                                                                                        "$ref": "12"
                                                                                                },
                                                                                                "tbl_Turist": {
                                                                                                        "$ref": "5"
                                                                                                },
                                                                                                "VisaTouristServices": [],
                                                                                                "RemoteFlightsBooksRelations": []
                                                                                        },
                                                                                        {
                                                                                                "$ref": "11"
                                                                                        }],
                                                                                        "ProviderStatus": null,
                                                                                        "DogovorListNeedQuoteds": [],
                                                                                        "ServiceByDates": [],
                                                                                        "tbl_Dogovor": {
                                                                                                "$ref": "1"
                                                                                        }
                                                                                },
                                                                                "tbl_Turist": {
                                                                                        "$ref": "9"
                                                                                },
                                                                                "VisaTouristServices": [],
                                                                                "RemoteFlightsBooksRelations": []
                                                                        },
                                                                        {
                                                                                "$id": "14",
                                                                                "TUKey": 97384,
                                                                                "DLKey": 215521,
                                                                                "NumDoc": null,
                                                                                "NumRoom": 0,
                                                                                "Seat": null,
                                                                                "Area": null,
                                                                                "DocDate": null,
                                                                                "RowId": "AAAAAAGY8gI=",
                                                                                "Id": 46827,
                                                                                "tbl_DogovorList": {
                                                                                        "$id": "15",
                                                                                        "DGCod": "AU01060006",
                                                                                        "TurDate": "2019-06-01T00:00:00",
                                                                                        "Key": 215521,
                                                                                        "PaketKey": 779,
                                                                                        "TRKey": 100000004,
                                                                                        "SVKey": 1,
                                                                                        "Name": "А_П::Вена/Москва/7U222, VIE1-DME, 18:00-01:01/C Бизнес класс",
                                                                                        "Day": 7,
                                                                                        "Code": 774,
                                                                                        "SubCode1": 67,
                                                                                        "SubCode2": 35,
                                                                                        "Men": 2,
                                                                                        "Days": 0,
                                                                                        "CNKey": 460,
                                                                                        "CTKey": 1,
                                                                                        "PartnerKey": 10760,
                                                                                        "Cost": 5.3437833986462415390096188102,
                                                                                        "RealNetto": null,
                                                                                        "Brutto": 16.53,
                                                                                        "Payed": null,
                                                                                        "Wait": null,
                                                                                        "Warning": 0,
                                                                                        "TimeBeg": "1899-01-01T18:00:00",
                                                                                        "Control": 4,
                                                                                        "Creator": 106,
                                                                                        "Owner": 106,
                                                                                        "Attribute": 65695,
                                                                                        "IsPayed": null,
                                                                                        "DateBeg": "2019-06-07T00:00:00",
                                                                                        "DateEnd": "2019-06-08T00:00:00",
                                                                                        "Discount": 1.47,
                                                                                        "QuoteKey": 0,
                                                                                        "Agent": 12667,
                                                                                        "RowId": "AAAAAAGY8fQ=",
                                                                                        "AgentId": 0,
                                                                                        "Comment": null,
                                                                                        "Reserved": null,
                                                                                        "DGKey": 43295,
                                                                                        "FormulaNetto": null,
                                                                                        "FormulaBrutto": null,
                                                                                        "Blocked": null,
                                                                                        "NameLat": "А_П::Вена/Москва/7U222, VIE1-DME, 18:00-01:01/C Бизнес класс",
                                                                                        "PRTDogKey": 328,
                                                                                        "TaxZoneId": null,
                                                                                        "Long": 8,
                                                                                        "IsDeleted": null,
                                                                                        "SalePrice": null,
                                                                                        "SaleDiscount": null,
                                                                                        "FormulaDiscount": null,
                                                                                        "TRFId": 0,
                                                                                        "CreateDate": "2019-04-16T11:01:20.1",
                                                                                        "IsSendPartner": null,
                                                                                        "DogCodePartner": null,
                                                                                        "ProviderStatuseKey": null,
                                                                                        "CalculatePriceDate": "2019-04-16T11:01:20.1",
                                                                                        "RejectComment": null,
                                                                                        "ShowOrder": 4,
                                                                                        "NettoDescription": "1д=3$*2чел. (комис, ЦБ \"партнер_66\");<br>
                                                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Итого: 5,34EU<br>"
,
                                                                                        "BruttoDescription": "1д=10$*2чел. (комис, ЦБ \"партнер_66\");<br>
                                                                                         Курсы валют: $ -> EU = 0,8898 (16.04.2019);<br>Скидка: 8,00%<br>
                                                                                         Итого: 16,57EUИтого: 16,53EU"
,
                                                                                        "Service": null,
                                                                                        "TuristService": [{
                                                                                                "$id": "16",
                                                                                                "TUKey": 97385,
                                                                                                "DLKey": 215521,
                                                                                                "NumDoc": null,
                                                                                                "NumRoom": 0,
                                                                                                "Seat": null,
                                                                                                "Area": null,
                                                                                                "DocDate": null,
                                                                                                "RowId": "AAAAAAGY8g0=",
                                                                                                "Id": 46831,
                                                                                                "tbl_DogovorList": {
                                                                                                        "$ref": "15"
                                                                                                },
                                                                                                "tbl_Turist": {
                                                                                                        "$ref": "5"
                                                                                                },
                                                                                                "VisaTouristServices": [],
                                                                                                "RemoteFlightsBooksRelations": []
                                                                                        },
                                                                                        {
                                                                                                "$ref": "14"
                                                                                        }],
                                                                                        "ProviderStatus": null,
                                                                                        "DogovorListNeedQuoteds": [],
                                                                                        "ServiceByDates": [],
                                                                                        "tbl_Dogovor": {
                                                                                                "$ref": "1"
                                                                                        }
                                                                                },
                                                                                "tbl_Turist": {
                                                                                        "$ref": "9"
                                                                                },
                                                                                "VisaTouristServices": [],
                                                                                "RemoteFlightsBooksRelations": []
                                                                        }],
                                                                        "QuestionnaireTouristCases": [],
                                                                        "tbl_Dogovor": {
                                                                                "$ref": "1"
                                                                        }
                                                                },
                                                                "VisaTouristServices": [],
                                                                "RemoteFlightsBooksRelations": []
                                                        }],
                                                        "ProviderStatus": null,
                                                        "DogovorListNeedQuoteds": [],
                                                        "ServiceByDates": [],
                                                        "tbl_Dogovor": {
                                                                "$ref": "1"
                                                        }
                                                },
                                                "tbl_Turist": {
                                                        "$ref": "5"
                                                },
                                                "VisaTouristServices": [],
                                                "RemoteFlightsBooksRelations": []
                                        },
                                        {
                                                "$ref": "13"
                                        },
                                        {
                                                "$ref": "16"
                                        }],
                                        "QuestionnaireTouristCases": [],
                                        "tbl_Dogovor": {
                                                "$ref": "1"
                                        }
                                },
                                "VisaTouristServices": [],
                                "RemoteFlightsBooksRelations": []
                        },
                        {
                                "$ref": "10"
                        }],
                        "ProviderStatus": null,
                        "DogovorListNeedQuoteds": [],
                        "ServiceByDates": [],
                        "tbl_Dogovor": {
                                "$ref": "1"
                        }
                },
                {
                        "$ref": "7"
                },
                {
                        "$ref": "12"
                },
                {
                        "$ref": "15"
                }],
                "tbl_Turist": [{
                        "$ref": "5"
                },
                {
                        "$ref": "9"
                }]
        },
        "ValidationResultSummary": {
                "ValidationResult": {
                        "Errors": [],
                        "IsValid": true
                },
                "ValidationResultAttributes": 0
        }
}

[править] Дополнительные методы

[править] Выгрузка измененных турпрограмм (TourProgram) начиная с релиза 15.3

Метод производит выгрузку измененных турпрограмм.

  • Формат запроса:
    • GET .../TourSearchOwin/TourProgram?
  • Принимаемые параметры GET запроса ( * – обязательный):
    • fromDateTime – дата (в формате dd.MM.yyyy HH:mm:ss), начиная с которой будут выгружаться изменения
  • Возвращаемый результат:
    • Key – ключ программы туров
    • Name – название программы туров
    • UpdateDate – дата последнего изменения программы туров (или связанных с ней компонентов)
    • routes – массив возможных маршрутов в данной программе туров
      • departureCountryKey – страна начала поездки (для каждой страны начала поездки в одной программе тура будет отдельный маршрут)
      • departureCityKey – город начала поездки (для каждого города начала поездки в одной программе тура будет отдельный маршрут)
      • destinationCountryKeys – страны по туру (если в туре несколько услуг класса отель и они в разных странах, то будут возвращаться все страны отелей)
      • destinationCityKeys – города по туру (если в туре отели в нескольких городах, то будут возвращаться все города отелей)
      • tourTypeKeys – типы туров для данной программы туров
Пример

Вызов метода TourProgram

GET http://localhost:9000/TourSearchOwin/TourProgram?

Возвращаемый результат метода TourProgram (в формате JSON)

[{
        "key": 100002353,
        "name": "Турпрограмма в Австрию",
        "updateDate": "2018-09-25T13:48:13.847",
        "routes": [{
                "departureCountryKey": 5,
                "departureCityKey": 218,
                "destinationCountryKeys": [80],
                "destinationCityKeys": [19,
                1051,
                113],
                "tourTypeKeys": [52]
        },
        {
                "departureCountryKey": 5,
                "departureCityKey": 766,
                "destinationCountryKeys": [80],
                "destinationCityKeys": [19,
                1051,
                113],
                "tourTypeKeys": [52]
        }]
},
{
        "Key": 100004452,
        "Name": "Турпрограмма в Англию"
        "UpdateDate": "2018-06-30T10:09:35.22"
        "routes": [{
                "departureCountryKey": -1,
                "departureCityKey": -1,
                "destinationCountryKeys": [80],
                "destinationCityKeys": [19],
                "tourTypeKeys": [52,
                35]
        }]
}]

Личные инструменты
Пространства имён

Варианты
Просмотры
Действия
Навигация
Инструменты