Master-Interlook:IntegrationService — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][досмотренная версия]
(Введение)
 
(не показано 178 промежуточных версий 5 участников)
Строка 6: Строка 6:
 
</td></tr></table><br>
 
</td></tr></table><br>
  
==Введение==
+
=Введение=
API '''InterlookIntegrationService''' работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
+
API '''InterlookIntegrationService''' работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi. <br />
 +
Документацию на английском языке можно загрузить тут [[Файл:Master-InterlookIntegrationService.docx]] либо с [https://disk.yandex.ru/i/JL4OSE52zSX3Gg яндекс диска]
  
==Методы IntegrationService==
+
==Подключение к базе данных ПК «Мастер-Interlook»==
 +
В файле <code>web.config</code>, расположенном в папке '''Interlook.IntegrationService''' пропишите необходимые параметры подключения (<span style="color:red">красным цветом</span> выделены значения, которые необходимо ввести).
 +
Строка подключения к базе данных ПК «Мастер-Interlook»:<br />
 +
<code><add key = "connectionString" value = "Data Source=<span style="color:red">ip-адрес сервера базе данных ПК «Мастер-Interlook»</span>;Initial Catalog=<span style="color:red">название базы данных ПК «Мастер-Interlook»</span>;User ID=<span style="color:red">логин пользователя ПК «Мастер-Interlook»</span>;Password=<span style="color:red">пароль пользователя ПК «Мастер-Interlook»</span>"/></code>
 +
==Настройки в файле WEB.CONFIG==
 +
Настройки задаются в секции <code><appSettings></code> файла <code>web.config</code> основного приложения Interlook.IntegrationService.
 +
{| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse"
  
===Connect (получение аутентификационного токена)===
+
|- style="background-color:#F2F2F2"
 +
 
 +
! width="2%" | №
 +
! width="28%" | Описание
 +
! width="35%" | Значение
 +
! width="35%" | Настройка
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 1
 +
| Процедура перезапуска кэша
 +
| '''cachingTime'''
 +
"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).</br>
 +
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно.
 +
"cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="cachingTime" value="-1"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 2
 +
| Уровень использования процессора
 +
| '''parallelismDegree'''</br>
 +
Уровень использования процессора при расчетах</br>
 +
Максимум - 100, минимум - 0</br>
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="parallelismDegree" value="70"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 3
 +
| Включение логирования о использовании памяти сервера
 +
| '''LogCacheMemory'''</br>
 +
Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.</br>
 +
0 - выключена, 1 - включена </br>
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogCacheMemory" value="0"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 4
 +
| Настройка вывода Adhot типа With Cost
 +
| Настройка, позволяющая выводить доплаты Adhot типа With Cost в методах SearchHotelServices и SearchHotelServicesMinHotel.
 +
По умолчанию настройка установлена в значении '''false'''.<br />
 +
*  '''true''' – в ответе методов выдается значение размера доплаты Adhot типа With Cost в параметре "AddHotsWithCosts".
 +
*  '''false''' или '''отсутствие настройки''' или любое значение отличное от '''true''' – в ответе методов выдается значение "-1" в параметре "AddHotsWithCosts".<br />
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="IsAddHotsWithCosts" value="false"/>
 +
</syntaxhighlight>
 +
 
 +
|}
 +
 
 +
 
 +
В файле web.config для оптимальной работы сервиса нужно убедиться, что в секции <code><system.web></code> значение настройки '''compilation debug''' установлено в положении '''false''' 
 +
<br /><syntaxhighlight lang="xml">
 +
<compilation debug="false" targetFramework="4.0">
 +
</syntaxhighlight>
 +
[[Файл: mb_030.png|left|Предупреждение]] <BR>
 +
Начиная с релизов после 01.01.2024 изменен формат файла конфигурации web.config и появилась возможность работы с новым [[Сервис_логирования|сервисом логирования]].</BR>
 +
{| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse"
 +
 
 +
|- style="background-color:#F2F2F2"
 +
 
 +
! width="2%" | №
 +
! width="28%" | Описание
 +
! width="35%" | Значение
 +
! width="35%" | Настройка
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 1
 +
| Подключение к базе данных
 +
| Строка подключения к базе данных
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="connectionString" value="Data Source=server;Initial Catalog=Base;User Id=User;Password=Password;Application Name=Interlook.IntegrationService" />
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
| 2
 +
| Процедура перезапуска кэша
 +
| '''cachingTime'''
 +
"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).</br>
 +
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно.
 +
"cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="cachingTime" value="-1"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 3
 +
| Уровень использования процессора
 +
| '''parallelismDegree'''</br>
 +
Уровень использования процессора при расчетах</br>
 +
Максимум - 100, минимум - 0</br>
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="parallelismDegree" value="70"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 4
 +
| Включение логирования о использовании памяти сервера
 +
| '''LogCacheMemory'''</br>
 +
Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.</br>
 +
0 - отключены логи и диагностика кеша, </br>
 +
1 - включены логи и диагностика кеша, </br>
 +
2 -  тоже что и 1, только пишутся еще дополнительные более детальные логи)</br>
 +
|<syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogCacheMemory" value="2"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 5
 +
| Настройка для включения логирования с использование сервиса логирования
 +
| Настройка, позволяющая включать и выключать запись логов в сервис логирования
 +
По умолчанию настройка установлена в значении '''false'''.<br />
 +
true - включено, false - выключено
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="EnableLogServiceLogging" value="true" />
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 6
 +
| Настройка для установления уровня логирования при использовании сервиса логирования
 +
| Настройка, позволяющая регулировать уровень записи логов.
 +
Может ринимать значенимя Trace,Debug,Info,Warn,Error,Fatal,Off
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogServiceMinimumlLogLevel" value="Debug" />
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 7
 +
| Настройка количества попыток подключения к сервису логирования
 +
| Настройка, позволяющая регулировать количество попыток подключения к сервису логирования
 +
Значение регулирует количество попыток подключения.
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogServiceConnectionAttempts" value="10"/>
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
 
 +
| 8
 +
| Адрес сервиса логирования
 +
| Адрес сервиса логирования
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogService" value="http://localhost:6060" />
 +
</syntaxhighlight>
 +
 
 +
|- style="vertical-align:text-top"
 +
| 9
 +
| Название базы данных для сервиса логирования
 +
| Настройка, позволяющая указать в какую базу данных MongoDB записывать логи
 +
| <syntaxhighlight lang="xml" enclose="div">
 +
<add key="LogServiceDatabaseTarget" value="IntegrationService1"/>
 +
</syntaxhighlight>
 +
|}
 +
 
 +
==Настройка в IIS==
 +
В диспетчере служб IIS в разделе '''Пулы приложений (Application Pool)''' открыть '''Дополнительные параметры (Advanced Settings)''' приложения '''.Net v4.5'''.
 +
В параметре '''Режим запуска (Start Mode)''' установить значение '''AlwaysRunning'''. <br />
 +
[[Файл:Ea_24.png|1000px|Пул приложений 1]] <br /> <br />
 +
Рекомендуется настроить перезапуск пула приложения раз в сутки, в ночное время. Для настройки перезапуска открыть '''Дополнительные параметры (Advanced Settings)''' пула приложения и в поле '''Моменты точного времени для перезапуска  (Specific Time)''', меню '''TimeSpanArray''' установить время перезапуска.  Значение поля Постоянный временной интервал (в минутах) (Regular Time Interval) установить в значение 0. <br />
 +
[[Файл:Ea_236.png|500px|Пул приложений 3]] <br /> <br />
 +
 
 +
В IIS на уровне сайта открыть '''Дополнительные параметры (Advanced Settings)'''.
 +
В параметре '''Предварительная установка разрешена (Preload Enabled)''' установить значение '''true'''.
 +
 
 +
[[Файл:Ea_25.png|1000px|Пул приложений 2]] <br /> <br />
 +
 
 +
==Расшифровка ошибок сервера==
 +
В случае отправки в запросе к сервису данных некорректного формата в ответе любого метода сервер вернет ошибку с указанием в какой строке в XML ошибка.<br />
 +
"В документе XML (12, 49) присутствует ошибка." - в данном случае ошибка в 12 строке, всего 49 символов в строке с ошибкой.<br />
 +
В интерфейсе SoapUi при установке курсора в любое место в запросе в правом углу окна показывается номер строки и номер символа в строке.<br />
 +
<br />[[Файл:Ea_112.png|800px|SOAP UI]]<br />
 +
* Ошибка в дате. Формат: DateTime
 +
Запрос:  <meg:DateFrom>2021-10-010</meg:DateFrom>
 +
Ответ:    Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (11, 47) присутствует ошибка. ---> System.FormatException: Строка "2021-10-010" не является допустимым значением AllXsd
 +
* Ошибка в данных. Формат: Integer
 +
Запрос: <meg:PageSize>100000ф</meg:PageSize>
 +
Ответ: Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (9, 37) присутствует ошибка. ---> System.FormatException: Входная строка имела неверный формат
 +
 
 +
=Методы IntegrationService=
 +
 
 +
==Методы аутентификации==
 +
 
 +
===Connect (Получение аутентификационного токена)===
 
Метод производит получение аутентификационного токена, необходимого для выполнения метода '''CreateReservation'''.<br />
 
Метод производит получение аутентификационного токена, необходимого для выполнения метода '''CreateReservation'''.<br />
 
 
Принимаемые параметры запроса ( '''*''' – обязательный):
 
Принимаемые параметры запроса ( '''*''' – обязательный):
 
* '''Login *''' – логин online пользователя
 
* '''Login *''' – логин online пользователя
 
* '''Password *''' – пароль online пользователя
 
* '''Password *''' – пароль online пользователя
 
Возвращаемый результат:
 
Возвращаемый результат:
* '''ConnectResult''' – идентификатор аутентификации, если аутентификация прошла успешно, ''-1'' в противном случае
+
* '''ConnectResult''' – идентификатор аутентификации (если аутентификация прошла успешно, то получаем идентификатор, в противном случае ошибку "Connection result code: -1. Invalid login or password")
 
 
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
Строка 25: Строка 222:
 
Вызов метода Connect
 
Вызов метода Connect
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
POST /IntegrationServiceCP/IntegrationService.asmx HTTP/1.1
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
Host: supp-08.megatec.ru
+
  <soapenv:Header/>
Content-Type: text/xml; charset=utf-8
+
  <soapenv:Body>
Content-Length: length
+
      <meg:Connect>
SOAPAction: "http://www.megatec.ru/Connect"
+
        <!--Optional:-->
 +
        <meg:login>mk1</meg:login>
 +
        <!--Optional:-->
 +
        <meg:password>123</meg:password>
 +
      </meg:Connect>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
  
<?xml version="1.0" encoding="utf-8"?>
+
Возвращаемый результат метода Connect
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
+
<syntaxhighlight lang="java" enclose="div">
  <soap:Body>
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <Connect xmlns="http://www.megatec.ru/">
+
  <soap:Body>
      <login>sm1</login>
+
      <ConnectResponse xmlns="http://www.megatec.ru/">
       <password>123</password>
+
        <ConnectResult>9a1e4f2f-a4b0-4d60-8f17-e320031f44de</ConnectResult>
    </Connect>
+
       </ConnectResponse>
  </soap:Body>
+
  </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
  
Возвращаемый результат метода Connect
+
===CheckConnect (Проверка активности подключения под конкретным идентификатором)===
 +
Метод проверяет наличие активного подключения под конкретным идентификатором аутентификации.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
Возвращаемый результат:
 +
* '''CheckConnectResult''' – идентификатор аутентификации (true – если подключение активно, false – если подключения нет)
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CheckConnect
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CheckConnect>
 +
        <!--Optional:-->
 +
        <meg:guid>e5910963-6f5a-4c18-8799-34417675bfe9</meg:guid>
 +
      </meg:CheckConnect>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
  
HTTP/1.1 200 OK
+
Возвращаемый результат метода CheckConnect
Content-Type: text/xml; charset=utf-8
+
<syntaxhighlight lang="java" enclose="div">
Content-Length: length
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
+
  <soap:Body>
<?xml version="1.0" encoding="utf-8"?>
+
      <CheckConnectResponse xmlns="http://www.megatec.ru/">
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
+
        <CheckConnectResult>true</CheckConnectResult>
  <soap:Body>
+
      </CheckConnectResponse>
    <ConnectResponse xmlns="http://www.megatec.ru/">
+
  </soap:Body>
      <ConnectResult>30b033a8-0d5b-4a2c-bcf0-2c671e4c6169</ConnectResult>
 
    </ConnectResponse>
 
  </soap:Body>
 
 
</soap:Envelope>
 
</soap:Envelope>
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</div></div><br />
  
===CreateReservation (бронирование путевки)===
+
==Методы работы с путевками==
  
Метод производит бронирование путевки.<br />
+
===CreateReservation (Бронирование путевки)===
Принимаемые параметры запроса:
+
Метод производит бронирование путевки.<br><br>
* '''Guid''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:Описание методов#Connect (получение аутентификационного токена)|Connect]])
+
После получения идентификатора аутентификации при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]] должно пройти некоторое время для загрузки кэша.
* '''HasInvoices''' – выставлен ли счет по путевке ('''true''' – выставлен, '''false''' – не выставлен)
+
В случае формирования запроса на бронирования если кэш еще не загружен, пользователь получает сообщение "System.Exception: The Cache is loading. Try again after some time". В таком случае нужно подождать несколько секунд и повторить запрос.<br/>
 +
Внимание! Бронирование обязательных Extra Service типа WithCost, Hardlink происходит автоматически. Вне зависимости от того передаются они в запросе или нет.<br>
 +
Перебронирование путевки происходит в случае, если в запросе отправлены параметры ExternalID, ID уже имеющиеся в базе данных Interlook.<br><br>
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Reserv *''' – класс – объект путевки
 +
** '''HasInvoices *''' – выставлен ли счет по путевке  
 +
*** '''true''' – счет выставлен
 +
*** '''false''' – счет не выставлен
 +
** '''Rate *''' – валюта путевки
 +
*** '''ID ''' – идентификатор валюты (если не отправляем или отправляем 0 или отправляем значение, отсутствующее в базе данных, то подставляется валюта, имеющая ID=1 из таблицы Rates Базы Данных)
 +
** '''TouristServices *''' – массив услуг, используемых туристами
 +
*** '''TouristService *''' – отдельная услуга, используемая туристом
 +
**** '''TouristRoomNumber''' – номер комнаты. Если проживание, например Double, то для каждого туриста указываем одинаковый номер комнаты. Для остальных услуг - поле оставляем пустым.
 +
**** '''TouristID *''' – идентификатор туриста
 +
**** '''ServiceID *''' – идентификатор услуги
 +
*** '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')
 +
**** '''HotelService *''' – параметры для услуги типа HotelService
 +
***** '''ExternalID''' –  отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
 +
***** '''NMen''' – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
 +
***** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'').Если не отправляется, то считается текущей
 +
***** '''Duration *''' – продолжительность услуги
 +
***** '''ID *''' – идентификатор услуги, используемый для привязки сервиса к туристам
 +
***** '''Hotel *''' – массив данных отель
 +
****** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
******* '''ParameterPair Key''' – ключ
 +
******** '''Value''' – значение
 +
****** '''ID *''' – идентификатор отеля
 +
***** '''Room *''' – массив данных комната
 +
****** '''RoomTypeID *''' – идентификатор типа комнаты
 +
****** '''RoomCategoryID *''' – идентификатор категории комнат
 +
****** '''RoomAccomodationID *''' – идентификатор типа размещения
 +
***** '''PansionID *''' – идентификатор типа питания
 +
**** '''TransferService''' – параметры для услуги типа TransferService
 +
***** '''ExternalID''' –  отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
 +
***** '''NMen''' – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
 +
***** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'').Если не отправляется, то считается текущей
 +
***** '''Duration''' – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
 +
***** '''ID *''' – идентификатор услуги, используемый для привязки сервиса к туристам
 +
***** '''Transfer *''' – массив данных трансфер
 +
****** '''ID *''' – ключ трансфера из таблицы TransferDirecions (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetTransfers (получение списка трансферов)|GetTransfers]])<br />
 +
***** '''Transport *''' – массив данных транспорта
 +
****** '''ID *''' – ключ транспорта из таблицы Transport
 +
**** '''ExtraService''' – параметры для услуги типа ExtraService. Если на даты проживания имеется доп. услуга AddHots WithCosts, то она автоматически добавляется в ответе, передавать ее не нужно.<br /> 
 +
***** '''ExternalID''' –  отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
 +
***** '''NMen''' – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
 +
***** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'').Если не отправляется, то считается текущей
 +
***** '''Duration''' – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
 +
***** '''ID *''' – идентификатор услуги, используемый для привязки сервиса к туристам
 +
***** '''Code *''' – код сервиса (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetExtraService (получение списка сервисов)|GetExtraService]])<br /> 
 +
**** '''ExcursionService''' - параметры для услуги типа '''Экскурсия'''
 +
***** '''ExternalID''' –  отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
 +
***** '''NMen''' – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
 +
***** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'').Если не отправляется, то считается текущей
 +
***** '''Duration''' – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
 +
***** '''ID *''' – идентификатор услуги, используемый для привязки сервиса к туристам
 +
***** '''ExcursionID *''' – идентификатор экскурсии (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetExcursions (получение списка экскурсий)|GetExcursions]])<br />   
 +
***** '''CountryID'''  – идентификатор страны, если не передаем, то в ответе получим -1.
 +
***** '''CityID''' – идентификатор города
 +
** '''Tourists *''' – массив туристов по услуге
 +
*** '''Tourist *''' – турист
 +
**** '''Sex''' –  пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 +
**** '''BirthDate *''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
**** '''FirstNameLat *''' – имя туриста латиницей
 +
**** '''SurNameLat *''' – отчество туриста латиницей
 +
**** '''AgeType''' – тип возраста ('''Adult''' = 0, '''Child''' = 1, '''Infant''' = 2)
 +
**** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 +
**** '''ID *''' – идентификатор туриста для привязки туриста к сервису
 +
**** '''Phone''' – телефон туриста (в международном формате, например +70000000000, 70000000000)
 +
**** '''Email''' – адрес электронной почты туриста
 +
**** '''ForeignPassport''' – иностранный паспорт
 +
**** '''Serie''' – серия
 +
**** '''Number''' – номер
 +
**** '''EndDate''' – дата окончания действия
 +
** '''ExternalID''' –  ключ путевки из базы данных Interlook (При создании новой путевки можно отправить 0 или не отправлять параметр)
 +
** '''TourOperatorID''' – ключ путевки во внешней системе (ключ туроператора)
 +
** '''TourOperatorCode''' – номер из "customer reservation number"
 +
** '''ID''' – ключ путевки
 +
 
 +
Возвращаемый результат:<br />
 +
* '''HasInvoices''' – выставлен ли счет по путевке
 
** '''true''' – счет выставлен
 
** '''true''' – счет выставлен
 
** '''false''' – счет не выставлен
 
** '''false''' – счет не выставлен
* '''Rate''' – валюта путевки:
+
* '''AgentDiscount''' – скидка агента
 +
* '''Rate''' – валюта путевки
 +
** '''Name''' – название валюты
 
** '''ID''' – идентификатор валюты
 
** '''ID''' – идентификатор валюты
** '''Name''' – название валюты
+
** '''Description''' – описание валюты
 +
** '''NameLat''' – наименование валюты латиницей
 
** '''Code''' – код валюты
 
** '''Code''' – код валюты
 +
** '''CodeLat''' – код валюты латиницей
 
** '''Unicode''' – код ISO для валюты
 
** '''Unicode''' – код ISO для валюты
** '''IsMain''' – является ли валюта главной ('''true''' – является, '''false''' – не является)  
+
** '''IsMain''' – является ли валюта главной ('''true''' – является, '''false''' – не является)
 
** '''IsNational''' – является ли валюта национальной ('''true''' – является, '''false''' – не является)
 
** '''IsNational''' – является ли валюта национальной ('''true''' – является, '''false''' – не является)
* '''ID''' – идентификатор путевки (если указано ''-1'' – создается новая путевка, если ID путевки из базы данных – перебронирование указанной)
+
* '''TouristServices''' – массив услуг, используемых туристами
* '''Netto''' – нетто цена путевки
+
** '''TouristService''' – отдельная услуга, используемая туристом
 +
*** '''ID''' – идентификатор услуги, используемой туристом
 +
*** '''TouristRoomNumber''' – номер комнаты
 +
*** '''TouristID''' – идентификатор туриста (''-1'' для новой путевки)
 +
*** '''ServiceID''' – идентификатор услуги (''-1'' для новой путевки)
 +
* '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')
 +
** '''HotelService''' – параметры для услуги типа HotelService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
***** '''Value''' – значение
 +
****** '''PenaltyCost''' - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
 +
******* '''PolicyKey''' - ключ условия по штрафу в БД (''-1'' - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
 +
******* '''DateFrom''' -  дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть ''null'', обычно для "псевдоусловия": "без штрафа до...")
 +
******* '''DateTo''' - дата окончания (может быть ''null'', для "псевдоусловия" : "100% после ...")
 +
******* '''PenaltyValue''' - размер штрафа
 +
******* '''IsPercent''' - процент, указывающий,  что штраф в "%" (''true'') или в "ночах" (''false'')
 +
******* '''TotalPenalty''' - полная сумма штрафа
 +
******* '''Description''' - описание
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''Hotel''' – массив данных отель
 +
**** '''Name''' – наименование отеля
 +
****'''ID''' – идентификатор отеля
 +
**** '''Description''' – описание отеля
 +
**** '''NameLat''' – наименование отеля латиницей
 +
**** '''Code''' – код  отеля
 +
**** '''CodeLat''' – код отеля латиницей
 +
**** '''Unicode''' – код ISO отеля
 +
**** '''City''' – массив данных город
 +
***** '''Name''' – наименование города
 +
***** '''ID'''  – идентификатор города
 +
***** '''Description''' – описание города
 +
***** '''NameLat''' – наименование города латиницей
 +
***** '''Code''' – код  города
 +
***** '''CodeLat''' – код города латиницей
 +
***** '''Unicode''' – код ISO города
 +
***** '''Country''' – массив данных страна
 +
****** '''Name''' – наименование страны
 +
****** '''ID'''  – идентификатор страны
 +
****** '''Description''' – описание страны
 +
****** '''NameLat''' – наименование страны латиницей
 +
****** '''Code''' – код  страны
 +
****** '''CodeLat''' – код страны латиницей
 +
****** '''Unicode''' – код ISO страны
 +
****** '''IsIncoming''' – параметр для внутреннего использования
 +
***** '''CountryID'''  – идентификатор страны в массиве данных город
 +
***** '''RegionID''' – идентификатор региона в массиве данных город
 +
**** '''RegionID''' – идентификатор региона
 +
**** '''PriceType''' – наличие цен ('''PerPerson''' = 0, '''PerRoom''' = 1, '''All''' = 2, '''None'''= 1000)
 +
**** '''CountCosts''' – количество цен
 +
**** '''CityID''' – идентификатор города
 +
**** '''HotelCategoryID''' – идентификатор категории отеля
 +
*** '''Room''' – массив данных комната
 +
**** '''RoomType''' – массив данных тип комнаты
 +
***** '''Name''' – наименование типа комнаты
 +
***** '''ID'''  – идентификатор типа комнаты
 +
***** '''Description''' – описание типа комнаты
 +
***** '''NameLat''' – наименование типа комнаты латиницей
 +
***** '''Code''' – код типа комнаты
 +
***** '''CodeLat''' – код типа комнаты латиницей
 +
***** '''Unicode''' – код ISO типа комнаты
 +
***** '''Places''' – количество мест в номере
 +
***** '''ExPlaces''' – дополнительные места в номере
 +
***** '''PrintOrder''' – порядковый номер для печати в отчетах
 +
**** '''RoomTypeID''' – идентификатор типа комнаты
 +
**** '''RoomCategory''' – массив данных категории номера
 +
***** '''Name''' – наименование категории номера
 +
***** '''ID'''  – идентификатор категории номера
 +
***** '''Description''' – описание категории номера
 +
***** '''NameLat''' – наименование категории номера латиницей
 +
***** '''Code''' – код категории номера
 +
***** '''CodeLat''' – код категории номера латиницей
 +
***** '''Unicode''' – код ISO категории номера
 +
***** '''MainPlaces''' – количество основных мест
 +
***** '''ExtraPlaces''' – количество дополнительных мест
 +
***** '''IsMain''' – параметр для внутреннего использования
 +
**** '''RoomCategoryID''' – идентификатор категории комнат
 +
**** '''RoomAccomodation''' – массив данных размещения
 +
***** '''Name''' – наименование размещения
 +
***** '''ID'''  – идентификатор размещения
 +
***** '''Description''' – описание размещения
 +
***** '''NameLat''' – наименование размещения латиницей
 +
***** '''Code''' – код размещения
 +
***** '''CodeLat''' – код размещения латиницей
 +
***** '''Unicode''' – код ISO размещения
 +
***** '''PerRoom''' – за комнату/за человека
 +
***** '''AdultMainPlaces''' – количество основных мест для взрослых
 +
***** '''ChildMainPlaces''' – количество основных мест для детей
 +
***** '''AdultExtraPlaces''' – количество дополнительных мест для взрослых
 +
***** '''ChildExtraPlaces''' – количество дополнительных мест для детей
 +
***** '''MainPlaces''' – общее количество основных мест
 +
***** '''ExtraPlaces''' – общее количество дополнительных мест
 +
***** '''IsMain''' – параметр для внутреннего использования
 +
***** '''AgeFrom''' – возраст первого ребенка '''от'''
 +
***** '''AgeTo''' – возраст первого ребенка '''по'''
 +
***** '''Age2From''' – возраст второго ребенка '''от'''
 +
***** '''Age2To''' – возраст второго ребенка '''по'''
 +
**** '''RoomAccomodationID''' – идентификатор типа размещения
 +
**** '''ID''' – идентификатор комнаты
 +
**** '''Name''' – наименование типа размещения
 +
*** '''RoomID''' – идентификатор комнаты
 +
*** '''PansionID''' – идентификатор типа питания
 +
** '''TransferService''' – параметры для услуги типа TransferService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
***** '''Value''' – значение
 +
******* '''Description''' - описание
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''Transfer''' – массив данных трансфера
 +
**** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
***** '''ParameterPair Key''' – ключ
 +
****** '''Value''' – значение
 +
**** '''Name''' – наименование трансфера
 +
**** '''ID''' – ключ трансфера из таблицы TransferDirecion
 +
**** '''Description''' – описание  трансфера
 +
**** '''NameLat''' – наименование  трансфера латиницей
 +
**** '''Code''' – код  трансфера
 +
**** '''CodeLat''' – код  трансфера латиницей
 +
**** '''Unicode''' – код ISO  трансфера
 +
**** '''PlaceFrom''' – название точки откуда
 +
**** '''PlaceTo''' – название точки куда
 +
**** '''CityID''' – идентификатор города
 +
**** '''RegionID''' – идентификатор региона
 +
*** '''Transport''' – массив данных транспорта
 +
**** '''Name''' – наименование транспорта
 +
**** '''ID''' – идентификатор транспорта
 +
**** '''Description''' – описание  транспорта
 +
**** '''NameLat''' – наименование  транспорта латиницей
 +
**** '''Code''' код  транспорта
 +
**** '''CodeLat''' – код  транспорта латиницей
 +
**** '''Unicode''' – код ISO транспорта
 +
*** '''PointToID''' – идентификатор точки куда
 +
*** '''CityKey''' – ключ города
 +
*** '''PointToName''' – название точки куда
 +
*** '''PointFromID''' – идентификатор точки откуда
 +
*** '''PointFromName''' – название точки откуда
 +
** '''ExcursionService''' – параметры для услуги типа ExcursionService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
**** '''Value''' – значение
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
 
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''CityKey''' – ключ города
 +
*** '''ExcursionID''' – идентификатор экскурсии
 +
** '''ExtraService''' – параметры для услуги типа ExtraService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
***** '''Value''' – значение
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''CityKey''' – ключ города предоставления услуги
 +
*** '''IsPackage''' – признак пакетной услуги
 +
*** '''Code''' – идентификатор услуги
 +
*** '''HasDuration''' – услуга с продолжительностью или без
 +
* '''ID''' – ключ путевки во внешней системе (ключ туроператора)
 +
* '''Name''' – наименование путевки
 
* '''Brutto''' – брутто цена путевки
 
* '''Brutto''' – брутто цена путевки
 
* '''CountryID''' – идентификатор страны путевки
 
* '''CountryID''' – идентификатор страны путевки
Строка 88: Строка 714:
 
* '''EndDate''' – дата окончания тура (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
* '''EndDate''' – дата окончания тура (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
* '''Duration''' – продолжительность
 
* '''Duration''' – продолжительность
* '''CreateDate''' – дата создания путевки (в формате ''ГГГГ-ММ-ДДT00:00:00'')
+
* '''CreationDate''' – дата создания путевки (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
* '''CreatorID''' – идентификатор создателя путевки
 
* '''CreatorID''' – идентификатор создателя путевки
* '''OwnerID''' – идентификатор создателя путевки
 
* '''ExternalID''' – идентификатор путевки из системы создающей бронь
 
* '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 
* '''Services''' - услуги по путевке (определенного типа, в зависимости от типа услуги)
 
 
* '''Tourists''' – массив туристов по услуге
 
* '''Tourists''' – массив туристов по услуге
 
** '''Tourist''' – турист
 
** '''Tourist''' – турист
*** '''Name''' – имя
 
 
*** '''Sex''' –  пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 
*** '''Sex''' –  пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 
*** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
*** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
*** '''FirstNameLat''' – имя туриста латиницей
 
*** '''FirstNameLat''' – имя туриста латиницей
 
*** '''LastNameLat''' – фамилия туриста латиницей
 
*** '''LastNameLat''' – фамилия туриста латиницей
*** '''SurNameLat''' – отчество туриста латиницей
 
 
*** '''AgeType''' – тип возраста ('''Adult''' = 0, '''Child''' = 1, '''Infant''' = 2)
 
*** '''AgeType''' – тип возраста ('''Adult''' = 0, '''Child''' = 1, '''Infant''' = 2)
*** '''Citizen''' – гражданство
 
 
*** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 
*** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
*** '''ExternalID''' – идентификатор путевки из системы создающей бронь
+
*** '''ExternalID''' – параметр для внутреннего использования
 
*** '''ID''' – идентификатор туриста (''-1'' для новой путевки )
 
*** '''ID''' – идентификатор туриста (''-1'' для новой путевки )
 
*** '''Phone''' – телефон туриста (задается по шаблону)
 
*** '''Phone''' – телефон туриста (задается по шаблону)
 
*** '''Email''' – адрес электронной почты туриста
 
*** '''Email''' – адрес электронной почты туриста
*** '''LocalPassport''' – гражданский паспорт
 
 
*** '''ForeignPassport''' – иностранный паспорт
 
*** '''ForeignPassport''' – иностранный паспорт
* '''TouristServices''' – массив услуг, используемых туристами
+
**** '''Serie''' – серия
** '''TouristService''' – отдельная услуга, используемая туристом
+
**** '''Number''' – номер
*** '''ID''' – идентификатор услуги используемой туристом
+
**** '''EndDate''' – дата окончания действия
*** '''TouristID''' – идентификатор туриста (''-1'' для новой путевки)
+
*** '''ExternalID''' – не используется
*** '''ServiceID''' – идентификатор услуги (''-1'' для новой путевки)
+
* '''OwnerID''' – идентификатор создателя путевки
* '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')
+
* '''ExternalID''' –   ключ путевки в базе данных Interlook
* '''Service''' – общие параметры, имеющиеся у всех услуг по путевке
+
* '''TourOperatorID''' – ключ путевки во внешней системе (ключ туроператора)
** '''ExternalID''' –  идентификатор путевки из системы создающей бронь
+
* '''TourOperatorCode''' – номер из "customer reservation number"
** '''Price''' – цена брутто
+
* '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ значение)
** '''NMen''' – количество взрослых туристов
+
** '''ParameterPair Key''' – ключ
** '''PartnerID''' – идентификатор поставщика услуги(можно передать 0 – тогда он подберется автоматически расчетчиком)
+
** '''Value''' – значение<br/>
** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
+
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.<br/>
** '''PacketKey''' – идентификатор пакета услуги
+
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br/>
** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
+
В случае, когда сигнатура услуги не соответствует объявленному в запросе типу получим сообщение "Service labeled as '<Тип услуги в запросе>' is not a <Наименование типа услуги>".<br/>
** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
+
В случае если отсутствуют туристы в запросе получим сообщение "There is no any tourist. At least one 'Tourist' must be specified."<br/>
** '''EndDate''' – дата окончания услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
+
В случае если не указано обязательное поле получим сообщение "Parameter '<Наименование параметра>' is required."<br/>
** '''StartDay''' – день предоставления услуги
+
В случае если не существует записи с указанным ID в базе данных получим сообщение "There is no <Наименование сущности> with '<Наименование параметра идентификатора>' =                                  <Значение параметра в запросе> in the database."<br/>
** '''Duration''' – продолжительность услуги
+
 
** '''RateBrutto''' – валюта брутто
 
** '''Brutto''' – цена брутто
 
** '''RateNetto''' – валюта нетто
 
** '''Netto''' – цена нетто
 
** '''ServiceClassID''' – идентификатор класса услуги
 
** '''TouristCount''' – количество туристов, пользующихся услугой
 
** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 
** '''Notes''' – примечания к услуге
 
** '''Country''' – код страны
 
** '''City''' – код города
 
* '''Tourists''' – массив туристов по услуге
 
** '''Tourist''' – турист, массив данных о туристе
 
** '''Name''' – имя туриста
 
** '''Sex''' – пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 
** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
** '''FirstNameLat''' – имя туриста латиницей
 
** '''LastNameLat''' – фамилия туриста латиницей
 
** '''SurNameLat''' – отчество туриста латиницей
 
** '''AgeType''' – тип возраста (ключ = значение: '''Adult''' = ''0'', '''Child''' = ''1'', '''Infant''' = ''2'')
 
** '''Citizen''' – гражданство
 
** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 
** '''ExternalID''' – идентификатор путевки из системы, создающей бронь
 
** '''ID''' – идентификатор туриста (''-1'' для новой путевки)
 
** '''Phone''' – телефон туриста (задается по шаблону)
 
** '''Email''' – адрес электронной почты туриста
 
** '''LocalPassport''' – гражданский паспорт
 
** '''ForeignPassport''' – иностранный паспорт
 
* '''AdditionalParams''' –  массив дополнительных параметров (представляются в виде пары ключ = значение)
 
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
<syntaxhighlight lang="java" enclose="div">
+
Вызов метода CreateReservation:
<AdditionalParams> –  массив дополнительных параметров
 
      <ParameterPair Key="ContractPrKey"> - первая пара параметров, ключ ContractPrKey – ключ сервис-провайдера
 
            <Value xsi:type="xsd:int">1035</Value> – значение
 
      </ParameterPair>
 
      <ParameterPair Key="CityID"> - вторая пара параметров, ключ CityID – ключ города
 
              <Value xsi:type="xsd:int">52</Value> – значение
 
        </ParameterPair>
 
        <ParameterPair Key="isSuccess"> третья пара параметров, Ключ – isSucсess
 
              <Value xsi:type="xsd:boolean">true</Value> - значение
 
        </ParameterPair>
 
</AdditionalParams>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</div></div><br />
 
* '''ExcursionService''' - дополнительные параметры для услуги типа '''Экскурсия'''
 
** '''Excursion''' – услуга экскурсии
 
*** '''CityID''' – идентификатор города
 
*** '''RegionID''' – идентификатор региона
 
*** '''Name''' – название экскурсии
 
** '''Transport''' – тип транспорта
 
** '''ExcursionID''' – идентификатор экскурсии
 
** '''StarDate''' – дата предоставления экскурсии (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
** '''Duration''' – продолжительность
 
** '''SeviceClassID''' – идентификатор класса услуги
 
* '''ExtraService''' - дополнительные параметры для услуги типа '''Экстра сервис'''
 
** '''CityKey''' – ключ города предоставления услуги
 
** '''Code''' – идентификатор услуги
 
** '''HasDuration''' – с продолжительностью или без услуга
 
** '''ServiceClassID''' – идентификатор класса услуги
 
** '''StartDate''' – дата начала предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
** '''IsPackage''' – признак пакетной услуги
 
* '''HotelService''' - дополнительные параметры для услуги типа '''Отель'''
 
** '''Hotel''' – отель
 
***'''ID''' – идентификатор отеля
 
*** '''Name''' – наименование отеля
 
*** '''Description''' – описание отеля
 
*** '''City''' – город
 
**** '''ID'''  – идентификатор города
 
**** '''CountryID'''  – идентификатор страны
 
**** '''RegionID''' – идентификатор региона
 
*** '''RegionID''' – идентификатор региона
 
*** '''PriceType''' – наличие цен ('''PerPerson''' = 0, '''PerRoom''' = 1, '''All''' = 2, '''None'''= 1000)
 
*** '''CountCosts''' – количество цен
 
*** '''CityID''' – идентификатор города
 
*** '''HotelCategoryID''' – идентификатор категории отеля
 
** '''Room''' – комната
 
** '''RoomType''' – тип комнаты
 
*** '''Places''' – количество мест в номере
 
*** '''ExPlaces''' – дополнительные места в номере
 
*** '''PrintOrder''' – порядковый номер для печати в отчетах
 
** '''RoomTypeID''' – идентификатор типа комнаты
 
** '''RoomCategoryID''' – идентификатор категории комнат
 
** '''RoomAccomodation''' – размещение
 
*** '''PerRoom''' – за комнату/за человека
 
*** '''AdultMainPlaces''' – основных мест для взрослых
 
*** '''ChildMainPlaces''' – основных мест для детей
 
*** '''AdultExtraPlaces''' – дополнительных мест для взрослых
 
*** '''ChildExtraPlaces''' – дополнительных мест для детей
 
*** '''MainPlaces''' – общее количество основных мест
 
*** '''ExtraPlaces''' – общее количество дополнительных мест
 
*** '''AgeFrom''' – возраст первого ребенка '''от'''
 
*** '''AgeTo''' – возраст первого ребенка '''по'''
 
*** '''Age2From''' – возраст второго ребенка '''от'''
 
*** '''Age2To''' – возраст второго ребенка '''по'''
 
*** '''RoomAccomodationID''' – идентификатор типа размещения
 
*** '''ID''' – идентификатор комнаты
 
*** '''Name''' – наименование типа размещения
 
** '''RoomID''' – идентификатор комнаты
 
** '''PansionID''' – идентификатор типа питания
 
* '''TransferService''' - дополнительные параметры для услуги типа Трансфер
 
** '''ID''' – ключ трансфера из таблицы ''TransferDirecion'', получаем методом ''GetTransfers''
 
** '''PlaceFrom''' – название точки ''Откуда''
 
** '''PlaceTo''' – название точки ''Куда''
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="mw-collapsible-content">
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 
Вызов метода CreateReservation
 
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
Строка 243: Строка 756:
 
   <soap:Body>
 
   <soap:Body>
 
       <CreateReservation xmlns="http://www.megatec.ru/">
 
       <CreateReservation xmlns="http://www.megatec.ru/">
         <guid>2b019943-7a1d-4f8f-b10b-0875af685972</guid>
+
         <guid>6b311a75-ffa7-428b-8abe-420e9780ed4d</guid>
 
         <reserv HasInvoices="false">
 
         <reserv HasInvoices="false">
 
             <Rate>
 
             <Rate>
              <Name>EU</Name>
 
              <Code>EU</Code>
 
 
               <ID>1</ID>
 
               <ID>1</ID>
              <IsMain>false</IsMain>
 
              <IsNational>false</IsNational>
 
 
             </Rate>
 
             </Rate>
             <ID>-1</ID>
+
             <TouristServices>
            <Netto>0</Netto>
 
            <Brutto>0</Brutto>
 
            <CountryID>4</CountryID>
 
            <CityID>52</CityID>
 
            <PartnerID>0</PartnerID>
 
            <AgentDiscount>0</AgentDiscount>
 
            <Status>WaitingConfirmation</Status>
 
            <StartDate>2021-06-15T00:00:00</StartDate>
 
            <EndDate>2021-06-21T00:00:00</EndDate>
 
            <Duration>6</Duration>
 
            <CreationDate>2021-06-30T15:50:57.44</CreationDate>
 
            <CreatorID>0</CreatorID>
 
            <OwnerID>0</OwnerID>
 
            <ExternalID>0</ExternalID>
 
            <AdditionalParams>
 
              <ParameterPair Key="PcnId">
 
                  <Value xsi:type="xsd:int">116</Value>
 
              </ParameterPair>
 
            </AdditionalParams>
 
            <Tourists>
 
                <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-09-10T00:00:00" FirstNameLat="Fabian" LastNameLat="" SurNameLat="Ruis" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0" ID="-1" Phone="+78888888888" Email="fabian@yandex.ru">
 
                  <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                  <ForeignPassport IssuedBy="" Serie="3333" Number="333333" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                </Tourist>
 
                <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-02-11T00:00:00" FirstNameLat="Alberto" LastNameLat="" SurNameLat="Morena" AgeType="Adult" Citizen="" IsMain="false" ExternalID="0" ID="-1" Phone="+79999999999" Email="a.morena@yandex.ru">
 
                  <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                  <ForeignPassport IssuedBy="" Serie="1330" Number="167812" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                </Tourist>
 
            </Tourists>
 
            <TouristServices>
 
 
               <TouristService>
 
               <TouristService>
                   <ID>0</ID>
+
                   <TouristRoomNumber>1</TouristRoomNumber>
 
                   <TouristID>-1</TouristID>
 
                   <TouristID>-1</TouristID>
 
                   <ServiceID>-1</ServiceID>
 
                   <ServiceID>-1</ServiceID>
 
               </TouristService>
 
               </TouristService>
 
               <TouristService>
 
               <TouristService>
                   <ID>0</ID>
+
                <TouristRoomNumber>1</TouristRoomNumber>
                   <Name></Name>
+
                   <TouristID>-2</TouristID>
 +
                   <ServiceID>-1</ServiceID>
 +
              </TouristService>
 +
                <TouristService>
 +
                <TouristRoomNumber></TouristRoomNumber>  
 
                   <TouristID>-1</TouristID>
 
                   <TouristID>-1</TouristID>
 
                   <ServiceID>-2</ServiceID>
 
                   <ServiceID>-2</ServiceID>
 
               </TouristService>
 
               </TouristService>
 +
              <TouristService>
 +
              <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-2</TouristID>
 +
                  <ServiceID>-2</ServiceID>
 +
              </TouristService>
 +
  <TouristService>
 +
                <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-1</TouristID>
 +
                  <ServiceID>-3</ServiceID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-2</TouristID>
 +
                  <ServiceID>-3</ServiceID>
 +
              </TouristService>
 +
  <TouristService>
 +
                <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-1</TouristID>
 +
                  <ServiceID>-4</ServiceID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-2</TouristID>
 +
                  <ServiceID>-4</ServiceID>
 +
              </TouristService>
 +
    <TouristService>
 +
                <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-1</TouristID>
 +
                  <ServiceID>-5</ServiceID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <TouristRoomNumber></TouristRoomNumber>
 +
                  <TouristID>-2</TouristID>
 +
                  <ServiceID>-5</ServiceID>
 +
              </TouristService>         
 
             </TouristServices>
 
             </TouristServices>
 
             <Services>
 
             <Services>
 
               <Service xsi:type="HotelService">
 
               <Service xsi:type="HotelService">
 
                   <ExternalID>0</ExternalID>
 
                   <ExternalID>0</ExternalID>
                  <Price>0</Price>
 
 
                   <NMen>2</NMen>
 
                   <NMen>2</NMen>
                   <PartnerID>0</PartnerID>
+
                   <AdditionalParams>
                  <Quota>NotChecked</Quota>
 
                  <PacketKey>0</PacketKey>
 
                  <Name>HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB</Name>
 
                  <StartDate>2021-06-15T00:00:00</StartDate>
 
                  <StartDay>0</StartDay>
 
                  <Duration>6</Duration>
 
                  <RateBrutto>EU</RateBrutto>
 
                  <Brutto>0</Brutto>
 
                  <RateNetto>EU</RateNetto>
 
                  <Netto>0</Netto>
 
                  <ServiceClassID>0</ServiceClassID>
 
                  <TouristCount>2</TouristCount>
 
                  <ID>-1</ID>
 
            <Tourists>
 
                <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-09-10T00:00:00" FirstNameLat="Fabian" LastNameLat="" SurNameLat="Ruis" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0" ID="-1" Phone="+78888888888" Email="fabian@yandex.ru">
 
                  <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                  <ForeignPassport IssuedBy="" Serie="3333" Number="333333" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                </Tourist>
 
                <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-02-11T00:00:00" FirstNameLat="Alberto" LastNameLat="" SurNameLat="Morena" AgeType="Adult" Citizen="" IsMain="false" ExternalID="0" ID="-1" Phone="+79999999999" Email="a.morena@yandex.ru">
 
                  <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                  <ForeignPassport IssuedBy="" Serie="1330" Number="167812" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                </Tourist>
 
            </Tourists>
 
                <AdditionalParams>
 
 
                     <ParameterPair Key="ContractPrKey">
 
                     <ParameterPair Key="ContractPrKey">
                         <Value xsi:type="xsd:int">1035</Value>
+
                         <Value xsi:type="xsd:int">2930</Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                     <ParameterPair Key="CityID">
 
                     <ParameterPair Key="CityID">
                         <Value xsi:type="xsd:int">52</Value>
+
                         <Value xsi:type="xsd:int">80</Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                     <ParameterPair Key="isSuccess">
 
                     <ParameterPair Key="isSuccess">
Строка 335: Строка 828:
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                   </AdditionalParams>
 
                   </AdditionalParams>
                <Hotel>
+
                  <StartDate>2022-08-20T00:00:00</StartDate>
                      <Name>Acropol Hotel (Delphi) 3 stars (B)</Name>
+
                  <Duration>7</Duration>
                      <ID>1978</ID>
+
                  <ID>-1</ID>
                      <Description>3 stars (B)  (Greece\Delphi\Delphi)</Description>
+
                  <Hotel>
                      <City>
+
                      <ID>2930</ID>
                        <ID>52</ID>
+
                          </Hotel>
                        <CountryID>4</CountryID>
 
                        <RegionID>0</RegionID>
 
                    </City>
 
                    <RegionID>0</RegionID>
 
                    <PriceType>None</PriceType>
 
                    <CountCosts>0</CountCosts>
 
                    <CityID>52</CityID>
 
                    <HotelCategoryID>0</HotelCategoryID>
 
              </Hotel>
 
 
               <Room>
 
               <Room>
                     <RoomTypeID>436</RoomTypeID>
+
                     <RoomTypeID>3</RoomTypeID>
                     <RoomCategoryID>47</RoomCategoryID>
+
                     <RoomCategoryID>20</RoomCategoryID>
 
                     <RoomAccomodationID>5558</RoomAccomodationID>
 
                     <RoomAccomodationID>5558</RoomAccomodationID>
                    <ID>0</ID>
 
 
                   </Room>
 
                   </Room>
                  <RoomID>0</RoomID>
 
 
                   <PansionID>3</PansionID>
 
                   <PansionID>3</PansionID>
 
               </Service>
 
               </Service>
             </Services>
+
    <Service xsi:type="TransferService">
 +
                  <ExternalID>0</ExternalID>
 +
                  <NMen>2</NMen>
 +
                  <StartDate>2022-08-20T00:00:00</StartDate>
 +
                  <ID>-2</ID>
 +
                  <Transfer>
 +
                        <ID>606</ID>
 +
                      </Transfer>
 +
                  <Transport>
 +
                    <ID>4</ID>
 +
                  </Transport>
 +
              </Service>
 +
                <Service xsi:type="TransferService">
 +
                  <ExternalID>0</ExternalID>
 +
                  <NMen>2</NMen>
 +
                  <StartDate>2022-08-27T00:00:00</StartDate>
 +
                  <Duration>1</Duration>
 +
                  <ID>-3</ID>
 +
                  <Transfer>             
 +
                    <ID>604</ID>
 +
              </Transfer>
 +
                  <Transport>
 +
                    <ID>2</ID>
 +
                    </Transport>
 +
                  </Service>
 +
                  <Service xsi:type="ExtraService">
 +
                  <ExternalID>0</ExternalID>
 +
                  <NMen>2</NMen>
 +
                  <StartDate>2022-08-23T00:00:00</StartDate>
 +
                  <Duration>1</Duration>
 +
              <ID>-4</ID>
 +
              <Code>694</Code>
 +
                  </Service>
 +
                  <Service xsi:type="ExcursionService">
 +
                  <ExternalID>0</ExternalID>
 +
                  <NMen>2</NMen>
 +
                  <StartDate>2022-08-23T00:00:00</StartDate>
 +
                    <ID>-5</ID>
 +
                    <ExcursionID>714</ExcursionID>
 +
                    </Service>
 +
                  </Services>
 +
                <CountryID>6</CountryID>
 +
                <CityID>80</CityID>
 +
                    <Tourists>
 +
                    <Tourist Sex="Male"  BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ExternalID="0" ID="-1" Phone="89610553087" Email="dfj@ety.ua">
 +
                    <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
 +
                    </Tourist>
 +
                    <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" Citizen="" IsMain="false" ExternalID="0" ID="-2" Phone="" Email="">
 +
                      <ForeignPassport EndDate="2025-01-01T00:00:00"/>
 +
                    </Tourist>
 +
                  </Tourists>
 +
                <AdditionalParams>
 +
              <ParameterPair Key="PcnId">
 +
                  <Value xsi:type="xsd:int">116</Value>
 +
              </ParameterPair>
 +
             </AdditionalParams>
 +
            <TourOperatorID>0</TourOperatorID>
 +
            <TourOperatorCode>0</TourOperatorCode>
 +
            <ID>0</ID>
 +
            <ExternalID>0</ExternalID>
 
         </reserv>
 
         </reserv>
 
       </CreateReservation>
 
       </CreateReservation>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Возвращаемый результат метода CreateReservation
+
Возвращаемый результат метода CreateReservation:
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
  
Строка 374: Строка 914:
 
       <CreateReservationResponse xmlns="http://www.megatec.ru/">
 
       <CreateReservationResponse xmlns="http://www.megatec.ru/">
 
         <CreateReservationResult HasInvoices="false">
 
         <CreateReservationResult HasInvoices="false">
            <agentDiscount>0</agentDiscount>
 
 
             <Rate>
 
             <Rate>
 
               <Name>EU</Name>
 
               <Name>EU</Name>
               <ID>1</ID>
+
               <ID>-13</ID>
              <Description/>
 
              <NameLat/>
 
              <Code>EU</Code>
 
              <CodeLat/>
 
              <Unicode/>
 
 
               <IsMain>false</IsMain>
 
               <IsMain>false</IsMain>
 
               <IsNational>false</IsNational>
 
               <IsNational>false</IsNational>
Строка 388: Строка 922:
 
             <TouristServices>
 
             <TouristServices>
 
               <TouristService>
 
               <TouristService>
                   <ID>0</ID>
+
                   <ID>368194</ID>
                   <Name/>
+
                   <TouristRoomNumber>1</TouristRoomNumber>
                   <TouristID>-1</TouristID>
+
                  <ServiceID>168804</ServiceID>
                   <ServiceID>-1</ServiceID>
+
                   <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368195</ID>
 +
                  <TouristRoomNumber>1</TouristRoomNumber>
 +
                  <ServiceID>168804</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                   <ID>368197</ID>
 +
                  <ServiceID>168805</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368196</ID>
 +
                  <ServiceID>168805</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368199</ID>
 +
                  <ServiceID>168806</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368198</ID>
 +
                  <ServiceID>168806</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368203</ID>
 +
                  <ServiceID>168808</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368202</ID>
 +
                  <ServiceID>168808</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368201</ID>
 +
                  <ServiceID>168807</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368200</ID>
 +
                  <ServiceID>168807</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368205</ID>
 +
                  <TouristRoomNumber>1</TouristRoomNumber>
 +
                  <ServiceID>168803</ServiceID>
 +
                  <TouristID>88549</TouristID>
 
               </TouristService>
 
               </TouristService>
 
               <TouristService>
 
               <TouristService>
                   <ID>0</ID>
+
                   <ID>368204</ID>
                   <Name/>
+
                   <TouristRoomNumber>1</TouristRoomNumber>
                   <TouristID>-1</TouristID>
+
                   <ServiceID>168803</ServiceID>
                   <ServiceID>-2</ServiceID>
+
                   <TouristID>88548</TouristID>
 
               </TouristService>
 
               </TouristService>
 
             </TouristServices>
 
             </TouristServices>
 
             <Services>
 
             <Services>
 
               <Service xsi:type="HotelService">
 
               <Service xsi:type="HotelService">
                   <ExternalID>163759</ExternalID>
+
                   <ExternalID>-1</ExternalID>
                   <Price>0</Price>
+
                   <Price>3850</Price>
 
                   <NMen>2</NMen>
 
                   <NMen>2</NMen>
                   <PartnerID>0</PartnerID>
+
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                   <PartnerID>1035</PartnerID>
 
                   <Quota>NotChecked</Quota>
 
                   <Quota>NotChecked</Quota>
 
                   <PacketKey>0</PacketKey>
 
                   <PacketKey>0</PacketKey>
 
                   <AdditionalParams>
 
                   <AdditionalParams>
 
                     <ParameterPair Key="ContractPrKey">
 
                     <ParameterPair Key="ContractPrKey">
                         <Value xsi:type="xsd:int">1035</Value>
+
                         <Value xsi:type="xsd:int">2930</Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
                     <ParameterPair Key="CityID">
+
                     <ParameterPair Key="CancellationPolicy">
                         <Value xsi:type="xsd:int">52</Value>
+
                         <Value xsi:type="ArrayOfPenaltyCost">
                    </ParameterPair>
+
                          <PenaltyCost>
                    <ParameterPair Key="isSuccess">
+
                              <PolicyKey>-1</PolicyKey>
                        <Value xsi:type="xsd:boolean">true</Value>
+
                              <DateFrom xsi:nil="true"/>
 +
                              <DateTo>2022-08-15T00:00:00</DateTo>
 +
                              <PenaltyValue>0</PenaltyValue>
 +
                              <IsPercent>false</IsPercent>
 +
                              <TotalPenalty>0</TotalPenalty>
 +
                              <Description>If canceled before 15.08.2022, no penalty Penalty value is 0.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>125</PolicyKey>
 +
                              <DateFrom>2022-08-15T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-16T23:59:59</DateTo>
 +
                              <PenaltyValue>6</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>231</TotalPenalty>
 +
                              <Description>If canceled in period 15.08.2022 - 16.08.2022, the penalty will be  6.00 % of the cost of accommodation Penalty value is 231.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>200</PolicyKey>
 +
                              <DateFrom>2022-08-17T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-17T23:59:59</DateTo>
 +
                              <PenaltyValue>11</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>423.5</TotalPenalty>
 +
                              <Description>If canceled in period 17.08.2022 - 17.08.2022, the penalty will be  11.00 % of the cost of accommodation Penalty value is 423.50 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>123</PolicyKey>
 +
                              <DateFrom>2022-08-18T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-19T23:59:59</DateTo>
 +
                              <PenaltyValue>20</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>770</TotalPenalty>
 +
                              <Description>If canceled in period 18.08.2022 - 19.08.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>208</PolicyKey>
 +
                              <DateFrom>2022-08-20T00:00:00</DateFrom>
 +
                              <DateTo xsi:nil="true"/>
 +
                              <PenaltyValue>20</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>770</TotalPenalty>
 +
                              <Description>If canceled from 20.08.2022, the penalty will be 20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
 +
                          </PenaltyCost>
 +
                        </Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                   </AdditionalParams>
 
                   </AdditionalParams>
                   <Tourists>
+
                   <DetailBrutto>(550,00[kolesnyk2/kolesnyk2]*7) * 1 room = 3850,00</DetailBrutto>
                    <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-09-10T00:00:00" FirstNameLat="Fabian" LastNameLat="" SurNameLat="Ruis" AgeType="Adult" Citizen="" IsMain="true" ExternalID="85396" ID="-1" Phone="+78888888888" Email="fabian@yandex.ru">
 
                        <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                        <ForeignPassport IssuedBy="" Serie="3333" Number="333333" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                    </Tourist>
 
                    <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-02-11T00:00:00" FirstNameLat="Alberto" LastNameLat="" SurNameLat="Morena" AgeType="Adult" Citizen="" IsMain="false" ExternalID="85397" ID="-1" Phone="+79999999999" Email="a.morena@yandex.ru">
 
                        <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
 
                        <ForeignPassport IssuedBy="" Serie="1330" Number="167812" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                    </Tourist>
 
                  </Tourists>
 
                  <DetailNetto/>
 
                  <DetailBrutto/>
 
 
                   <Notes/>
 
                   <Notes/>
                   <Name>HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB</Name>
+
                   <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                   <StartDate>2021-06-15T00:00:00</StartDate>
+
                   <StartDate>2022-08-20T00:00:00</StartDate>
                   <StartDay>0</StartDay>
+
                   <StartDay xsi:nil="true"/>
                   <Duration>6</Duration>
+
                   <Duration>8</Duration>
 
                   <RateBrutto>EU</RateBrutto>
 
                   <RateBrutto>EU</RateBrutto>
                   <Brutto>0</Brutto>
+
                   <Brutto>3850</Brutto>
                  <RateNetto>EU</RateNetto>
 
                  <Netto>0</Netto>
 
 
                   <ServiceClassID>0</ServiceClassID>
 
                   <ServiceClassID>0</ServiceClassID>
 
                   <TouristCount>2</TouristCount>
 
                   <TouristCount>2</TouristCount>
                   <ID>-1</ID>
+
                   <ID>168804</ID>
 +
                  <Status>
 +
                    <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 
                   <Hotel>
 
                   <Hotel>
                     <Name>Acropol Hotel (Delphi) 3 stars (B)</Name>
+
                     <Name>Red</Name>
                     <ID>1978</ID>
+
                     <ID>2930</ID>
                     <Description>3 stars (B)  (Greece\Delphi\Delphi)</Description>
+
                     <Description>4 stars (A)  (Ukraine\Kiev\Kiev)</Description>
                    <NameLat/>
+
                     <Code>Red</Code>
                     <Code/>
 
                    <CodeLat/>
 
                    <Unicode/>
 
 
                     <City>
 
                     <City>
                         <Name/>
+
                         <Name>Kiev</Name>
                         <ID>52</ID>
+
                         <ID>80</ID>
                         <Description/>
+
                         <Code>IEV</Code>
                         <NameLat/>
+
                         <Country>
                        <Code/>
+
                          <Name>Ukraine</Name>
                        <CodeLat/>
+
                          <ID>6</ID>
                         <Unicode/>
+
                          <IsIncoming>true</IsIncoming>
                         <CountryID>4</CountryID>
+
                         </Country>
                         <RegionID>0</RegionID>
+
                         <CountryID>6</CountryID>
 +
                         <RegionID>28</RegionID>
 
                     </City>
 
                     </City>
                     <RegionID>0</RegionID>
+
                     <RegionID>28</RegionID>
 
                     <PriceType>None</PriceType>
 
                     <PriceType>None</PriceType>
                     <CountCosts>0</CountCosts>
+
                     <CountCosts xsi:nil="true"/>
                     <CityID>52</CityID>
+
                     <CityID>80</CityID>
                     <HotelCategoryID>0</HotelCategoryID>
+
                     <HotelCategoryID>4</HotelCategoryID>
 
                   </Hotel>
 
                   </Hotel>
 
                   <Room>
 
                   <Room>
                     <RoomTypeID>436</RoomTypeID>
+
                    <RoomType>
                     <RoomCategoryID>47</RoomCategoryID>
+
                        <Name/>
 +
                        <ID>3</ID>
 +
                        <Code>Double Room</Code>
 +
                        <Places>2</Places>
 +
                        <ExPlaces>2</ExPlaces>
 +
                        <PrintOrder>0</PrintOrder>
 +
                    </RoomType>
 +
                     <RoomTypeID>3</RoomTypeID>
 +
                    <RoomCategory>
 +
                        <Name>Jakuzzi</Name>
 +
                        <ID>20</ID>
 +
                        <MainPlaces>0</MainPlaces>
 +
                        <ExtraPlaces>0</ExtraPlaces>
 +
                        <IsMain>false</IsMain>
 +
                    </RoomCategory>
 +
                     <RoomCategoryID>20</RoomCategoryID>
 +
                    <RoomAccomodation>
 +
                        <Name>2AD</Name>
 +
                        <ID>5558</ID>
 +
                        <PerRoom>false</PerRoom>
 +
                        <AdultMainPalces>0</AdultMainPalces>
 +
                        <ChildMainPalces>0</ChildMainPalces>
 +
                        <AdultExtraPalces>0</AdultExtraPalces>
 +
                        <ChildExtraPalces>0</ChildExtraPalces>
 +
                        <MainPlaces>2</MainPlaces>
 +
                        <ExtraPlaces>0</ExtraPlaces>
 +
                        <IsMain>true</IsMain>
 +
                        <AgeFrom>0</AgeFrom>
 +
                        <AgeTo>0</AgeTo>
 +
                        <Age2From>0</Age2From>
 +
                        <Age2To>0</Age2To>
 +
                    </RoomAccomodation>
 
                     <RoomAccomodationID>5558</RoomAccomodationID>
 
                     <RoomAccomodationID>5558</RoomAccomodationID>
 
                     <ID>0</ID>
 
                     <ID>0</ID>
Строка 477: Строка 1135:
 
                   <RoomID>0</RoomID>
 
                   <RoomID>0</RoomID>
 
                   <PansionID>3</PansionID>
 
                   <PansionID>3</PansionID>
 +
              </Service>
 +
              <Service xsi:type="TransferService">
 +
                  <ExternalID>-2</ExternalID>
 +
                  <Price>240</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="CityToKey">
 +
                        <Value xsi:type="xsd:int">80</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointFromId">
 +
                        <Value xsi:type="xsd:int">1000028</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointToId">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1171</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(120,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 240,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
 +
                  <StartDate>2022-08-20T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>240</Brutto>
 +
                  <ServiceClassID>2</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168805</ID>
 +
                  <Status>
 +
                    <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
 +
                    <ID>2</ID>
 +
                  </Status>
 +
                  <Transfer>
 +
                    <AdditionalParams>
 +
                        <ParameterPair Key="SlKey">
 +
                          <Value xsi:type="xsd:int">1</Value>
 +
                        </ParameterPair>
 +
                    </AdditionalParams>
 +
                    <Name/>
 +
                    <ID>606</ID>
 +
                  </Transfer>
 +
                  <Transport>
 +
                    <Name>Mini Bus</Name>
 +
                    <ID>4</ID>
 +
                  </Transport>
 +
                  <PointToId>2930</PointToId>
 +
                  <CityKey>80</CityKey>
 +
                  <PointToName>Red</PointToName>
 +
                  <PointFromId>1000028</PointFromId>
 +
                  <PointFromName>Kiev ap</PointFromName>
 +
              </Service>
 +
              <Service xsi:type="TransferService">
 +
                  <ExternalID>-3</ExternalID>
 +
                  <Price>60</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="CityToKey">
 +
                        <Value xsi:type="xsd:int">80</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointFromId">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointToId">
 +
                        <Value xsi:type="xsd:int">1000028</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1171</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(15,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 30,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
 +
                  <StartDate>2022-08-27T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>60</Brutto>
 +
                  <ServiceClassID>2</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168806</ID>
 +
                  <Status>
 +
                    <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
 +
                    <ID>2</ID>
 +
                  </Status>
 +
                  <Transfer>
 +
                    <AdditionalParams>
 +
                        <ParameterPair Key="SlKey">
 +
                          <Value xsi:type="xsd:int">2</Value>
 +
                        </ParameterPair>
 +
                    </AdditionalParams>
 +
                    <Name/>
 +
                    <ID>608</ID>
 +
                  </Transfer>
 +
                  <Transport>
 +
                    <Name>Group</Name>
 +
                    <ID>2</ID>
 +
                  </Transport>
 +
                  <PointToId>1000028</PointToId>
 +
                  <CityKey>80</CityKey>
 +
                  <PointToName>Kiev ap</PointToName>
 +
                  <PointFromId>2930</PointFromId>
 +
                  <PointFromName>Red</PointFromName>
 +
              </Service>
 +
              <Service xsi:type="ExcursionService">
 +
                  <ExternalID>-5</ExternalID>
 +
                  <Price>120</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1035</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(50,00(0-120)[test_exc] * 2 pax) = 100,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>EXC::Kiev City</Name>
 +
                  <StartDate>2022-08-23T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>120</Brutto>
 +
                  <ServiceClassID>1</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168808</ID>
 +
                  <Status>
 +
                    <Name>EXC::Kiev City</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 +
                  <CityKey>80</CityKey>
 +
                  <ExcursionID>714</ExcursionID>
 +
              </Service>
 +
              <Service xsi:type="ExtraService">
 +
                  <ExternalID xsi:nil="true"/>
 +
                  <Price>200</Price>
 +
                  <NMen>2</NMen>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="HotelDlKey">
 +
                        <Value xsi:type="xsd:int">168804</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1035</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(100,00(0-120)[Регресс] * 2 pax * 1 days) = 200,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 +
                  <StartDate>2022-08-23T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>200</Brutto>
 +
                  <ServiceClassID>79</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168807</ID>
 +
                  <Status>
 +
                    <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 +
                  <CityKey>80</CityKey>
 +
                  <IsPackage>false</IsPackage>
 +
                  <Code>694</Code>
 +
                  <HasDuration>false</HasDuration>
 +
              </Service>
 +
              <Service xsi:type="ExtraService">
 +
                  <ExternalID xsi:nil="true"/>
 +
                  <Price>478</Price>
 +
                  <NMen>2</NMen>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="HotelDlKey">
 +
                        <Value xsi:type="xsd:int">168804</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(239,00(0-120)[тестэкстрарэд220822] * 2 pax * 1 days) = 478,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 +
                  <StartDate>2022-08-22T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>478</Brutto>
 +
                  <ServiceClassID>102</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168803</ID>
 +
                  <Status>
 +
                    <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 +
                  <CityKey>80</CityKey>
 +
                  <IsPackage>false</IsPackage>
 +
                  <Code>713</Code>
 +
                  <HasDuration>false</HasDuration>
 
               </Service>
 
               </Service>
 
             </Services>
 
             </Services>
 
             <ID>-1</ID>
 
             <ID>-1</ID>
             <Name>MT110615A0J</Name>
+
             <Name>MT140101A62</Name>
            <Netto>0</Netto>
+
             <Brutto>4948</Brutto>
             <Brutto>0</Brutto>
+
             <CountryID>6</CountryID>
             <CountryID>4</CountryID>
+
             <CityID>80</CityID>
             <CityID>52</CityID>
+
             <PartnerID>1035</PartnerID>
             <PartnerID>0</PartnerID>
 
            <AgentDiscount>0</AgentDiscount>
 
 
             <Status>WaitingConfirmation</Status>
 
             <Status>WaitingConfirmation</Status>
             <StartDate>2021-06-15T00:00:00</StartDate>
+
             <StartDate>2022-08-20T00:00:00</StartDate>
             <EndDate>2021-06-21T00:00:00</EndDate>
+
             <EndDate>2022-08-27T00:00:00</EndDate>
             <Duration>6</Duration>
+
             <Duration>7</Duration>
             <CreationDate>2021-06-30T15:50:57.44</CreationDate>
+
             <CreationDate>2022-03-04T16:56:48.953</CreationDate>
             <CreatorID>0</CreatorID>
+
             <CreatorID>101</CreatorID>
 
             <Tourists>
 
             <Tourists>
               <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-09-10T00:00:00" FirstNameLat="Fabian" LastNameLat="" SurNameLat="Ruis" AgeType="Adult" Citizen="" IsMain="true" ExternalID="85396" ID="-1" Phone="+78888888888" Email="fabian@yandex.ru">
+
               <Tourist Sex="Male" BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ID="88548" Phone="89610553087" Email="dfj@ety.ua">
                   <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
+
                   <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
                   <ForeignPassport IssuedBy="" Serie="3333" Number="333333" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
+
                   <ExternalID>0</ExternalID>
 
               </Tourist>
 
               </Tourist>
               <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-02-11T00:00:00" FirstNameLat="Alberto" LastNameLat="" SurNameLat="Morena" AgeType="Adult" Citizen="" IsMain="false" ExternalID="85397" ID="-1" Phone="+79999999999" Email="a.morena@yandex.ru">
+
               <Tourist Sex="Male" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" IsMain="false" ID="88549" Phone="" Email="">
                   <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2021-06-01T00:00:00+03:00"/>
+
                   <ForeignPassport Serie="" Number="" EndDate="2025-01-01T00:00:00"/>
                   <ForeignPassport IssuedBy="" Serie="1330" Number="167812" IssueDate="2021-06-01T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
+
                   <ExternalID>0</ExternalID>
 
               </Tourist>
 
               </Tourist>
 
             </Tourists>
 
             </Tourists>
             <OwnerID>0</OwnerID>
+
             <OwnerID xsi:nil="true"/>
             <TourOperatorID>0</TourOperatorID>
+
             <TourOperatorID>-1</TourOperatorID>
             <TourOperatorCode/>
+
             <TourOperatorCode>0</TourOperatorCode>
             <ExternalID>35872</ExternalID>
+
             <ExternalID>37263</ExternalID>
 
             <AdditionalParams>
 
             <AdditionalParams>
 
               <ParameterPair Key="PcnId">
 
               <ParameterPair Key="PcnId">
Строка 515: Строка 1408:
 
               </ParameterPair>
 
               </ParameterPair>
 
               <ParameterPair Key="ReservationCost">
 
               <ParameterPair Key="ReservationCost">
                   <Value xsi:type="xsd:double">600</Value>
+
                   <Value xsi:type="xsd:double">4948</Value>
 
               </ParameterPair>
 
               </ParameterPair>
 
             </AdditionalParams>
 
             </AdditionalParams>
Строка 522: Строка 1415:
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
 
  
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 528: Строка 1420:
 
</div></div><br />
 
</div></div><br />
  
===Get reservation (получение путевки по ключу)===
+
===GetReservation (Получение путевки по ключу)===
Метод производит получение объекта Reservation, представляющего путевку с услугами, туристами и т.д.<br />
+
Метод производит получение информации по путевке по ключу путевки.<br />
 
Принимаемые параметры запроса ( * – обязательный):
 
Принимаемые параметры запроса ( * – обязательный):
* '''Guid'''*– идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:Описание методов#Connect (получение аутентификационного токена)|Connect]])
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''DgKey'''* - ключ путевки.
+
* '''DgKey *''' ключ путевки  
Возвращаемый результат:
+
Возвращаемый результат:<br />
* '''HasInvoices''' – выставлен ли счет по путевке ('''true''' – выставлен, '''false''' – не выставлен)
+
* '''HasInvoices''' – выставлен ли счет по путевке  
** '''True''' – счет выставлен
+
** '''true''' – счет выставлен
** '''False''' – счет не выставлен
+
** '''false''' – счет не выставлен
* '''AgentDiscount''' - скидка агента
+
* '''AgentDiscount''' скидка агента
 
* '''Rate''' – валюта путевки
 
* '''Rate''' – валюта путевки
 
** '''Name''' – название валюты
 
** '''Name''' – название валюты
 
** '''ID''' – идентификатор валюты
 
** '''ID''' – идентификатор валюты
 
** '''Description''' – описание валюты
 
** '''Description''' – описание валюты
** '''NameLat''' – название валюты латиницей
+
** '''NameLat''' – наименование валюты латиницей
 
** '''Code''' – код валюты
 
** '''Code''' – код валюты
** '''CodeLat''' - код валюты латиницей
+
** '''CodeLat''' код валюты латиницей
 
** '''Unicode''' – код ISO для валюты
 
** '''Unicode''' – код ISO для валюты
** '''IsMain''' – является ли валюта главной ('''true''' – является, '''false''' – не является)  
+
** '''IsMain''' – является ли валюта главной ('''true''' – является, '''false''' – не является)
 
** '''IsNational''' – является ли валюта национальной ('''true''' – является, '''false''' – не является)
 
** '''IsNational''' – является ли валюта национальной ('''true''' – является, '''false''' – не является)
 
* '''TouristServices''' – массив услуг, используемых туристами
 
* '''TouristServices''' – массив услуг, используемых туристами
 
** '''TouristService''' – отдельная услуга, используемая туристом
 
** '''TouristService''' – отдельная услуга, используемая туристом
*** '''ID''' – идентификатор услуги используемой туристом
+
*** '''ID''' – идентификатор услуги, используемой туристом
*** '''Name''' – наименование услуги используемой туристом
+
*** '''TouristRoomNumber''' – номер комнаты
 
*** '''TouristID''' – идентификатор туриста (''-1'' для новой путевки)
 
*** '''TouristID''' – идентификатор туриста (''-1'' для новой путевки)
 
*** '''ServiceID''' – идентификатор услуги (''-1'' для новой путевки)
 
*** '''ServiceID''' – идентификатор услуги (''-1'' для новой путевки)
 
* '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')
 
* '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')
** '''Service''' – общие параметры, имеющиеся у всех услуг по путевке
+
** '''HotelService''' – параметры для услуги типа HotelService
*** '''Type''' – тип услуги
+
*** '''ExternalID''' –  не используется
*** '''ExternalID''' –  идентификатор путевки из системы создающей бронь
 
 
*** '''Price''' – цена брутто
 
*** '''Price''' – цена брутто
 
*** '''NMen''' – количество взрослых туристов  
 
*** '''NMen''' – количество взрослых туристов  
*** '''Partner''' – параметры партнера по услуге
+
*** '''Partner''' – массив данных партнера
 
**** '''Name''' – наименование партнера
 
**** '''Name''' – наименование партнера
 
**** '''ID''' – идентификатор партнера
 
**** '''ID''' – идентификатор партнера
 
**** '''Description''' – описание партнера
 
**** '''Description''' – описание партнера
**** '''NameLat''' - наименование партнера латиницей
+
**** '''NameLat''' наименование партнера латиницей
**** '''CodeLat''' - код партнера латиницей
+
**** '''Code''' – код партнера
 +
**** '''CodeLat''' код партнера латиницей
 
**** '''Unicode''' – код ISO партнера
 
**** '''Unicode''' – код ISO партнера
**** '''PartnersGroupID''' - идентификатор группы партнера
+
**** '''PartnersGroupID''' идентификатор группы партнера
**** '''FullName''' - полное наименование  
+
**** '''FullName''' полное наименование партнера
**** '''Fax''' – номер факса
+
**** '''Fax''' – факс партнера
**** '''Address''' – адрес расположения партнера
+
**** '''Address''' – адрес партнера
**** '''ZIP''' – почтовый код
+
**** '''Zip''' – почтовый код партнера
**** '''Email''' – электронная почта
+
**** '''Email''' – email партнера
**** '''Phones''' – телефон
+
**** '''Phones''' – телефон партнера
*** '''PartnerID''' – идентификатор поставщика услуги(можно передать 0 – тогда он подберется автоматически расчетчиком)
+
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 
*** '''PacketKey''' – идентификатор пакета услуги
 
*** '''PacketKey''' – идентификатор пакета услуги
*** '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
+
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
+
**** '''ParameterPair Key''' – ключ
<div class="mw-collapsible-content">
+
***** '''Value''' – значение
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
+
****** '''PenaltyCost''' - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
<syntaxhighlight lang="java" enclose="div">
+
******* '''PolicyKey''' - ключ условия по штрафу в БД (''-1'' - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
<AdditionalParams> –  массив дополнительных параметров
+
******* '''DateFrom''' дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть ''null'', обычно для "псевдоусловия": "без штрафа до...")  
  <ParameterPair Key="ContractPrKey"> - первая пара параметров, ключ ContractPrKey – ключ сервис-провайдера
+
******* '''DateTo''' - дата окончания (может быть ''null'', для "псевдоусловия" : "100% после ...")  
    <Value xsi:type="xsd:int">1035</Value> - значение
+
******* '''PenaltyValue''' - размер штрафа
  </ParameterPair>
+
******* '''IsPercent''' - процент, указывающий,  что штраф в "%" (''true'') или в "ночах" (''false'')
  <ParameterPair Key="CancellationPolicy">- вторая пара параметров, ключ CancellationPolicy – ключ политики отмены
+
******* '''TotalPenalty''' - полная сумма штрафа
    <Value xsi:type="xsd:base64Binary">77u/PFBvbGljaWVzPjxQbc1BlcmNlbnQ9IlRydWUiIC8+PC9Qb2xpY2llcz4=</Value> - значение
+
******* '''Description''' - описание
  </ParameterPair>
+
*** '''DetailBrutto''' – подробности брутто
</AdditionalParams>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</div></div><br />
 
 
 
*** '''Tourists''' – массив туристов по услуге
 
**** '''Tourist''' – турист, массив данных о туристе
 
*****'''Name''' – наименование туриста
 
***** '''Sex''' – пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 
***** '''FirstName''' – имя туриста
 
***** '''LastName''' – фамилия туриста
 
***** '''SurName''' – отчество туриста
 
***** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
***** '''FirstNameLat''' – имя туриста латиницей
 
***** '''LastNameLat''' – фамилия туриста латиницей
 
***** '''SurNameLat''' – отчество туриста латиницей
 
***** '''AgeType''' – тип возраста (ключ = значение: '''Adult''' = ''0'', '''Child''' = ''1'', '''Infant''' = ''2'')
 
***** '''Citizen''' – гражданство
 
***** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 
***** '''ExternalID''' – идентификатор путевки из системы, создающей бронь
 
***** '''ID''' – идентификатор туриста (''-1'' для новой путевки)
 
***** '''Phone''' – телефон туриста (задается по шаблону)
 
***** '''Email''' – адрес электронной почты туриста
 
***** '''LocalPassport''' – гражданский паспорт
 
****** '''IssueDBy''' - кем выдан паспорта
 
****** '''Serie''' - серия паспорта
 
****** '''Number''' - номер паспорта
 
****** '''Issuedate''' - дата выдачи паспорта
 
****** '''EndDate''' - дата окончания действия паспорта
 
***** '''ForeignPassport''' – иностранный паспорт
 
****** '''IssueDBy''' - кем выдан паспорта
 
****** '''Serie''' - серия паспорта
 
****** '''Number''' - номер паспорта
 
****** '''Issuedate''' - дата выдачи паспорта
 
****** '''EndDate''' - дата окончания действия паспорта
 
 
*** '''Notes''' – примечания к услуге
 
*** '''Notes''' – примечания к услуге
 
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
*** '''EndDate''' – дата окончания услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
+
*** '''StartDay''' – не используется
*** '''StartDay''' – день предоставления услуги
 
 
*** '''Duration''' – продолжительность услуги
 
*** '''Duration''' – продолжительность услуги
 
*** '''RateBrutto''' – валюта брутто
 
*** '''RateBrutto''' – валюта брутто
 
*** '''Brutto''' – цена брутто
 
*** '''Brutto''' – цена брутто
*** '''RateNetto''' – валюта нетто
 
*** '''Netto''' – цена нетто
 
 
*** '''ServiceClassID''' – идентификатор класса услуги
 
*** '''ServiceClassID''' – идентификатор класса услуги
 
*** '''TouristCount''' – количество туристов, пользующихся услугой
 
*** '''TouristCount''' – количество туристов, пользующихся услугой
 
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
*** '''Status''' – статус услуги
+
*** '''Status''' – статус услуги  
 
**** '''Name''' – наименование статуса услуги
 
**** '''Name''' – наименование статуса услуги
 
**** '''ID''' – идентификатор статуса услуги
 
**** '''ID''' – идентификатор статуса услуги
**** '''Description''' – описание статуса услуги
+
**** '''Description''' – описание статуса услуги
**** '''NameLat''' - наименование статуса услуги латиницей
+
**** '''NameLat''' наименование статуса услуги латиницей
**** '''Code''' - код статуса услуги
+
**** '''Code''' код статуса услуги
**** '''CodeLat''' - код статуса услуги латиницей
+
**** '''CodeLat''' код статуса услуги латиницей
**** '''Unicode''' – код ISO статуса услуги
+
**** '''Unicode''' – код ISO статуса услуги
*** '''Hotel''' – отель
+
*** '''Hotel''' – массив данных отель
 
**** '''Name''' – наименование отеля
 
**** '''Name''' – наименование отеля
 
****'''ID''' – идентификатор отеля
 
****'''ID''' – идентификатор отеля
 
**** '''Description''' – описание отеля
 
**** '''Description''' – описание отеля
**** '''NameLat''' - наименование отеля латиницей
+
**** '''NameLat''' наименование отеля латиницей
**** '''Code''' - код отеля
+
**** '''Code''' код отеля
**** '''CodeLat''' - код отеля латиницей
+
**** '''CodeLat''' код отеля латиницей
 
**** '''Unicode''' – код ISO отеля
 
**** '''Unicode''' – код ISO отеля
**** '''City''' – город
+
**** '''City''' – массив данных город
***** '''Name''' – наименование города
+
***** '''Name''' – наименование города
 
***** '''ID'''  – идентификатор города
 
***** '''ID'''  – идентификатор города
 
***** '''Description''' – описание города
 
***** '''Description''' – описание города
***** '''NameLat''' - наименование города латиницей
+
***** '''NameLat''' наименование города латиницей
***** '''Code''' - код ujhjlf
+
***** '''Code''' код города
***** '''CodeLat''' - код города латиницей
+
***** '''CodeLat''' код города латиницей
 
***** '''Unicode''' – код ISO города
 
***** '''Unicode''' – код ISO города
***** '''Country''' – страна
+
***** '''Country''' – массив данных страна
****** '''Name''' – наименование страны
+
****** '''Name''' – наименование страны
 
****** '''ID'''  – идентификатор страны
 
****** '''ID'''  – идентификатор страны
 
****** '''Description''' – описание страны
 
****** '''Description''' – описание страны
****** '''NameLat''' - наименование страны латиницей
+
****** '''NameLat''' наименование страны латиницей
****** '''Code''' - код страны
+
****** '''Code''' код страны
****** '''CodeLat''' - код страны латиницей
+
****** '''CodeLat''' код страны латиницей
 
****** '''Unicode''' – код ISO страны
 
****** '''Unicode''' – код ISO страны
****** '''IsIncoming''' – страна въездная
+
****** '''IsIncoming''' – параметр для внутреннего использования
***** '''CountryID''' – идентификатор cnhfys
+
***** '''CountryID''' – идентификатор страны в массиве данных город
 +
***** '''RegionID''' – идентификатор региона в массиве данных город
 
**** '''RegionID''' – идентификатор региона
 
**** '''RegionID''' – идентификатор региона
 
**** '''PriceType''' – наличие цен ('''PerPerson''' = 0, '''PerRoom''' = 1, '''All''' = 2, '''None'''= 1000)
 
**** '''PriceType''' – наличие цен ('''PerPerson''' = 0, '''PerRoom''' = 1, '''All''' = 2, '''None'''= 1000)
Строка 676: Строка 1531:
 
**** '''CityID''' – идентификатор города
 
**** '''CityID''' – идентификатор города
 
**** '''HotelCategoryID''' – идентификатор категории отеля
 
**** '''HotelCategoryID''' – идентификатор категории отеля
*** '''Room''' – комната
+
*** '''Room''' – массив данных комната
**** '''RoomType''' – тип комнаты
+
**** '''RoomType''' – массив данных тип комнаты
***** '''Name''' – наименование комнаты
+
***** '''Name''' – наименование типа комнаты
***** '''ID'''  – идентификатор комнаты
+
***** '''ID'''  – идентификатор типа комнаты
***** '''Description''' – описание комнаты
+
***** '''Description''' – описание типа комнаты
***** '''NameLat''' - наименование комнаты латиницей
+
***** '''NameLat''' наименование типа комнаты латиницей
***** '''Code''' - код комнаты
+
***** '''Code''' код типа комнаты
***** '''CodeLat''' - код комнаты латиницей
+
***** '''CodeLat''' код типа комнаты латиницей
***** '''Unicode''' – код ISO комнаты
+
***** '''Unicode''' – код ISO типа комнаты
 
***** '''Places''' – количество мест в номере
 
***** '''Places''' – количество мест в номере
 
***** '''ExPlaces''' – дополнительные места в номере
 
***** '''ExPlaces''' – дополнительные места в номере
 
***** '''PrintOrder''' – порядковый номер для печати в отчетах
 
***** '''PrintOrder''' – порядковый номер для печати в отчетах
 
**** '''RoomTypeID''' – идентификатор типа комнаты
 
**** '''RoomTypeID''' – идентификатор типа комнаты
**** '''RoomCategory''' – категория комнаты
+
**** '''RoomCategory''' – массив данных категории номера
***** '''Name''' – наименование размещения
+
***** '''Name''' – наименование категории номера
***** '''ID'''  – идентификатор размещения
+
***** '''ID'''  – идентификатор категории номера
***** '''Description''' – описание размещения
+
***** '''Description''' – описание категории номера
***** '''NameLat''' - наименование размещения латиницей
+
***** '''NameLat''' наименование категории номера латиницей
***** '''Code''' - код размещения
+
***** '''Code''' код категории номера
***** '''CodeLat''' - код размещения латиницей
+
***** '''CodeLat''' код категории номера латиницей
***** '''Unicode''' – код ISO размещения
+
***** '''Unicode''' – код ISO категории номера
***** '''MainPlaces''' – общее количество основных мест
+
***** '''MainPlaces''' – количество основных мест
***** '''ExtraPlaces''' – общее количество дополнительных мест
+
***** '''ExtraPlaces''' – количество дополнительных мест
***** '''IsMain''' – устанавливает признак главного туриста по путевке ('''False''', '''True''' – турист главный)
+
***** '''IsMain''' – параметр для внутреннего использования
 
**** '''RoomCategoryID''' – идентификатор категории комнат
 
**** '''RoomCategoryID''' – идентификатор категории комнат
**** '''RoomAccomodation''' – размещение
+
**** '''RoomAccomodation''' – массив данных размещения
***** '''Name''' – наименование размещения
+
***** '''Name''' – наименование размещения
 
***** '''ID'''  – идентификатор размещения
 
***** '''ID'''  – идентификатор размещения
 
***** '''Description''' – описание размещения
 
***** '''Description''' – описание размещения
***** '''NameLat''' - наименование размещения латиницей
+
***** '''NameLat''' наименование размещения латиницей
***** '''Code''' - код размещения
+
***** '''Code''' код размещения
***** '''CodeLat''' - код размещения латиницей
+
***** '''CodeLat''' код размещения латиницей
 
***** '''Unicode''' – код ISO размещения
 
***** '''Unicode''' – код ISO размещения
 
***** '''PerRoom''' – за комнату/за человека
 
***** '''PerRoom''' – за комнату/за человека
***** '''AdultMainPlaces''' – основных мест для взрослых
+
***** '''AdultMainPlaces''' – количество основных мест для взрослых
***** '''ChildMainPlaces''' – основных мест для детей
+
***** '''ChildMainPlaces''' – количество основных мест для детей
***** '''AdultExtraPlaces''' – дополнительных мест для взрослых
+
***** '''AdultExtraPlaces''' – количество дополнительных мест для взрослых
***** '''ChildExtraPlaces''' – дополнительных мест для детей
+
***** '''ChildExtraPlaces''' – количество дополнительных мест для детей
 
***** '''MainPlaces''' – общее количество основных мест
 
***** '''MainPlaces''' – общее количество основных мест
 
***** '''ExtraPlaces''' – общее количество дополнительных мест
 
***** '''ExtraPlaces''' – общее количество дополнительных мест
 +
***** '''IsMain''' – параметр для внутреннего использования
 
***** '''AgeFrom''' – возраст первого ребенка '''от'''
 
***** '''AgeFrom''' – возраст первого ребенка '''от'''
 
***** '''AgeTo''' – возраст первого ребенка '''по'''
 
***** '''AgeTo''' – возраст первого ребенка '''по'''
 
***** '''Age2From''' – возраст второго ребенка '''от'''
 
***** '''Age2From''' – возраст второго ребенка '''от'''
*****'''Age2To''' – возраст второго ребенка '''по'''
+
***** '''Age2To''' – возраст второго ребенка '''по'''
 
**** '''RoomAccomodationID''' – идентификатор типа размещения
 
**** '''RoomAccomodationID''' – идентификатор типа размещения
**** '''ID''' – идентификатор типа комнаты
+
**** '''ID''' – идентификатор комнаты
**** '''Name''' – наименование типа комнаты
+
**** '''Name''' – наименование типа размещения
 
*** '''RoomID''' – идентификатор комнаты
 
*** '''RoomID''' – идентификатор комнаты
 
*** '''PansionID''' – идентификатор типа питания
 
*** '''PansionID''' – идентификатор типа питания
* '''ID''' – идентификатор путевки (если указано ''-1'' – создается новая путевка, если ID путевки из базы данных – перебронирование указанной)
+
** '''TransferService''' – параметры для услуги типа TransferService
* '''Name''' – наименование путевки  
+
*** '''ExternalID''' –  не используется
* '''Netto''' – нетто цена путевки
+
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
***** '''Value''' – значение
 +
******* '''Description''' - описание
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''Transfer''' – массив данных трансфера
 +
**** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
***** '''ParameterPair Key''' – ключ
 +
****** '''Value''' – значение
 +
**** '''Name''' – наименование трансфера
 +
**** '''ID''' – ключ трансфера из таблицы TransferDirecion
 +
**** '''Description''' – описание  трансфера
 +
**** '''NameLat''' – наименование  трансфера латиницей
 +
**** '''Code''' – код  трансфера
 +
**** '''CodeLat''' – код  трансфера латиницей
 +
**** '''Unicode''' – код ISO  трансфера
 +
**** '''PlaceFrom''' – название точки откуда
 +
**** '''PlaceTo''' – название точки куда
 +
**** '''CityID''' – идентификатор города
 +
**** '''RegionID''' – идентификатор региона
 +
*** '''Transport''' – массив данных транспорта
 +
**** '''Name''' – наименование транспорта
 +
**** '''ID''' – идентификатор транспорта
 +
**** '''Description''' – описание  транспорта
 +
**** '''NameLat''' – наименование  транспорта латиницей
 +
**** '''Code''' – код  транспорта
 +
**** '''CodeLat''' – код  транспорта латиницей
 +
**** '''Unicode''' – код ISO транспорта
 +
*** '''PointToID''' – идентификатор точки куда
 +
*** '''CityKey''' – ключ города
 +
*** '''PointToName''' – название точки куда
 +
*** '''PointFromID''' – идентификатор точки откуда
 +
*** '''PointFromName''' – название точки откуда
 +
** '''ExcursionService''' – параметры для услуги типа ExcursionService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
**** '''Value''' – значение
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''CityKey''' – ключ города
 +
*** '''ExcursionID''' – идентификатор экскурсии
 +
** '''ExtraService''' – параметры для услуги типа ExtraService
 +
*** '''ExternalID''' –  не используется
 +
*** '''Price''' – цена брутто
 +
*** '''NMen''' – количество взрослых туристов
 +
*** '''Partner''' – массив данных партнера
 +
**** '''Name''' – наименование партнера
 +
**** '''ID''' – идентификатор партнера
 +
**** '''Description''' – описание партнера
 +
**** '''NameLat''' – наименование партнера латиницей
 +
**** '''Code''' – код партнера
 +
**** '''CodeLat''' – код партнера латиницей
 +
**** '''Unicode''' – код ISO партнера
 +
**** '''PartnersGroupID''' – идентификатор группы партнера
 +
**** '''FullName''' – полное наименование партнера
 +
**** '''Fax''' – факс партнера
 +
**** '''Address''' – адрес партнера
 +
**** '''Zip''' – почтовый код партнера
 +
**** '''Email''' – email партнера
 +
**** '''Phones''' – телефон партнера
 +
*** '''PartnerID''' – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
 +
*** '''Quota''' – услуга на квоте (ключ = значение: '''None''' = 0, '''Yes''' = 1, '''No''' = 2, '''AFew''' = 3, '''Request''' = 4, '''NoFlight''' = 5, '''OnlyAgent''' = 6, '''All''' = 7, '''NotChecked''' = 10)
 +
*** '''PacketKey''' – идентификатор пакета услуги
 +
*** '''AdditionalParams''' – массив дополнительных параметров (представляются в виде пары ключ – значение)
 +
**** '''ParameterPair Key''' – ключ
 +
***** '''Value''' – значение
 +
*** '''DetailBrutto''' – подробности брутто
 +
*** '''Notes''' – примечания к услуге
 +
*** '''Name''' – наименование услуги (пример для услуги отель: ''HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB'')
 +
*** '''StartDate''' – дата предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''StartDay''' – не используется
 +
*** '''Duration''' – продолжительность услуги
 +
*** '''RateBrutto''' – валюта брутто
 +
*** '''Brutto''' – цена брутто
 +
*** '''ServiceClassID''' – идентификатор класса услуги
 +
*** '''TouristCount''' – количество туристов, пользующихся услугой
 +
*** '''ID''' – идентификатор услуги (''-1'' для новой путевки )
 +
*** '''Status''' – статус услуги
 +
**** '''Name''' – наименование статуса услуги
 +
**** '''ID''' – идентификатор статуса услуги
 +
**** '''Description''' – описание  статуса услуги
 +
**** '''NameLat''' – наименование  статуса услуги латиницей
 +
**** '''Code''' – код  статуса услуги
 +
**** '''CodeLat''' – код  статуса услуги латиницей
 +
**** '''Unicode''' – код ISO  статуса услуги
 +
*** '''CityKey''' – ключ города предоставления услуги
 +
*** '''IsPackage''' – признак пакетной услуги
 +
*** '''Code''' – идентификатор услуги
 +
*** '''HasDuration''' – услуга с продолжительностью или без
 +
* '''ID''' – ключ путевки во внешней системе (ключ туроператора)
 +
* '''Name''' – наименование путевки
 
* '''Brutto''' – брутто цена путевки
 
* '''Brutto''' – брутто цена путевки
 
* '''CountryID''' – идентификатор страны путевки
 
* '''CountryID''' – идентификатор страны путевки
Строка 740: Строка 1762:
 
* '''CreatorID''' – идентификатор создателя путевки
 
* '''CreatorID''' – идентификатор создателя путевки
 
* '''Tourists''' – массив туристов по услуге
 
* '''Tourists''' – массив туристов по услуге
** '''Tourist''' – турист, массив данных о туристе
+
** '''Tourist''' – турист
***'''Name''' – наименование туриста
+
*** '''Name''' – имя
*** '''Sex''' – пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
+
*** '''Sex''' – пол (ключ = значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
*** '''FirstName''' – имя туриста  
+
*** '''FirstName''' – имя туриста
*** '''LastName''' – фамилия туриста  
+
*** '''LastName''' – фамилия туриста
*** '''SurName''' – отчество туриста  
+
*** '''SurName''' – отчество туриста
 
*** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
*** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 
*** '''FirstNameLat''' – имя туриста латиницей
 
*** '''FirstNameLat''' – имя туриста латиницей
 
*** '''LastNameLat''' – фамилия туриста латиницей
 
*** '''LastNameLat''' – фамилия туриста латиницей
 
*** '''SurNameLat''' – отчество туриста латиницей
 
*** '''SurNameLat''' – отчество туриста латиницей
*** '''AgeType''' – тип возраста (ключ = значение: '''Adult''' = ''0'', '''Child''' = ''1'', '''Infant''' = ''2'')
+
*** '''AgeType''' – тип возраста ('''Adult''' = 0, '''Child''' = 1, '''Infant''' = 2)
*** '''Citizen''' – гражданство
+
*** '''Citizen''' –не используется
 
*** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 
*** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
*** '''ExternalID''' – идентификатор путевки из системы, создающей бронь
+
*** '''ExternalID''' – параметр для внутреннего использования
*** '''ID''' – идентификатор туриста (''-1'' для новой путевки)
+
*** '''ID''' – идентификатор туриста (''-1'' для новой путевки )
 
*** '''Phone''' – телефон туриста (задается по шаблону)
 
*** '''Phone''' – телефон туриста (задается по шаблону)
 
*** '''Email''' – адрес электронной почты туриста
 
*** '''Email''' – адрес электронной почты туриста
*** '''LocalPassport''' – гражданский паспорт
+
*** '''ForeignPassport''' – иностранный паспорт
**** '''IssuedBy''' - кем выдан паспорт
+
**** '''IssuedBy''' кем выдан
**** '''Serie''' - серия паспорта
+
**** '''Serie''' серия
**** '''Number''' - номер паспорта
+
**** '''Number''' номер
**** '''IssueData''' - дата выдачи паспорта
+
**** '''IssueDate''' – дата выдачи
**** '''EndDate''' - дата окончания действия паспорта
+
**** '''EndDate''' – дата окончания действия
**** '''ForeignPassport''' – иностранный паспорт
+
*** '''ExternalID''' – не используется
**** '''IssueDate''' - дата выдачи паспорта
 
**** '''EndDate''' - дата окончания действия паспорта
 
*** '''ForeignPassport''' – гражданский паспорт
 
**** '''IssuedBy''' - кем выдан паспорт
 
**** '''Serie''' - серия паспорта
 
**** '''Number''' - номер паспорта
 
**** '''IssueData''' - дата выдачи паспорта
 
**** '''EndDate''' - дата окончания действия паспорта
 
**** '''ForeignPassport''' – иностранный паспорт
 
**** '''IssueDate''' - дата выдачи паспорта
 
**** '''EndDate''' - дата окончания действия паспорта
 
 
* '''OwnerID''' – идентификатор создателя путевки
 
* '''OwnerID''' – идентификатор создателя путевки
* '''TourOperatorID''' – идентификатор туроператора
+
* '''ExternalID''' –   ключ путевки в базе данных Interlook
* '''TourOperatorCode''' – код туроператора
+
* '''TourOperatorID''' – ключ путевки во внешней системе (ключ туроператора)
* '''ExternalID''' – идентификатор путевки из системы создающей бронь
+
* '''TourOperatorCode''' – номер из "customer reservation number"
 
* '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 
* '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
** '''ParameterPair''' - ключ
+
** '''ParameterPair Key''' ключ
** '''Value''' - значение
+
** '''Value''' значение
 +
 
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
Строка 793: Строка 1805:
 
       <meg:GetReservation>
 
       <meg:GetReservation>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>d006b1d5-5c8c-41b8-bc7d-faa36f84e764</meg:guid>
+
         <meg:guid>6b311a75-ffa7-428b-8abe-420e9780ed4d</meg:guid>
         <meg:dgKey>35950</meg:dgKey>
+
         <meg:dgKey>37263</meg:dgKey>
 
       </meg:GetReservation>
 
       </meg:GetReservation>
 
   </soapenv:Body>
 
   </soapenv:Body>
Строка 801: Строка 1813:
 
Возвращаемый результат метода GetReservation
 
Возвращаемый результат метода GetReservation
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
 
   <soap:Body>
 
   <soap:Body>
 
       <GetReservationResponse xmlns="http://www.megatec.ru/">
 
       <GetReservationResponse xmlns="http://www.megatec.ru/">
 
         <GetReservationResult HasInvoices="false">
 
         <GetReservationResult HasInvoices="false">
            <agentDiscount>0</agentDiscount>
 
 
             <Rate>
 
             <Rate>
 
               <Name>EU</Name>
 
               <Name>EU</Name>
               <ID>-1</ID>
+
               <ID>-44</ID>
              <Description/>
 
              <NameLat/>
 
              <Code/>
 
              <CodeLat/>
 
              <Unicode/>
 
 
               <IsMain>false</IsMain>
 
               <IsMain>false</IsMain>
 
               <IsNational>false</IsNational>
 
               <IsNational>false</IsNational>
Строка 820: Строка 1825:
 
             <TouristServices>
 
             <TouristServices>
 
               <TouristService>
 
               <TouristService>
                   <ID>359207</ID>
+
                   <ID>368194</ID>
                   <Name/>
+
                   <TouristRoomNumber>1</TouristRoomNumber>
                   <TouristID>85538</TouristID>
+
                  <ServiceID>168804</ServiceID>
                   <ServiceID>163961</ServiceID>
+
                   <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368195</ID>
 +
                  <TouristRoomNumber>1</TouristRoomNumber>
 +
                   <ServiceID>168804</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368197</ID>
 +
                  <ServiceID>168805</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368196</ID>
 +
                  <ServiceID>168805</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368199</ID>
 +
                  <ServiceID>168806</ServiceID>
 +
                  <TouristID>88549</TouristID>
 
               </TouristService>
 
               </TouristService>
 
               <TouristService>
 
               <TouristService>
                   <ID>359208</ID>
+
                   <ID>368198</ID>
                   <Name/>
+
                   <ServiceID>168806</ServiceID>
                   <TouristID>85538</TouristID>
+
                  <TouristID>88548</TouristID>
                   <ServiceID>163960</ServiceID>
+
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368203</ID>
 +
                  <ServiceID>168808</ServiceID>
 +
                   <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368202</ID>
 +
                   <ServiceID>168808</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368201</ID>
 +
                  <ServiceID>168807</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368200</ID>
 +
                  <ServiceID>168807</ServiceID>
 +
                  <TouristID>88548</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368205</ID>
 +
                  <TouristRoomNumber>1</TouristRoomNumber>
 +
                  <ServiceID>168803</ServiceID>
 +
                  <TouristID>88549</TouristID>
 +
              </TouristService>
 +
              <TouristService>
 +
                  <ID>368204</ID>
 +
                  <TouristRoomNumber>1</TouristRoomNumber>
 +
                  <ServiceID>168803</ServiceID>
 +
                  <TouristID>88548</TouristID>
 
               </TouristService>
 
               </TouristService>
 
             </TouristServices>
 
             </TouristServices>
Строка 835: Строка 1892:
 
               <Service xsi:type="HotelService">
 
               <Service xsi:type="HotelService">
 
                   <ExternalID>-1</ExternalID>
 
                   <ExternalID>-1</ExternalID>
                   <Price>60</Price>
+
                   <Price>3850</Price>
 
                   <NMen>2</NMen>
 
                   <NMen>2</NMen>
 
                   <Partner>
 
                   <Partner>
 
                     <Name>Mouzenidis Travel 1</Name>
 
                     <Name>Mouzenidis Travel 1</Name>
 
                     <ID>1035</ID>
 
                     <ID>1035</ID>
                    <Description/>
 
                    <NameLat/>
 
                    <Code/>
 
                    <CodeLat/>
 
                    <Unicode/>
 
 
                     <PartnersGroupID>1051</PartnersGroupID>
 
                     <PartnersGroupID>1051</PartnersGroupID>
 
                     <FullName>Mouzenidis Travel 1</FullName>
 
                     <FullName>Mouzenidis Travel 1</FullName>
 
                     <Fax>007-(495)-950-4-950</Fax>
 
                     <Fax>007-(495)-950-4-950</Fax>
 
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                    <Zip/>
+
                     <Email>aefremov@megatec.ru</Email>
                     <Email>kiev@megatec.ru</Email>
 
                    <Phones/>
 
 
                   </Partner>
 
                   </Partner>
 
                   <PartnerID>1035</PartnerID>
 
                   <PartnerID>1035</PartnerID>
Строка 858: Строка 1908:
 
                   <AdditionalParams>
 
                   <AdditionalParams>
 
                     <ParameterPair Key="ContractPrKey">
 
                     <ParameterPair Key="ContractPrKey">
                         <Value xsi:type="xsd:int">1035</Value>
+
                         <Value xsi:type="xsd:int">2930</Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                     <ParameterPair Key="CancellationPolicy">
 
                     <ParameterPair Key="CancellationPolicy">
                         <Value xsi:type="xsd:base64Binary">77u/PFBvbGljaWVzPjxQbc1BlcmNlbnQ9IlRydWUiIC8+PC9Qb2xpY2llcz4=</Value>
+
                         <Value xsi:type="ArrayOfPenaltyCost">
 +
                          <PenaltyCost>
 +
                              <PolicyKey>-1</PolicyKey>
 +
                              <DateFrom xsi:nil="true"/>
 +
                              <DateTo>2022-08-15T00:00:00</DateTo>
 +
                              <PenaltyValue>0</PenaltyValue>
 +
                              <IsPercent>false</IsPercent>
 +
                              <TotalPenalty>0</TotalPenalty>
 +
                              <Description>If canceled before 15.08.2022, no penalty Penalty value is 0.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>125</PolicyKey>
 +
                              <DateFrom>2022-08-15T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-16T23:59:59</DateTo>
 +
                              <PenaltyValue>6</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>231</TotalPenalty>
 +
                              <Description>If canceled in period 15.08.2022 - 16.08.2022, the penalty will be  6.00 % of the cost of accommodation Penalty value is 231.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>200</PolicyKey>
 +
                              <DateFrom>2022-08-17T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-17T23:59:59</DateTo>
 +
                              <PenaltyValue>11</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>423.5</TotalPenalty>
 +
                              <Description>If canceled in period 17.08.2022 - 17.08.2022, the penalty will be  11.00 % of the cost of accommodation Penalty value is 423.50 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>123</PolicyKey>
 +
                              <DateFrom>2022-08-18T00:00:00</DateFrom>
 +
                              <DateTo>2022-08-19T23:59:59</DateTo>
 +
                              <PenaltyValue>20</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>770</TotalPenalty>
 +
                              <Description>If canceled in period 18.08.2022 - 19.08.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
 +
                          </PenaltyCost>
 +
                          <PenaltyCost>
 +
                              <PolicyKey>208</PolicyKey>
 +
                              <DateFrom>2022-08-20T00:00:00</DateFrom>
 +
                              <DateTo xsi:nil="true"/>
 +
                              <PenaltyValue>20</PenaltyValue>
 +
                              <IsPercent>true</IsPercent>
 +
                              <TotalPenalty>770</TotalPenalty>
 +
                              <Description>If canceled from 20.08.2022, the penalty will be 20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
 +
                          </PenaltyCost>
 +
                        </Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                   </AdditionalParams>
 
                   </AdditionalParams>
                   <Tourists>
+
                   <DetailBrutto>(550,00[kolesnyk2/kolesnyk2]*7) * 1 room = 3850,00</DetailBrutto>
                    <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-08-10T00:00:00" FirstNameLat="Anton"
 
                      LastNameLat="" SurNameLat="Makishev" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0" ID="85538" Phone="+789056789313" Email="">
 
                        <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2021-08-13T00:00:00+03:00"/>
 
                        <ForeignPassport IssuedBy="" Serie="3794" Number="537899" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
                    </Tourist>
 
                  </Tourists>
 
 
                   <Notes/>
 
                   <Notes/>
                   <Name>HTL::Delphi/Acropol Hotel/Deluxe Room/2AD/100 m2/BB</Name>
+
                   <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                   <StartDate>2021-09-15T00:00:00</StartDate>
+
                   <StartDate>2022-08-20T00:00:00</StartDate>
                   <StartDay>0</StartDay>
+
                   <StartDay xsi:nil="true"/>
                   <Duration>7</Duration>
+
                   <Duration>8</Duration>
 
                   <RateBrutto>EU</RateBrutto>
 
                   <RateBrutto>EU</RateBrutto>
                   <Brutto>60</Brutto>
+
                   <Brutto>3850</Brutto>
                  <RateNetto>EU</RateNetto>
 
                  <Netto>0</Netto>
 
 
                   <ServiceClassID>0</ServiceClassID>
 
                   <ServiceClassID>0</ServiceClassID>
                   <TouristCount>1</TouristCount>
+
                   <TouristCount>2</TouristCount>
                   <ID>163961</ID>
+
                   <ID>168804</ID>
 
                   <Status>
 
                   <Status>
                     <Name>HTL::Delphi/Acropol Hotel/Deluxe Room/2AD/100 m2/BB</Name>
+
                     <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
 
                     <ID>1</ID>
 
                     <ID>1</ID>
                    <Description/>
 
                    <NameLat/>
 
                    <Code/>
 
                    <CodeLat/>
 
                    <Unicode/>
 
 
                   </Status>
 
                   </Status>
 
                   <Hotel>
 
                   <Hotel>
                     <Name>Acropol Hotel</Name>
+
                     <Name>Red</Name>
                     <ID>1978</ID>
+
                     <ID>2930</ID>
                     <Description>3 stars (B)  (Greece\Delphi\Delphi)</Description>
+
                     <Description>4 stars (A)  (Ukraine\Kiev\Kiev)</Description>
                    <NameLat/>
+
                     <Code>Red</Code>
                     <Code>ACP</Code>
 
                    <CodeLat/>
 
                    <Unicode/>
 
 
                     <City>
 
                     <City>
                         <Name>Delphi</Name>
+
                         <Name>Kiev</Name>
                         <ID>52</ID>
+
                         <ID>80</ID>
                        <Description/>
+
                         <Code>IEV</Code>
                        <NameLat/>
 
                         <Code>DLP</Code>
 
                        <CodeLat/>
 
                        <Unicode/>
 
 
                         <Country>
 
                         <Country>
                           <Name>Greece</Name>
+
                           <Name>Ukraine</Name>
                           <ID>4</ID>
+
                           <ID>6</ID>
                          <Description/>
 
                          <NameLat/>
 
                          <Code/>
 
                          <CodeLat/>
 
                          <Unicode/>
 
 
                           <IsIncoming>true</IsIncoming>
 
                           <IsIncoming>true</IsIncoming>
 
                         </Country>
 
                         </Country>
                         <CountryID>0</CountryID>
+
                         <CountryID>6</CountryID>
                         <RegionID>0</RegionID>
+
                         <RegionID>28</RegionID>
 
                     </City>
 
                     </City>
                     <RegionID>83</RegionID>
+
                     <RegionID>28</RegionID>
 
                     <PriceType>None</PriceType>
 
                     <PriceType>None</PriceType>
                     <CountCosts>0</CountCosts>
+
                     <CountCosts xsi:nil="true"/>
                     <CityID>52</CityID>
+
                     <CityID>80</CityID>
                     <HotelCategoryID>6</HotelCategoryID>
+
                     <HotelCategoryID>4</HotelCategoryID>
 
                   </Hotel>
 
                   </Hotel>
 
                   <Room>
 
                   <Room>
 
                     <RoomType>
 
                     <RoomType>
 
                         <Name/>
 
                         <Name/>
                         <ID>436</ID>
+
                         <ID>3</ID>
                        <Description/>
+
                         <Code>Double Room</Code>
                        <NameLat/>
 
                         <Code>Deluxe Room</Code>
 
                        <CodeLat/>
 
                        <Unicode/>
 
 
                         <Places>2</Places>
 
                         <Places>2</Places>
                         <ExPlaces>0</ExPlaces>
+
                         <ExPlaces>2</ExPlaces>
 
                         <PrintOrder>0</PrintOrder>
 
                         <PrintOrder>0</PrintOrder>
 
                     </RoomType>
 
                     </RoomType>
                     <RoomTypeID>436</RoomTypeID>
+
                     <RoomTypeID>3</RoomTypeID>
 
                     <RoomCategory>
 
                     <RoomCategory>
                         <Name>100 m2</Name>
+
                         <Name>Jakuzzi</Name>
                         <ID>47</ID>
+
                         <ID>20</ID>
                        <Description/>
 
                        <NameLat/>
 
                        <Code/>
 
                        <CodeLat/>
 
                        <Unicode/>
 
 
                         <MainPlaces>0</MainPlaces>
 
                         <MainPlaces>0</MainPlaces>
 
                         <ExtraPlaces>0</ExtraPlaces>
 
                         <ExtraPlaces>0</ExtraPlaces>
 
                         <IsMain>false</IsMain>
 
                         <IsMain>false</IsMain>
 
                     </RoomCategory>
 
                     </RoomCategory>
                     <RoomCategoryID>47</RoomCategoryID>
+
                     <RoomCategoryID>20</RoomCategoryID>
 
                     <RoomAccomodation>
 
                     <RoomAccomodation>
 
                         <Name>2AD</Name>
 
                         <Name>2AD</Name>
 
                         <ID>5558</ID>
 
                         <ID>5558</ID>
                        <Description/>
 
                        <NameLat/>
 
                        <Code/>
 
                        <CodeLat/>
 
                        <Unicode/>
 
 
                         <PerRoom>false</PerRoom>
 
                         <PerRoom>false</PerRoom>
 
                         <AdultMainPalces>0</AdultMainPalces>
 
                         <AdultMainPalces>0</AdultMainPalces>
Строка 981: Строка 2038:
 
                   <RoomID>0</RoomID>
 
                   <RoomID>0</RoomID>
 
                   <PansionID>3</PansionID>
 
                   <PansionID>3</PansionID>
 +
              </Service>
 +
              <Service xsi:type="TransferService">
 +
                  <ExternalID>-2</ExternalID>
 +
                  <Price>240</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="CityToKey">
 +
                        <Value xsi:type="xsd:int">80</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointFromId">
 +
                        <Value xsi:type="xsd:int">1000028</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointToId">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1171</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(120,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 240,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
 +
                  <StartDate>2022-08-20T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>240</Brutto>
 +
                  <ServiceClassID>2</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168805</ID>
 +
                  <Status>
 +
                    <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
 +
                    <ID>2</ID>
 +
                  </Status>
 +
                  <Transfer>
 +
                    <AdditionalParams>
 +
                        <ParameterPair Key="SlKey">
 +
                          <Value xsi:type="xsd:int">1</Value>
 +
                        </ParameterPair>
 +
                    </AdditionalParams>
 +
                    <Name/>
 +
                    <ID>606</ID>
 +
                  </Transfer>
 +
                  <Transport>
 +
                    <Name>Mini Bus</Name>
 +
                    <ID>4</ID>
 +
                  </Transport>
 +
                  <PointToId>2930</PointToId>
 +
                  <CityKey>80</CityKey>
 +
                  <PointToName>Red</PointToName>
 +
                  <PointFromId>1000028</PointFromId>
 +
                  <PointFromName>Kiev ap</PointFromName>
 +
              </Service>
 +
              <Service xsi:type="TransferService">
 +
                  <ExternalID>-3</ExternalID>
 +
                  <Price>60</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="CityToKey">
 +
                        <Value xsi:type="xsd:int">80</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointFromId">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="PointToId">
 +
                        <Value xsi:type="xsd:int">1000028</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1171</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(15,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 30,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
 +
                  <StartDate>2022-08-27T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>60</Brutto>
 +
                  <ServiceClassID>2</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168806</ID>
 +
                  <Status>
 +
                    <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
 +
                    <ID>2</ID>
 +
                  </Status>
 +
                  <Transfer>
 +
                    <AdditionalParams>
 +
                        <ParameterPair Key="SlKey">
 +
                          <Value xsi:type="xsd:int">2</Value>
 +
                        </ParameterPair>
 +
                    </AdditionalParams>
 +
                    <Name/>
 +
                    <ID>608</ID>
 +
                  </Transfer>
 +
                  <Transport>
 +
                    <Name>Group</Name>
 +
                    <ID>2</ID>
 +
                  </Transport>
 +
                  <PointToId>1000028</PointToId>
 +
                  <CityKey>80</CityKey>
 +
                  <PointToName>Kiev ap</PointToName>
 +
                  <PointFromId>2930</PointFromId>
 +
                  <PointFromName>Red</PointFromName>
 +
              </Service>
 +
              <Service xsi:type="ExcursionService">
 +
                  <ExternalID>-5</ExternalID>
 +
                  <Price>120</Price>
 +
                  <NMen>2</NMen>
 +
                  <Partner>
 +
                    <Name>Mouzenidis Travel 1</Name>
 +
                    <ID>1035</ID>
 +
                    <PartnersGroupID>1051</PartnersGroupID>
 +
                    <FullName>Mouzenidis Travel 1</FullName>
 +
                    <Fax>007-(495)-950-4-950</Fax>
 +
                    <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
 +
                    <Email>aefremov@megatec.ru</Email>
 +
                  </Partner>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">1035</Value>
 +
                    </ParameterPair>
 +
                  </AdditionalParams>
 +
                  <DetailBrutto>(50,00(0-120)[test_exc] * 2 pax) = 100,00</DetailBrutto>
 +
                  <Notes/>
 +
                  <Name>EXC::Kiev City</Name>
 +
                  <StartDate>2022-08-23T00:00:00</StartDate>
 +
                  <StartDay xsi:nil="true"/>
 +
                  <Duration>1</Duration>
 +
                  <RateBrutto>EU</RateBrutto>
 +
                  <Brutto>120</Brutto>
 +
                  <ServiceClassID>1</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168808</ID>
 +
                  <Status>
 +
                    <Name>EXC::Kiev City</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 +
                  <CityKey>80</CityKey>
 +
                  <ExcursionID>714</ExcursionID>
 
               </Service>
 
               </Service>
 
               <Service xsi:type="ExtraService">
 
               <Service xsi:type="ExtraService">
                   <ExternalID>0</ExternalID>
+
                   <ExternalID xsi:nil="true"/>
                   <Price>140</Price>
+
                   <Price>200</Price>
 
                   <NMen>2</NMen>
 
                   <NMen>2</NMen>
 
                   <PartnerID>1035</PartnerID>
 
                   <PartnerID>1035</PartnerID>
Строка 991: Строка 2215:
 
                   <AdditionalParams>
 
                   <AdditionalParams>
 
                     <ParameterPair Key="HotelDlKey">
 
                     <ParameterPair Key="HotelDlKey">
                         <Value xsi:type="xsd:int">163961</Value>
+
                         <Value xsi:type="xsd:int">168804</Value>
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                     <ParameterPair Key="ContractPrKey">
 
                     <ParameterPair Key="ContractPrKey">
Строка 997: Строка 2221:
 
                     </ParameterPair>
 
                     </ParameterPair>
 
                   </AdditionalParams>
 
                   </AdditionalParams>
                   <Tourists>
+
                   <DetailBrutto>(100,00(0-120)[Регресс] * 2 pax * 1 days) = 200,00</DetailBrutto>
                    <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-08-10T00:00:00" FirstNameLat="Anton"  
+
                  <Notes/>
                    LastNameLat="" SurNameLat="Makishev" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0" ID="85538" Phone="+789056789313" Email="">
+
                  <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                         <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2021-08-13T00:00:00+03:00"/>
+
                  <StartDate>2022-08-23T00:00:00</StartDate>
                        <ForeignPassport IssuedBy="" Serie="3794" Number="537899" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
+
                  <StartDay xsi:nil="true"/>
                    </Tourist>
+
                  <Duration>1</Duration>
                  </Tourists>
+
                  <RateBrutto>EU</RateBrutto>
                   <DetailNetto>(10,00(0-120)[Hardlink_test] * 2 pax * 7 days) = 140,00</DetailNetto>
+
                  <Brutto>200</Brutto>
                   <DetailBrutto>(0,00(0-120)[Hardlink_test] * 2 pax * 7 days) = 0,00</DetailBrutto>
+
                  <ServiceClassID>79</ServiceClassID>
 +
                  <TouristCount>2</TouristCount>
 +
                  <ID>168807</ID>
 +
                  <Status>
 +
                    <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 +
                    <ID>1</ID>
 +
                  </Status>
 +
                  <CityKey>80</CityKey>
 +
                  <IsPackage>false</IsPackage>
 +
                  <Code>694</Code>
 +
                  <HasDuration>false</HasDuration>
 +
              </Service>
 +
              <Service xsi:type="ExtraService">
 +
                  <ExternalID xsi:nil="true"/>
 +
                  <Price>478</Price>
 +
                  <NMen>2</NMen>
 +
                  <PartnerID>1035</PartnerID>
 +
                  <Quota>NotChecked</Quota>
 +
                  <PacketKey>0</PacketKey>
 +
                  <AdditionalParams>
 +
                    <ParameterPair Key="HotelDlKey">
 +
                         <Value xsi:type="xsd:int">168804</Value>
 +
                    </ParameterPair>
 +
                    <ParameterPair Key="ContractPrKey">
 +
                        <Value xsi:type="xsd:int">2930</Value>
 +
                    </ParameterPair>
 +
                   </AdditionalParams>
 +
                   <DetailBrutto>(239,00(0-120)[тестэкстрарэд220822] * 2 pax * 1 days) = 478,00</DetailBrutto>
 
                   <Notes/>
 
                   <Notes/>
                   <Name>EX::Adhot типа hardlink/Acropol Hotel/Deluxe Room/2AD/100 m2 (Hard link) (Delphi)</Name>
+
                   <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                   <StartDate>2021-09-15T00:00:00</StartDate>
+
                   <StartDate>2022-08-22T00:00:00</StartDate>
                   <StartDay>0</StartDay>
+
                   <StartDay xsi:nil="true"/>
                   <Duration>7</Duration>
+
                   <Duration>1</Duration>
 
                   <RateBrutto>EU</RateBrutto>
 
                   <RateBrutto>EU</RateBrutto>
                   <Brutto>140</Brutto>
+
                   <Brutto>478</Brutto>
                  <RateNetto>EU</RateNetto>
+
                   <ServiceClassID>102</ServiceClassID>
                  <Netto>0</Netto>
+
                   <TouristCount>2</TouristCount>
                   <ServiceClassID>76</ServiceClassID>
+
                   <ID>168803</ID>
                   <TouristCount>1</TouristCount>
 
                   <ID>163960</ID>
 
 
                   <Status>
 
                   <Status>
                     <Name>EX::Adhot типа hardlink/Acropol Hotel/Deluxe Room/2AD/100 m2 (Hard link) (Delphi)</Name>
+
                     <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
 
                     <ID>1</ID>
 
                     <ID>1</ID>
                    <Description/>
 
                    <NameLat/>
 
                    <Code/>
 
                    <CodeLat/>
 
                    <Unicode/>
 
 
                   </Status>
 
                   </Status>
                   <CityKey>52</CityKey>
+
                   <CityKey>80</CityKey>
 
                   <IsPackage>false</IsPackage>
 
                   <IsPackage>false</IsPackage>
                   <Code>695</Code>
+
                   <Code>713</Code>
 
                   <HasDuration>false</HasDuration>
 
                   <HasDuration>false</HasDuration>
 
               </Service>
 
               </Service>
 
             </Services>
 
             </Services>
             <ID>35950</ID>
+
             <ID>37263</ID>
             <Name>MT110615A0X</Name>
+
             <Name>MT140101A62</Name>
            <Netto>0</Netto>
+
             <Brutto>4948</Brutto>
             <Brutto>200</Brutto>
+
             <CountryID>6</CountryID>
             <CountryID>4</CountryID>
+
             <CityID>80</CityID>
             <CityID>52</CityID>
 
 
             <PartnerID>1035</PartnerID>
 
             <PartnerID>1035</PartnerID>
            <AgentDiscount>0</AgentDiscount>
 
 
             <Status>WaitingConfirmation</Status>
 
             <Status>WaitingConfirmation</Status>
             <StartDate>2021-09-15T00:00:00</StartDate>
+
             <StartDate>2022-08-20T00:00:00</StartDate>
             <EndDate>2021-09-21T00:00:00</EndDate>
+
             <EndDate>2022-08-27T00:00:00</EndDate>
             <Duration>6</Duration>
+
             <Duration>7</Duration>
             <CreationDate>2021-07-28T15:56:02.39</CreationDate>
+
             <CreationDate>2022-03-04T16:56:48.953</CreationDate>
 
             <CreatorID>101</CreatorID>
 
             <CreatorID>101</CreatorID>
 
             <Tourists>
 
             <Tourists>
               <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-08-10T00:00:00" FirstNameLat="Anton" LastNameLat=""  
+
               <Tourist Sex="Male" BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ID="88548" Phone="89610553087" Email="dfj@ety.ua">
              SurNameLat="Makishev" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0" ID="85538" Phone="+789056789313" Email="">
+
                   <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
                   <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2021-08-13T00:00:00+03:00"/>
+
                   <ExternalID>0</ExternalID>
                   <ForeignPassport IssuedBy="" Serie="3794" Number="537899" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
 
               </Tourist>
 
               </Tourist>
               <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1985-08-11T00:00:00" FirstNameLat="Sony" LastNameLat=""  
+
               <Tourist Sex="Male" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" IsMain="false" ID="88549" Phone="" Email="">
              SurNameLat="Ivanova" AgeType="Adult" Citizen="" IsMain="false" ExternalID="0" ID="85539" Phone="+80000000456" Email="">
+
                   <ForeignPassport Serie="" Number="" EndDate="2025-01-01T00:00:00"/>
                   <LocalPassport IssuedBy="" Serie="" Number="" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2021-08-13T00:00:00+03:00"/>
+
                   <ExternalID>0</ExternalID>
                   <ForeignPassport IssuedBy="" Serie="3330" Number="567812" IssueDate="2021-08-13T00:00:00+03:00" EndDate="2025-01-01T00:00:00"/>
 
 
               </Tourist>
 
               </Tourist>
 
             </Tourists>
 
             </Tourists>
             <OwnerID>0</OwnerID>
+
             <OwnerID xsi:nil="true"/>
             <TourOperatorID>88881</TourOperatorID>
+
             <TourOperatorID>-1</TourOperatorID>
             <TourOperatorCode>err8776</TourOperatorCode>
+
             <TourOperatorCode>0</TourOperatorCode>
 
             <ExternalID>0</ExternalID>
 
             <ExternalID>0</ExternalID>
 
             <AdditionalParams>
 
             <AdditionalParams>
Строка 1073: Строка 2313:
 
</soap:Envelope>
 
</soap:Envelope>
  
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetArrivalsByDate (Получение списка туристов на дату начала тура)===
 +
Метод возвращает данные по списку прилетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке,  у которого задан номер телефона.<br />
 +
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона. <br />
 +
За доступность метода для пользователя отвечает настройка '''ShowhotelReservationsByDate'''. По умолчанию настройка отключена.<br />
 +
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в '''Master-Interlook &rarr; Settings &rarr; Online users &rarr; User &rarr; Person connection &rarr; edit role'''.<br />
 +
Если у пользователя не включена настройка '''ShowhotelReservationsByDat''' - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid'''. <br />
 +
<br />[[Файл:Ea_33.png|Настройка доступа]]<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''ArrivalDate *''' – дата заезда
 +
* '''CountryKey''' – ключ страны
 +
* '''RegionKey''' – ключ региона
 +
* '''CityKey''' – ключ города
 +
* '''HotelKey''' – ключ отеля
 +
 +
Возвращаемый результат:<br />
 +
* '''GetArrivalsByDateResult''' – результат поиска
 +
** '''ReservationId''' – номер путевки в клиенте Interlook
 +
** '''Email''' – электронный адрес если есть
 +
** '''Name''' – имя фамилия туриста
 +
** '''Phone''' – номер телефона (выводится в формате только цифр, обрабатывается при формирование ответа)
 +
** '''CheckIn''' – дата заезда
 +
** '''CheckOut''' – дата выезда
 +
** '''HotelId''' – ключ отеля
 +
** '''HasTransferArrival''' – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
 +
** '''FlightArrival''' – номер прямого рейса
 +
** '''FlightDeparture''' – номер обратного рейса
 +
** '''FlightArrivalTime''' – время вылета прямого перелета
 +
** '''FlightDepartureTime''' – время вылета обратного перелета
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetArrivalsByDate
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
<soapenv:Header/>
 +
<soapenv:Body>
 +
<meg:GetArrivalsByDate>
 +
<!--Optional:-->
 +
<meg:guid>96ab8f68-9a13-4845-b338-fdb29be4970b</meg:guid>
 +
<meg:arrivalDate>2021-07-15</meg:arrivalDate>
 +
</meg:GetArrivalsByDate>
 +
</soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetArrivalsByDate
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 +
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetArrivalsByDateResponse xmlns="http://www.megatec.ru/">
 +
        <GetArrivalsByDateResult>[{"reservationId":"MT110831A01","email":"","name":"Gusn Genna","phone":"","checkIn"
 +
:"31.08.2021","checkOut":"05.09.2021","hotelId":2945,"hasTransferArrival":false,"hasTransferDeparture"
 +
:false,"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""}]</GetArrivalsByDateResult>
 +
      </GetArrivalsByDateResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetDeparturesByDate (Получение списка туристов на дату окончания тура)===
 +
Метод возвращает данные по списку вылетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке,  у которого задан номер телефона.<br />
 +
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона. <br />
 +
За доступность метода для пользователя отвечает настройка '''ShowhotelReservationsByDate'''. По умолчанию настройка отключена.<br />
 +
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в '''Master-Interlook &rarr; Settings &rarr; Online users &rarr; User &rarr; Person connection &rarr; edit role'''.<br />
 +
Если у пользователя не включена настройка '''ShowhotelReservationsByDat''' - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid'''. <br />
 +
<br />[[Файл:Ea_33.png|Настройка доступа]]<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DepartureDate *''' – дата выезда
 +
* '''CountryKey''' – ключ страны
 +
* '''RegionKey''' – ключ региона
 +
* '''CityKey''' – ключ города
 +
* '''HotelKey''' – ключ отеля
 +
 +
Возвращаемый результат:<br />
 +
* '''GetDeparturesByDateResult''' – результат поиска
 +
** '''ReservationId''' – номер путевки в ИЛ(выводим номер путевки который видим в интерук клиенте)
 +
** '''Email''' – электронный адрес если есть
 +
** '''Name''' – имя фамилия туриста
 +
** '''Phone''' – номер телефона (выводится в формате только цифры, не смотря на то как это в интерлке, обрабатывается при формирование ответа)
 +
** '''CheckIn''' – дата заезда
 +
** '''checkOut''' – дата выезда
 +
** '''HotelId''' – ключ отеля
 +
** '''HasTransferArrival''' – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
 +
** '''HasTransferDeparture''' – трансфер из отеля (true – есть трансфер из отеля, если трансфера в заявке нет выводится false)
 +
** '''FlightArrival''' – номер прямого рейса
 +
** '''FlightDeparture''' – номер обратного рейса
 +
** '''FlightArrivalTime''' – время вылета прямого перелета
 +
** '''FlightDepartureTime''' – время вылета обратного перелета
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetDeparturesByDate
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetDeparturesByDate>
 +
        <!--Optional:-->
 +
        <meg:guid>a1b232d3-6971-4ede-8ac3-54f43d43c867</meg:guid>
 +
        <meg:departureDate>2021-07-27</meg:departureDate>
 +
      </meg:GetDeparturesByDate>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetDeparturesByDate
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetDeparturesByDateResponse xmlns="http://www.megatec.ru/">
 +
        <GetDeparturesByDateResult>[{"reservationId":"MT110714A02","email":"","name":"dfsgd gfjf","phone":"","checkIn":"14.07.2021",
 +
"checkOut":"27.07.2021","hotelId":2940,"hasTransferArrival":false,"hasTransferDeparture"
 +
:false,"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""},{"reservationId":"MT110713A02","email":"","name":"eter rtet","phone":""
 +
,"checkIn":"13.07.2021","checkOut":"27.07.2021","hotelId":2940,"hasTransferArrival":false,"hasTransferDeparture":false,
 +
"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""}]</GetDeparturesByDateResult>
 +
      </GetDeparturesByDateResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CancelReservation (Аннулирование путевки)===
 +
Метод производит аннуляцию путевки.<br />
 +
Выдача результатов метода регулируется лицензией.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgKey *''' – ключ путевки (не номер путевки)
 +
* '''AnnulReasonID *''' – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение '''There is no this annulating reason in database''')
 +
* '''Note''' – комментарий к аннуляции
 +
Возвращаемые значения.
 +
* '''CancelReservationResult''' – результат аннуляции. <br />
 +
В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены. <br />
 +
В случае ошибки получаем в ответ расшифровку ошибки.<br />
 +
В случае некорректности идентификатора аутентификации ошибка примет вид: "Invalid user or password (Invalid GUID)". <br />
 +
Если отсутствует один из обязательных параметров или значение некорректно " Check the parameter 'dgKey' = 0. There is no any reservation for you in the database".<br />
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CancelReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CancelReservation>
 +
        <!--Optional:-->
 +
        <meg:guid>e5910963-6f5a-4c18-8799-34417675bfe9</meg:guid>
 +
        <meg:dgKey>36018</meg:dgKey>
 +
        <meg:annulReasonID>1001</meg:annulReasonID>
 +
        <!--Optional:-->
 +
        <meg:note>Проверка штрафа</meg:note>
 +
      </meg:CancelReservation>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CancelReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CancelReservationResponse xmlns="http://www.megatec.ru/">
 +
        <CancelReservationResult>
 +
        HTL::Kiev/Maska/Double Room/2AD/Jakuzzi/BB - For cancellation date 19.08.2021,
 +
        the penalty is 1 night(s). Penalty value is 19.80 EU</CancelReservationResult>
 +
      </CancelReservationResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CancelReservationExtended (Аннулирование путевки с выводом информации о штрафах)===
 +
Метод производит аннуляцию путевки и выдает информацию о штрафе.<br />
 +
Выдача результатов метода регулируется лицензией.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgKey *''' – ключ путевки
 +
* '''AnnulReasonID *''' – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение '''There is no this annulating reason in database''')
 +
* '''Note''' – комментарий к аннуляции
 +
Возвращаемые значения.
 +
* '''Number''' – номер сервиса
 +
* '''ResultMessage''' – результат аннуляции с полным описанием. В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены. В случае ошибки получаем в ответ расшифровку ошибки.
 +
** '''PenaltyCost''' - объект со значением штрафа и условиями, по которым штраф был рассчитан
 +
*** '''PolicyKey''' - ключ условия по штрафу в БД (''-1'' - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
 +
*** '''DateFrom''' -  дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть ''null'', обычно для "псевдоусловия": "без штрафа до...")
 +
*** '''DateTo''' - дата окончания (может быть ''null'', для "псевдоусловия" : "100% после ...")
 +
*** '''PenaltyValue''' - размер штрафа
 +
*** '''IsPercent''' - процент, указывающий,  что штраф в "%" (''true'') или в "ночах" (''false'')
 +
*** '''TotalPenalty''' - полная сумма штрафа
 +
*** '''Description''' - описание
 +
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CancelReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CancelReservationExtended>
 +
        <!--Optional:-->
 +
        <meg:guid>16e129b9-5e69-4f53-808d-2fca840a32c1</meg:guid>
 +
        <meg:dgKey>37084</meg:dgKey>
 +
        <meg:annulReasonID>1001</meg:annulReasonID>
 +
        <!--Optional:-->
 +
        <meg:note>567658</meg:note>
 +
      </meg:CancelReservationExtended>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CancelReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CancelReservationExtendedResponse xmlns="http://www.megatec.ru/">
 +
        <CancelReservationExtendedResult>
 +
            <CanceledServiceResult>
 +
              <Number>1</Number>
 +
              <ResultMessage>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB - If canceled in period 15.02.2022 - 16.02.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 840.00 EU</ResultMessage>
 +
              <PenaltyCost>
 +
                  <PolicyKey>123</PolicyKey>
 +
                  <DateFrom>2022-02-15T00:00:00</DateFrom>
 +
                  <DateTo>2022-02-16T23:59:59</DateTo>
 +
                  <PenaltyValue>20</PenaltyValue>
 +
                  <IsPercent>true</IsPercent>
 +
                  <TotalPenalty>840</TotalPenalty>
 +
                  <Description>If canceled in period 15.02.2022 - 16.02.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 840.00 EU</Description>
 +
              </PenaltyCost>
 +
            </CanceledServiceResult>
 +
        </CancelReservationExtendedResult>
 +
      </CancelReservationExtendedResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetReservationsFrom (Отбор данных по дате создания путевки)===
 +
Метод производит вывод данных по дате создания путевки.
 +
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DateFrom *''' – дата от
 +
* '''DateTo''' – дата до
 +
 +
Возвращаемый результат:<br />
 +
* '''Key''' – ключ путевки
 +
* '''Code''' – номер путевки
 +
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.<br />
 +
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br />
 +
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."<br />
 +
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetReservationsFrom
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetReservationsFrom>
 +
        <!--Optional:-->
 +
        <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
 +
        <meg:dateFrom>2021-08-17</meg:dateFrom>
 +
        <meg:dateTo>2021-09-17</meg:dateTo>
 +
      </meg:GetReservationsFrom>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetReservationsFrom
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetReservationsFromResponse xmlns="http://www.megatec.ru/">
 +
        <GetReservationsFromResult Message="Ok">
 +
            <Data>
 +
              <ReservationKeyCode Key="35990" Code="MT110820A0J"/>
 +
              <ReservationKeyCode Key="35991" Code="MT110820A0K"/>
 +
              <ReservationKeyCode Key="35992" Code="MT110821A01"/>
 +
              <ReservationKeyCode Key="35993" Code="MT110821A02"/>
 +
              <ReservationKeyCode Key="35994" Code="MT110821A03"/>
 +
              <ReservationKeyCode Key="35995" Code="MT110820A0L"/>
 +
              <ReservationKeyCode Key="35996" Code="MT110820A0M"/>
 +
              <ReservationKeyCode Key="35997" Code="MT110820A0N"/>
 +
              <ReservationKeyCode Key="35998" Code="MT110820A0P"/>
 +
              <ReservationKeyCode Key="35999" Code="MT110820A0Q"/>
 +
              <ReservationKeyCode Key="36000" Code="MT110820A0R"/>
 +
              <ReservationKeyCode Key="36001" Code="MT110820A0S"/>
 +
              <ReservationKeyCode Key="36002" Code="MT110820A0T"/>
 +
              <ReservationKeyCode Key="36003" Code="MT110820A0U"/>
 +
              <ReservationKeyCode Key="36004" Code="MT110820A0V"/>
 +
              <ReservationKeyCode Key="36005" Code="MT110820A0W"/>
 +
              <ReservationKeyCode Key="36006" Code="MT110820A0X"/>
 +
              <ReservationKeyCode Key="36007" Code="MT110820A0Y"/>
 +
              <ReservationKeyCode Key="36008" Code="MT110820A0Z"/>
 +
              <ReservationKeyCode Key="36009" Code="MT110820A10"/>
 +
              <ReservationKeyCode Key="36010" Code="MT110820A11"/>
 +
              <ReservationKeyCode Key="36011" Code="MT110820A12"/>
 +
              <ReservationKeyCode Key="36012" Code="MT110820A13"/>
 +
              <ReservationKeyCode Key="36013" Code="MT110820A14"/>
 +
              <ReservationKeyCode Key="36014" Code="MT110829A03"/>
 +
              <ReservationKeyCode Key="36015" Code="MT110829A04"/>
 +
              <ReservationKeyCode Key="36016" Code="MT110827A01"/>
 +
              <ReservationKeyCode Key="36017" Code="MT110827A02"/>
 +
            </Data>
 +
        </GetReservationsFromResult>
 +
      </GetReservationsFromResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CreateReservationMessage (Создание сообщения для путевки)===
 +
Метод создает сообщение для конкретной путевки.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgKey *''' – ключ путевки
 +
* '''Message *''' – текст сообщения
 +
* '''SenderName *''' – имя отправителя сообщения
 +
Возвращаемый результат: не возвращает результата
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CreateReservationMessage
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CreateReservationMessage>
 +
        <!--Optional:-->
 +
        <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
 +
        <meg:dgKey>35950</meg:dgKey>
 +
        <!--Optional:-->
 +
        <meg:message>testmessage</meg:message>
 +
        <!--Optional:-->
 +
        <meg:senderName>testsender</meg:senderName>
 +
      </meg:CreateReservationMessage>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CreateReservationMessage
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CreateReservationMessageResponse xmlns="http://www.megatec.ru/"/>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetReservationMessages (Получение сообщений по путевке)===
 +
Метод производит получение сообщений для конкретной путевки.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgKey *''' – ключ путевки
 +
* '''MessageDirection *''' – директория расположения сообщений (по умолчанию 1)
 +
Возвращаемый результат:<br />
 +
* '''DogovorMessageItem''' – результат поиска
 +
** '''Id''' – идентификатор сообщения
 +
** '''IsOutgouing''' – исходящее (true - исходящее, false - входящее )
 +
** '''DogovorId''' – номер путевки
 +
** '''DateCreate''' – дата создания сообщения
 +
** '''SenderName''' – имя отправителя
 +
** '''IsRead''' – прочитано (true - прочитано, false - не прочитано )
 +
** '''TourOperKey''' – ключ туроператора
 +
** '''Processed''' – статус обработки
 +
** '''Text''' – текст сообщения
 +
В случае ошибки приходит расшифровка ошибки.<br />
 +
При ошибке в Guid получим сообщение: "Invalid user or password (Invalid GUID)".<br />
 +
При ошибке в ключе путевки получим сообщение: "Check the parameter 'dgKey' = <значение в запросе>. There is no any reservation for you in the database".<br />
 +
В случае отсутствия в выбранной директории сообщений получим ответ: "Ok. There is no any message with 'messageDirection' = <значение в запросе>".<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetReservationMessages
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetReservationMessages>
 +
        <!--Optional:-->
 +
        <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
 +
        <meg:dgKey>35950</meg:dgKey>
 +
        <meg:messageDirection>1</meg:messageDirection>
 +
      </meg:GetReservationMessages>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetReservationMessages
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetReservationMessagesResponse xmlns="http://www.megatec.ru/">
 +
        <GetReservationMessagesResult Message="Ok">
 +
            <Data>
 +
              <DogovorMessageItem>
 +
                  <Id>778841</Id>
 +
                  <IsOutgouing>false</IsOutgouing>
 +
                  <DogovorId>35950</DogovorId>
 +
                  <DateCreate>2021-08-23T09:44:13.49</DateCreate>
 +
                  <SenderName>testsender</SenderName>
 +
                  <IsRead>false</IsRead>
 +
                  <TourOperKey>1035</TourOperKey>
 +
                  <Processed>1</Processed>
 +
                  <Text>testmessage</Text>
 +
              </DogovorMessageItem>
 +
              <DogovorMessageItem>
 +
                  <Id>778838</Id>
 +
                  <IsOutgouing>false</IsOutgouing>
 +
                  <DogovorId>35950</DogovorId>
 +
                  <DateCreate>2021-08-23T09:40:37.2</DateCreate>
 +
                  <SenderName>testsender</SenderName>
 +
                  <IsRead>false</IsRead>
 +
                  <TourOperKey>1035</TourOperKey>
 +
                  <Processed>1</Processed>
 +
                  <Text>testmessage</Text>
 +
              </DogovorMessageItem>
 +
              <DogovorMessageItem>
 +
                  <Id>778837</Id>
 +
                  <IsOutgouing>false</IsOutgouing>
 +
                  <DogovorId>35950</DogovorId>
 +
                  <DateCreate>2021-08-23T09:40:28.177</DateCreate>
 +
                  <SenderName>testsender</SenderName>
 +
                  <IsRead>false</IsRead>
 +
                  <TourOperKey>1035</TourOperKey>
 +
                  <Processed>1</Processed>
 +
                  <Text>estmessage</Text>
 +
              </DogovorMessageItem>
 +
            </Data>
 +
        </GetReservationMessagesResult>
 +
      </GetReservationMessagesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Методы поиска==
 +
 +
===SearchHotelServices (Получение вариантов проживаний по параметрам запроса)===
 +
Метод производит получение возможных вариантов проживаний по параметрам запроса.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request ''' – объект с параметрами запроса
 +
** '''PageSize *''' – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
 +
** '''RowIndexFrom *''' – с какой строчки выдавать результат.  Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
 +
** '''DateFrom *''' – дата «С»
 +
** '''DateTo *''' – дата «По»
 +
** '''RegionKeys''' – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''CityKeys''' – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''HotelKeys''' – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''RoomDescriptions''' – идентификаторы описаний комнат. Если не предавать будет искать для всех
 +
** '''PansionKeys''' – идентификаторы питаний. Если не передавать будет искать для всех
 +
** '''Ages''' – возраст детей (если не указан, то размещения с детьми не ищутся, туристы считаются взрослыми)
 +
** '''Pax *''' – размещение
 +
** '''Tariffs''' – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary
 +
** '''CacheGuid''' – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
 +
** '''ResultView''' – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
 +
** '''QuotaTypes''' – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
 +
** ''' Mode''' – не указываем или указываем 0
  
 +
Возвращаемый результат:<br />
 +
* '''DataRequestResult''' – результат поиска
 +
** '''ResultTable''' – таблица с результатом
 +
*** '''HotelServices''' – услуга отеля
 +
**** '''HotelName''' – наименование отеля
 +
**** '''HotelKey''' – ключ отеля
 +
**** '''RtCode''' – тип номера
 +
**** '''RtKey''' – ключ типа номера
 +
**** '''RcName''' – категория номера
 +
**** '''RcKey''' – ключ категории номера
 +
**** '''RdName''' – тип+категория номера
 +
**** '''RdKey''' – ключ тип+категория номера
 +
**** '''AcName''' – тип размещения
 +
**** '''AcKey''' – ключ типа размещения
 +
**** '''PnCode''' – тип питания
 +
**** '''PnKey''' – ключ типа питания
 +
**** '''TotalCost''' – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
 +
**** '''Cost''' – размер обязательной доплаты Cost
 +
**** '''AddHotsCost''' – размер обязательной доплаты AdHot
 +
**** '''AddHotsWithCosts''' – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки [[Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service ]])
 +
**** '''DetailBrutto''' – формула расчета цены
 +
**** '''QuoteType''' – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
 +
**** '''CountryKey''' – ключ страны предоставления услуги
 +
**** '''CityKey''' – ключ города предоставления услуги
 +
**** '''CityName''' – наименование города предоставления услуги
 +
**** '''HotelWebSite''' – адрес сайта отеля
 +
**** '''TariffId''' – идентификатор тарифа
 +
**** '''TariffName''' – наименование тарифа
 +
**** '''TariffDescription''' – описание тарифа
 +
**** '''AddHots''' – идентификатор Adhot
 +
**** '''ContractPrKey''' – ключ партнера, предоставляющего услугу
 +
**** '''HotelImage''' – фото отеля
 +
**** '''Rate''' – валюта
 +
**** '''AddHotsWithCostID''' – идентификатор AddHotsWithCost
 +
** '''ColunmNames''' – название столбцов таблицы
 +
*** '''HotelName''' – наименование отеля
 +
*** '''HotelKey''' – ключ отеля
 +
*** '''RtCode''' – тип номера
 +
*** '''RtKey''' – ключ типа номера
 +
*** '''RcName''' – категория номера
 +
*** '''RcKey''' – ключ категории номера
 +
*** '''RdName''' – тип+категория номера
 +
*** '''RdKey''' – ключ тип+категория номера
 +
*** '''AcName''' – тип размещения
 +
*** '''AcKey''' – ключ типа размещения
 +
*** '''PnCode''' – тип питания
 +
*** '''PnKey''' – ключ типа питания
 +
*** '''TotalCost''' – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
 +
*** '''Cost''' – размер обязательной доплаты Cost
 +
*** '''AddHotsCost''' – размер обязательной доплаты AddHotsCost
 +
*** '''DetailBrutto''' – формула расчета цены
 +
*** '''QuoteType''' – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
 +
*** '''CountryKey''' – ключ страны предоставления услуги
 +
*** '''CityKey''' – ключ города предоставления услуги
 +
*** '''CityName''' – наименование города предоставления услуги
 +
*** '''HotelWebSite''' – адрес сайта отеля
 +
*** '''TariffId''' – идентификатор тарифа
 +
*** '''TariffName''' – наименование тарифа
 +
*** '''TariffDescription''' – описание тарифа
 +
*** '''AddHots''' – идентификатор Adhot
 +
*** '''ContractPrKey''' – ключ партнера, предоставляющего услугу
 +
*** '''HotelImage''' – фото отеля
 +
*** '''Rate''' – валюта
 +
*** '''AddHotsWithCostID''' – идентификатор AddHotsWithCost
 +
** '''TotalCount''' – номер строки, на которой закончился поиск
 +
** '''PageSize''' – количество возвращаемых строк данных
 +
** '''PageIndex''' – номер строки, с которой начали поиск
 +
** '''IsLastPage''' – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение '''true'''. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
 +
** '''AdditionalData''' – список обязательных Addhots
 +
*** '''ArrayOfAnyType''' – массив типов услуг
 +
**** '''anyType''' – тип услуги
 +
***** '''ExternalID''' –  параметр для внутреннего использования
 +
***** '''Price''' – стоимость
 +
***** '''NMen''' – количество туристов по путевке
 +
***** '''PartnerID''' – идентификатор партнера
 +
***** '''Quota''' – квота по услуге
 +
***** '''PacketKey''' – ключ пакета
 +
***** '''AdditionalParams''' – массив дополнительных параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''Tourists''' – туристы
 +
***** '''DetailNetto''' – подробности нетто
 +
***** '''DetailBrutto''' – подробности брутто
 +
***** '''Notes''' – примечания к услуге
 +
***** '''Name''' – наименование услуги
 +
***** '''StartDate''' – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
 +
***** '''StartDay''' – день предоставления услуги
 +
***** '''Duration''' – продолжительность услуги
 +
***** '''RateBrutto''' – валюта брутто
 +
***** '''Brutto''' – цена брутто
 +
***** '''RateNetto''' – валюта нетто
 +
***** '''Netto''' – цена нетто
 +
***** '''ServiceClassID''' – идентификатор класса услуги
 +
***** '''TouristCount''' – количество туристов, пользующихся услугой
 +
***** '''ID''' – идентификатор услуги (-1 для новой путевки )
 +
***** '''Status''' – статус услуги
 +
****** '''Name''' – наименование статуса услуги
 +
****** '''ID''' –  идентификатор статуса услуги
 +
****** '''Description''' – описание статуса услуги
 +
****** '''NameLat''' – наименование статуса услуги латиницей
 +
****** '''Code''' – код статуса услуги
 +
****** '''CodeLat''' – код статуса услуги латиницей
 +
****** '''Unicode''' – код ISO статуса услуги
 +
***** '''CityKey''' – ключ города предоставления услуги
 +
***** '''IsPackage''' – признак пакетной услуги
 +
***** '''Code''' – идентификатор услуги
 +
***** '''HasDuration''' – услуга с продолжительностью или без
 +
** '''ResponseGuid''' – идентификатор ответа, который необходимо передать, если мы двигаемся по тому же поиску используя пейджинг<br />
 +
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.<br />
 +
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br />
 +
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."<br />
 +
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."<br />
 +
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'." <br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода SearchHotelServices<br />
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
<meg:SearchHotelServices>
 +
<!--Optional:-->
 +
        <meg:guid>ef5bafbc-722f-4d8b-bdd5-844e8633788f</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request>
 +
<meg:PageSize>100000</meg:PageSize>
 +
            <meg:RowIndexFrom>1</meg:RowIndexFrom>
 +
            <meg:DateFrom>2021-12-01</meg:DateFrom>
 +
            <meg:DateTo>2021-12-22</meg:DateTo>
 +
            <!--Optional:-->
 +
<meg:RegionKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>28</meg:int>
 +
            </meg:RegionKeys>
 +
            <!--Optional:-->
 +
<meg:HotelKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>2932</meg:int>
 +
          </meg:HotelKeys>
 +
            <!--Optional:-->
 +
<meg:Ages>
 +
<!--Zero or more repetitions:-->
 +
            </meg:Ages>
 +
            <meg:Pax>2</meg:Pax>
 +
            <!--Optional:-->
 +
<meg:CacheGuid>9f542137-9403-472c-807d-ae839fb2ee29</meg:CacheGuid>
 +
<meg:ResultView>1</meg:ResultView>
 +
            <meg:Mode>0</meg:Mode>
 +
            <!--Optional:-->
 +
<meg:QuotaTypes>
 +
              <!--Zero or more repetitions:-->
 +
            </meg:QuotaTypes>
 +
        </meg:request>
 +
      </meg:SearchHotelServices>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода SearchHotelServices<br />
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <SearchHotelServicesResponse xmlns="http://www.megatec.ru/">
 +
        <SearchHotelServicesResult Message="Ok">
 +
            <Data>
 +
              <DataRequestResult>
 +
                  <ResultTable>
 +
                    <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
 +
                        <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="HotelServices" msdata:UseCurrentLocale="true">
 +
                          <xs:complexType>
 +
                              <xs:choice minOccurs="0" maxOccurs="unbounded">
 +
                                <xs:element name="HotelServices">
 +
                                    <xs:complexType>
 +
                                      <xs:sequence>
 +
                                          <xs:element name="HotelName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RtCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RtKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RdName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RdKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="PnCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="PnKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TotalCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="Cost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHotsCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHotsWithCosts" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="DetailBrutto" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="QuoteType" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CountryKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CityKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CityName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelWebSite" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffId" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffDescription" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHots" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="ContractPrKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelImage" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="Rate" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHotsWithCostID" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                      </xs:sequence>
 +
                                    </xs:complexType>
 +
                                </xs:element>
 +
                              </xs:choice>
 +
                          </xs:complexType>
 +
                        </xs:element>
 +
                    </xs:schema>
 +
                    <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
 +
                        <DocumentElement xmlns="">
 +
                          <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
 +
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
 +
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
 +
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room</RtCode>
 +
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</RtKey>
 +
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Side Sea View</RcName>
 +
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">8</RcKey>
 +
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room Side Sea View</RdName>
 +
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">1599</RdKey>
 +
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
 +
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
 +
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">BB</PnCode>
 +
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</PnKey>
 +
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">6915.0000</TotalCost>
 +
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">6825.00</Cost>
 +
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">30.00</AddHotsCost>
 +
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
 +
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(325,00[kolesnyk2]*21) * 1 room = 6825,00</DetailBrutto>
 +
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
 +
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
 +
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
 +
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
 +
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
 +
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
 +
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-1</AddHots>
 +
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
 +
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
 +
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-3,-4</AddHotsWithCostID>
 +
                          </HotelServices>
 +
                          <HotelServices diffgr:id="HotelServices2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
 +
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
 +
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
 +
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite</RtCode>
 +
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">45</RtKey>
 +
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Side Sea View</RcName>
 +
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">8</RcKey>
 +
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite Side Sea View</RdName>
 +
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2480</RdKey>
 +
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
 +
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
 +
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">HB</PnCode>
 +
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">4</PnKey>
 +
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11335.0000</TotalCost>
 +
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11235.00</Cost>
 +
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">40.00</AddHotsCost>
 +
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
 +
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(535,00[kolesnyk2]*21) * 1 room = 11235,00</DetailBrutto>
 +
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
 +
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
 +
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
 +
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
 +
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
 +
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
 +
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-2</AddHots>
 +
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
 +
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
 +
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-7,-8</AddHotsWithCostID>
 +
                          </HotelServices>
 +
                          <HotelServices diffgr:id="HotelServices3" msdata:rowOrder="2" diffgr:hasChanges="inserted">
 +
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
 +
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
 +
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite</RtCode>
 +
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">45</RtKey>
 +
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Jakuzzi</RcName>
 +
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">20</RcKey>
 +
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite Jakuzzi</RdName>
 +
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">46528</RdKey>
 +
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
 +
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
 +
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">HB</PnCode>
 +
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">4</PnKey>
 +
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11343.0000</TotalCost>
 +
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11235.00</Cost>
 +
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">48.00</AddHotsCost>
 +
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
 +
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(535,00[kolesnyk2]*21) * 1 room = 11235,00</DetailBrutto>
 +
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
 +
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
 +
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
 +
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
 +
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
 +
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
 +
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</AddHots>
 +
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
 +
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
 +
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-5,-6</AddHotsWithCostID>
 +
                          </HotelServices>
 +
                        </DocumentElement>
 +
                    </diffgr:diffgram>
 +
                  </ResultTable>
 +
                  <ColunmNames>
 +
                    <string>HotelName</string>
 +
                    <string>HotelKey</string>
 +
                    <string>RtCode</string>
 +
                    <string>RtKey</string>
 +
                    <string>RcName</string>
 +
                    <string>RcKey</string>
 +
                    <string>RdName</string>
 +
                    <string>RdKey</string>
 +
                    <string>AcName</string>
 +
                    <string>AcKey</string>
 +
                    <string>PnCode</string>
 +
                    <string>PnKey</string>
 +
                    <string>TotalCost</string>
 +
                    <string>Cost</string>
 +
                    <string>AddHotsCost</string>
 +
                    <string>AddHotsWithCosts</string>
 +
                    <string>DetailBrutto</string>
 +
                    <string>QuoteType</string>
 +
                    <string>CountryKey</string>
 +
                    <string>CityKey</string>
 +
                    <string>CityName</string>
 +
                    <string>HotelWebSite</string>
 +
                    <string>TariffId</string>
 +
                    <string>TariffName</string>
 +
                    <string>TariffDescription</string>
 +
                    <string>AddHots</string>
 +
                    <string>ContractPrKey</string>
 +
                    <string>HotelImage</string>
 +
                    <string>Rate</string>
 +
                    <string>AddHotsWithCostID</string>
 +
                  </ColunmNames>
 +
                  <TotalCount>4</TotalCount>
 +
                  <PageSize>100000</PageSize>
 +
                  <PageIndex>1</PageIndex>
 +
                  <IsLastPage>true</IsLastPage>
 +
                  <AdditionalData>
 +
                    <ArrayOfAnyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>48</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>Hardlink</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>0</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>48</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>99</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>0</ID>
 +
                          <Status>
 +
                              <Name>Hardlink</Name>
 +
                              <ID>0</ID>
 +
                              <Description/>
 +
                              <NameLat/>
 +
                              <Code/>
 +
                              <CodeLat/>
 +
                              <Unicode/>
 +
                          </Status>
 +
                          <CityKey>80</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>699</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>30</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>Hardlink</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>0</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>30</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>99</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-1</ID>
 +
                          <Status>
 +
                              <Name>Hardlink</Name>
 +
                              <ID>0</ID>
 +
                              <Description/>
 +
                              <NameLat/>
 +
                              <Code/>
 +
                              <CodeLat/>
 +
                              <Unicode/>
 +
                          </Status>
 +
                          <CityKey>80</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>699</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>40</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>Hardlink</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>0</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>40</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>99</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-2</ID>
 +
                          <Status>
 +
                              <Name>Hardlink</Name>
 +
                              <ID>0</ID>
 +
                              <Description/>
 +
                              <NameLat/>
 +
                              <Code/>
 +
                              <CodeLat/>
 +
                              <Unicode/>
 +
                          </Status>
 +
                          <CityKey>80</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>699</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>40</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>тестовый ужин на 100921</Name>
 +
                          <StartDate>2021-12-05T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>40</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>70</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-3</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>704</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>20</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>_Прачечная, химчистка</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>20</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>78</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-4</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>639</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>40</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>тестовый ужин на 100921</Name>
 +
                          <StartDate>2021-12-05T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>40</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>70</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-5</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>704</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>20</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>_Прачечная, химчистка</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>20</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>78</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-6</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>639</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>40</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>тестовый ужин на 100921</Name>
 +
                          <StartDate>2021-12-05T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>40</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>70</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-7</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>704</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>20</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>_Прачечная, химчистка</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>20</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>78</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-8</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>639</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>40</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>тестовый ужин на 100921</Name>
 +
                          <StartDate>2021-12-05T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>40</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>70</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-9</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>704</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID>0</ExternalID>
 +
                          <Price>20</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <Tourists/>
 +
                          <DetailNetto/>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>_Прачечная, химчистка</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay>0</StartDay>
 +
                          <Duration>1</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>20</Brutto>
 +
                          <RateNetto/>
 +
                          <Netto>0</Netto>
 +
                          <ServiceClassID>78</ServiceClassID>
 +
                          <TouristCount>0</TouristCount>
 +
                          <ID>-10</ID>
 +
                          <CityKey>0</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>639</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                    </ArrayOfAnyType>
 +
                  </AdditionalData>
 +
                  <ResponseGuid>36d4defd-a39d-48c5-8288-32a22822f411</ResponseGuid>
 +
              </DataRequestResult>
 +
            </Data>
 +
        </SearchHotelServicesResult>
 +
      </SearchHotelServicesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===SearchHotelServicesMinHotel (Получение одной минимальной рассчитанной цены для отеля)===
 +
Метод выводит одну минимальную (сортировка по суточной цене) рассчитанную цену для отеля.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request ''' – объект с параметрами запроса
 +
** '''PageSize *''' – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
 +
** '''RowIndexFrom *''' – с какой строчки выдавать результат.  Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
 +
** '''DateFrom *''' – дата «С»
 +
** '''DateTo *''' – дата «По»
 +
** '''RegionKeys''' – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''CityKeys''' – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''HotelKeys''' – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 +
** '''RoomDescriptions''' – идентификаторы описаний комнат. Если не предавать будет искать для всех (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetRoomFescriptions|GetRoomFescriptions]])<br />
 +
** '''PansionKeys''' – идентификаторы питаний. Если не передавать будет искать для всех (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetPansions|GetPansions]])
 +
** '''Ages''' – возраст детей
 +
** '''Pax *''' – размещение
 +
** '''Tariffs''' – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary (0 - Ordinary, 1 - SPO)
 +
** '''CacheGuid''' – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
 +
** '''ResultView''' – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
 +
** '''QuotaTypes''' – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
 +
** ''' Mode''' – не указываем или указываем 0
 +
 +
Возвращаемый результат:<br />
 +
* '''DataRequestResult''' – результат поиска
 +
** '''ResultTable''' – таблица с результатом
 +
*** '''HotelServices''' – услуга отеля
 +
**** '''HotelName''' – наименование отеля
 +
**** '''HotelKey''' – ключ отеля
 +
**** '''RtCode''' – тип номера
 +
**** '''RtKey''' – ключ типа номера
 +
**** '''RcName''' – категория номера
 +
**** '''RcKey''' – ключ категории номера
 +
**** '''RdName''' – тип+категория номера
 +
**** '''RdKey''' – ключ тип+категория номера
 +
**** '''AcName''' – тип размещения
 +
**** '''AcKey''' – ключ типа размещения
 +
**** '''PnCode''' – тип питания
 +
**** '''PnKey''' – ключ типа питания
 +
**** '''TotalCost''' – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
 +
**** '''Cost''' – размер обязательной доплаты Cost
 +
**** '''AddHotsCost''' – размер обязательной доплаты AdHot
 +
**** '''AddHotsWithCosts''' – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки [[Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service ]])
 +
**** '''DetailBrutto''' – формула расчета цены
 +
**** '''QuoteType''' – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
 +
**** '''CountryKey''' – ключ страны предоставления услуги
 +
**** '''CityKey''' – ключ города предоставления услуги
 +
**** '''CityName''' – наименование города предоставления услуги
 +
**** '''HotelWebSite''' – адрес веб-сайта отеля
 +
**** '''TariffId''' – идентификатор тарифа
 +
**** '''TariffName''' – наименование тарифа
 +
**** '''TariffDescription''' – описание тарифа
 +
**** '''AddHots''' – идентификатор Adhot
 +
**** '''ContractPrKey''' – ключ партнера предоставляющего услугу
 +
**** '''HotelImage''' – фото отеля
 +
**** '''AddHotsWithCostID''' – идентификатор AddHotsWithCost
 +
**** '''Rate''' – валюта
 +
** '''ColunmNames''' – название столбцов таблицы
 +
*** '''HotelName''' – наименование отеля
 +
*** '''HotelKey''' – ключ отеля
 +
*** '''RtCode''' – тип номер
 +
*** '''RtKey''' – ключ типа номера
 +
*** '''RcName''' – категория номера
 +
*** '''RcKey''' – ключ категории номера
 +
*** '''RdName''' – тип+категория номера
 +
*** '''RdKey''' – ключ тип+категория номера
 +
*** '''AcName''' – тип размещения
 +
*** '''AcKey''' – ключ типа размещения
 +
*** '''PnCode''' – тип питания
 +
*** '''PnKey''' – ключ типа питания
 +
*** '''TotalCost''' – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
 +
*** '''Cost''' – размер обязательной доплаты Cost
 +
*** '''AddHotsCost''' – размер обязательной доплаты AddHotsCost
 +
*** '''DetailBrutto''' – формула расчета цены
 +
*** '''QuoteType''' – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
 +
*** '''CountryKey''' – ключ страны предоставления услуги
 +
*** '''CityKey''' – ключ города предоставления услуги
 +
*** '''CityName''' – наименование города предоставления услуги
 +
*** '''HotelWebSite''' – адрес сайта отеля
 +
*** '''TariffId''' – идентификатор тарифа
 +
*** '''TariffName''' – наименование тарифа
 +
*** '''TariffDescription''' – описание тарифа
 +
*** '''AddHots''' – доплата
 +
*** '''ContractPrKey''' – ключ партнера, предоставляющего услугу
 +
*** '''HotelImage''' – фото отеля
 +
*** '''AddHotsWithCostID''' – идентификатор AddHotsWithCost
 +
*** '''Rate''' – валюта
 +
** '''TotalCount''' – номер строки, на которой закончился поиск
 +
** '''PageSize''' – количество возвращаемых строк данных
 +
** '''PageIndex''' – номер строки, с которой начали поиск
 +
** '''IsLastPage''' – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение '''true'''. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
 +
** '''AdditionalData''' – список обязательных Adhot
 +
*** '''ArrayOfAnyType''' – массив типов услуг
 +
**** '''anyType''' – тип услуги
 +
***** '''ExternalID''' –  параметр для внутреннего использования
 +
***** '''Price''' – стоимость
 +
***** '''NMen''' – количество туристов по путевке
 +
***** '''PartnerID''' – идентификатор партнера
 +
***** '''Quota''' – квота по услуге
 +
***** '''PacketKey''' – ключ пакета
 +
***** '''AdditionalParams''' – массив дополнительных параметры (представляются в виде пары ключ – значение)
 +
****** '''ParameterPair Key''' – ключ
 +
******* '''Value''' – значение
 +
***** '''Tourists''' – туристы
 +
***** '''DetailNetto''' – подробности нетто
 +
***** '''DetailBrutto''' – подробности брутто
 +
***** '''Notes''' – примечания к услуге
 +
***** '''Name''' – наименование услуги
 +
***** '''StartDate''' – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
 +
***** '''StartDay''' – день предоставления услуги
 +
***** '''Duration''' – продолжительность услуги
 +
***** '''RateBrutto''' – валюта брутто
 +
***** '''Brutto''' – цена брутто
 +
***** '''RateNetto''' – валюта нетто
 +
***** '''Netto''' – цена нетто
 +
***** '''ServiceClassID''' – идентификатор класса услуги
 +
***** '''TouristCount''' – количество туристов, пользующихся услугой
 +
***** '''ID''' – идентификатор услуги (-1 для новой путевки )
 +
***** '''Status''' – статус услуги
 +
****** '''Name''' – наименование статуса услуги
 +
****** '''ID''' –  идентификатор статуса услуги
 +
****** '''Description''' – описание статуса услуги
 +
****** '''NameLat''' – наименование статуса услуги латиницей
 +
****** '''Code''' – код статуса услуги
 +
****** '''CodeLat''' – код статуса услуги латиницей
 +
****** '''Unicode''' – код ISO статуса услуги
 +
***** '''CityKey''' – ключ города предоставления услуги
 +
***** '''IsPackage''' – признак пакетной услуги
 +
***** '''Code''' – идентификатор услуги
 +
***** '''HasDuration''' – услуга с продолжительностью или без
 +
** '''ResponseGuid''' – идентификатор ответа<br />
 +
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок и/или номер строки с ошибкой.<br />
 +
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br />
 +
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."<br />
 +
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."<br />
 +
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'." <br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода SearchHotelServicesMinHotel<br />
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:SearchHotelServicesMinHotel>
 +
    <!--Optional:-->
 +
        <meg:guid>138e178e-6c1c-4e5a-9f82-8280cb014804</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request>
 +
<meg:PageSize>100000</meg:PageSize>
 +
            <meg:RowIndexFrom>0</meg:RowIndexFrom>
 +
            <meg:DateFrom>2021-12-01</meg:DateFrom>
 +
            <meg:DateTo>2022-12-22</meg:DateTo>
 +
            <!--Optional:-->
 +
            <meg:RegionKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>6</meg:int>
 +
            </meg:RegionKeys>
 +
            <!--Optional:-->
 +
            <meg:CityKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>80</meg:int>
 +
            </meg:CityKeys>
 +
            <!--Optional:-->
 +
            <meg:HotelKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>2932</meg:int>
 +
            </meg:HotelKeys>
 +
            <!--Optional:-->
 +
            <meg:RoomDescriptionsKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>1894</meg:int>
 +
            </meg:RoomDescriptionsKeys>
 +
            <!--Optional:-->
 +
            <meg:PansionKeys>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>3</meg:int>
 +
            </meg:PansionKeys>
 +
            <!--Optional:-->
 +
            <meg:Ages>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>0</meg:int>
 +
            </meg:Ages>
 +
            <meg:Pax>2</meg:Pax>
 +
            <!--Optional:-->
 +
            <meg:Tariffs>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>0</meg:int>
 +
            </meg:Tariffs>
 +
            <!--Optional:-->
 +
            <meg:CacheGuid>f7f9dd22-5a50-455b-8cf0-f0a21153b650</meg:CacheGuid>
 +
            <meg:ResultView>1</meg:ResultView>
 +
            <meg:Mode>0</meg:Mode>
 +
            <!--Optional:-->
 +
            <meg:QuotaTypes>
 +
              <!--Zero or more repetitions:-->
 +
              <meg:int>0</meg:int>
 +
            </meg:QuotaTypes>
 +
        </meg:request>
 +
      </meg:SearchHotelServicesMinHotel>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода SearchHotelServicesMinHotel<br />
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <SearchHotelServicesMinHotelResponse xmlns="http://www.megatec.ru/">
 +
        <SearchHotelServicesMinHotelResult Message="Ok">
 +
            <Data>
 +
              <DataRequestResult>
 +
                  <ResultTable>
 +
                    <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
 +
                        <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="HotelServices" msdata:UseCurrentLocale="true">
 +
                          <xs:complexType>
 +
                              <xs:choice minOccurs="0" maxOccurs="unbounded">
 +
                                <xs:element name="HotelServices">
 +
                                    <xs:complexType>
 +
                                      <xs:sequence>
 +
                                          <xs:element name="HotelName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RtCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RtKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RdName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="RdKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="PnCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="PnKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TotalCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="Cost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHotsCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHotsWithCosts" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="DetailBrutto" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="QuoteType" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CountryKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CityKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="CityName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelWebSite" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffId" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="TariffDescription" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="AddHots" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="ContractPrKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="HotelImage" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                          <xs:element name="Rate" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
 +
                                      </xs:sequence>
 +
                                    </xs:complexType>
 +
                                </xs:element>
 +
                              </xs:choice>
 +
                          </xs:complexType>
 +
                        </xs:element>
 +
                    </xs:schema>
 +
                    <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
 +
                        <DocumentElement xmlns="">
 +
                          <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
 +
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
 +
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
 +
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room</RtCode>
 +
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</RtKey>
 +
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Jakuzzi</RcName>
 +
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">20</RcKey>
 +
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room Jakuzzi</RdName>
 +
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">1894</RdKey>
 +
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
 +
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
 +
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">BB</PnCode>
 +
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</PnKey>
 +
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">125470.0000</TotalCost>
 +
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">125450.00</Cost>
 +
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">20.00</AddHotsCost>
 +
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">-1</AddHotsWithCosts>
 +
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(325,00[kolesnyk2]*386) * 1 room = 125450,00</DetailBrutto>
 +
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
 +
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
 +
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
 +
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
 +
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
 +
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
 +
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
 +
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</AddHots>
 +
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
 +
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
 +
                          </HotelServices>
 +
                        </DocumentElement>
 +
                    </diffgr:diffgram>
 +
                  </ResultTable>
 +
                  <ColunmNames>
 +
                    <string>HotelName</string>
 +
                    <string>HotelKey</string>
 +
                    <string>RtCode</string>
 +
                    <string>RtKey</string>
 +
                    <string>RcName</string>
 +
                    <string>RcKey</string>
 +
                    <string>RdName</string>
 +
                    <string>RdKey</string>
 +
                    <string>AcName</string>
 +
                    <string>AcKey</string>
 +
                    <string>PnCode</string>
 +
                    <string>PnKey</string>
 +
                    <string>TotalCost</string>
 +
                    <string>Cost</string>
 +
                    <string>AddHotsCost</string>
 +
                    <string>AddHotsWithCosts</string>
 +
                    <string>DetailBrutto</string>
 +
                    <string>QuoteType</string>
 +
                    <string>CountryKey</string>
 +
                    <string>CityKey</string>
 +
                    <string>CityName</string>
 +
                    <string>HotelWebSite</string>
 +
                    <string>TariffId</string>
 +
                    <string>TariffName</string>
 +
                    <string>TariffDescription</string>
 +
                    <string>AddHots</string>
 +
                    <string>ContractPrKey</string>
 +
                    <string>HotelImage</string>
 +
                    <string>Rate</string>
 +
                  </ColunmNames>
 +
                  <TotalCount>1</TotalCount>
 +
                  <PageSize>100000</PageSize>
 +
                  <PageIndex>0</PageIndex>
 +
                  <IsLastPage>true</IsLastPage>
 +
                  <AdditionalData>
 +
                    <ArrayOfAnyType>
 +
                        <anyType xsi:type="ExtraService">
 +
                          <ExternalID xsi:nil="true"/>
 +
                          <Price>20</Price>
 +
                          <NMen>0</NMen>
 +
                          <PartnerID>0</PartnerID>
 +
                          <Quota>NotChecked</Quota>
 +
                          <PacketKey>0</PacketKey>
 +
                          <AdditionalParams>
 +
                              <ParameterPair Key="ContractPrKey">
 +
                                <Value xsi:type="xsd:int">0</Value>
 +
                              </ParameterPair>
 +
                          </AdditionalParams>
 +
                          <DetailBrutto/>
 +
                          <Notes/>
 +
                          <Name>Hardlink</Name>
 +
                          <StartDate>2021-12-01T00:00:00</StartDate>
 +
                          <StartDay xsi:nil="true"/>
 +
                          <Duration>0</Duration>
 +
                          <RateBrutto/>
 +
                          <Brutto>20</Brutto>
 +
                          <ServiceClassID>99</ServiceClassID>
 +
                          <TouristCount xsi:nil="true"/>
 +
                          <ID>0</ID>
 +
                          <Status>
 +
                              <Name>Hardlink</Name>
 +
                              <ID>0</ID>
 +
                          </Status>
 +
                          <CityKey>80</CityKey>
 +
                          <IsPackage>false</IsPackage>
 +
                          <Code>699</Code>
 +
                          <HasDuration>false</HasDuration>
 +
                        </anyType>
 +
                    </ArrayOfAnyType>
 +
                  </AdditionalData>
 +
                  <ResponseGuid>f7f9dd22-5a50-455b-8cf0-f0a21153b650</ResponseGuid>
 +
              </DataRequestResult>
 +
            </Data>
 +
        </SearchHotelServicesMinHotelResult>
 +
      </SearchHotelServicesMinHotelResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===SearchActualCostCalculationVariant (Поиск возможных вариантов типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю)===
 +
Метод выдает возможные варианты типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request ''' – объект с параметрами запроса:
 +
** '''HotelId *''' – идентификатор отеля (обязательный параметр, значения 0 и -1 не допустимы)
 +
** '''DateFrom *''' – дата «с»
 +
** '''DateTo *''' – дата «по»
 +
** '''ValidateQuoata''' – проверять ли квоту (true – проверять, false – нет)
 +
** '''QuotaTypes''' – фильтр по типу квоты (0 – запрос, 1 – квота, 2 – стоп)
 +
** '''CheckAdHot''' – учитывать ли цены на обязательные адхоты (true – учитывать, false – нет)
 +
** '''Rate *''' – код валюты, в которой будет вестись расчет
 +
Возвращаемый результат:<br />
 +
* '''SearchActualCostCalculationVariantResult''' – результат поиска
 +
** '''CostCalculationVariant''' – массив данных
 +
*** '''RoomAccommodationId''' – ключ размещения
 +
*** '''RoomTypeId''' – ключ типа комнаты
 +
*** '''RoomCategoryId''' – ключ категории комнаты
 +
*** '''PansionId''' – ключ питания
 +
*** '''RoomAccommodationName''' – код размещения
 +
*** '''RoomTypeName''' – код типа комнаты
 +
*** '''RoomCategoryName''' – код категории комнаты
 +
*** '''PansionName''' – код питания
 +
*** '''CountAdult''' – количество взрослых
 +
*** '''CountChildren''' – количество детей
 +
*** '''Quota''' – значение квоты
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода SearchActualCostCalculationVariant
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:SearchActualCostCalculationVariant>
 +
        <!--Optional:-->
 +
        <meg:guid>d1ac9f4d-20bd-43e0-b5b5-ad60c3cf0065</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request HotelId="2940" DateFrom="2021-09-08" DateTo="2021-09-09" ValidateQuota="true" CheckAdHot="true" Rate="1" QuotaTypes="0"/>
 +
      </meg:SearchActualCostCalculationVariant>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода SearchActualCostCalculationVariant
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 +
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <SearchActualCostCalculationVariantResponse xmlns="http://www.megatec.ru/">
 +
        <SearchActualCostCalculationVariantResult Message="Ok">
 +
            <Data>
 +
              <CostCalculationVariant>
 +
                  <RoomAccommodationId>5558</RoomAccommodationId>
 +
                  <RoomTypeId>3</RoomTypeId>
 +
                  <RoomCategoryId>20</RoomCategoryId>
 +
                  <PansionId>3</PansionId>
 +
                  <RoomAccommodationName>2AD</RoomAccommodationName>
 +
                  <RoomTypeName>Double Room</RoomTypeName>
 +
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
 +
                  <PansionName>BB</PansionName>
 +
                  <CountAdult>2</CountAdult>
 +
                  <CountChildren>0</CountChildren>
 +
                  <Quota>0</Quota>
 +
              </CostCalculationVariant>
 +
              <CostCalculationVariant>
 +
                  <RoomAccommodationId>5558</RoomAccommodationId>
 +
                  <RoomTypeId>45</RoomTypeId>
 +
                  <RoomCategoryId>20</RoomCategoryId>
 +
                  <PansionId>4</PansionId>
 +
                  <RoomAccommodationName>2AD</RoomAccommodationName>
 +
                  <RoomTypeName>Junior Suite</RoomTypeName>
 +
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
 +
                  <PansionName>HB</PansionName>
 +
                  <CountAdult>2</CountAdult>
 +
                  <CountChildren>0</CountChildren>
 +
                  <Quota>0</Quota>
 +
              </CostCalculationVariant>
 +
            </Data>
 +
        </SearchActualCostCalculationVariantResult>
 +
      </SearchActualCostCalculationVariantResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Методы работы с ценами==
 +
===GetSpoList (Получение списка SPO согласно запросу)===
 +
Метод возвращает  список SPO согласно запросу.<br />
 +
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request''' – класс с параметрами запроса
 +
** '''SvKey *''' – ключ класса услуги (1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис, 0 или -1 не принимаются)
 +
** '''PublicationDateBegin *''' – дата публикации SPO «с»
 +
** '''PublicationDateEnd *''' – дата публикации цены «по»
 +
Возвращаемый результат:<br />
 +
* '''SPOInfo''' – результат поиска
 +
** '''ResultTable''' – таблица с результатом
 +
** '''Id''' – ключ SPO
 +
** '''Name''' – название SPO
 +
** '''PeriodBeforeCheckIn''' – период до заезда
 +
** '''SaleDateBegin''' – дата с которой возможно бронирование
 +
** '''SaleDateEnd''' – дата до которой возможно бронирование
 +
** '''Comment''' – описание SPO
 +
** '''CreateDate''' – дата создания
 +
** '''UpdateDate''' – дата обновления
 +
** '''SpoType''' – тип SPO (Ordinary – 0, Spo – 1)
 +
** '''SvKey''' – класс услуги
 +
** '''COLinkServices''' – услуги SPO
 +
*** '''COLinkService''' – конкретная услуга SPO
 +
**** '''SvKey''' –  ключ типа услуги
 +
**** '''Code''' –  ключ услуги
 +
**** '''DurationMin''' – минимальная продолжительность
 +
**** '''DurationMax''' – максимальная продолжительность
 +
**** '''IsDisable''' – заблокирована ли услуга
 +
**** '''DisableDate''' – дата блокировки
 +
** '''COServices''' – информация о ценах на услуги в этом SPO
 +
*** '''COService''' – информация о цене на конкретную услугу в этом SPO
 +
**** '''Code''' – идентификатор услуги
 +
**** '''CostCount''' – количество цен для услуги в SPO
 +
**** '''CostLastUpdate''' – дата последнего изменения (добавления, удаления) цен для услуги в этом СПО
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetSpoList
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetSpoList>
 +
        <!--Optional:-->
 +
        <meg:guid>16f4e0ca-725a-4ffe-8a5e-c41d16ef1b01</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request SvKey="1" PublicationDateBegin="2021-08-01" PublicationDateEnd="2021-08-04"/>
 +
      </meg:GetSpoList>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetSpoList
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetSpoListResponse xmlns="http://www.megatec.ru/">
 +
        <GetSpoListResult Message="Ok">
 +
            <Data>
 +
              <SPOInfo Id="2049" Name="Maska Ordinary" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:31:38.35" UpdateDate="2021-08-03T12:32:35.897" SpoType="0" SvKey="1">
 +
                  <COLinkServices>
 +
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
 +
                  </COLinkServices>
 +
                  <XYRules/>
 +
                  <COServices>
 +
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
 +
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
 +
                  </COServices>
 +
              </SPOInfo>
 +
              <SPOInfo Id="2050" Name="Maska 7=6" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:33:37.847" UpdateDate="2021-08-03T12:35:11.367" SpoType="1" SvKey="1">
 +
                  <COLinkServices>
 +
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
 +
                  </COLinkServices>
 +
                  <XYRules>
 +
                    <XYRule ExcludeBy="0" Sign="-" XFrom="2" XTo="7" Y="1"/>
 +
                  </XYRules>
 +
                  <COServices>
 +
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
 +
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
 +
                  </COServices>
 +
              </SPOInfo>
 +
              <SPOInfo Id="2051" Name="Maska 14=12" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:35:15.797" UpdateDate="2021-08-03T12:35:42.75" SpoType="1" SvKey="1">
 +
                  <COLinkServices>
 +
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
 +
                  </COLinkServices>
 +
                  <XYRules>
 +
                    <XYRule ExcludeBy="0" Sign="-" XFrom="8" XTo="14" Y="2"/>
 +
                  </XYRules>
 +
                  <COServices>
 +
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
 +
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
 +
                  </COServices>
 +
              </SPOInfo>
 +
            </Data>
 +
        </GetSpoListResult>
 +
      </GetSpoListResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetCosts (Получение брутто цены по параметрам запроса)===
 +
Метод возвращает брутто цены по параметрам запроса.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request''' – объект с параметрами запроса
 +
** '''SpoId *''' – ключ SPO ((Параметр CO_Id таблицы CostOffers). Список SPO возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoList (Получение списка СПО согласно запросу)|GetSpoList]])<br />
 +
** '''TariffId *''' – ключ тарифа ((В таблице цен соответствует параметру CS_CVId). При установке "-1" подбираются все тарифы)
 +
** '''SvKey *''' – тип услуги(1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис)
 +
** '''Code *''' – ключ услуги (Для отеля это ключ из таблицы Partners. Для всех остальных  услуг – это ключ SL_KEY из таблицы ServiceList. Так же эти ключи можно получить методами веб сервиса: GetServiceList, GetExcursions, GetTransfers, GetHotels)
 +
** '''PriceType''' – тип цены проживания (0 – за человека, 1 – за комнату, 2 – все). Если не указан, то запрашивается 2.
 +
** '''DownloadOnlyActualCosts *''' – закачка только актуальных цен (1 – получать актуальные, 0 – получать все) 
 +
** '''DownloadUpdateCostsFromDate *''' – закачивать цены только с выбранной даты (1 – настройка включена, 0 – получаем все)
 +
** '''CostsUpdateDateBegin *''' – дата, с которой закачивать цены (используется при установке параметра DownloadUpdateCostsFromDate)
 +
Возвращаемый результат:<br />
 +
* '''GetCostsResult''' – результаты выдачи
 +
** '''CostInfo''' – массив данных
 +
*** '''Id''' – ключ цены
 +
*** '''SvKey''' – ключ типа услуги
 +
*** '''SpoId''' – идентификатор SPO
 +
*** '''Code''' – ключ услуги
 +
*** '''AgeFrom''' – возраст «с»
 +
*** '''AgeTo''' – возраст «по»
 +
*** '''CreateDate''' – дата создания цены
 +
*** '''CheckInDateBegin''' – дата заезда «с»
 +
*** '''CheckInDateEnd''' – дата заезда «до»
 +
*** '''CheckOutDateBegin''' – дата выезда «с»
 +
*** '''CheckOutDateEnd''' – дата выезда «до»
 +
*** '''DateBegin''' – дата действия цены «с»
 +
*** '''DateEnd''' – дата действия цены «до»
 +
*** '''UpdateDate''' – последняя дата обновления цены
 +
*** '''Price''' – значение цены
 +
*** '''Rate''' – валюта
 +
*** '''SubCode1''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
 +
*** '''SubCode2''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
 +
*** '''SubCode3''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
 +
*** '''SubCode4''' – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
 +
*** '''TariffId''' – ключ тарифа
 +
*** '''Type''' – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
 +
*** '''CountryId''' – ключ страны услуги
 +
*** '''CityFromId''' – ключ города услуги
 +
*** '''CityToId''' – ключ города услуги «куда» (для трансферов)
 +
*** '''TouroperatorId''' – ключ туроператора
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetCosts
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetCosts>
 +
        <!--Optional:-->
 +
        <meg:guid>5932b280-c780-4c84-a83a-52b25bc22615</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request SpoId="2049" TariffId="-1" SvKey="1" Code="2945" PriceType="2" DownloadOnlyActualCosts="0" DownloadUpdateCostsFromDate="0" CostsUpdateDateBegin="2021-08-04"/>
 +
      </meg:GetCosts>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetCosts
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetCostsResponse xmlns="http://www.megatec.ru/">
 +
        <GetCostsResult Message="Ok">
 +
            <Data>
 +
              <CostInfo Id="7795837" SvKey="1" SpoId="2049" Code="2945" AgeFrom="0" AgeTo="0" CreateDate="2021-08-03T12:56:34.237" CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" DateBegin="2021-01-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2021-08-03T12:56:35.08" Price="30.0000" Rate="EU" SubCode1="2" SubCode2="3" SubCode3="20" SubCode4="459" TariffId="0" Type="1" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035"/>
 +
              <CostInfo Id="7795835" SvKey="1" SpoId="2049" Code="2945" AgeFrom="0" AgeTo="0" CreateDate="2021-08-03T12:56:34.237" CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" DateBegin="2021-01-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2021-08-03T12:56:35.08" Price="10.0000" Rate="EU" SubCode1="2" SubCode2="3" SubCode3="20" SubCode4="7864" TariffId="0" Type="1" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035"/>
 +
          </Data>
 +
        </GetCostsResult>
 +
      </GetCostsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===SpoPriceMarkDownloaded (Получение информации о доступности конкретного SPO для продажи)===
 +
Метод возвращает информацию о доступности конкретного SPO для продажи.<br />
 +
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
 +
Принимаемые параметры запроса (* – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''SpoKey *''' – ключ SPO (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoLList (получение списка SPO согласно запросу)|GetSpoLList]])
 +
* '''VariantOfCost''' – вариант цены
 +
* '''SvKey''' – ключ класса услуги
 +
* '''Code''' – код услуги
 +
Возвращаемый результат:<br />
 +
* '''SpoPriceMarkDownloadedResult''' – результат поиска
 +
** '''true''' – SPO доступно
 +
** '''false''' – SPO недоступно
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода SpoPriceMarkDownloaded
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:SpoPriceMarkDownloaded>
 +
        <!--Optional:-->
 +
        <meg:guid>016e9dd9-802e-46fb-bb79-7c44a31d6560</meg:guid>
 +
        <meg:spoKey>2049</meg:spoKey>
 +
        <meg:variantOfCost>0</meg:variantOfCost>
 +
        <meg:svKey>0</meg:svKey>
 +
        <meg:code>0</meg:code>
 +
      </meg:SpoPriceMarkDownloaded>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода SpoPriceMarkDownloaded
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <SpoPriceMarkDownloadedResponse xmlns="http://www.megatec.ru/">
 +
        <SpoPriceMarkDownloadedResult>true</SpoPriceMarkDownloadedResult>
 +
      </SpoPriceMarkDownloadedResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Методы работы с услугами==
 +
===GetHotels (Получение списка отелей по параметрам)===
 +
Метод возвращает список отелей по параметрам.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''СountryKey *''' – ключ страны (-1 для всех)
 +
* '''RegionKey *''' – ключ региона (-1 для всех)
 +
* '''СityKey *''' – ключ города (-1 для всех)
 +
Возвращаемый результат:<br />
 +
* '''GetHotelsResult''' – результаты выдачи
 +
* '''Hotel''' – отель
 +
** '''Name''' – название отеля
 +
** '''ID''' – идентификатор отеля
 +
** '''Description''' – описание отеля
 +
** '''NameLat''' – название отеля латиницей
 +
** '''Code''' – код отеля
 +
** '''CodeLat''' – код отеля латиницей
 +
** '''Unicode''' – код ISO отеля
 +
** '''City''' – город отеля
 +
*** '''Name''' – название города
 +
*** '''ID''' – идентификатор города
 +
*** '''Description''' – описание города
 +
*** '''NameLat''' – название города латиницей
 +
*** '''Code''' – код города
 +
*** '''CodeLat''' – код города латиницей
 +
*** '''Unicode''' – код ISO города
 +
*** '''CountryID''' – идентификатор страны отеля
 +
*** '''RegionID''' – идентификатор региона отеля
 +
** '''RegionID''' – идентификатор региона отеля
 +
** '''PriceType''' – тип цены (PerPerson = 0, PerRoom = 1, All = 2, None = 1000)
 +
** '''CountCosts''' – количество цен на отель
 +
** '''CityId''' – идентификатор города отеля
 +
** '''HotelCategoryID''' – идентификатор категории отеля
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetHotels
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetHotels>
 +
        <meg:countryKey>10</meg:countryKey>
 +
        <meg:regionKey>10</meg:regionKey>
 +
        <meg:cityKey>10</meg:cityKey>
 +
      </meg:GetHotels>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetHotels
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetHotelsResponse xmlns="http://www.megatec.ru/">
 +
        <GetHotelsResult>
 +
            <Hotel>
 +
              <Name>Aegean Blue Hotel</Name>
 +
              <ID>2254</ID>
 +
              <Description>3 stars (B)  (\\Nea KallikratiaABBA)</Description>
 +
              <NameLat/>
 +
              <Code>AGN</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <City>
 +
                  <Name>Nea KallikratiaABBA</Name>
 +
                  <ID>10</ID>
 +
                  <Description/>
 +
                  <NameLat/>
 +
                  <Code>NKL</Code>
 +
                  <CodeLat/>
 +
                  <Unicode/>
 +
                  <CountryID>4</CountryID>
 +
                  <RegionID>6</RegionID>
 +
              </City>
 +
              <RegionID>6</RegionID>
 +
              <PriceType>None</PriceType>
 +
              <CountCosts>0</CountCosts>
 +
              <CityID>10</CityID>
 +
              <HotelCategoryID>6</HotelCategoryID>
 +
            </Hotel>
 +
            <Hotel>
 +
              <Name>Alkyonis Hotel</Name>
 +
              <ID>1015</ID>
 +
              <Description>2+ stars (C Sup)  (\\Nea KallikratiaABBA)</Description>
 +
              <NameLat/>
 +
              <Code>ALK</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <City>
 +
                  <Name>Nea KallikratiaABBA</Name>
 +
                  <ID>10</ID>
 +
                  <Description/>
 +
                  <NameLat/>
 +
                  <Code>NKL</Code>
 +
                  <CodeLat/>
 +
                  <Unicode/>
 +
                  <CountryID>4</CountryID>
 +
                  <RegionID>6</RegionID>
 +
              </City>
 +
              <RegionID>6</RegionID>
 +
              <PriceType>None</PriceType>
 +
              <CountCosts>0</CountCosts>
 +
              <CityID>10</CityID>
 +
              <HotelCategoryID>7</HotelCategoryID>
 +
            </Hotel>
 +
          </GetHotelsResult>
 +
      </GetHotelsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetTransfers (Получение списка трансферов по параметрам)===
 +
Метод возвращает список трансферов по параметрам.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request''' – объект с параметрами запроса
 +
** '''СountryKey *''' – ключ страны (-1 для всех)
 +
** '''СityKey *''' – ключ города (-1 для всех)
 +
** '''RegionKey *''' – ключ региона (-1 для всех)
 +
** '''TypeKey *''' – ключ типа трансфера (-1 для всех)
 +
Возвращаемый результат:<br />
 +
* '''GetTransferResult''' – результаты выдачи
 +
** '''TransferDirectionInfo''' – массив данных
 +
*** '''ID''' – идентификатор трансфера
 +
*** '''Name''' – название
 +
*** '''TransferTypeID''' – ключ типа трансфера
 +
*** '''TransferTypeName''' – название типа трансфера
 +
*** '''CityFromID''' – идентификатор города откуда
 +
*** '''CityFromName''' – название города откуда
 +
*** '''CityToID''' – идентификатор города куда
 +
*** '''CityToName''' – название города куда
 +
*** '''PointFromID''' – идентификатор точки откуда
 +
*** '''PointFromName''' – название точки откуда
 +
*** '''PointToID''' – идентификатор точки куда
 +
*** '''PointToName''' – название точки куда
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetTransfers
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetTransfers>
 +
        <!--Optional:-->
 +
        <meg:guid>699cbbac-6acc-4339-9d3c-2a231357d0c1</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request>
 +
            <meg:CountryKey>10</meg:CountryKey>
 +
            <meg:CityKey>10</meg:CityKey>
 +
            <meg:RegionKey>10</meg:RegionKey>
 +
            <meg:TypeKey>1</meg:TypeKey>
 +
        </meg:request>
 +
      </meg:GetTransfers>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetTransfers
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetTransfersResponse xmlns="http://www.megatec.ru/">
 +
        <GetTransfersResult Message="Ok">
 +
            <Data>
 +
              <TransferDirectionInfo Id="527" Name="Arrival transfer: Moscow - All Cities (Finance)" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="87" CityFromName="Moscow" CityToId="0" CityToName="All" PointFromId="0" PointFromName="All" PointToId="1341" PointToName="Finance"/>
 +
              <TransferDirectionInfo Id="530" Name="Arrival transfer: All Cities - All Cities" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="0" CityFromName="All" CityToId="0" CityToName="All" PointFromId="0" PointFromName="All" PointToId="0" PointToName="All"/>
 +
              <TransferDirectionInfo Id="576" Name="Arrival transfer: Moscow (lalala) - All Cities" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="87" CityFromName="Moscow" CityToId="0" CityToName="All" PointFromId="3" PointFromName="lalala" PointToId="0" PointToName="All"/>
 +
            </Data>
 +
        </GetTransfersResult>
 +
      </GetTransfersResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetExcursions (Получение списка экскурсий по параметрам)===
 +
Метод возвращает экскурсии по параметрам.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''СountryKey *''' – ключ страны (-1 для всех)
 +
* '''RegionKey *''' – ключ региона (-1 для всех)
 +
* '''СityKey *''' – ключ города (-1 для всех)
 +
Возвращаемый результат:<br />
 +
* '''GetExcursionsResult''' – результаты выдачи
 +
** '''Excursion''' – массив данных
 +
*** '''Name''' – название экскурсии
 +
*** '''ID''' – идентификатор экскурсии
 +
*** '''Description''' – описание экскурсии
 +
*** '''NameLat''' – название экскурсии латиницей
 +
*** '''Code''' – код экскурсии
 +
*** '''CodeLat''' – код экскурсии латиницей
 +
*** '''Unicode''' – код ISO экскурсии
 +
*** '''CityID''' – идентификатор города
 +
*** '''RegionID''' – идентификатор региона
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetExcursions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetExcursions>
 +
        <meg:countryKey>5</meg:countryKey>
 +
        <meg:regionKey>5</meg:regionKey>
 +
        <meg:cityKey>5</meg:cityKey>
 +
      </meg:GetExcursions>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetExcursions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetExcursionsResponse xmlns="http://www.megatec.ru/">
 +
        <GetExcursionsResult>
 +
            <Excursion>
 +
              <Name>Exc21_01_2020</Name>
 +
              <ID>670</ID>
 +
              <Description/>
 +
              <NameLat>Exc21_01_2020</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <CityID>5</CityID>
 +
              <RegionID>16</RegionID>
 +
            </Excursion>
 +
        </GetExcursionsResult>
 +
      </GetExcursionsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetServiceList (Получение списка дополнительных услуг)===
 +
Метод возвращает дополнительные услуги.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetServiceListResult''' – результаты выдачи
 +
** '''ServiceList''' – массив данных
 +
*** '''AdditionalParams''' – дополнительные параметры
 +
**** '''Key''' – ключ
 +
**** '''Value''' – значение
 +
*** '''Name''' – название дополнительной услуги
 +
*** '''ID''' – идентификатор дополнительной услуги
 +
*** '''NameLat''' – название дополнительной услуги латиницей
 +
*** '''Code''' – код дополнительной услуги
 +
*** '''CodeLat''' – код дополнительной услуги латиницей
 +
*** '''Unicode''' – код ISO дополнительной услуги
 +
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
 +
*** '''CountryID''' – идентификатор страны дополнительной услуги
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetServiceList
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetServiceList/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetServiceList
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetServiceListResponse xmlns="http://www.megatec.ru/">
 +
        <GetServiceListResult>
 +
            <ServiceList>
 +
              <AdditionalParams>
 +
                  <ParameterPair Key="CountryKey">
 +
                    <Value xsi:type="xsd:int">0</Value>
 +
                  </ParameterPair>
 +
                  <ParameterPair Key="CityKey">
 +
                    <Value xsi:type="xsd:int">0</Value>
 +
                  </ParameterPair>
 +
              </AdditionalParams>
 +
              <Name>Extra service class\Cancellation penalty</Name>
 +
              <ID>10</ID>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <ServiceClaseID>1</ServiceClaseID>
 +
              <CountryID>0</CountryID>
 +
            </ServiceList>
 +
            <ServiceList>
 +
              <AdditionalParams>
 +
                  <ParameterPair Key="CountryKey">
 +
                    <Value xsi:type="xsd:int">0</Value>
 +
                  </ParameterPair>
 +
                  <ParameterPair Key="CityKey">
 +
                    <Value xsi:type="xsd:int">0</Value>
 +
                  </ParameterPair>
 +
              </AdditionalParams>
 +
              <Name>Shop Tour\Shop Tour With Terms</Name>
 +
              <ID>15</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <ServiceClaseID>4</ServiceClaseID>
 +
              <CountryID>0</CountryID>
 +
            </ServiceList>
 +
          </GetServiceListResult>
 +
      </GetServiceListResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetExtraServices (Получение списка дополнительных услуг включая услуги типа AdHot)===
 +
Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request''' – объект с параметрами запроса
 +
** '''ServiceClassKey *''' – ключ класса дополнительной услуги (-1 для всех)
 +
** '''СountryKey *''' – ключ страны дополнительной услуги (-1 для всех)
 +
** '''СityKey *''' – ключ города  для AdHot (-1 для всех)
 +
** '''HotelKey *''' – ключ отеля для AdHot (-1 для всех)
 +
** '''RegionKey *''' – ключ региона (-1 для всех)
 +
** '''TypeKey *''' – тип AdHot (-1 – для всех, 1 – Manual, 2 – HardLink, 3 – WithCosts)
 +
Возвращаемый результат:<br />
 +
* '''GetExtraServicesResult''' – результаты выдачи
 +
** '''ExtraServiceInfo''' – массив данных
 +
*** '''Id''' – идентификатор дополнительной услуги
 +
*** '''Name''' – название дополнительной услуги
 +
*** '''Description''' – описание  дополнительной услуги
 +
*** '''ServiceClassId''' – идентификатор класса дополнительной услуги
 +
*** '''IsWeb''' – доступность дополнительной услуги в онлайн
 +
*** '''DurationType''' – c продолжительностью или без (1 – с продолжительностью)
 +
*** '''UpdateDate''' – дата последнего обновления дополнительной услуги
 +
*** '''IsPartnerLikeHotel''' – партнер у AdHot  такой же как и у проживания
 +
*** '''LinkType''' – тип AdHot (1 - Manual, 2 – HardLink, 3 - WithCosts)
 +
*** '''IsAddHot''' – является ли услуга AdHot (true – является, false – не является)
 +
*** '''CountryList''' – список ключей стран для AdHot (если коллекция пустая – значит для всех)
 +
*** '''CityList''' – список ключей городов для AdHot (если коллекция пустая – значит для всех)
 +
*** '''HotelList''' – список ключей отелей для AdHot (если коллекция пустая – значит для всех)
 +
*** '''RoomTypeList''' – список ключей типов комнат для AdHot (если коллекция пустая – значит для всех)
 +
*** '''RoomCategoryList''' – список ключей категорий комнат для AdHot (если коллекция пустая – значит для всех)
 +
*** '''AccommodationList''' – список ключей размещений для AdHot (если коллекция пустая – значит для всех)
 +
*** '''HotelLinkTypeList''' – список переопределений типа AdHot для отелей
 +
**** '''HotelLinkTypeEx''' – переопределение типа AdHot для отеля
 +
***** '''HotelId''' – ключ отеля
 +
***** '''ExtraServiceLinkType''' – переопределенный тип AdHot (1 – Manual, 2 – HardLink, 3 – WithCosts)
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetExtraServices
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetExtraServices>
 +
        <!--Optional:-->
 +
        <meg:guid>e7f7b188-611b-4a01-bcff-b7117c222e1f</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request>
 +
            <meg:ServiceClassKey>-1</meg:ServiceClassKey>
 +
            <meg:CountryKey>10</meg:CountryKey>
 +
            <meg:CityKey>10</meg:CityKey>
 +
            <meg:HotelKey>10</meg:HotelKey>
 +
            <meg:TypeKey>-1</meg:TypeKey>
 +
        </meg:request>
 +
      </meg:GetExtraServices>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetExtraServices
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetExtraServicesResponse xmlns="http://www.megatec.ru/">
 +
        <GetExtraServicesResult Message="Ok">
 +
            <Data>
 +
              <ExtraServiceInfo Id="293" Name="Air tickets test transmission Greece" Description="" ServiceClassId="15" IsWeb="true" DurationType="1" UpdateDate="2018-04-26T17:55:50.04" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
 +
                  <CountryList/>
 +
                  <CityList/>
 +
                  <HotelList/>
 +
                  <RoomTypeList/>
 +
                  <RoomCategoryList/>
 +
                  <AccommodationList/>
 +
                  <HotelLinkTypeList>
 +
                    <HotelLinkTypeEx HotelId="2830" ExtraServiceLinkType="1"/>
 +
                  </HotelLinkTypeList>
 +
              </ExtraServiceInfo>
 +
              <ExtraServiceInfo Id="433" Name="111111111111111" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.937" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
 +
                  <CountryList/>
 +
                  <CityList/>
 +
                  <HotelList/>
 +
                  <RoomTypeList/>
 +
                  <RoomCategoryList/>
 +
                  <AccommodationList/>
 +
                  <HotelLinkTypeList/>
 +
              </ExtraServiceInfo>
 +
              <ExtraServiceInfo Id="439" Name="3221" Description="" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.967" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
 +
                  <CountryList/>
 +
                  <CityList/>
 +
                  <HotelList/>
 +
                  <RoomTypeList/>
 +
                  <RoomCategoryList/>
 +
                  <AccommodationList/>
 +
                  <HotelLinkTypeList>
 +
                    <HotelLinkTypeEx HotelId="2821" ExtraServiceLinkType="1"/>
 +
                  </HotelLinkTypeList>
 +
              </ExtraServiceInfo>
 +
            </Data>
 +
        </GetExtraServicesResult>
 +
      </GetExtraServicesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetExtraServiceWithPrices (Получение списка дополнительных услуг включая услуги типа AdHot с ценами)===
 +
Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot с ценами.<br />
 +
Принимаемые параметры запроса ( * – обязательный):<br />
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Request''' – объект с параметрами запроса
 +
** '''HotelKey *''' – ключ отеля для AdHot (-1 для всех)
 +
** '''DateFrom''' – дата действия от
 +
** '''DateTo''' – дата действия до
 +
Возвращаемый результат:<br />
 +
* '''GetExtraServiceWithPricesResult Message="Ok">
 +
** '''CostInfo''' – массив данных
 +
*** '''Id''' – ключ цены
 +
*** '''SvKey''' – ключ типа услуги
 +
*** '''SpoId''' – идентификатор SPO
 +
*** '''Code''' – ключ услуги
 +
*** '''AgeFrom''' – возраст «с»
 +
*** '''AgeTo''' – возраст «по»
 +
*** '''CreateDate''' – дата создания цены
 +
*** '''CheckInDateBegin''' – дата заезда «с»
 +
*** '''CheckInDateEnd''' – дата заезда «до»
 +
*** '''CheckOutDateBegin''' – дата выезда «с»
 +
*** '''CheckOutDateEnd''' – дата выезда «до»
 +
*** '''DateBegin''' – дата действия цены «с»
 +
*** '''DateEnd''' – дата действия цены «до»
 +
*** '''UpdateDate''' – последняя дата обновления цены
 +
*** '''Price''' – значение цены
 +
*** '''Rate''' – валюта
 +
*** '''SubCode1''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
 +
*** '''SubCode2''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
 +
*** '''SubCode3''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
 +
*** '''SubCode4''' – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
 +
*** '''TariffId''' – ключ тарифа
 +
*** '''Type''' – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
 +
*** '''CountryId''' – ключ страны услуги
 +
*** '''CityFromId''' – ключ города услуги
 +
*** '''CityToId''' – ключ города услуги «куда» (для трансферов)
 +
*** '''TouroperatorId''' – ключ туроператора
 +
*** '''AdHotName''' – название доп. услуги в отеле
 +
*** '''LinkType''' – тип доп. услуги в отеле: 1 - Manual (услуга, добавляемая по желанию), 2 – HardLink (обязательная услуга в отеле), 3 - WithCosts (обязательная услуга, добавляемая при наличии цены в период бронирования отеля)
 +
*** '''DurationType''' – услуга c продолжительностью или без (1 – цена указана за сутки, 0 - цена указана за весь период проживания)
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetExtraServicesWithPrices
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetExtraServiceWithPrices>
 +
        <!--Optional:-->
 +
        <meg:guid>c80b29df-4110-4769-85a5-99ef5def023c</meg:guid>
 +
        <!--Optional:-->
 +
        <meg:request>
 +
            <meg:HotelKey>2930</meg:HotelKey>
 +
            <meg:DateFrom>2022-01-01</meg:DateFrom>
 +
            <meg:DateTo>2022-12-31</meg:DateTo>
 +
        </meg:request>
 +
      </meg:GetExtraServiceWithPrices>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetExtraServicesWithPrices
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetExtraServiceWithPricesResponse xmlns="http://www.megatec.ru/">
 +
        <GetExtraServiceWithPricesResult Message="Ok" Count="15">
 +
            <Data>
 +
              <CostInfoWithAdHotDescription Id="7795829" SvKey="5" SpoId="2047" Code="471" AgeFrom="0" AgeTo="0" CreateDate="2021-07-26T18:20:02.52"
 +
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
 +
DateBegin="2002-08-01T00:00:00" DateEnd="2023-08-12T00:00:00" UpdateDate="2021-07-26T18:20:03.313" Price="17.0000" Rate="EU" SubCode1="0" SubCode2="2930"
 +
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="6" CityFromId="80" CityToId="0" TouroperatorId="1035" AdHotName="bonus" LinkType="Manual"
 +
DurationType="0"/>
 +
              <CostInfoWithAdHotDescription Id="7807924" SvKey="5" SpoId="2029" Code="694" AgeFrom="0" AgeTo="0" CreateDate="2022-12-09T14:24:52.333"
 +
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
 +
DateBegin="2022-02-01T00:00:00" DateEnd="2024-02-01T00:00:00" UpdateDate="2022-12-09T14:24:52.573" Price="3.0000" Rate="EU" SubCode1="0" SubCode2="0"
 +
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Сейф в номере" LinkType="Manual"
 +
DurationType="0"/>
 +
              <CostInfoWithAdHotDescription Id="7805052" SvKey="5" SpoId="2136" Code="716" AgeFrom="0" AgeTo="0" CreateDate="2022-01-05T17:16:53.75"
 +
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
 +
DateBegin="2022-01-01T00:00:00" DateEnd="2025-01-01T00:00:00" UpdateDate="2022-01-05T18:16:55.813" Price="17.0000" Rate="EU" SubCode1="0" SubCode2="0"
 +
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Maska dinners" LinkType="Manual"
 +
DurationType="0"/>
 +
              <CostInfoWithAdHotDescription Id="7809780" SvKey="5" SpoId="2604" Code="726" AgeFrom="0" AgeTo="0" CreateDate="2023-02-15T12:29:03.747"
 +
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
 +
DateBegin="2023-02-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2023-02-15T12:29:08.183" Price="0" Rate="USD" SubCode1="0" SubCode2="0" SubCode3="0"
 +
SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Такса (Тунис)" LinkType="Manual" DurationType="1"/>
 +
            </Data>
 +
        </GetExtraServiceWithPricesResult>
 +
      </GetExtraServiceWithPricesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CalculateSingleCost (Расчет стоимости услуги по ее параметрам стандартным механизмом расчета)===
 +
Метод рассчитывает стоимость услуги по ее параметрам стандартным механизмом расчета.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''SvKey *''' – ключ типа услуги
 +
* '''СountryKey *''' – ключ страны
 +
* '''Сode *''' – ключ услуги
 +
* '''Subcode1 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType)
 +
* '''Subcode2 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала)
 +
* '''Subcode3 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания)
 +
* '''Subcode4 *''' – параметр цены в зависимости от типа услуги (для проживания – размещение)
 +
* '''TourOperatorGroupKey *''' – ключ группы туроператора
 +
* '''TourOperatorKey *''' – ключ туроператора (продавца)
 +
* '''MrKey *''' – ключ рынка
 +
* '''FilialKey *''' – ключ филиала
 +
* '''TafiffKey *''' – ключ тарифа
 +
* '''Pax *''' – Pax по услуге
 +
* '''Ages *''' – список с возрастами детей
 +
* '''CheckInDate *''' – дата «с»
 +
* '''CheckOutDate *''' – дата «по»
 +
* '''CityKey *''' – ключ города
 +
* '''CityKeyTo *''' – ключ города «куда»
 +
* '''Rate *''' – код валюты
 +
* '''PricePerRoom *''' – за комнату или за человека
 +
* '''OnlyPublished *''' – учитывать только опубликованные цены
 +
* '''ServiceProviderKey *''' –  ключ поставщика услуги
 +
Возвращаемый результат:<br />
 +
* '''CalculateSingleCostResult''' – результаты выдачи
 +
** '''Brutto''' – рассчитанная брутто цена
 +
** '''ProviderKey''' – ключ поставщика услуги
 +
** '''IsCalcBrutto'''
 +
** '''CancellationPolicies''' – Политика аннуляции
 +
** '''PolicyKey''' – ключ политики
 +
** '''DateFrom''' – дата "от"
 +
** '''DateTo''' – дата "до"
 +
** '''PenaltyValue''' – значение штрафа
 +
** '''IsPercent''' - процент, указывающий,  что штраф в "%" (''true'') или в "ночах" (''false'')
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CalculateSingleCost
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CalculateSingleCost>
 +
        <!--Optional:-->
 +
        <meg:guid>823b2df5-a3fe-4153-b43a-accfba1bf86c</meg:guid>
 +
        <meg:svKey>1</meg:svKey>
 +
        <meg:countryKey>1</meg:countryKey>
 +
        <meg:code>1</meg:code>
 +
        <meg:subcode1>1</meg:subcode1>
 +
        <meg:subcode2>1</meg:subcode2>
 +
        <meg:subcode3>1</meg:subcode3>
 +
        <meg:subcode4>1</meg:subcode4>
 +
        <meg:tourOperatorGroupKey>1</meg:tourOperatorGroupKey>
 +
        <meg:tourOperatorKey>1</meg:tourOperatorKey>
 +
        <meg:mrKey>1</meg:mrKey>
 +
        <meg:filialKey>1</meg:filialKey>
 +
        <meg:tafiffKey>1</meg:tafiffKey>
 +
        <meg:pax>1</meg:pax>
 +
        <!--Optional:-->
 +
        <meg:ages>
 +
        <!--Zero or more repetitions:-->
 +
        <meg:int>1</meg:int>
 +
        </meg:ages>
 +
        <meg:checkInDate>2021-08-01</meg:checkInDate>
 +
        <meg:checkOutDate>2021-08-24</meg:checkOutDate>
 +
        <meg:cityKey>1</meg:cityKey>
 +
        <meg:cityKeyTo>1</meg:cityKeyTo>
 +
        <!--Optional:-->
 +
        <meg:rate>1</meg:rate>
 +
        <meg:pricePerRoom>1</meg:pricePerRoom>
 +
        <meg:onlyPublished>1</meg:onlyPublished>
 +
        <meg:serviceProviderKey>1</meg:serviceProviderKey>
 +
      </meg:CalculateSingleCost>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CalculateSingleCost
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CalculateSingleCostResponse xmlns="http://www.megatec.ru/">
 +
        <CalculateSingleCostResult>
 +
            <Brutto>50.0000</Brutto>
 +
            <ProviderKey>2943</ProviderKey>
 +
            <IsCalcBrutto>false</IsCalcBrutto>
 +
            <CancellationPolicies>
 +
              <CancellationPolicyData>
 +
                  <PolicyKey>151</PolicyKey>
 +
                  <DateFrom>2021-08-25T00:00:00</DateFrom>
 +
                  <DateTo>2021-08-27T00:00:00</DateTo>
 +
                  <PenaltyValue>3</PenaltyValue>
 +
                  <IsPercent>false</IsPercent>
 +
              </CancellationPolicyData>
 +
              <CancellationPolicyData>
 +
                  <PolicyKey>149</PolicyKey>
 +
                  <DateFrom>2021-08-27T00:00:00</DateFrom>
 +
                  <DateTo>2021-08-31T00:00:00</DateTo>
 +
                  <PenaltyValue>4</PenaltyValue>
 +
                  <IsPercent>false</IsPercent>
 +
              </CancellationPolicyData>
 +
              </CancellationPolicies>
 +
        </CalculateSingleCostResult>
 +
      </CalculateSingleCostResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Методы работы со справочниками==
 +
 +
===GetRegions (Получение списка регионов)===
 +
Метод возвращает список регионов.
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
 +
Возвращаемый результат:<br />
 +
* '''GetRegionsResult''' – результат поиска
 +
** '''Region''' – массив данных
 +
*** '''Name''' – название региона
 +
*** '''ID''' – идентификатор региона
 +
*** '''Description''' – описание региона
 +
*** '''NameLat''' – наименование региона латиницей
 +
*** '''Code''' – код региона
 +
*** '''CodeLat''' – код региона латиницей
 +
*** '''Unicode''' – код ISO региона
 +
*** '''CountryID''' – идентификатор страны
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRegions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRegions>
 +
        <meg:countryKey>10</meg:countryKey>
 +
      </meg:GetRegions>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRegions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRegionsResponse xmlns="http://www.megatec.ru/">
 +
        <GetRegionsResult>
 +
            <Region>
 +
              <Name>Chisinau</Name>
 +
              <ID>18</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>KIV</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <CountryID>10</CountryID>
 +
            </Region>
 +
            <Region>
 +
              <Name>Tiraspol</Name>
 +
              <ID>109</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>TRS</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <CountryID>10</CountryID>
 +
            </Region>
 +
        </GetRegionsResult>
 +
      </GetRegionsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetCities (Получение списка городов)===
 +
Метод возвращает список городов.
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
 +
* '''RegionKey *''' – идентификатор региона (-1 для всех)<br />
 +
Возвращаемый результат:<br />
 +
* '''GetCitiesResult''' – результат поиска
 +
** '''City''' – массив данных
 +
*** '''Name''' – название города
 +
*** '''ID''' – идентификатор города
 +
*** '''Description''' – описание города
 +
*** '''NameLat''' – наименование города латиницей
 +
*** '''Code''' – код города
 +
*** '''CodeLat''' – код города латиницей
 +
*** '''Unicode''' – код ISO города
 +
*** '''CountryID''' – идентификатор города
 +
*** '''RegionID''' – идентификатор региона
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetCities
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetCities>
 +
        <meg:countryKey>10</meg:countryKey>
 +
        <meg:regionKey>10</meg:regionKey>
 +
      </meg:GetCities>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetCities
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetCitiesResponse xmlns="http://www.megatec.ru/">
 +
        <GetCitiesResult>
 +
            <City>
 +
              <Name>Katerini</Name>
 +
              <ID>153</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>KTR</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <CountryID>4</CountryID>
 +
              <RegionID>10</RegionID>
 +
            </City>
 +
            <City>
 +
              <Name>Leptokaria</Name>
 +
              <ID>24</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>LPK</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <CountryID>4</CountryID>
 +
              <RegionID>10</RegionID>
 +
            </City>
 +
        </GetCitiesResult>
 +
      </GetCitiesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetCountries (Получение списка стран)===
 +
Метод возвращает список стран.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetCountriesResult''' – результат поиска
 +
** '''Country''' – массив данных
 +
*** '''Name''' – название страны
 +
*** '''ID''' – идентификатор страны
 +
*** '''Description''' – описание страны
 +
*** '''NameLat''' – наименование страны латиницей
 +
*** '''Code''' – код страны
 +
*** '''CodeLat''' – код страны латиницей
 +
*** '''Unicode''' – код ISO страны
 +
*** '''IsIncoming''' – параметр для внутреннего использования
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetCountries
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetCountries/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetCountries
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetCountriesResponse xmlns="http://www.megatec.ru/">
 +
        <GetCountriesResult>
 +
            <Country>
 +
              <Name>Azerbaijan</Name>
 +
              <ID>19</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <IsIncoming>false</IsIncoming>
 +
            </Country>
 +
            <Country>
 +
              <Name>Belarus</Name>
 +
              <ID>7</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <IsIncoming>false</IsIncoming>
 +
            </Country>
 +
            </Country>
 +
        </GetCountriesResult>
 +
      </GetCountriesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetRoomType (Получение списка типов комнат)===
 +
Метод возвращает список типов комнат.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetRoomTypeResult''' – результат поиска
 +
** '''RoomType''' – массив данных
 +
*** '''Name''' – название типа комнаты
 +
*** '''ID''' – идентификатор типа комнаты
 +
*** '''Description''' – описание типа комнаты
 +
*** '''NameLat''' – наименование типа комнаты
 +
*** '''Code''' – код типа комнаты
 +
*** '''CodeLat''' – код типа комнаты латиницей
 +
*** '''Unicode''' – код ISO типа комнаты
 +
*** '''Places''' – количество основных мест
 +
*** '''ExPlaces''' – количество дополнительных мест
 +
*** '''PrintOrder''' – печать отчета
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRoomType
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRoomType/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRoomType
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRoomTypeResponse xmlns="http://www.megatec.ru/">
 +
        <GetRoomTypeResult>
 +
            <RoomType>
 +
              <Name>NOVALUE</Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>-</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <Places>0</Places>
 +
              <ExPlaces>0</ExPlaces>
 +
              <PrintOrder>0</PrintOrder>
 +
            </RoomType>
 +
            <RoomType>
 +
              <Name>10</Name>
 +
              <ID>876</ID>
 +
              <Description>111</Description>
 +
              <NameLat/>
 +
              <Code>111</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <Places>111</Places>
 +
              <ExPlaces>0</ExPlaces>
 +
              <PrintOrder>0</PrintOrder>
 +
            </RoomType>
 +
            <RoomType>
 +
              <Name>33444</Name>
 +
              <ID>915</ID>
 +
              <Description>12</Description>
 +
              <NameLat/>
 +
              <Code>1123</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <Places>1</Places>
 +
              <ExPlaces>0</ExPlaces>
 +
              <PrintOrder>0</PrintOrder>
 +
            </RoomType>
 +
          </GetRoomTypeResult>
 +
      </GetRoomTypeResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetRoomCategories (Получение списка категорий комнат)===
 +
Метод возвращает список категорий комнат.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetRoomCategoriesResult''' – результат поиска
 +
** '''RoomCategory''' – массив данных
 +
*** '''Name''' – название категории комнаты
 +
*** '''ID''' – идентификатор категории комнаты
 +
*** '''Description''' – описание категории комнаты
 +
*** '''NameLat''' – наименование категории комнаты
 +
*** '''Code''' – код категории комнаты
 +
*** '''CodeLat''' – код категории комнаты латиницей
 +
*** '''Unicode''' – код ISO категории комнаты
 +
*** '''MainPlaces''' – количество основных мест
 +
*** '''ExtraPlaces''' – количество дополнительных мест
 +
*** '''IsMain''' – параметр для внутреннего пользования
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRoomCategories
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRoomCategories/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRoomCategories
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRoomCategoriesResponse xmlns="http://www.megatec.ru/">
 +
        <GetRoomCategoriesResult>
 +
            <RoomCategory>
 +
              <Name>-</Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <MainPlaces>0</MainPlaces>
 +
              <ExtraPlaces>0</ExtraPlaces>
 +
              <IsMain>false</IsMain>
 +
            </RoomCategory>
 +
            <RoomCategory>
 +
              <Name>!!!</Name>
 +
              <ID>304</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>1</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <MainPlaces>0</MainPlaces>
 +
              <ExtraPlaces>0</ExtraPlaces>
 +
              <IsMain>false</IsMain>
 +
            </RoomCategory>
 +
        </GetRoomCategoriesResult>
 +
      </GetRoomCategoriesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetPansions (Получение списка типов питаний)===
 +
Метод возвращает список типов питаний.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetPansionsResult''' – результат поиска
 +
** '''Pansion''' – массив данных
 +
*** '''Name''' – название типа питания
 +
*** '''ID''' – идентификатор типа питания
 +
*** '''Description''' – описание типа питания
 +
*** '''NameLat''' – наименование типа питания латиницей
 +
*** '''Code''' – код типа питания
 +
*** '''CodeLat''' –  код типа питания латиницей
 +
*** '''Unicode''' –  код ISO типа питания
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetPansions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetPansions/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetPansions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetPansionsResponse xmlns="http://www.megatec.ru/">
 +
        <GetPansionsResult>
 +
            <Pansion>
 +
              <Name>&lt;Not defined></Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>ND</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Pansion>
 +
            <Pansion>
 +
              <Name>Full Board</Name>
 +
              <ID>1</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>FB</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Pansion>
 +
            <Pansion>
 +
              <Name>All Inclusive</Name>
 +
              <ID>2</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>AL</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Pansion>
 +
        </GetPansionsResult>
 +
      </GetPansionsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetRatings (Получение массива категорий (звездностей) отелей)===
 +
Метод возвращает массив категорий отелей.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetRatingsResult''' – результат поиска
 +
** '''HotelCategory''' – массив данных
 +
*** '''Name''' – название категории отеля
 +
*** '''ID''' – идентификатор категории отеля
 +
*** '''Description''' – описание категории отеля
 +
*** '''NameLat''' – наименование категории отеля латиницей
 +
*** '''Code''' – код категории отеля
 +
*** '''CodeLat''' –  код категории отеля латиницей
 +
*** '''Unicode''' –  код ISO категории отеля
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRatings
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRatings/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRatings
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRatingsResponse xmlns="http://www.megatec.ru/">
 +
        <GetRatingsResult>
 +
            <HotelCategory>
 +
              <Name>Not defined</Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </HotelCategory>
 +
            <HotelCategory>
 +
              <Name>5 stars (Deluxe)</Name>
 +
              <ID>2</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </HotelCategory>
 +
        </GetRatingsResult>
 +
      </GetRatingsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetFlights (Получение списка авиарейсов)===
 +
Метод возвращает список авиарейсов.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetFlightsResult''' – результат поиска
 +
** '''Flight''' – массив данных
 +
*** '''AirportFrom''' – трансферный узел в пункте отбытия
 +
**** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
**** '''ID''' – идентификатор города трансферного узла
 +
**** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
 +
**** '''NameLat''' – наименование трансферного узла
 +
**** '''Code''' – код трансферного узла
 +
**** '''CodeLat''' – код трансферного узла латиницей
 +
**** '''Unicode''' – код ISO трансферного узла
 +
**** '''RegionID''' – идентификатор региона расположения трансферного узла
 +
**** '''CityID''' – идентификатор города расположения трансферного узла
 +
*** '''AirportTo''' – трансферный узел в пункте прибытия
 +
**** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
**** '''ID''' – идентификатор города трансферного узла
 +
**** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
 +
**** '''NameLat''' – наименование трансферного узла
 +
**** '''Code''' – код трансферного узла
 +
**** '''CodeLat''' – код трансферного узла латиницей
 +
**** '''Unicode''' – код ISO трансферного узла
 +
**** '''RegionID''' – идентификатор региона расположения трансферного узла
 +
**** '''CityID''' – идентификатор города расположения трансферного узла
 +
*** '''TimeFrom''' – время от
 +
*** '''TimeTo''' – время до
 +
*** '''DateFrom''' – дата от
 +
*** '''DateTo''' – дата до
 +
*** '''IsArrival''' –
 +
*** '''Available''' –
 +
*** '''ID''' – идентификатор строки из таблицы '''Charter''' из БД
 +
*** '''Name''' – наименование из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
*** '''Number''' – номер перелета из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
*** '''ArrivalFlightNumber''' – номер рейса прибытия из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
*** '''DepartureFlightNumber''' – номер рейса вылета из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
 +
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetFlights
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetFlights/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetFlights
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetFlightsResponse xmlns="http://www.megatec.ru/">
 +
        <GetFlightsResult>
 +
            <Flight>
 +
              <AirportFrom>
 +
                  <Name>Makedonia</Name>
 +
                  <ID>1000001</ID>
 +
                  <Description>Thessaloniki</Description>
 +
                  <NameLat/>
 +
                  <Code/>
 +
                  <CodeLat/>
 +
                  <Unicode/>
 +
                  <RegionID>7</RegionID>
 +
                  <CityID>12</CityID>
 +
              </AirportFrom>
 +
              <AirportTo>
 +
                  <Name>Makedonia</Name>
 +
                  <ID>1000001</ID>
 +
                  <Description>Thessaloniki</Description>
 +
                  <NameLat/>
 +
                  <Code/>
 +
                  <CodeLat/>
 +
                  <Unicode/>
 +
                  <RegionID>7</RegionID>
 +
                  <CityID>12</CityID>
 +
              </AirportTo>
 +
              <TimeFrom>2021-08-31T00:00:00+04:00</TimeFrom>
 +
              <TimeTo>2021-08-31T00:00:00+04:00</TimeTo>
 +
              <DateFrom>2021-08-31T00:00:00+04:00</DateFrom>
 +
              <DateTo>2021-08-31T00:00:00+04:00</DateTo>
 +
              <IsArrival>false</IsArrival>
 +
              <Available>No</Available>
 +
              <ID>4</ID>
 +
              <Name/>
 +
              <Number>NN 283/284 00:01</Number>
 +
            </Flight>
 +
        </GetFlightsResult>
 +
      </GetFlightsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetAirport (Получение списка трансферных узлов)===
 +
Метод возвращает список трансферных узлов.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetFlightsResult''' – результат поиска
 +
** '''Airport''' – массив данных
 +
*** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
 +
*** '''ID''' – идентификатор трансферного узла
 +
*** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
 +
*** '''NameLat''' – название города трансферного узла латиницей
 +
*** '''Code''' – код города трансферного узла латиницей
 +
*** '''CodeLat''' – код города трансферного узла латиницей
 +
*** '''Unicode''' – код ISO города трансферного узла латиницей
 +
*** '''RegionID''' – идентификатор региона расположения трансферного узла
 +
*** '''CityID''' – идентификатор города расположения трансферного узла
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetAirport
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetAirport/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetAirport
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetAirportResponse xmlns="http://www.megatec.ru/">
 +
        <GetAirportResult>
 +
            <Airport>
 +
              <Name>lalala</Name>
 +
              <ID>3</ID>
 +
              <Description>Moscow</Description>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <RegionID>19</RegionID>
 +
              <CityID>87</CityID>
 +
            </Airport>
 +
            <Airport>
 +
              <Name>El.Venizelos</Name>
 +
              <ID>1004</ID>
 +
              <Description>Athens</Description>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <RegionID>38</RegionID>
 +
              <CityID>55</CityID>
 +
            </Airport>
 +
        </GetAirportResult>
 +
      </GetAirportResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetProviders (Получение списка партнеров, которые являются поставщиками услуг)===
 +
Метод возвращает список партнеров системы, которые являются поставщиками услуг. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetProvidersResult''' – результат поиска
 +
** '''Partner''' – массив данных
 +
*** '''Name''' – название партнера
 +
*** '''ID''' – идентификатор партера
 +
*** '''Description''' – описание партнера
 +
*** '''NameLat''' – название партнера латиницей
 +
*** '''Code''' – код партнера
 +
*** '''CodeLat''' – код партнера латиницей
 +
*** '''Unicode''' – код ISO партнера
 +
*** '''PartnersGroupID''' – идентификатор группы партнера
 +
*** '''FullName''' – полное название партнера
 +
*** '''Fax''' – факс партнера
 +
*** '''Address''' – адрес партнера
 +
*** '''Zip''' –  почтовый код партнера
 +
*** '''Email''' – e-mail партнера
 +
*** '''Phones''' – телефоны партнера
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetProviders
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetProviders/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetProviders
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetProvidersResponse xmlns="http://www.megatec.ru/">
 +
        <GetProvidersResult>
 +
            <Partner>
 +
              <Name>&lt;All></Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat>&lt;All></NameLat>
 +
              <Code>&lt;AL</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <PartnersGroupID>0</PartnersGroupID>
 +
              <FullName>&lt;All></FullName>
 +
              <Fax/>
 +
              <Address/>
 +
              <Zip/>
 +
              <Email/>
 +
              <Phones/>
 +
            </Partner>
 +
            <Partner>
 +
              <Name>HOTEL CHANGE</Name>
 +
              <ID>1</ID>
 +
              <Description/>
 +
              <NameLat>HOTEL CHANGE</NameLat>
 +
              <Code>HOT</Code>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <PartnersGroupID>0</PartnersGroupID>
 +
              <FullName>HOTEL CHANGE</FullName>
 +
              <Fax/>
 +
              <Address/>
 +
              <Zip/>
 +
              <Email/>
 +
              <Phones/>
 +
            </Partner>
 +
        </GetProvidersResult>
 +
      </GetProvidersResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetTransports (Получение списка транспортных средств)===
 +
Метод возвращает список транспортных средств. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetTransportsResult''' – результат поиска
 +
** '''Transport''' – массив данных
 +
*** '''Name''' – название транспортного средства
 +
*** '''ID''' – идентификатор транспортного средства
 +
*** '''Description''' – описание транспортного средства
 +
*** '''NameLat''' – название транспортного средства латиницей
 +
*** '''Code''' – код транспортного средства
 +
*** '''CodeLat''' – код транспортного средства латиницей
 +
*** '''Unicode''' – код ISO транспортного средства
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetTransports
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetTransports/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetTransports
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetTransportsResponse xmlns="http://www.megatec.ru/">
 +
        <GetTransportsResult>
 +
            <Transport>
 +
              <Name>Not defined</Name>
 +
              <ID>0</ID>
 +
              <Description/>
 +
              <NameLat>Not defined</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Transport>
 +
            <Transport>
 +
              <Name>Bus</Name>
 +
              <ID>3</ID>
 +
              <Description/>
 +
              <NameLat>Bus</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Transport>
 +
            <Transport>
 +
              <Name>Minibus</Name>
 +
              <ID>4</ID>
 +
              <Description/>
 +
              <NameLat>Minibus</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Transport>
 +
        </GetTransportsResult>
 +
      </GetTransportsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetTransferTypes (Получение списка типов трансферов)===
 +
Метод возвращает список типов трансферов. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetTransferTypesResult''' – результат поиска
 +
** '''Transport''' – массив данных
 +
*** '''Name''' – название трансфера
 +
*** '''ID''' – идентификатор трансфера
 +
*** '''Description''' – описание трансфера
 +
*** '''NameLat''' – наименование трансфера латиницей
 +
*** '''Code''' – код трансфера
 +
*** '''CodeLat''' – код трансфера латиницей
 +
*** '''Unicode''' – код ISO трансфера
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetTransferTypes
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetTransferTypes/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetTransferTypes
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetTransferTypesResponse xmlns="http://www.megatec.ru/">
 +
        <GetTransferTypesResult>
 +
            <Transport>
 +
              <Name>Group</Name>
 +
              <ID>2</ID>
 +
              <Description/>
 +
              <NameLat>Group</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Transport>
 +
            <Transport>
 +
              <Name>Ind Car</Name>
 +
              <ID>3</ID>
 +
              <Description/>
 +
              <NameLat>Ind Car</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </Transport>
 +
        </GetTransferTypesResult>
 +
      </GetTransferTypesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetRates (Получение списка валют)===
 +
Метод возвращает список валют. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetRatesResult''' – результат поиска
 +
** '''Rate''' – массив данных
 +
*** '''Name''' – название валюты
 +
*** '''ID''' – идентификатор валюты
 +
*** '''Description''' – описание валюты
 +
*** '''NameLat''' – описание валюты латиницей
 +
*** '''Code''' – код валюты
 +
*** '''CodeLat''' – код валюты латиницей
 +
*** '''Unicode''' – код ISO валюты
 +
*** '''IsMain''' – признак валюты "главная"
 +
*** '''IsNational''' – признак валюты «национальная»
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRates
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRates/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRates
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRatesResponse xmlns="http://www.megatec.ru/">
 +
        <GetRatesResult>
 +
            <Rate>
 +
              <Name>Euro</Name>
 +
              <ID>1</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>EU</Code>
 +
              <CodeLat/>
 +
              <Unicode>EUR</Unicode>
 +
              <IsMain>false</IsMain>
 +
              <IsNational>false</IsNational>
 +
            </Rate>
 +
            <Rate>
 +
              <Name>US dollar</Name>
 +
              <ID>2</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>USD</Code>
 +
              <CodeLat/>
 +
              <Unicode>USD</Unicode>
 +
              <IsMain>false</IsMain>
 +
              <IsNational>false</IsNational>
 +
            </Rate>
 +
        </GetRatesResult>
 +
      </GetRatesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetServicePackage (Получение списка вариантов пакетных услуг)===
 +
Метод возвращает список вариантов пакетных услуг. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetServicePackageResult''' – результат поиска
 +
** '''ServiceList''' – массив данных
 +
*** '''Name''' – название варианта
 +
*** '''ID''' – идентификатор варианта
 +
*** '''Description''' – описание варианта
 +
*** '''NameLat''' – описание варианта латиницей
 +
*** '''Code''' – код варианта
 +
*** '''CodeLat''' – код варианта латиницей
 +
*** '''Unicode''' – код ISO варианта
 +
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
 +
*** '''CountryID''' – ключ страны варианта
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetServicePackage
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetServicePackage/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetServicePackage
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetServicePackageResponse xmlns="http://www.megatec.ru/">
 +
        <GetServicePackageResult>
 +
            <ServiceList>
 +
              <Name>5 days in Antique Greece (4 nights)/DBL BB</Name>
 +
              <ID>21</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <ServiceClaseID>0</ServiceClaseID>
 +
              <CountryID>4</CountryID>
 +
            </ServiceList>
 +
            <ServiceList>
 +
              <Name>5 days in Antique Greece (4 nights)/DBL HB</Name>
 +
              <ID>148</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <ServiceClaseID>0</ServiceClaseID>
 +
              <CountryID>4</CountryID>
 +
            </ServiceList>
 +
        </GetServicePackageResult>
 +
      </GetServicePackageResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetDLStatuses (Получение списка статусов услуг)===
 +
Метод возвращает список статусов услуг. <br />
 +
Возвращаемый результат:<br />
 +
* '''GetDLStatusesResult''' – результат поиска
 +
** '''StatusService''' – массив данных
 +
*** '''Name''' – название статуса услуги
 +
*** '''ID''' – идентификатор статуса услуги
 +
*** '''Description''' – описание статуса услуги
 +
*** '''NameLat''' – описание статуса услуги латиницей
 +
*** '''Code''' – код статуса услуги
 +
*** '''CodeLat''' – код статуса услуги латиницей
 +
*** '''Unicode''' – код ISO статуса услуги
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetDLStatuses
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetDLStatuses/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetDLStatuses
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetDLStatusesResponse xmlns="http://www.megatec.ru/">
 +
        <GetDLStatusesResult>
 +
            <StatusService>
 +
              <Name>Wait</Name>
 +
              <ID>1</ID>
 +
              <Description/>
 +
              <NameLat>Wait</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </StatusService>
 +
            <StatusService>
 +
              <Name>Confirmed</Name>
 +
              <ID>2</ID>
 +
              <Description/>
 +
              <NameLat>Confirmed</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </StatusService>
 +
            <StatusService>
 +
              <Name>Not confirmed</Name>
 +
              <ID>4</ID>
 +
              <Description/>
 +
              <NameLat>Not confirmed</NameLat>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </StatusService>
 +
        </GetDLStatusesResult>
 +
      </GetDLStatusesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetTariffs (Получение списка тарифов для определенного типа услуг)===
 +
Метод возвращает тарифы для определенного типа услуг. <br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''SvKey *''' – ключ типа услуги
 +
Возвращаемый результат:<br />
 +
* '''GetTariffsResult''' – результат поиска
 +
** '''Tariff''' – массив данных
 +
*** '''ID''' – идентификатор тарифа
 +
*** '''Name''' – наименование тарифа
 +
*** '''Description''' – описание тарифа
 +
*** '''NameLat''' – наименование тарифа латиницей
 +
*** '''Code''' – код тарифа
 +
*** '''CodeLat''' – код тарифа латиницей
 +
*** '''Unicode''' – код ISO тарифа
 +
*** '''SvKey''' – ключ типа услуги
 +
*** '''Comment''' – описание
 +
*** '''CreateDate''' – дата создания
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetTariffs
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetTariffs>
 +
        <!--Optional:-->
 +
        <meg:guid>6ef6eeb2-a766-4a30-92c0-348d5c2afb94</meg:guid>
 +
        <meg:svKey>1</meg:svKey>
 +
      </meg:GetTariffs>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetTariffs
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetTariffsResponse xmlns="http://www.megatec.ru/">
 +
        <GetTariffsResult>
 +
            <Tariff>
 +
              <Name>!A4</Name>
 +
              <ID>785</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <SVKey>1</SVKey>
 +
              <Comment>A</Comment>
 +
              <CreateDate>2018-11-14T00:00:00</CreateDate>
 +
            </Tariff>
 +
            <Tariff>
 +
              <Name>Info Tour</Name>
 +
              <ID>623</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
              <SVKey>1</SVKey>
 +
              <Comment/>
 +
              <CreateDate>2009-10-01T00:00:00</CreateDate>
 +
            </Tariff>
 +
        </GetTariffsResult>
 +
      </GetTariffsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetRoomDescriptions (Получение массива описаний комнат)===
 +
Метод возвращает массив описаний комнат.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''RoomTypeId *''' – ключ типа комнаты (0 – для всех)<br />
 +
* '''RoomCategoryId *''' – ключ категории комнаты (0 – для всех)
 +
Возвращаемый результат:<br />
 +
* '''GetRoomDescriptionsResult''' – результат поиска
 +
** '''AdditionalDescription''' – массив данных
 +
*** '''Name''' – наименование описания комнаты
 +
*** '''ID''' – идентификатор описания комнаты
 +
*** '''Description''' – описание
 +
*** '''NameLat''' – наименование описания комнаты латиницей
 +
*** '''Code''' – код описания комнаты
 +
*** '''CodeLat''' – код описания комнаты латиницей
 +
*** '''Unicode''' – код ISO описания комнаты
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRoomDescriptions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRoomDescriptions>
 +
        <meg:roomTypeId>7</meg:roomTypeId>
 +
        <meg:roomCategoryId>7</meg:roomCategoryId>
 +
      </meg:GetRoomDescriptions>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRoomDescriptions
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRoomDescriptionsResponse xmlns="http://www.megatec.ru/">
 +
        <GetRoomDescriptionsResult>
 +
            <AdditionalDescription>
 +
              <Name>Family Room Golf View</Name>
 +
              <ID>1368</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code/>
 +
              <CodeLat/>
 +
              <Unicode/>
 +
            </AdditionalDescription>
 +
        </GetRoomDescriptionsResult>
 +
      </GetRoomDescriptionsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetAccommodations (Получение размещения отелей)===
 +
Метод возвращает размещения отелей.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
Возвращаемый результат:<br />
 +
* '''GetAccommodationsResult''' – результат поиска
 +
** '''Message''' – идентификатор размещения
 +
** '''Data''' – массив объектов с данными
 +
*** '''AccomodationInfo''' – массив данных с размещением
 +
**** '''Id''' – идентификатор размещения
 +
**** '''Code''' – код размещения
 +
**** '''Name''' – название размещения
 +
**** '''IsPerRoom''' – за комнату или за человека
 +
**** '''NameUnicode''' – название размещения в Unicode
 +
**** '''CountAdultMain''' – количество взрослых на главном месте
 +
**** '''CountChildMain''' – количество детей на главном месте
 +
**** '''CountAdultExtra''' – количество взрослых на доп. месте
 +
**** '''CountChildExtra''' – количество детей на доп. месте
 +
**** '''ChildrenAges''' – строка с описание возрастов детей
 +
**** '''IsWeb''' – доступность для Interlook-Web
 +
**** '''IsPackage''' – можно ли добавлять в пакет
 +
**** '''UpdateDate''' – дата последнего обновления размещения
 +
**** '''ClildrenAgesList''' – список с возрастами детей
 +
***** '''AccomadationAge''' – массив данных с возрастом
 +
****** '''Id''' – идентификатор записи
 +
****** '''AgeFrom''' – возраст «с»
 +
****** '''AgeTo''' – возраст «по»
 +
****** '''CountMen''' – количество взрослых в размещении
 +
****** '''IsMain''' – на главном ли месте ребенок этого возраста
 +
****** '''UpdateDate''' – дата последнего обновления записи
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetAccommodations
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetAccommodations>
 +
        <!--Optional:-->
 +
        <meg:guid>1b972765-0318-4ca3-9437-cefa99a3959d</meg:guid>
 +
      </meg:GetAccommodations>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetAccommodations
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetAccommodationsResponse xmlns="http://www.megatec.ru/">
 +
        <GetAccommodationsResult Message="Ok">
 +
            <Data>
 +
            <AccomodationInfo Id="7939" Code="1Ad+2Ch(3-12)" Name="1Ad+2Ch(3-12)" IsPerRoom="true" NameUnicode="1Ad+2Ch(3-12)" CountAdultMain="1" CountChildMain="2" CountAdultExtra="0" CountChildExtra="0" ChildrenAges="2Ch(3-12)" IsWeb="true" IsPackage="false" UpdateDate="2020-04-10T18:25:09.3">
 +
                  <ChildrenAgesList>
 +
                    <AccomadationAge Id="6664" AgeFrom="3" AgeTo="12" CountMen="2" IsMain="true" UpdateDate="2020-04-10T18:25:09.293"/>
 +
                  </ChildrenAgesList>
 +
              </AccomodationInfo>
 +
            </Data>
 +
        </GetAccommodationsResult>
 +
      </GetAccommodationsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetRoomAccommodations (Получение размещения отелей и первых 2 значений возрастов из списка возрастов детей)===
 +
Метод возвращает размещения отелей и первые 2 значения возрастов из списка возрастов детей.<br />
 +
Возвращаемый результат:<br />
 +
* '''GetRoomAccommodationsResult''' – результат поиска
 +
** '''RoomAccomodation''' – массив данных
 +
*** '''Name''' – название размещения
 +
*** '''ID''' – идентификатор размещения
 +
*** '''Description''' – описание размещения
 +
*** '''NameLat''' – наименование размещения латиницей
 +
*** '''Code''' – код размещения
 +
*** '''CodeLat''' – код размещения латиницей
 +
*** '''Unicode''' – код ISO размещения
 +
*** '''PerRoom''' – за комнату
 +
*** '''AdultMainPalces''' – количество взрослых основных мест
 +
*** '''ChildMainPalces''' – количество детских основных мест
 +
*** '''AdultExtraPalces''' – количество взрослых дополнительных мест
 +
*** '''ChildExtraPalces''' – количество детских дополнительных мест
 +
*** '''MainPlaces''' – количество основных мест
 +
*** '''ExtraPlaces''' – количество дополнительных мест
 +
*** '''IsMain''' – есть ли основные места
 +
*** '''AgeFrom''' – возраст детей «с»
 +
*** '''AgeTo''' – возраст детей «по»
 +
*** '''Age2From''' – возраст детей «с»
 +
*** '''Age2To''' – возраст детей «по»
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetRoomAccommodations
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetRoomAccommodations/>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetRoomAccommodations
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetRoomAccommodationsResponse xmlns="http://www.megatec.ru/">
 +
        <GetRoomAccommodationsResult>
 +
            <RoomAccomodation>
 +
              <Name>2Add</Name>
 +
              <ID>15</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>2+</Code>
 +
              <CodeLat/>
 +
              <Unicode>2Ad+1Ch(3-5)</Unicode>
 +
              <PerRoom>true</PerRoom>
 +
              <AdultMainPalces>2</AdultMainPalces>
 +
              <ChildMainPalces>4</ChildMainPalces>
 +
              <AdultExtraPalces>0</AdultExtraPalces>
 +
              <ChildExtraPalces>0</ChildExtraPalces>
 +
              <MainPlaces>6</MainPlaces>
 +
              <ExtraPlaces>0</ExtraPlaces>
 +
              <IsMain>true</IsMain>
 +
              <AgeFrom>3</AgeFrom>
 +
              <AgeTo>5</AgeTo>
 +
              <Age2From>0</Age2From>
 +
              <Age2To>0</Age2To>
 +
            </RoomAccomodation>
 +
            <RoomAccomodation>
 +
              <Name>1Ad+1inf</Name>
 +
              <ID>16</ID>
 +
              <Description/>
 +
              <NameLat/>
 +
              <Code>1Ad+1inf</Code>
 +
              <CodeLat/>
 +
              <Unicode>1Ad</Unicode>
 +
              <PerRoom>true</PerRoom>
 +
              <AdultMainPalces>1</AdultMainPalces>
 +
              <ChildMainPalces>0</ChildMainPalces>
 +
              <AdultExtraPalces>0</AdultExtraPalces>
 +
              <ChildExtraPalces>0</ChildExtraPalces>
 +
              <MainPlaces>1</MainPlaces>
 +
              <ExtraPlaces>0</ExtraPlaces>
 +
              <IsMain>true</IsMain>
 +
              <AgeFrom>0</AgeFrom>
 +
              <AgeTo>0</AgeTo>
 +
              <Age2From>0</Age2From>
 +
              <Age2To>0</Age2To>
 +
            </RoomAccomodation>
 +
        </GetRoomAccommodationsResult>
 +
      </GetRoomAccommodationsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetClientInfo (Выдача информации по партнёру, к которому относится on-line user)===
 +
Метод выдает информацию по партнёру, к которому относится on-line user, под которым осуществлен запрос в методе [[#Connect (Получение аутентификационного токена)|Connect]].<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[#Connect (Получение аутентификационного токена)|Connect]])<br />
 +
Возвращаемый результат:
 +
* '''Name''' – наименование партнера
 +
* '''MarketName''' – перечень рынков из карточки партнера
 +
* '''Address''' – адрес из карточки партнера
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetClientInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetClientInfo>
 +
        <!--Optional:-->
 +
        <meg:guid>6851ab74-f299-4668-ade8-b8e125b7ad61</meg:guid>
 +
      </meg:GetClientInfo>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
 +
Возвращаемый результат метода GetClientInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetClientInfoResponse xmlns="http://www.megatec.ru/">
 +
        <GetClientInfoResult Message="Ok">
 +
            <Data>
 +
              <ClientInfo>
 +
                  <Name>Alpha Tour</Name>
 +
                  <MarketName>Russian Market</MarketName>
 +
                  <Address>Belarus,Minsk,Pobediteley street 23/1-115a A</Address>
 +
              </ClientInfo>
 +
            </Data>
 +
        </GetClientInfoResult>
 +
      </GetClientInfoResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Методы интеграции с системами оплаты==
 +
=== GetReservationPenalties (Получение штрафов по путевке до того, как ее аннулировать)===
 +
Метод возвращает размеры штрафов по путевке до того, как ее аннулировать.<br />
 +
Работа метода регулируется лицензией.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''ReservationKey *''' – ключ путевки
 +
* '''CancellationDate''' – дата аннуляции, на которую выдается условие и сумма штрафа. Если не указана, то получаем все возможные правила аннуляции вплоть до заезда.
 +
Возвращаемый результат:<br />
 +
* '''GetReservationPenaltiesResult''' – результат поиска
 +
** '''Penalty''' – штраф
 +
*** '''ServicePenalty''' – сервис штрафов
 +
**** '''ServiceClassID'''
 +
**** '''ID''' – идентификатор штрафа
 +
**** '''Name''' – наименование штрафа
 +
**** '''PenaltyData''' – массив данных штрафа
 +
***** '''PenaltyDataInfo''' – массив данных
 +
****** '''TotalPenalty''' – полная сумма штрафа
 +
****** '''RateCode''' – код валюты
 +
****** '''PolicyDescription''' – условия штрафа
 +
****** '''CancellationPolicyData''' – массив данных аннуляции
 +
******* '''PolicyKey''' – ключ аннуляции
 +
******* '''DateFrom''' – дата с
 +
******* '''DateTo''' – дата по
 +
******* '''PenaltyValue''' – значение штрафа
 +
******* '''IsPercent''' - процент, указывающий,  что штраф в "%" (''true'') или в "ночах" (''false'')
 +
**** '''Hotel''' – отель
 +
***** '''ID''' – идентификатор отеля
 +
***** '''Name''' – наименование отеля
 +
**** '''RoomType''' – тип комнаты
 +
***** '''ID''' – идентификатор комнаты
 +
***** '''Name''' – название комнаты
 +
**** '''RoomCategory''' – категория номера
 +
***** '''ID''' – идентификатор категории номера
 +
***** '''Name''' – наименование категории номера
 +
**** '''Accommodation''' – размещение
 +
***** '''ID''' – идентификатор размещения
 +
***** '''Name''' – наименование размещения
 +
**** '''Pansion''' – тип питания
 +
***** '''ID''' – идентификатор типа питания
 +
***** '''Name''' – наименование типа питания<br />
 +
В случае ошибок получим сообщение с расшифровкой.<br />
 +
В случае некорректного Guid получим сообщение:"Invalid user or password (Invalid GUID)".<br />
 +
В случае отсутствия договора с указанным ключом для текущего партнера получим сообщение:"Check the parameter 'reservationKey' = <значение в запросе>. There is no any reservation for you in the database.".<br />
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetReservationPenalties
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetReservationPenalties>
 +
        <!--Optional:-->
 +
        <meg:guid>9d041308-0e4c-4d07-8486-9e2293f1de75</meg:guid>
 +
        <meg:reservationKey>36080</meg:reservationKey>
 +
        </meg:GetReservationPenalties>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetReservationPenalties
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetReservationPenaltiesResponse xmlns="http://www.megatec.ru/">
 +
        <GetReservationPenaltiesResult>
 +
            <Penalty>
 +
              <ServicePenalty xsi:type="HotelPenalty">
 +
                  <ServiceClassID>0</ServiceClassID>
 +
                  <ID>164217</ID>
 +
                  <Name>HTL::Delphi/Fedriades Hotel /Double Room/2AD/100 m2/BB</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>0</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled before 01.09.2021, no penalty Penalty value is 0.00 EU</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>-1</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo>2021-09-01T00:00:00</DateTo>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>17.76</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled from 01.09.2021, the penalty will be 2.00 % of the cost of accommodation Penalty value is 17.76 EU</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>73</PolicyKey>
 +
                          <DateFrom>2021-09-01T00:00:00</DateFrom>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>2</PenaltyValue>
 +
                          <IsPercent>true</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
                  <Hotel>
 +
                    <ID>2426</ID>
 +
                    <Name>Fedriades Hotel</Name>
 +
                  </Hotel>
 +
                  <RoomType>
 +
                    <ID>3</ID>
 +
                    <Name>Double Room</Name>
 +
                  </RoomType>
 +
                  <RoomCategory>
 +
                    <ID>47</ID>
 +
                    <Name>100 m2</Name>
 +
                  </RoomCategory>
 +
                  <Accommodation>
 +
                    <ID>5558</ID>
 +
                    <Name>2Ad</Name>
 +
                  </Accommodation>
 +
                  <Pansion>
 +
                    <ID>3</ID>
 +
                    <Name>Bed and Breakfast</Name>
 +
                  </Pansion>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>2</ServiceClassID>
 +
                  <ID>164218</ID>
 +
                  <Name>TRF::Arrival transfer/Mini Bus/El.Venizelos-Fedriades Hotel /Delphi/!AA 910</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>0</TotalPenalty>
 +
                        <RateCode/>
 +
                        <PolicyDescription/>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>5</ServiceClassID>
 +
                  <ID>164219</ID>
 +
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>270</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>0</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>5</ServiceClassID>
 +
                  <ID>164220</ID>
 +
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>270</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>0</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>5</ServiceClassID>
 +
                  <ID>164222</ID>
 +
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>100</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>0</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>5</ServiceClassID>
 +
                  <ID>164223</ID>
 +
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>100</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>0</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
              <ServicePenalty>
 +
                  <ServiceClassID>5</ServiceClassID>
 +
                  <ID>164224</ID>
 +
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
 +
                  <PenaltyData>
 +
                    <PenaltyDataInfo>
 +
                        <TotalPenalty>100</TotalPenalty>
 +
                        <RateCode>EU</RateCode>
 +
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
 +
                        <CancellationPolicyData>
 +
                          <PolicyKey>0</PolicyKey>
 +
                          <DateFrom xsi:nil="true"/>
 +
                          <DateTo xsi:nil="true"/>
 +
                          <PenaltyValue>0</PenaltyValue>
 +
                          <IsPercent>false</IsPercent>
 +
                        </CancellationPolicyData>
 +
                    </PenaltyDataInfo>
 +
                  </PenaltyData>
 +
              </ServicePenalty>
 +
            </Penalty>
 +
        </GetReservationPenaltiesResult>
 +
      </GetReservationPenaltiesResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CreatePayment (Создание платежа по путевке)===
 +
Метод создает платеж по путевке.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Date *''' – дата создания платежа
 +
* '''Sum *''' – сумма платежа
 +
* '''CurrencyIsoCode *''' – ISO код валюты платежа
 +
* '''ReservationCode *''' – код путевки
 +
* '''PaymentId *''' – идентификатор платежа (задается вручную для последующего идентифицирования платежа). Уникальный код, указывается пользователем один раз, не должен повторяться при следующей оплате по данной заявке.
 +
Возвращаемый результат:<br />
 +
* '''CreatePaymentResult''' – результат выдачи
 +
** '''0''' – NoError – ошибок нет
 +
** '''1''' – DogovorNotFound – путевка с таким кодом не найдена
 +
** '''2''' – InternalError – внутренняя ошибка
 +
** '''3''' – DogovorAnnulate – путевка аннулирована
 +
** '''4''' – DogovorPayed – путевка оплачена
 +
** '''7''' – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
 +
** '''8''' – IncorrectPaymentType – по путевке есть платежи запрещенных типов
 +
** '''9''' – NotAllowedPartnerKey – партнер по путевке не разрешен
 +
** '''10''' – FailureSignature – ошибка подписи
 +
** '''11''' – NoInvoices – нет инвойсов (счетов) по путевке
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CreatePayment
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CreatePayment>
 +
        <!--Optional:-->
 +
        <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
 +
        <meg:date>2021-09-10</meg:date>
 +
        <meg:sum>120</meg:sum>
 +
        <!--Optional:-->
 +
        <meg:currencyIsoCode>EUR</meg:currencyIsoCode>
 +
        <!--Optional:-->
 +
        <meg:reservationCode>MT110919A0K</meg:reservationCode>
 +
        <!--Optional:-->
 +
        <meg:paymentId>13</meg:paymentId>
 +
      </meg:CreatePayment>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CreatePayment
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CreatePaymentResponse xmlns="http://www.megatec.ru/">
 +
        <CreatePaymentResult>0</CreatePaymentResult>
 +
      </CreatePaymentResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetPaymentInformation (Поиск информации о платеже с заданным идентификатором платежа из внешней системы)===
 +
Метод возвращает информацию о платеже с заданным идентификатором платежа из внешней системы.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''ReservationCode *''' – код путевки
 +
* '''ExternalPaymentId *''' – идентификатор платежа (Параметр PaymentId в запросе метода [[Master-Interlook:IntegrationService#CreatePayment|CreatePayment]])
 +
Возвращаемый результат:<br />
 +
* '''GetPaymentInformationResult''' – результат выдачи
 +
** '''IsPaymentExists''' – показывает, есть ли запрошенный платеж
 +
*** '''true''' – платеж с указанным идентификатором по указанной путевке существует
 +
*** '''false''' – запрошенного платежа нет
 +
** '''PaymentInformationResult''' – массив данных платежа
 +
*** '''InternalPaymentId''' – идентификатор платежа в системе Interlook,
 +
*** '''DogovorCode''' – код путевки,
 +
*** '''PaymentSum''' – сумма платежа,
 +
*** '''PaymentNationalSum''' – сумма платежа в национальной валюте,
 +
*** '''PaymentRateISOCode''' – ISO код валюты платежа
 +
*** '''CreateDate''' – дата проведения платежа
 +
** '''ErrorCode''' – код ошибки
 +
*** '''0''' – NoError – ошибок нет
 +
*** '''1''' – DogovorNotFound – путевка с таким кодом не найдена
 +
*** '''2''' – InternalError – внутренняя ошибка
 +
*** '''3''' – DogovorAnnulate – путевка аннулирована
 +
*** '''4''' – DogovorPayed – путевка оплачена
 +
*** '''7''' – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
 +
*** '''8''' – IncorrectPaymentType – по путевке есть платежи запрещенных типов
 +
*** '''9''' – NotAllowedPartnerKey – партнер по путевке не разрешен
 +
*** '''10''' – FailureSignature – ошибка подписи
 +
*** '''11''' – NoInvoices – нет инвойсов (счетов) по путевке
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetPaymentInformation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetPaymentInformation>
 +
        <!--Optional:-->
 +
        <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
 +
        <!--Optional:-->
 +
        <meg:reservationCode>MT110919A0K</meg:reservationCode>
 +
        <!--Optional:-->
 +
        <meg:externalPaymentId>12</meg:externalPaymentId>
 +
      </meg:GetPaymentInformation>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetPaymentInformation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetPaymentInformationResponse xmlns="http://www.megatec.ru/">
 +
        <GetPaymentInformationResult>
 +
            <IsPaymentExists>true</IsPaymentExists>
 +
            <PaymentsShortInformation>
 +
              <InternalPaymentId>1997</InternalPaymentId>
 +
              <DogovorCode>MT110919A0K</DogovorCode>
 +
              <PaymentSum>150</PaymentSum>
 +
              <PaymentNationalSum>150</PaymentNationalSum>
 +
              <PaymentRateISOCode>EUR</PaymentRateISOCode>
 +
              <CreateDate>2021-09-13T18:17:20.837</CreateDate>
 +
            </PaymentsShortInformation>
 +
            <ErrorCode>0</ErrorCode>
 +
        </GetPaymentInformationResult>
 +
      </GetPaymentInformationResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===GetCancellationPolicyInfoWithPenalty (Получение информации по расчету штрафов по отелю ) ===
 +
<table style="background-color:#ffffcc;color:black" border="1" cellpadding="10" cellspacing="0"><tr><td>
 +
Данный функционал доступен начиная с релиза 11.20<br>
 +
</td></tr></table><br>
 +
Метод возвращает информацию по расчету штрафов по отелю.<br />
 +
Выдача результатов метода регулируется лицензией.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DateFrom *''' – дата начала проживания
 +
* '''DateTo *''' – дата окончания проживания
 +
* '''HotelKey *''' – идентификатор отеля
 +
* '''PansionKey''' – идентификатор питания
 +
* '''AccommodationKey ''' – идентификатор размещения, необязательный если передаем Pax.
 +
* '''RoomTypeKey''' – идентификатор типа комнаты
 +
* '''RoomCategoryKey''' – идентификатор категории номера
 +
* '''Pax *''' – Pax по услуге
 +
* '''Ages*''' – список с возрастами детей. Если  ищем размещение без детей передаем пустой параметр (<meg:Ages></meg:Ages>)
 +
* '''CancellationDate''' – дата аннуляции (если не указана – берется текущая)
 +
Возвращаемый результат:<br />
 +
* '''GetCancellationPolicyInfoWithPenaltyResult''' – результат выдачи
 +
** '''CancellationPolicyInfoWithPenalty''' – массив данных
 +
*** '''HotelKey''' – идентификатор отеля
 +
*** '''HotelName''' – наименование отеля
 +
*** '''AccomodatioKey''' – идентификатор размещения
 +
*** '''AccomodatioName''' – наименование размещения
 +
*** '''RoomTypeKey''' – идентификатор типа комнаты
 +
*** '''RoomTypeName''' – наименование типа комнаты
 +
*** '''RoomCategoryKey''' – идентификатор категории номера
 +
*** '''RoomCategoryName''' – наименование категории номера
 +
*** '''PansionKey''' – идентификатор питания
 +
*** '''PansionName''' – наименование питания
 +
*** '''PolicyDescripion''' – описание политики аннуляции и полной суммы штрафа
 +
*** '''CancellationDate''' – дата аннуляции
 +
*** '''PolicyData''' – массив данных
 +
**** '''CancellationPolicyWithPenaltyValue''' – массив данных по расчету штрафа
 +
***** '''PolicyKey''' – ключ политики
 +
***** '''DateFrom''' – дата "от"
 +
***** '''DateTo''' – не задана
 +
***** '''PenaltyValue''' – значение штрафа
 +
***** '''IsPercent''' – параметр, указывающий, что штраф в "%" (true) или в "ночах" (false)
 +
***** '''PenaltyTotal''' – общая сумма штрафа
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetCancellationPolicyInfoWithPenalty
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetCancellationPolicyInfoWithPenalty>
 +
      <!--Optional:-->
 +
        <meg:guid>66c8bbb3-53dc-47a0-8ddb-8e08ec68c84c</meg:guid>
 +
        <meg:dateFrom>2021-12-01</meg:dateFrom>
 +
        <meg:dateTo>2021-12-15</meg:dateTo>
 +
        <meg:HotelKey>2942</meg:HotelKey>
 +
        <meg:PansionKey>3</meg:PansionKey>
 +
        <meg:AccommodationKey>5558</meg:AccommodationKey>
 +
        <meg:RoomTypeKey>3</meg:RoomTypeKey>
 +
        <meg:RoomCategoryKey>20</meg:RoomCategoryKey>
 +
        <meg:Pax>2</meg:Pax>
 +
        <!--Optional:-->
 +
        <meg:Ages>
 +
            <!--Zero or more repetitions:-->
 +
            <meg:int>14</meg:int>
 +
        </meg:Ages>
 +
        <meg:CancellationDate>2021-11-30</meg:CancellationDate>
 +
      </meg:GetCancellationPolicyInfoWithPenalty>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetCancellationPolicyInfoWithPenalty
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetCancellationPolicyInfoWithPenaltyResponse xmlns="http://www.megatec.ru/">
 +
        <GetCancellationPolicyInfoWithPenaltyResult Message="Ok">
 +
            <Data>
 +
              <CancellationPolicyInfoWithPenalty>
 +
                  <HotelKey>2942</HotelKey>
 +
                  <HotelName>Green (Kiev) Not defined</HotelName>
 +
                  <AccomodatioKey>5558</AccomodatioKey>
 +
                  <AccomodatioName>2AD</AccomodatioName>
 +
                  <RoomTypeKey>3</RoomTypeKey>
 +
                  <RoomTypeName>Double Room</RoomTypeName>
 +
                  <RoomCategoryKey>20</RoomCategoryKey>
 +
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
 +
                  <PansionKey>3</PansionKey>
 +
                  <PansionName>BB</PansionName>
 +
                  <PolicyDescripion>
 +
                    <string>If canceled in period 30.11.2021 - 30.11.2021, the penalty will be 2 night(s). Penalty value is 690.00 EU</string>
 +
                    <string>If canceled from 01.12.2021, the penalty will be 100.00 % of the cost of accommodation. Penalty value is 4,140.00 EU</string>
 +
                  </PolicyDescripion>
 +
                  <CancellationDate>2021-11-30T00:00:00</CancellationDate>
 +
                  <PolicyData>
 +
                    <CancellationPolicyWithPenaltyValue>
 +
                        <PolicyKey>166</PolicyKey>
 +
                        <DateFrom>2021-11-30T00:00:00</DateFrom>
 +
                        <DateTo>2021-11-30T00:00:00</DateTo>
 +
                        <PenaltyValue>2</PenaltyValue>
 +
                        <IsPercent>false</IsPercent>
 +
                        <PenaltyTotal>690</PenaltyTotal>
 +
                        <Currency>EU</Currency>
 +
                    </CancellationPolicyWithPenaltyValue>
 +
                    <CancellationPolicyWithPenaltyValue>
 +
                        <PolicyKey>-1</PolicyKey>
 +
                        <DateFrom>2021-12-01T00:00:00</DateFrom>
 +
                        <DateTo xsi:nil="true"/>
 +
                        <PenaltyValue>100</PenaltyValue>
 +
                        <IsPercent>true</IsPercent>
 +
                        <PenaltyTotal>4140</PenaltyTotal>
 +
                        <Currency>EU</Currency>
 +
                    </CancellationPolicyWithPenaltyValue>
 +
                  </PolicyData>
 +
              </CancellationPolicyInfoWithPenalty>
 +
            </Data>
 +
        </GetCancellationPolicyInfoWithPenaltyResult>
 +
      </GetCancellationPolicyInfoWithPenaltyResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CheckReservation (Получение информации о платеже, необходимом для путевки, в выбранной валюте)===
 +
Метод возвращает информацию о платеже, необходимом для путевки, в выбранной валюте.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgCode *''' – код путевки
 +
* '''CurrencyIsoCode *''' – ISO код валюты платежа
 +
Возвращаемый результат:<br />
 +
* '''CheckReservationResult''' – результат выдачи
 +
** '''Amount''' – сумма платежа
 +
** '''RateCode''' – ISO код валюты платежа
 +
** '''NationalCurrencyPrice''' – сумма платежа в национальной валюте
 +
** '''NationalRateCode''' – ISO код национальной валюты
 +
** '''CustomCurrencyPrice''' – сумма платежа в произвольной валюте
 +
** '''CustomRateCode''' – ISO код произвольной валюты платежа
 +
** '''ErrorCode''' – код результата
 +
*** '''0''' – NoError – ошибок нет
 +
*** '''1''' – DogovorNotFound – путевка с таким кодом не найдена
 +
*** '''2''' – InternalError – внутренняя ошибка
 +
*** '''3''' – DogovorAnnulate – путевка аннулирована
 +
*** '''4''' – DogovorPayed – путевка оплачена
 +
*** '''7''' – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
 +
*** '''8''' – IncorrectPaymentType – по путевке есть платежи запрещенных типов
 +
*** '''9''' – NotAllowedPartnerKey – партнер по путевке не разрешен
 +
*** '''10''' – FailureSignature – ошибка подписи
 +
*** '''11''' – NoInvoices – нет инвойсов (счетов) по путевке
 +
** '''FilialKey''' – идентификатор филиала партнера
 +
** '''BeginTourDate''' – дата начала тура по путевке
 +
** '''EndTourDate''' – дата окончания тура путевки
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CheckReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CheckReservation>
 +
        <!--Optional:-->
 +
        <meg:userToken>d9c97f30-e0f5-450a-a802-f50551960d78</meg:userToken>
 +
        <!--Optional:-->
 +
        <meg:dgCode>MT110919A0K</meg:dgCode>
 +
        <!--Optional:-->
 +
        <meg:currencyIsoCode>EUR</meg:currencyIsoCode>
 +
      </meg:CheckReservation>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CheckReservation
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CheckReservationResponse xmlns="http://www.megatec.ru/">
 +
        <CheckReservationResult>
 +
            <Amount>1310</Amount>
 +
            <RateCode>EUR</RateCode>
 +
            <NationalCurrencyPrice>1310</NationalCurrencyPrice>
 +
            <NationalRateCode>EUR</NationalRateCode>
 +
            <CustomCurrencyPrice>1310</CustomCurrencyPrice>
 +
            <CustomRateCode>EUR</CustomRateCode>
 +
            <ErrorCode>0</ErrorCode>
 +
            <FilialKey>1199</FilialKey>
 +
            <BeginTourDate>2021-09-19T00:00:00</BeginTourDate>
 +
            <EndTourDate>2021-10-11T00:00:00</EndTourDate>
 +
        </CheckReservationResult>
 +
      </CheckReservationResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
===CreatePaymentForDogovor (Создание платежа по путевке по выставленному инвойсу)===
 +
Метод создает платеж по путевке, у которой выставлен инвойс.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DgKey *''' – ключ путевки
 +
* '''Payment *''' – размер платежа
 +
Возвращаемый результат:<br />
 +
* '''CreatePaymentForDogovorResult''' – результат выдачи
 +
** '''OrderId''' – идентификатор платежа
 +
В случае отсутствия созданного инвойса по путевке получим сообщение: "There is no invoice".
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CreatePaymentForDogovor
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CreatePaymentForDogovor>
 +
        <!--Optional:-->
 +
        <meg:guid>92a87a3b-04f8-4cad-bd0f-360fe8bd0a8f</meg:guid>
 +
        <meg:dgKey>36225</meg:dgKey>
 +
        <meg:payment>1500</meg:payment>
 +
      </meg:CreatePaymentForDogovor>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CreatePaymentForDogovor
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CreatePaymentForDogovorResponse xmlns="http://www.megatec.ru/">
 +
        <CreatePaymentForDogovorResult/>
 +
        <orderId>2008</orderId>
 +
      </CreatePaymentForDogovorResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
==Метод работы с квотами==
 +
=== CheckQuota (Проверка доступности номера отеля на период)===
 +
Метод возвращает информацию о доступности номера отеля на период. <br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DateFrom''' – дата с
 +
* '''DateTo''' – дата по
 +
* '''HotelId *''' – ключ отеля
 +
* '''RoomTypeId *''' – ключ типа комнаты (-1 для всех)
 +
* '''RoomCategoryId *''' – ключ категории комнаты (-1 для всех)
 +
Возвращаемый результат:<br />
 +
* '''ServiceResult''' – результат поиска
 +
* '''QuotaSimpleInfo''' – массив данных
 +
** '''RoomTypeId''' – ключ типа комнаты
 +
** '''RoomCategoryId''' – ключ категории комнаты
 +
** '''Quota''' – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
 +
** '''RoomVariantName''' – наименование варианта комнаты (комбинации из таблицы RoomVariant)
 +
** '''Date''' – не заполняется
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода CheckQuota
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CheckQuota>
 +
        <!--Optional:-->
 +
        <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
 +
        <meg:dateFrom>2021-07-13</meg:dateFrom>
 +
        <meg:dateTo>2021-07-30</meg:dateTo>
 +
        <meg:hotelId>2930</meg:hotelId>
 +
        <meg:roomTypeId>-1</meg:roomTypeId>
 +
        <meg:roomCategoryId>-1</meg:roomCategoryId>
 +
      </meg:CheckQuota>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода CheckQuota
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
 +
        <CheckQuotaResult Message="Ok">
 +
            <Data>
 +
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
 +
              <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
 +
            </Data>
 +
        </CheckQuotaResult>
 +
      </CheckQuotaResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
=== GetQuotaInfo (Проверка доступности номера отеля на период с детализацией по дням)===
 +
Метод возвращает информацию о доступности номера отеля на период с детализацией по дням. <br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''DateFrom *''' – дата с
 +
* '''DateTo *''' – дата по
 +
* '''HotelId *''' – ключ отеля
 +
* '''RoomTypeId *''' – ключ типа комнаты (-1 для всех)
 +
* '''RoomCategoryId *''' – ключ категории комнаты (-1 для всех)
 +
Возвращаемый результат:<br />
 +
* '''GetQuotaInfoResult''' – результат поиска
 +
* '''QuotaSimpleInfo''' – массив данных
 +
** '''RoomTypeId''' – ключ типа комнаты
 +
** '''RoomCategoryId''' – ключ категории комнаты
 +
** '''Quota''' – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
 +
** '''RoomVariantName''' – наименование варианта комнаты (комбинации из таблицы RoomVariant)
 +
** '''Date''' – день
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetQuotaInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:CheckQuota>
 +
        <!--Optional:-->
 +
        <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
 +
        <meg:dateFrom>2021-07-13</meg:dateFrom>
 +
        <meg:dateTo>2021-07-30</meg:dateTo>
 +
        <meg:hotelId>2930</meg:hotelId>
 +
        <meg:roomTypeId>-1</meg:roomTypeId>
 +
        <meg:roomCategoryId>-1</meg:roomCategoryId>
 +
      </meg:CheckQuota>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetQuotaInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
 +
        <CheckQuotaResult Message="Ok">
 +
            <Data>
 +
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
 +
              <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
 +
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="6" Quota="0" RoomVariantName="Single Room Standard" Date="0001-01-01T00:00:00"/>
 +
            </Data>
 +
        </CheckQuotaResult>
 +
      </CheckQuotaResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
=== GetChangeQuotaAndStop (Получение информации по квотам и стопам в отеле)===
 +
Метод передает информацию по квотам и стопам в отеле.
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''HotelKey *''' – ключ отеля
 +
* '''Date''' – дата, с которой получаем изменения (если не отправляем, то берется текущая)
 +
* '''UseRoomDescription *''' – как сопоставляем категорию и тип комнаты (через общее описание комнаты или по-отдельности)
 +
* '''LoadQuaota *''' – загружать или нет изменения по квотам
 +
* '''LoadStop *''' – загружать или нет изменения по стопам
 +
Возвращаемый результат:<br />
 +
* '''GetChangeQuotaAndStopResult''' – результат поиска
 +
** '''QuotaStopInfo''' – массив данных
 +
*** '''ID''' – не используется
 +
*** '''SvKey''' – ключ сервис класса (для отеля  = 1)
 +
*** '''Code''' – ключ отеля
 +
*** '''SubCode1Name''' – название типа комнаты
 +
*** '''SubCode1''' – ключ типа комнаты
 +
*** '''SubCode2''' – не используется
 +
*** '''SubCode3Name''' – название категории комнаты
 +
*** '''SubCode3''' – ключ категории комнаты
 +
*** '''RoomDescriptionID''' – ключ описания комнаты
 +
*** '''RoomDescriptionName''' – название описания комнаты
 +
*** '''Place''' – количество мест (2 и больше, 1 – мест мало или одно, 0 – нет мест в квоте, -1 – стоп отменен (если IsStop=true)  или квота удалена(если IsStop=false)), -2 – стоп отменен и квот при этом нет)
 +
*** '''IsStop''' – стоит ли стоп на текущую дату
 +
*** '''Date''' – дата текущей квоты (стопа)
 +
*** '''UpdateDate''' – дата обновления
 +
*** '''Release''' – релиз-период
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetChangeQuotaAndStop
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetChangeQuotaAndStop>
 +
        <!--Optional:-->
 +
        <meg:guid>7e4781f3-cef1-4b05-b6aa-ef9bb091f055</meg:guid>
 +
        <meg:hotelKey>2942</meg:hotelKey>
 +
        <meg:date>2023-11-01T21:17:00</meg:date>
 +
        <meg:UseRoomDescription>true</meg:UseRoomDescription>
 +
        <meg:LoadQuota>true</meg:LoadQuota>
 +
        <meg:LoadStop>false</meg:LoadStop>
 +
      </meg:GetChangeQuotaAndStop>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetChangeQuotaAndStop
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetChangeQuotaAndStopResponse xmlns="http://www.megatec.ru/">
 +
        <GetChangeQuotaAndStopResult>
 +
            <QuotaStopInfo ID="0" SvKey="1" Code="2942" SubCode1Name="Double Room" SubCode1="3" SubCode2="0" SubCode3Name="Inner View" SubCode3="19" RoomDescriptionID="4076" RoomDescriptionName="Double Room Inner View" Place="2" IsStop="false" Date="2023-11-08T00:00:00" UpdateDate="2023-11-01T21:18:18.63" Release="3"/>
 +
        </GetChangeQuotaAndStopResult>
 +
      </GetChangeQuotaAndStopResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
 +
=== GetHotelQuotaStopInfo (Получение информации по отелям, у которых были изменения в квотах или стопах с определенной даты)===
 +
Метод  возвращает отели, у которых были изменения в квотах или стопах с определенной даты.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Date *''' – дата, с которой будем искать отели с измененными квотами или стопами
 +
Возвращаемый результат:<br />
 +
* '''GetHotelQuotaStopResult''' – результат поиска
 +
** '''HotelQuotaStopInfo''' – массив данных
 +
*** '''HotelKey''' – ключ отеля
 +
*** '''UpdateDateQuota''' – дата последнего изменения в квотах по отелю
 +
*** '''UpdateDateStop''' – дата последнего изменения в стопах по отелю
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetHotelQuotaStopInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetHotelQuotaStopInfo>
 +
        <!--Optional:-->
 +
        <meg:guid>99c047a9-a1e9-4a8c-b585-3c09239b3fa3</meg:guid>
 +
        <meg:date>2021-07-13</meg:date>
 +
      </meg:GetHotelQuotaStopInfo>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetHotelQuotaStopInfo
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetHotelQuotaStopInfoResponse xmlns="http://www.megatec.ru/">
 +
        <GetHotelQuotaStopInfoResult>
 +
            <HotelQuotaStopInfo HotelKey="2930" UpdateDateQuota="2021-08-18T12:51:26.037+04:00" UpdateDateStop="2021-08-18T12:51:26.037+04:00"/>
 +
            <HotelQuotaStopInfo HotelKey="2932" UpdateDateQuota="2021-08-31T16:57:32.213+04:00" UpdateDateStop="0001-01-01T00:00:00"/>
 +
        </GetHotelQuotaStopInfoResult>
 +
      </GetHotelQuotaStopInfoResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
 +
=== GetQuotaStop (Получение информации по установленным стопам на номера в отеле)===
 +
Метод  возвращает информацию по установленным стопам на номера в отеле.<br />
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''Date *''' – дата, с которой будем искать отели с измененными квотами или стопами
 +
* '''HotelKey *''' – ключ отеля
 +
Возвращаемый результат:<br />
 +
* '''GetQuotaStopResult''' – результат поиска
 +
** '''QuoteHotel''' – массив данных
 +
*** '''Code''' – ключ отеля
 +
*** '''StartDate''' – дата начала
 +
*** '''EndDate''' – дата окончания
 +
*** '''Date''' – дата
 +
*** '''CreateDate''' – дата создания
 +
*** '''ID''' – не используется
 +
*** '''IsRemove''' – удалена или нет
 +
*** '''Total''' – количество мест
 +
*** '''Sold''' – продано
 +
*** '''Free''' – свободно
 +
*** '''HotelKey''' – ключ отеля
 +
*** '''RoomTypeKey''' – ключ типа комнаты
 +
*** '''RoomCategoryKey''' – ключ категории комнаты
 +
*** '''QuoteType''' – тип квоты
 +
*** '''IsStopSale''' – установлен ли стоп на продажу
 +
** '''RoomTypeId''' – ключ типа комнаты
 +
** '''RoomCategoryId''' – ключ категории комнаты
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода GetQuotaStop
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <meg:GetQuotaStop>
 +
        <!--Optional:-->
 +
        <meg:guid>eb99a14f-d4ad-4b90-a37f-a93550eb1c74</meg:guid>
 +
        <meg:date>2021-07-13</meg:date>
 +
        <meg:hotelKey>2941</meg:hotelKey>
 +
      </meg:GetQuotaStop>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</syntaxhighlight>
 +
Возвращаемый результат метода GetQuotaStop
 +
<syntaxhighlight lang="java" enclose="div">
 +
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 +
  <soap:Body>
 +
      <GetQuotaStopResponse xmlns="http://www.megatec.ru/">
 +
        <GetQuotaStopResult>
 +
            <QuoteHotel Code="0" StartDate="2021-07-13T00:00:00" EndDate="2021-07-13T00:00:00" Date="2021-07-13T00:00:00" CreateDate="2021-09-14T00:00:00+04:00" ID="-1" IsRemove="true" Total="0" Sold="0" Free="0" HotelKey="2941" RoomTypeKey="0" RoomCategoryKey="0" QuoteType="NotSet" IsStopSale="true">
 +
              <RelizPeriod>0</RelizPeriod>
 +
            </QuoteHotel>
 +
            <QuoteHotel Code="0" StartDate="2021-07-14T00:00:00" EndDate="2021-07-14T00:00:00" Date="2021-07-14T00:00:00" CreateDate="2021-09-14T00:00:00+04:00" ID="-1" IsRemove="true" Total="0" Sold="0" Free="0" HotelKey="2941" RoomTypeKey="0" RoomCategoryKey="0" QuoteType="NotSet" IsStopSale="true">
 +
              <RelizPeriod>0</RelizPeriod>
 +
            </QuoteHotel>
 +
        </GetQuotaStopResult>
 +
      </GetQuotaStopResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</div></div><br />

Текущая версия на 10:51, 18 апреля 2024

Версия статьи от 18-04-2024.

Поддерживаемые версии «»:
Начиная с


Содержание

Введение

API InterlookIntegrationService работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
Документацию на английском языке можно загрузить тут Файл:Master-InterlookIntegrationService.docx либо с яндекс диска

Подключение к базе данных ПК «Мастер-Interlook»

В файле web.config, расположенном в папке Interlook.IntegrationService пропишите необходимые параметры подключения (красным цветом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Interlook»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базе данных ПК «Мастер-Interlook»;Initial Catalog=название базы данных ПК «Мастер-Interlook»;User ID=логин пользователя ПК «Мастер-Interlook»;Password=пароль пользователя ПК «Мастер-Interlook»"/>

Настройки в файле WEB.CONFIG

Настройки задаются в секции <appSettings> файла web.config основного приложения Interlook.IntegrationService.

Описание Значение Настройка
1 Процедура перезапуска кэша cachingTime

"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно. "cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.

<add key="cachingTime" value="-1"/>
2 Уровень использования процессора parallelismDegree

Уровень использования процессора при расчетах
Максимум - 100, минимум - 0

<add key="parallelismDegree" value="70"/>
3 Включение логирования о использовании памяти сервера LogCacheMemory

Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.
0 - выключена, 1 - включена

<add key="LogCacheMemory" value="0"/>
4 Настройка вывода Adhot типа With Cost Настройка, позволяющая выводить доплаты Adhot типа With Cost в методах SearchHotelServices и SearchHotelServicesMinHotel.

По умолчанию настройка установлена в значении false.

  • true – в ответе методов выдается значение размера доплаты Adhot типа With Cost в параметре "AddHotsWithCosts".
  • false или отсутствие настройки или любое значение отличное от true – в ответе методов выдается значение "-1" в параметре "AddHotsWithCosts".
<add key="IsAddHotsWithCosts" value="false"/>


В файле web.config для оптимальной работы сервиса нужно убедиться, что в секции <system.web> значение настройки compilation debug установлено в положении false


<compilation debug="false" targetFramework="4.0">
Предупреждение


Начиная с релизов после 01.01.2024 изменен формат файла конфигурации web.config и появилась возможность работы с новым сервисом логирования.
Описание Значение Настройка
1 Подключение к базе данных Строка подключения к базе данных
<add key="connectionString" value="Data Source=server;Initial Catalog=Base;User Id=User;Password=Password;Application Name=Interlook.IntegrationService" />
2 Процедура перезапуска кэша cachingTime

"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно. "cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.

<add key="cachingTime" value="-1"/>
3 Уровень использования процессора parallelismDegree

Уровень использования процессора при расчетах
Максимум - 100, минимум - 0

<add key="parallelismDegree" value="70"/>
4 Включение логирования о использовании памяти сервера LogCacheMemory

Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.
0 - отключены логи и диагностика кеша,
1 - включены логи и диагностика кеша,
2 - тоже что и 1, только пишутся еще дополнительные более детальные логи)

<add key="LogCacheMemory" value="2"/>
5 Настройка для включения логирования с использование сервиса логирования Настройка, позволяющая включать и выключать запись логов в сервис логирования

По умолчанию настройка установлена в значении false.
true - включено, false - выключено

<add key="EnableLogServiceLogging" value="true" />
6 Настройка для установления уровня логирования при использовании сервиса логирования Настройка, позволяющая регулировать уровень записи логов.

Может ринимать значенимя Trace,Debug,Info,Warn,Error,Fatal,Off

<add key="LogServiceMinimumlLogLevel" value="Debug" />
7 Настройка количества попыток подключения к сервису логирования Настройка, позволяющая регулировать количество попыток подключения к сервису логирования

Значение регулирует количество попыток подключения.

<add key="LogServiceConnectionAttempts" value="10"/>
8 Адрес сервиса логирования Адрес сервиса логирования
<add key="LogService" value="http://localhost:6060" />
9 Название базы данных для сервиса логирования Настройка, позволяющая указать в какую базу данных MongoDB записывать логи
<add key="LogServiceDatabaseTarget" value="IntegrationService1"/>

Настройка в IIS

В диспетчере служб IIS в разделе Пулы приложений (Application Pool) открыть Дополнительные параметры (Advanced Settings) приложения .Net v4.5. В параметре Режим запуска (Start Mode) установить значение AlwaysRunning.
Пул приложений 1

Рекомендуется настроить перезапуск пула приложения раз в сутки, в ночное время. Для настройки перезапуска открыть Дополнительные параметры (Advanced Settings) пула приложения и в поле Моменты точного времени для перезапуска (Specific Time), меню TimeSpanArray установить время перезапуска. Значение поля Постоянный временной интервал (в минутах) (Regular Time Interval) установить в значение 0.
Пул приложений 3

В IIS на уровне сайта открыть Дополнительные параметры (Advanced Settings). В параметре Предварительная установка разрешена (Preload Enabled) установить значение true.

Пул приложений 2

Расшифровка ошибок сервера

В случае отправки в запросе к сервису данных некорректного формата в ответе любого метода сервер вернет ошибку с указанием в какой строке в XML ошибка.
"В документе XML (12, 49) присутствует ошибка." - в данном случае ошибка в 12 строке, всего 49 символов в строке с ошибкой.
В интерфейсе SoapUi при установке курсора в любое место в запросе в правом углу окна показывается номер строки и номер символа в строке.

SOAP UI

  • Ошибка в дате. Формат: DateTime

Запрос: <meg:DateFrom>2021-10-010</meg:DateFrom> Ответ: Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (11, 47) присутствует ошибка. ---> System.FormatException: Строка "2021-10-010" не является допустимым значением AllXsd

  • Ошибка в данных. Формат: Integer

Запрос: <meg:PageSize>100000ф</meg:PageSize> Ответ: Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (9, 37) присутствует ошибка. ---> System.FormatException: Входная строка имела неверный формат

Методы IntegrationService

Методы аутентификации

Connect (Получение аутентификационного токена)

Метод производит получение аутентификационного токена, необходимого для выполнения метода CreateReservation.
Принимаемые параметры запроса ( * – обязательный):

  • Login * – логин online пользователя
  • Password * – пароль online пользователя

Возвращаемый результат:

  • ConnectResult – идентификатор аутентификации (если аутентификация прошла успешно, то получаем идентификатор, в противном случае ошибку "Connection result code: -1. Invalid login or password")
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:Connect>
         <!--Optional:-->
         <meg:login>mk1</meg:login>
         <!--Optional:-->
         <meg:password>123</meg:password>
      </meg:Connect>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода Connect

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ConnectResponse xmlns="http://www.megatec.ru/">
         <ConnectResult>9a1e4f2f-a4b0-4d60-8f17-e320031f44de</ConnectResult>
      </ConnectResponse>
   </soap:Body>
</soap:Envelope>


CheckConnect (Проверка активности подключения под конкретным идентификатором)

Метод проверяет наличие активного подключения под конкретным идентификатором аутентификации.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • CheckConnectResult – идентификатор аутентификации (true – если подключение активно, false – если подключения нет)
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CheckConnect>
         <!--Optional:-->
         <meg:guid>e5910963-6f5a-4c18-8799-34417675bfe9</meg:guid>
      </meg:CheckConnect>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CheckConnect

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckConnectResponse xmlns="http://www.megatec.ru/">
         <CheckConnectResult>true</CheckConnectResult>
      </CheckConnectResponse>
   </soap:Body>
</soap:Envelope>


Методы работы с путевками

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

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

После получения идентификатора аутентификации при запросе к методу Connect должно пройти некоторое время для загрузки кэша. В случае формирования запроса на бронирования если кэш еще не загружен, пользователь получает сообщение "System.Exception: The Cache is loading. Try again after some time". В таком случае нужно подождать несколько секунд и повторить запрос.
Внимание! Бронирование обязательных Extra Service типа WithCost, Hardlink происходит автоматически. Вне зависимости от того передаются они в запросе или нет.
Перебронирование путевки происходит в случае, если в запросе отправлены параметры ExternalID, ID уже имеющиеся в базе данных Interlook.

Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Reserv * – класс – объект путевки
    • HasInvoices * – выставлен ли счет по путевке
      • true – счет выставлен
      • false – счет не выставлен
    • Rate * – валюта путевки
      • ID – идентификатор валюты (если не отправляем или отправляем 0 или отправляем значение, отсутствующее в базе данных, то подставляется валюта, имеющая ID=1 из таблицы Rates Базы Данных)
    • TouristServices * – массив услуг, используемых туристами
      • TouristService * – отдельная услуга, используемая туристом
        • TouristRoomNumber – номер комнаты. Если проживание, например Double, то для каждого туриста указываем одинаковый номер комнаты. Для остальных услуг - поле оставляем пустым.
        • TouristID * – идентификатор туриста
        • ServiceID * – идентификатор услуги
      • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
        • HotelService * – параметры для услуги типа HotelService
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration * – продолжительность услуги
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Hotel * – массив данных отель
            • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
              • ParameterPair Key – ключ
                • Value – значение
            • ID * – идентификатор отеля
          • Room * – массив данных комната
            • RoomTypeID * – идентификатор типа комнаты
            • RoomCategoryID * – идентификатор категории комнат
            • RoomAccomodationID * – идентификатор типа размещения
          • PansionID * – идентификатор типа питания
        • TransferService – параметры для услуги типа TransferService
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Transfer * – массив данных трансфер
            • ID * – ключ трансфера из таблицы TransferDirecions (возвращается при запросе к методу GetTransfers)
          • Transport * – массив данных транспорта
            • ID * – ключ транспорта из таблицы Transport
        • ExtraService – параметры для услуги типа ExtraService. Если на даты проживания имеется доп. услуга AddHots WithCosts, то она автоматически добавляется в ответе, передавать ее не нужно.
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Code * – код сервиса (возвращается при запросе к методу GetExtraService)
        • ExcursionService - параметры для услуги типа Экскурсия
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • ExcursionID * – идентификатор экскурсии (возвращается при запросе к методу GetExcursions)
          • CountryID – идентификатор страны, если не передаем, то в ответе получим -1.
          • CityID – идентификатор города
    • Tourists * – массив туристов по услуге
      • Tourist * – турист
        • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
        • BirthDate * – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
        • FirstNameLat * – имя туриста латиницей
        • SurNameLat * – отчество туриста латиницей
        • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
        • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
        • ID * – идентификатор туриста для привязки туриста к сервису
        • Phone – телефон туриста (в международном формате, например +70000000000, 70000000000)
        • Email – адрес электронной почты туриста
        • ForeignPassport – иностранный паспорт
        • Serie – серия
        • Number – номер
        • EndDate – дата окончания действия
    • ExternalID – ключ путевки из базы данных Interlook (При создании новой путевки можно отправить 0 или не отправлять параметр)
    • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
    • TourOperatorCode – номер из "customer reservation number"
    • ID – ключ путевки

Возвращаемый результат:

  • HasInvoices – выставлен ли счет по путевке
    • true – счет выставлен
    • false – счет не выставлен
  • AgentDiscount – скидка агента
  • Rate – валюта путевки
    • Name – название валюты
    • ID – идентификатор валюты
    • Description – описание валюты
    • NameLat – наименование валюты латиницей
    • Code – код валюты
    • CodeLat – код валюты латиницей
    • Unicode – код ISO для валюты
    • IsMain – является ли валюта главной (true – является, false – не является)
    • IsNational – является ли валюта национальной (true – является, false – не является)
  • TouristServices – массив услуг, используемых туристами
    • TouristService – отдельная услуга, используемая туристом
      • ID – идентификатор услуги, используемой туристом
      • TouristRoomNumber – номер комнаты
      • TouristID – идентификатор туриста (-1 для новой путевки)
      • ServiceID – идентификатор услуги (-1 для новой путевки)
  • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
    • HotelService – параметры для услуги типа HotelService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
            • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
              • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
              • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
              • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
              • PenaltyValue - размер штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
              • TotalPenalty - полная сумма штрафа
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Hotel – массив данных отель
        • Name – наименование отеля
        • ID – идентификатор отеля
        • Description – описание отеля
        • NameLat – наименование отеля латиницей
        • Code – код отеля
        • CodeLat – код отеля латиницей
        • Unicode – код ISO отеля
        • City – массив данных город
          • Name – наименование города
          • ID – идентификатор города
          • Description – описание города
          • NameLat – наименование города латиницей
          • Code – код города
          • CodeLat – код города латиницей
          • Unicode – код ISO города
          • Country – массив данных страна
            • Name – наименование страны
            • ID – идентификатор страны
            • Description – описание страны
            • NameLat – наименование страны латиницей
            • Code – код страны
            • CodeLat – код страны латиницей
            • Unicode – код ISO страны
            • IsIncoming – параметр для внутреннего использования
          • CountryID – идентификатор страны в массиве данных город
          • RegionID – идентификатор региона в массиве данных город
        • RegionID – идентификатор региона
        • PriceType – наличие цен (PerPerson = 0, PerRoom = 1, All = 2, None= 1000)
        • CountCosts – количество цен
        • CityID – идентификатор города
        • HotelCategoryID – идентификатор категории отеля
      • Room – массив данных комната
        • RoomType – массив данных тип комнаты
          • Name – наименование типа комнаты
          • ID – идентификатор типа комнаты
          • Description – описание типа комнаты
          • NameLat – наименование типа комнаты латиницей
          • Code – код типа комнаты
          • CodeLat – код типа комнаты латиницей
          • Unicode – код ISO типа комнаты
          • Places – количество мест в номере
          • ExPlaces – дополнительные места в номере
          • PrintOrder – порядковый номер для печати в отчетах
        • RoomTypeID – идентификатор типа комнаты
        • RoomCategory – массив данных категории номера
          • Name – наименование категории номера
          • ID – идентификатор категории номера
          • Description – описание категории номера
          • NameLat – наименование категории номера латиницей
          • Code – код категории номера
          • CodeLat – код категории номера латиницей
          • Unicode – код ISO категории номера
          • MainPlaces – количество основных мест
          • ExtraPlaces – количество дополнительных мест
          • IsMain – параметр для внутреннего использования
        • RoomCategoryID – идентификатор категории комнат
        • RoomAccomodation – массив данных размещения
          • Name – наименование размещения
          • ID – идентификатор размещения
          • Description – описание размещения
          • NameLat – наименование размещения латиницей
          • Code – код размещения
          • CodeLat – код размещения латиницей
          • Unicode – код ISO размещения
          • PerRoom – за комнату/за человека
          • AdultMainPlaces – количество основных мест для взрослых
          • ChildMainPlaces – количество основных мест для детей
          • AdultExtraPlaces – количество дополнительных мест для взрослых
          • ChildExtraPlaces – количество дополнительных мест для детей
          • MainPlaces – общее количество основных мест
          • ExtraPlaces – общее количество дополнительных мест
          • IsMain – параметр для внутреннего использования
          • AgeFrom – возраст первого ребенка от
          • AgeTo – возраст первого ребенка по
          • Age2From – возраст второго ребенка от
          • Age2To – возраст второго ребенка по
        • RoomAccomodationID – идентификатор типа размещения
        • ID – идентификатор комнаты
        • Name – наименование типа размещения
      • RoomID – идентификатор комнаты
      • PansionID – идентификатор типа питания
    • TransferService – параметры для услуги типа TransferService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Transfer – массив данных трансфера
        • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
          • ParameterPair Key – ключ
            • Value – значение
        • Name – наименование трансфера
        • ID – ключ трансфера из таблицы TransferDirecion
        • Description – описание трансфера
        • NameLat – наименование трансфера латиницей
        • Code – код трансфера
        • CodeLat – код трансфера латиницей
        • Unicode – код ISO трансфера
        • PlaceFrom – название точки откуда
        • PlaceTo – название точки куда
        • CityID – идентификатор города
        • RegionID – идентификатор региона
      • Transport – массив данных транспорта
        • Name – наименование транспорта
        • ID – идентификатор транспорта
        • Description – описание транспорта
        • NameLat – наименование транспорта латиницей
        • Code – код транспорта
        • CodeLat – код транспорта латиницей
        • Unicode – код ISO транспорта
      • PointToID – идентификатор точки куда
      • CityKey – ключ города
      • PointToName – название точки куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
    • ExcursionService – параметры для услуги типа ExcursionService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
        • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города
      • ExcursionID – идентификатор экскурсии
    • ExtraService – параметры для услуги типа ExtraService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города предоставления услуги
      • IsPackage – признак пакетной услуги
      • Code – идентификатор услуги
      • HasDuration – услуга с продолжительностью или без
  • ID – ключ путевки во внешней системе (ключ туроператора)
  • Name – наименование путевки
  • Brutto – брутто цена путевки
  • CountryID – идентификатор страны путевки
  • CityID – идентификатор города путевки
  • PartnerID – идентификатор покупателя путевки
  • AgentDiscount – скидка агента
  • Status – статус путевки (Confirmed = 0, NotConfirmed = 1, WaitingConfirmation = 2, Canceled = 3, WaitingCancelation = 4)
  • StartDate – дата начала тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • EndDate – дата окончания тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • Duration – продолжительность
  • CreationDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
  • CreatorID – идентификатор создателя путевки
  • Tourists – массив туристов по услуге
    • Tourist – турист
      • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
      • BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
      • FirstNameLat – имя туриста латиницей
      • LastNameLat – фамилия туриста латиницей
      • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
      • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
      • ExternalID – параметр для внутреннего использования
      • ID – идентификатор туриста (-1 для новой путевки )
      • Phone – телефон туриста (задается по шаблону)
      • Email – адрес электронной почты туриста
      • ForeignPassport – иностранный паспорт
        • Serie – серия
        • Number – номер
        • EndDate – дата окончания действия
      • ExternalID – не используется
  • OwnerID – идентификатор создателя путевки
  • ExternalID – ключ путевки в базе данных Interlook
  • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
  • TourOperatorCode – номер из "customer reservation number"
  • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
    • ParameterPair Key – ключ
    • Value – значение

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае, когда сигнатура услуги не соответствует объявленному в запросе типу получим сообщение "Service labeled as '<Тип услуги в запросе>' is not a <Наименование типа услуги>".
В случае если отсутствуют туристы в запросе получим сообщение "There is no any tourist. At least one 'Tourist' must be specified."
В случае если не указано обязательное поле получим сообщение "Parameter '<Наименование параметра>' is required."
В случае если не существует записи с указанным ID в базе данных получим сообщение "There is no <Наименование сущности> with '<Наименование параметра идентификатора>' = <Значение параметра в запросе> in the database."

Пример

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

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header/>
   <soap:Body>
      <CreateReservation xmlns="http://www.megatec.ru/">
         <guid>6b311a75-ffa7-428b-8abe-420e9780ed4d</guid>
         <reserv HasInvoices="false">
            <Rate>
               <ID>1</ID>
            </Rate>
            <TouristServices>
               <TouristService>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <TouristID>-1</TouristID>
                  <ServiceID>-1</ServiceID>
               </TouristService>
               <TouristService>
                 <TouristRoomNumber>1</TouristRoomNumber>
                  <TouristID>-2</TouristID>
                  <ServiceID>-1</ServiceID>
               </TouristService>
                 <TouristService>
                <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-1</TouristID>
                  <ServiceID>-2</ServiceID>
               </TouristService>
               <TouristService>
               <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-2</TouristID>
                  <ServiceID>-2</ServiceID>
               </TouristService>
   <TouristService>
                 <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-1</TouristID>
                  <ServiceID>-3</ServiceID>
               </TouristService>
               <TouristService>
                  <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-2</TouristID>
                  <ServiceID>-3</ServiceID>
               </TouristService>
  <TouristService>
                 <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-1</TouristID>
                  <ServiceID>-4</ServiceID>
               </TouristService>
               <TouristService>
                  <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-2</TouristID>
                  <ServiceID>-4</ServiceID>
               </TouristService>
     <TouristService>
                 <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-1</TouristID>
                  <ServiceID>-5</ServiceID>
               </TouristService>
               <TouristService>
                  <TouristRoomNumber></TouristRoomNumber> 
                  <TouristID>-2</TouristID>
                  <ServiceID>-5</ServiceID>
               </TouristService>           
            </TouristServices>
            <Services>
               <Service xsi:type="HotelService">
                  <ExternalID>0</ExternalID>
                  <NMen>2</NMen>
                  <AdditionalParams>
                     <ParameterPair Key="ContractPrKey">
                         <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="CityID">
                        <Value xsi:type="xsd:int">80</Value>
                     </ParameterPair>
                     <ParameterPair Key="isSuccess">
                        <Value xsi:type="xsd:boolean">true</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <Duration>7</Duration>
                  <ID>-1</ID>
                   <Hotel>
                       <ID>2930</ID>
                          </Hotel>
               <Room>
                     <RoomTypeID>3</RoomTypeID>
                     <RoomCategoryID>20</RoomCategoryID>
                     <RoomAccomodationID>5558</RoomAccomodationID>
                  </Room>
                  <PansionID>3</PansionID>
               </Service>
    <Service xsi:type="TransferService">
                  <ExternalID>0</ExternalID>
                  <NMen>2</NMen>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <ID>-2</ID>
                  <Transfer>
                        <ID>606</ID>
                       </Transfer>
                  <Transport>
                    <ID>4</ID>
                   </Transport>
               </Service>
                <Service xsi:type="TransferService">
                  <ExternalID>0</ExternalID>
                  <NMen>2</NMen>
                  <StartDate>2022-08-27T00:00:00</StartDate>
                  <Duration>1</Duration>
                  <ID>-3</ID>
                  <Transfer>               
                    <ID>604</ID>
               </Transfer>
                  <Transport>
                     <ID>2</ID>
                     </Transport>
                  </Service>	
                  <Service xsi:type="ExtraService">
                  <ExternalID>0</ExternalID>
                  <NMen>2</NMen>
                  <StartDate>2022-08-23T00:00:00</StartDate>
                  <Duration>1</Duration>
	              <ID>-4</ID>
	              <Code>694</Code>
                   </Service>
                   <Service xsi:type="ExcursionService">
                  <ExternalID>0</ExternalID>
                  <NMen>2</NMen>
                   <StartDate>2022-08-23T00:00:00</StartDate>
                     <ID>-5</ID>
                     <ExcursionID>714</ExcursionID>
                     </Service>
                   </Services>
                 <CountryID>6</CountryID>
                 <CityID>80</CityID>
                    <Tourists>
                     <Tourist Sex="Male"  BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ExternalID="0" ID="-1" Phone="89610553087" Email="dfj@ety.ua">
                     <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
                     </Tourist>
                     <Tourist Name="" Sex="Male" FirstName="" LastName="" SurName="" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" Citizen="" IsMain="false" ExternalID="0" ID="-2" Phone="" Email="">
                      <ForeignPassport EndDate="2025-01-01T00:00:00"/>
                     </Tourist>
                  </Tourists>
                <AdditionalParams>
               <ParameterPair Key="PcnId">
                  <Value xsi:type="xsd:int">116</Value>
               </ParameterPair>
            </AdditionalParams>
             <TourOperatorID>0</TourOperatorID>
             <TourOperatorCode>0</TourOperatorCode>
             <ID>0</ID>
             <ExternalID>0</ExternalID>
         </reserv>
      </CreateReservation>
   </soap:Body>
</soap:Envelope>

Возвращаемый результат метода CreateReservation:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CreateReservationResponse xmlns="http://www.megatec.ru/">
         <CreateReservationResult HasInvoices="false">
            <Rate>
               <Name>EU</Name>
               <ID>-13</ID>
               <IsMain>false</IsMain>
               <IsNational>false</IsNational>
            </Rate>
            <TouristServices>
               <TouristService>
                  <ID>368194</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168804</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368195</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168804</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368197</ID>
                  <ServiceID>168805</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368196</ID>
                  <ServiceID>168805</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368199</ID>
                  <ServiceID>168806</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368198</ID>
                  <ServiceID>168806</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368203</ID>
                  <ServiceID>168808</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368202</ID>
                  <ServiceID>168808</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368201</ID>
                  <ServiceID>168807</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368200</ID>
                  <ServiceID>168807</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368205</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168803</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368204</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168803</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
            </TouristServices>
            <Services>
               <Service xsi:type="HotelService">
                  <ExternalID>-1</ExternalID>
                  <Price>3850</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="CancellationPolicy">
                        <Value xsi:type="ArrayOfPenaltyCost">
                           <PenaltyCost>
                              <PolicyKey>-1</PolicyKey>
                              <DateFrom xsi:nil="true"/>
                              <DateTo>2022-08-15T00:00:00</DateTo>
                              <PenaltyValue>0</PenaltyValue>
                              <IsPercent>false</IsPercent>
                              <TotalPenalty>0</TotalPenalty>
                              <Description>If canceled before 15.08.2022, no penalty Penalty value is 0.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>125</PolicyKey>
                              <DateFrom>2022-08-15T00:00:00</DateFrom>
                              <DateTo>2022-08-16T23:59:59</DateTo>
                              <PenaltyValue>6</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>231</TotalPenalty>
                              <Description>If canceled in period 15.08.2022 - 16.08.2022, the penalty will be  6.00 % of the cost of accommodation Penalty value is 231.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>200</PolicyKey>
                              <DateFrom>2022-08-17T00:00:00</DateFrom>
                              <DateTo>2022-08-17T23:59:59</DateTo>
                              <PenaltyValue>11</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>423.5</TotalPenalty>
                              <Description>If canceled in period 17.08.2022 - 17.08.2022, the penalty will be  11.00 % of the cost of accommodation Penalty value is 423.50 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>123</PolicyKey>
                              <DateFrom>2022-08-18T00:00:00</DateFrom>
                              <DateTo>2022-08-19T23:59:59</DateTo>
                              <PenaltyValue>20</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>770</TotalPenalty>
                              <Description>If canceled in period 18.08.2022 - 19.08.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>208</PolicyKey>
                              <DateFrom>2022-08-20T00:00:00</DateFrom>
                              <DateTo xsi:nil="true"/>
                              <PenaltyValue>20</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>770</TotalPenalty>
                              <Description>If canceled from 20.08.2022, the penalty will be 20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
                           </PenaltyCost>
                        </Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(550,00[kolesnyk2/kolesnyk2]*7) * 1 room = 3850,00</DetailBrutto>
                  <Notes/>
                  <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>8</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>3850</Brutto>
                  <ServiceClassID>0</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168804</ID>
                  <Status>
                     <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                     <ID>1</ID>
                  </Status>
                  <Hotel>
                     <Name>Red</Name>
                     <ID>2930</ID>
                     <Description>4 stars (A)  (Ukraine\Kiev\Kiev)</Description>
                     <Code>Red</Code>
                     <City>
                        <Name>Kiev</Name>
                        <ID>80</ID>
                        <Code>IEV</Code>
                        <Country>
                           <Name>Ukraine</Name>
                           <ID>6</ID>
                           <IsIncoming>true</IsIncoming>
                        </Country>
                        <CountryID>6</CountryID>
                        <RegionID>28</RegionID>
                     </City>
                     <RegionID>28</RegionID>
                     <PriceType>None</PriceType>
                     <CountCosts xsi:nil="true"/>
                     <CityID>80</CityID>
                     <HotelCategoryID>4</HotelCategoryID>
                  </Hotel>
                  <Room>
                     <RoomType>
                        <Name/>
                        <ID>3</ID>
                        <Code>Double Room</Code>
                        <Places>2</Places>
                        <ExPlaces>2</ExPlaces>
                        <PrintOrder>0</PrintOrder>
                     </RoomType>
                     <RoomTypeID>3</RoomTypeID>
                     <RoomCategory>
                        <Name>Jakuzzi</Name>
                        <ID>20</ID>
                        <MainPlaces>0</MainPlaces>
                        <ExtraPlaces>0</ExtraPlaces>
                        <IsMain>false</IsMain>
                     </RoomCategory>
                     <RoomCategoryID>20</RoomCategoryID>
                     <RoomAccomodation>
                        <Name>2AD</Name>
                        <ID>5558</ID>
                        <PerRoom>false</PerRoom>
                        <AdultMainPalces>0</AdultMainPalces>
                        <ChildMainPalces>0</ChildMainPalces>
                        <AdultExtraPalces>0</AdultExtraPalces>
                        <ChildExtraPalces>0</ChildExtraPalces>
                        <MainPlaces>2</MainPlaces>
                        <ExtraPlaces>0</ExtraPlaces>
                        <IsMain>true</IsMain>
                        <AgeFrom>0</AgeFrom>
                        <AgeTo>0</AgeTo>
                        <Age2From>0</Age2From>
                        <Age2To>0</Age2To>
                     </RoomAccomodation>
                     <RoomAccomodationID>5558</RoomAccomodationID>
                     <ID>0</ID>
                     <Name/>
                  </Room>
                  <RoomID>0</RoomID>
                  <PansionID>3</PansionID>
               </Service>
               <Service xsi:type="TransferService">
                  <ExternalID>-2</ExternalID>
                  <Price>240</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="CityToKey">
                        <Value xsi:type="xsd:int">80</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointFromId">
                        <Value xsi:type="xsd:int">1000028</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointToId">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1171</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(120,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 240,00</DetailBrutto>
                  <Notes/>
                  <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>240</Brutto>
                  <ServiceClassID>2</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168805</ID>
                  <Status>
                     <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
                     <ID>2</ID>
                  </Status>
                  <Transfer>
                     <AdditionalParams>
                        <ParameterPair Key="SlKey">
                           <Value xsi:type="xsd:int">1</Value>
                        </ParameterPair>
                     </AdditionalParams>
                     <Name/>
                     <ID>606</ID>
                  </Transfer>
                  <Transport>
                     <Name>Mini Bus</Name>
                     <ID>4</ID>
                  </Transport>
                  <PointToId>2930</PointToId>
                  <CityKey>80</CityKey>
                  <PointToName>Red</PointToName>
                  <PointFromId>1000028</PointFromId>
                  <PointFromName>Kiev ap</PointFromName>
               </Service>
               <Service xsi:type="TransferService">
                  <ExternalID>-3</ExternalID>
                  <Price>60</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="CityToKey">
                        <Value xsi:type="xsd:int">80</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointFromId">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointToId">
                        <Value xsi:type="xsd:int">1000028</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1171</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(15,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 30,00</DetailBrutto>
                  <Notes/>
                  <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
                  <StartDate>2022-08-27T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>60</Brutto>
                  <ServiceClassID>2</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168806</ID>
                  <Status>
                     <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
                     <ID>2</ID>
                  </Status>
                  <Transfer>
                     <AdditionalParams>
                        <ParameterPair Key="SlKey">
                           <Value xsi:type="xsd:int">2</Value>
                        </ParameterPair>
                     </AdditionalParams>
                     <Name/>
                     <ID>608</ID>
                  </Transfer>
                  <Transport>
                     <Name>Group</Name>
                     <ID>2</ID>
                  </Transport>
                  <PointToId>1000028</PointToId>
                  <CityKey>80</CityKey>
                  <PointToName>Kiev ap</PointToName>
                  <PointFromId>2930</PointFromId>
                  <PointFromName>Red</PointFromName>
               </Service>
               <Service xsi:type="ExcursionService">
                  <ExternalID>-5</ExternalID>
                  <Price>120</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1035</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(50,00(0-120)[test_exc] * 2 pax) = 100,00</DetailBrutto>
                  <Notes/>
                  <Name>EXC::Kiev City</Name>
                  <StartDate>2022-08-23T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>120</Brutto>
                  <ServiceClassID>1</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168808</ID>
                  <Status>
                     <Name>EXC::Kiev City</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <ExcursionID>714</ExcursionID>
               </Service>
               <Service xsi:type="ExtraService">
                  <ExternalID xsi:nil="true"/>
                  <Price>200</Price>
                  <NMen>2</NMen>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="HotelDlKey">
                        <Value xsi:type="xsd:int">168804</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1035</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(100,00(0-120)[Регресс] * 2 pax * 1 days) = 200,00</DetailBrutto>
                  <Notes/>
                  <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                  <StartDate>2022-08-23T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>200</Brutto>
                  <ServiceClassID>79</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168807</ID>
                  <Status>
                     <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <IsPackage>false</IsPackage>
                  <Code>694</Code>
                  <HasDuration>false</HasDuration>
               </Service>
               <Service xsi:type="ExtraService">
                  <ExternalID xsi:nil="true"/>
                  <Price>478</Price>
                  <NMen>2</NMen>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="HotelDlKey">
                        <Value xsi:type="xsd:int">168804</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(239,00(0-120)[тестэкстрарэд220822] * 2 pax * 1 days) = 478,00</DetailBrutto>
                  <Notes/>
                  <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                  <StartDate>2022-08-22T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>478</Brutto>
                  <ServiceClassID>102</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168803</ID>
                  <Status>
                     <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <IsPackage>false</IsPackage>
                  <Code>713</Code>
                  <HasDuration>false</HasDuration>
               </Service>
            </Services>
            <ID>-1</ID>
            <Name>MT140101A62</Name>
            <Brutto>4948</Brutto>
            <CountryID>6</CountryID>
            <CityID>80</CityID>
            <PartnerID>1035</PartnerID>
            <Status>WaitingConfirmation</Status>
            <StartDate>2022-08-20T00:00:00</StartDate>
            <EndDate>2022-08-27T00:00:00</EndDate>
            <Duration>7</Duration>
            <CreationDate>2022-03-04T16:56:48.953</CreationDate>
            <CreatorID>101</CreatorID>
            <Tourists>
               <Tourist Sex="Male" BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ID="88548" Phone="89610553087" Email="dfj@ety.ua">
                  <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
                  <ExternalID>0</ExternalID>
               </Tourist>
               <Tourist Sex="Male" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" IsMain="false" ID="88549" Phone="" Email="">
                  <ForeignPassport Serie="" Number="" EndDate="2025-01-01T00:00:00"/>
                  <ExternalID>0</ExternalID>
               </Tourist>
            </Tourists>
            <OwnerID xsi:nil="true"/>
            <TourOperatorID>-1</TourOperatorID>
            <TourOperatorCode>0</TourOperatorCode>
            <ExternalID>37263</ExternalID>
            <AdditionalParams>
               <ParameterPair Key="PcnId">
                  <Value xsi:type="xsd:int">116</Value>
               </ParameterPair>
               <ParameterPair Key="IsIntegrationServiceReservation">
                  <Value xsi:type="xsd:boolean">true</Value>
               </ParameterPair>
               <ParameterPair Key="ReservationCost">
                  <Value xsi:type="xsd:double">4948</Value>
               </ParameterPair>
            </AdditionalParams>
         </CreateReservationResult>
      </CreateReservationResponse>
   </soap:Body>
</soap:Envelope>


GetReservation (Получение путевки по ключу)

Метод производит получение информации по путевке по ключу путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки

Возвращаемый результат:

  • HasInvoices – выставлен ли счет по путевке
    • true – счет выставлен
    • false – счет не выставлен
  • AgentDiscount – скидка агента
  • Rate – валюта путевки
    • Name – название валюты
    • ID – идентификатор валюты
    • Description – описание валюты
    • NameLat – наименование валюты латиницей
    • Code – код валюты
    • CodeLat – код валюты латиницей
    • Unicode – код ISO для валюты
    • IsMain – является ли валюта главной (true – является, false – не является)
    • IsNational – является ли валюта национальной (true – является, false – не является)
  • TouristServices – массив услуг, используемых туристами
    • TouristService – отдельная услуга, используемая туристом
      • ID – идентификатор услуги, используемой туристом
      • TouristRoomNumber – номер комнаты
      • TouristID – идентификатор туриста (-1 для новой путевки)
      • ServiceID – идентификатор услуги (-1 для новой путевки)
  • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
    • HotelService – параметры для услуги типа HotelService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
            • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
              • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
              • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
              • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
              • PenaltyValue - размер штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
              • TotalPenalty - полная сумма штрафа
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Hotel – массив данных отель
        • Name – наименование отеля
        • ID – идентификатор отеля
        • Description – описание отеля
        • NameLat – наименование отеля латиницей
        • Code – код отеля
        • CodeLat – код отеля латиницей
        • Unicode – код ISO отеля
        • City – массив данных город
          • Name – наименование города
          • ID – идентификатор города
          • Description – описание города
          • NameLat – наименование города латиницей
          • Code – код города
          • CodeLat – код города латиницей
          • Unicode – код ISO города
          • Country – массив данных страна
            • Name – наименование страны
            • ID – идентификатор страны
            • Description – описание страны
            • NameLat – наименование страны латиницей
            • Code – код страны
            • CodeLat – код страны латиницей
            • Unicode – код ISO страны
            • IsIncoming – параметр для внутреннего использования
          • CountryID – идентификатор страны в массиве данных город
          • RegionID – идентификатор региона в массиве данных город
        • RegionID – идентификатор региона
        • PriceType – наличие цен (PerPerson = 0, PerRoom = 1, All = 2, None= 1000)
        • CountCosts – количество цен
        • CityID – идентификатор города
        • HotelCategoryID – идентификатор категории отеля
      • Room – массив данных комната
        • RoomType – массив данных тип комнаты
          • Name – наименование типа комнаты
          • ID – идентификатор типа комнаты
          • Description – описание типа комнаты
          • NameLat – наименование типа комнаты латиницей
          • Code – код типа комнаты
          • CodeLat – код типа комнаты латиницей
          • Unicode – код ISO типа комнаты
          • Places – количество мест в номере
          • ExPlaces – дополнительные места в номере
          • PrintOrder – порядковый номер для печати в отчетах
        • RoomTypeID – идентификатор типа комнаты
        • RoomCategory – массив данных категории номера
          • Name – наименование категории номера
          • ID – идентификатор категории номера
          • Description – описание категории номера
          • NameLat – наименование категории номера латиницей
          • Code – код категории номера
          • CodeLat – код категории номера латиницей
          • Unicode – код ISO категории номера
          • MainPlaces – количество основных мест
          • ExtraPlaces – количество дополнительных мест
          • IsMain – параметр для внутреннего использования
        • RoomCategoryID – идентификатор категории комнат
        • RoomAccomodation – массив данных размещения
          • Name – наименование размещения
          • ID – идентификатор размещения
          • Description – описание размещения
          • NameLat – наименование размещения латиницей
          • Code – код размещения
          • CodeLat – код размещения латиницей
          • Unicode – код ISO размещения
          • PerRoom – за комнату/за человека
          • AdultMainPlaces – количество основных мест для взрослых
          • ChildMainPlaces – количество основных мест для детей
          • AdultExtraPlaces – количество дополнительных мест для взрослых
          • ChildExtraPlaces – количество дополнительных мест для детей
          • MainPlaces – общее количество основных мест
          • ExtraPlaces – общее количество дополнительных мест
          • IsMain – параметр для внутреннего использования
          • AgeFrom – возраст первого ребенка от
          • AgeTo – возраст первого ребенка по
          • Age2From – возраст второго ребенка от
          • Age2To – возраст второго ребенка по
        • RoomAccomodationID – идентификатор типа размещения
        • ID – идентификатор комнаты
        • Name – наименование типа размещения
      • RoomID – идентификатор комнаты
      • PansionID – идентификатор типа питания
    • TransferService – параметры для услуги типа TransferService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Transfer – массив данных трансфера
        • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
          • ParameterPair Key – ключ
            • Value – значение
        • Name – наименование трансфера
        • ID – ключ трансфера из таблицы TransferDirecion
        • Description – описание трансфера
        • NameLat – наименование трансфера латиницей
        • Code – код трансфера
        • CodeLat – код трансфера латиницей
        • Unicode – код ISO трансфера
        • PlaceFrom – название точки откуда
        • PlaceTo – название точки куда
        • CityID – идентификатор города
        • RegionID – идентификатор региона
      • Transport – массив данных транспорта
        • Name – наименование транспорта
        • ID – идентификатор транспорта
        • Description – описание транспорта
        • NameLat – наименование транспорта латиницей
        • Code – код транспорта
        • CodeLat – код транспорта латиницей
        • Unicode – код ISO транспорта
      • PointToID – идентификатор точки куда
      • CityKey – ключ города
      • PointToName – название точки куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
    • ExcursionService – параметры для услуги типа ExcursionService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
        • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города
      • ExcursionID – идентификатор экскурсии
    • ExtraService – параметры для услуги типа ExtraService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города предоставления услуги
      • IsPackage – признак пакетной услуги
      • Code – идентификатор услуги
      • HasDuration – услуга с продолжительностью или без
  • ID – ключ путевки во внешней системе (ключ туроператора)
  • Name – наименование путевки
  • Brutto – брутто цена путевки
  • CountryID – идентификатор страны путевки
  • CityID – идентификатор города путевки
  • PartnerID – идентификатор покупателя путевки
  • AgentDiscount – скидка агента
  • Status – статус путевки (Confirmed = 0, NotConfirmed = 1, WaitingConfirmation = 2, Canceled = 3, WaitingCancelation = 4)
  • StartDate – дата начала тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • EndDate – дата окончания тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • Duration – продолжительность
  • CreationDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
  • CreatorID – идентификатор создателя путевки
  • Tourists – массив туристов по услуге
    • Tourist – турист
      • Name – имя
      • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
      • FirstName – имя туриста
      • LastName – фамилия туриста
      • SurName – отчество туриста
      • BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
      • FirstNameLat – имя туриста латиницей
      • LastNameLat – фамилия туриста латиницей
      • SurNameLat – отчество туриста латиницей
      • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
      • Citizen –не используется
      • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
      • ExternalID – параметр для внутреннего использования
      • ID – идентификатор туриста (-1 для новой путевки )
      • Phone – телефон туриста (задается по шаблону)
      • Email – адрес электронной почты туриста
      • ForeignPassport – иностранный паспорт
        • IssuedBy – кем выдан
        • Serie – серия
        • Number – номер
        • IssueDate – дата выдачи
        • EndDate – дата окончания действия
      • ExternalID – не используется
  • OwnerID – идентификатор создателя путевки
  • ExternalID – ключ путевки в базе данных Interlook
  • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
  • TourOperatorCode – номер из "customer reservation number"
  • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
    • ParameterPair Key – ключ
    • Value – значение


Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetReservation>
         <!--Optional:-->
         <meg:guid>6b311a75-ffa7-428b-8abe-420e9780ed4d</meg:guid>
         <meg:dgKey>37263</meg:dgKey>
      </meg:GetReservation>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetReservation

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetReservationResponse xmlns="http://www.megatec.ru/">
         <GetReservationResult HasInvoices="false">
            <Rate>
               <Name>EU</Name>
               <ID>-44</ID>
               <IsMain>false</IsMain>
               <IsNational>false</IsNational>
            </Rate>
            <TouristServices>
               <TouristService>
                  <ID>368194</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168804</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368195</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168804</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368197</ID>
                  <ServiceID>168805</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368196</ID>
                  <ServiceID>168805</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368199</ID>
                  <ServiceID>168806</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368198</ID>
                  <ServiceID>168806</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368203</ID>
                  <ServiceID>168808</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368202</ID>
                  <ServiceID>168808</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368201</ID>
                  <ServiceID>168807</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368200</ID>
                  <ServiceID>168807</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368205</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168803</ServiceID>
                  <TouristID>88549</TouristID>
               </TouristService>
               <TouristService>
                  <ID>368204</ID>
                  <TouristRoomNumber>1</TouristRoomNumber>
                  <ServiceID>168803</ServiceID>
                  <TouristID>88548</TouristID>
               </TouristService>
            </TouristServices>
            <Services>
               <Service xsi:type="HotelService">
                  <ExternalID>-1</ExternalID>
                  <Price>3850</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="CancellationPolicy">
                        <Value xsi:type="ArrayOfPenaltyCost">
                           <PenaltyCost>
                              <PolicyKey>-1</PolicyKey>
                              <DateFrom xsi:nil="true"/>
                              <DateTo>2022-08-15T00:00:00</DateTo>
                              <PenaltyValue>0</PenaltyValue>
                              <IsPercent>false</IsPercent>
                              <TotalPenalty>0</TotalPenalty>
                              <Description>If canceled before 15.08.2022, no penalty Penalty value is 0.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>125</PolicyKey>
                              <DateFrom>2022-08-15T00:00:00</DateFrom>
                              <DateTo>2022-08-16T23:59:59</DateTo>
                              <PenaltyValue>6</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>231</TotalPenalty>
                              <Description>If canceled in period 15.08.2022 - 16.08.2022, the penalty will be  6.00 % of the cost of accommodation Penalty value is 231.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>200</PolicyKey>
                              <DateFrom>2022-08-17T00:00:00</DateFrom>
                              <DateTo>2022-08-17T23:59:59</DateTo>
                              <PenaltyValue>11</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>423.5</TotalPenalty>
                              <Description>If canceled in period 17.08.2022 - 17.08.2022, the penalty will be  11.00 % of the cost of accommodation Penalty value is 423.50 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>123</PolicyKey>
                              <DateFrom>2022-08-18T00:00:00</DateFrom>
                              <DateTo>2022-08-19T23:59:59</DateTo>
                              <PenaltyValue>20</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>770</TotalPenalty>
                              <Description>If canceled in period 18.08.2022 - 19.08.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
                           </PenaltyCost>
                           <PenaltyCost>
                              <PolicyKey>208</PolicyKey>
                              <DateFrom>2022-08-20T00:00:00</DateFrom>
                              <DateTo xsi:nil="true"/>
                              <PenaltyValue>20</PenaltyValue>
                              <IsPercent>true</IsPercent>
                              <TotalPenalty>770</TotalPenalty>
                              <Description>If canceled from 20.08.2022, the penalty will be 20.00 % of the cost of accommodation Penalty value is 770.00 EU</Description>
                           </PenaltyCost>
                        </Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(550,00[kolesnyk2/kolesnyk2]*7) * 1 room = 3850,00</DetailBrutto>
                  <Notes/>
                  <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>8</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>3850</Brutto>
                  <ServiceClassID>0</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168804</ID>
                  <Status>
                     <Name>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</Name>
                     <ID>1</ID>
                  </Status>
                  <Hotel>
                     <Name>Red</Name>
                     <ID>2930</ID>
                     <Description>4 stars (A)  (Ukraine\Kiev\Kiev)</Description>
                     <Code>Red</Code>
                     <City>
                        <Name>Kiev</Name>
                        <ID>80</ID>
                        <Code>IEV</Code>
                        <Country>
                           <Name>Ukraine</Name>
                           <ID>6</ID>
                           <IsIncoming>true</IsIncoming>
                        </Country>
                        <CountryID>6</CountryID>
                        <RegionID>28</RegionID>
                     </City>
                     <RegionID>28</RegionID>
                     <PriceType>None</PriceType>
                     <CountCosts xsi:nil="true"/>
                     <CityID>80</CityID>
                     <HotelCategoryID>4</HotelCategoryID>
                  </Hotel>
                  <Room>
                     <RoomType>
                        <Name/>
                        <ID>3</ID>
                        <Code>Double Room</Code>
                        <Places>2</Places>
                        <ExPlaces>2</ExPlaces>
                        <PrintOrder>0</PrintOrder>
                     </RoomType>
                     <RoomTypeID>3</RoomTypeID>
                     <RoomCategory>
                        <Name>Jakuzzi</Name>
                        <ID>20</ID>
                        <MainPlaces>0</MainPlaces>
                        <ExtraPlaces>0</ExtraPlaces>
                        <IsMain>false</IsMain>
                     </RoomCategory>
                     <RoomCategoryID>20</RoomCategoryID>
                     <RoomAccomodation>
                        <Name>2AD</Name>
                        <ID>5558</ID>
                        <PerRoom>false</PerRoom>
                        <AdultMainPalces>0</AdultMainPalces>
                        <ChildMainPalces>0</ChildMainPalces>
                        <AdultExtraPalces>0</AdultExtraPalces>
                        <ChildExtraPalces>0</ChildExtraPalces>
                        <MainPlaces>2</MainPlaces>
                        <ExtraPlaces>0</ExtraPlaces>
                        <IsMain>true</IsMain>
                        <AgeFrom>0</AgeFrom>
                        <AgeTo>0</AgeTo>
                        <Age2From>0</Age2From>
                        <Age2To>0</Age2To>
                     </RoomAccomodation>
                     <RoomAccomodationID>5558</RoomAccomodationID>
                     <ID>0</ID>
                     <Name/>
                  </Room>
                  <RoomID>0</RoomID>
                  <PansionID>3</PansionID>
               </Service>
               <Service xsi:type="TransferService">
                  <ExternalID>-2</ExternalID>
                  <Price>240</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="CityToKey">
                        <Value xsi:type="xsd:int">80</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointFromId">
                        <Value xsi:type="xsd:int">1000028</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointToId">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1171</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(120,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 240,00</DetailBrutto>
                  <Notes/>
                  <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
                  <StartDate>2022-08-20T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>240</Brutto>
                  <ServiceClassID>2</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168805</ID>
                  <Status>
                     <Name>TRF::Arrival transfer/Mini Bus/Kiev ap-Red/Kiev/</Name>
                     <ID>2</ID>
                  </Status>
                  <Transfer>
                     <AdditionalParams>
                        <ParameterPair Key="SlKey">
                           <Value xsi:type="xsd:int">1</Value>
                        </ParameterPair>
                     </AdditionalParams>
                     <Name/>
                     <ID>606</ID>
                  </Transfer>
                  <Transport>
                     <Name>Mini Bus</Name>
                     <ID>4</ID>
                  </Transport>
                  <PointToId>2930</PointToId>
                  <CityKey>80</CityKey>
                  <PointToName>Red</PointToName>
                  <PointFromId>1000028</PointFromId>
                  <PointFromName>Kiev ap</PointFromName>
               </Service>
               <Service xsi:type="TransferService">
                  <ExternalID>-3</ExternalID>
                  <Price>60</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="CityToKey">
                        <Value xsi:type="xsd:int">80</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointFromId">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                     <ParameterPair Key="PointToId">
                        <Value xsi:type="xsd:int">1000028</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1171</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(15,00(0-120)[Vedi_test/Vedi_test] * 2 pax) = 30,00</DetailBrutto>
                  <Notes/>
                  <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
                  <StartDate>2022-08-27T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>60</Brutto>
                  <ServiceClassID>2</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168806</ID>
                  <Status>
                     <Name>TRF::Departure transfer/Group/Red-Kiev ap/Kiev/</Name>
                     <ID>2</ID>
                  </Status>
                  <Transfer>
                     <AdditionalParams>
                        <ParameterPair Key="SlKey">
                           <Value xsi:type="xsd:int">2</Value>
                        </ParameterPair>
                     </AdditionalParams>
                     <Name/>
                     <ID>608</ID>
                  </Transfer>
                  <Transport>
                     <Name>Group</Name>
                     <ID>2</ID>
                  </Transport>
                  <PointToId>1000028</PointToId>
                  <CityKey>80</CityKey>
                  <PointToName>Kiev ap</PointToName>
                  <PointFromId>2930</PointFromId>
                  <PointFromName>Red</PointFromName>
               </Service>
               <Service xsi:type="ExcursionService">
                  <ExternalID>-5</ExternalID>
                  <Price>120</Price>
                  <NMen>2</NMen>
                  <Partner>
                     <Name>Mouzenidis Travel 1</Name>
                     <ID>1035</ID>
                     <PartnersGroupID>1051</PartnersGroupID>
                     <FullName>Mouzenidis Travel 1</FullName>
                     <Fax>007-(495)-950-4-950</Fax>
                     <Address>37, Leningradskiy prospekt, Moscow, Russia</Address>
                     <Email>aefremov@megatec.ru</Email>
                  </Partner>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1035</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(50,00(0-120)[test_exc] * 2 pax) = 100,00</DetailBrutto>
                  <Notes/>
                  <Name>EXC::Kiev City</Name>
                  <StartDate>2022-08-23T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>120</Brutto>
                  <ServiceClassID>1</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168808</ID>
                  <Status>
                     <Name>EXC::Kiev City</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <ExcursionID>714</ExcursionID>
               </Service>
               <Service xsi:type="ExtraService">
                  <ExternalID xsi:nil="true"/>
                  <Price>200</Price>
                  <NMen>2</NMen>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="HotelDlKey">
                        <Value xsi:type="xsd:int">168804</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">1035</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(100,00(0-120)[Регресс] * 2 pax * 1 days) = 200,00</DetailBrutto>
                  <Notes/>
                  <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                  <StartDate>2022-08-23T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>200</Brutto>
                  <ServiceClassID>79</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168807</ID>
                  <Status>
                     <Name>EX::Сейф в номере/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <IsPackage>false</IsPackage>
                  <Code>694</Code>
                  <HasDuration>false</HasDuration>
               </Service>
               <Service xsi:type="ExtraService">
                  <ExternalID xsi:nil="true"/>
                  <Price>478</Price>
                  <NMen>2</NMen>
                  <PartnerID>1035</PartnerID>
                  <Quota>NotChecked</Quota>
                  <PacketKey>0</PacketKey>
                  <AdditionalParams>
                     <ParameterPair Key="HotelDlKey">
                        <Value xsi:type="xsd:int">168804</Value>
                     </ParameterPair>
                     <ParameterPair Key="ContractPrKey">
                        <Value xsi:type="xsd:int">2930</Value>
                     </ParameterPair>
                  </AdditionalParams>
                  <DetailBrutto>(239,00(0-120)[тестэкстрарэд220822] * 2 pax * 1 days) = 478,00</DetailBrutto>
                  <Notes/>
                  <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                  <StartDate>2022-08-22T00:00:00</StartDate>
                  <StartDay xsi:nil="true"/>
                  <Duration>1</Duration>
                  <RateBrutto>EU</RateBrutto>
                  <Brutto>478</Brutto>
                  <ServiceClassID>102</ServiceClassID>
                  <TouristCount>2</TouristCount>
                  <ID>168803</ID>
                  <Status>
                     <Name>EX::efremov2/Red/Double Room/2AD/Jakuzzi(Kiev)</Name>
                     <ID>1</ID>
                  </Status>
                  <CityKey>80</CityKey>
                  <IsPackage>false</IsPackage>
                  <Code>713</Code>
                  <HasDuration>false</HasDuration>
               </Service>
            </Services>
            <ID>37263</ID>
            <Name>MT140101A62</Name>
            <Brutto>4948</Brutto>
            <CountryID>6</CountryID>
            <CityID>80</CityID>
            <PartnerID>1035</PartnerID>
            <Status>WaitingConfirmation</Status>
            <StartDate>2022-08-20T00:00:00</StartDate>
            <EndDate>2022-08-27T00:00:00</EndDate>
            <Duration>7</Duration>
            <CreationDate>2022-03-04T16:56:48.953</CreationDate>
            <CreatorID>101</CreatorID>
            <Tourists>
               <Tourist Sex="Male" BirthDate="1979-08-10T00:00:00" FirstNameLat="Alex" SurNameLat="Vladimirov" AgeType="Adult" IsMain="true" ID="88548" Phone="89610553087" Email="dfj@ety.ua">
                  <ForeignPassport Serie="1234" Number="123456" EndDate="2025-01-01T00:00:00"/>
                  <ExternalID>0</ExternalID>
               </Tourist>
               <Tourist Sex="Male" BirthDate="1972-08-11T00:00:00" FirstNameLat="Alexa" SurNameLat="Vladimirovicha" AgeType="Adult" IsMain="false" ID="88549" Phone="" Email="">
                  <ForeignPassport Serie="" Number="" EndDate="2025-01-01T00:00:00"/>
                  <ExternalID>0</ExternalID>
               </Tourist>
            </Tourists>
            <OwnerID xsi:nil="true"/>
            <TourOperatorID>-1</TourOperatorID>
            <TourOperatorCode>0</TourOperatorCode>
            <ExternalID>0</ExternalID>
            <AdditionalParams>
               <ParameterPair Key="PcnId">
                  <Value xsi:type="xsd:int">116</Value>
               </ParameterPair>
            </AdditionalParams>
         </GetReservationResult>
      </GetReservationResponse>
   </soap:Body>
</soap:Envelope>


GetArrivalsByDate (Получение списка туристов на дату начала тура)

Метод возвращает данные по списку прилетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке, у которого задан номер телефона.
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона.
За доступность метода для пользователя отвечает настройка ShowhotelReservationsByDate. По умолчанию настройка отключена.
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в Master-Interlook → Settings → Online users → User → Person connection → edit role.
Если у пользователя не включена настройка ShowhotelReservationsByDat - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid.

Настройка доступа
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ArrivalDate * – дата заезда
  • CountryKey – ключ страны
  • RegionKey – ключ региона
  • CityKey – ключ города
  • HotelKey – ключ отеля

Возвращаемый результат:

  • GetArrivalsByDateResult – результат поиска
    • ReservationId – номер путевки в клиенте Interlook
    • Email – электронный адрес если есть
    • Name – имя фамилия туриста
    • Phone – номер телефона (выводится в формате только цифр, обрабатывается при формирование ответа)
    • CheckIn – дата заезда
    • CheckOut – дата выезда
    • HotelId – ключ отеля
    • HasTransferArrival – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
    • FlightArrival – номер прямого рейса
    • FlightDeparture – номер обратного рейса
    • FlightArrivalTime – время вылета прямого перелета
    • FlightDepartureTime – время вылета обратного перелета
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
<soapenv:Header/>
<soapenv:Body>
<meg:GetArrivalsByDate>
<!--Optional:-->
<meg:guid>96ab8f68-9a13-4845-b338-fdb29be4970b</meg:guid>
<meg:arrivalDate>2021-07-15</meg:arrivalDate>
</meg:GetArrivalsByDate>
</soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetArrivalsByDate

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetArrivalsByDateResponse xmlns="http://www.megatec.ru/">
         <GetArrivalsByDateResult>[{"reservationId":"MT110831A01","email":"","name":"Gusn Genna","phone":"","checkIn"
:"31.08.2021","checkOut":"05.09.2021","hotelId":2945,"hasTransferArrival":false,"hasTransferDeparture"
:false,"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""}]</GetArrivalsByDateResult>
      </GetArrivalsByDateResponse>
   </soap:Body>
</soap:Envelope>


GetDeparturesByDate (Получение списка туристов на дату окончания тура)

Метод возвращает данные по списку вылетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке, у которого задан номер телефона.
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона.
За доступность метода для пользователя отвечает настройка ShowhotelReservationsByDate. По умолчанию настройка отключена.
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в Master-Interlook → Settings → Online users → User → Person connection → edit role.
Если у пользователя не включена настройка ShowhotelReservationsByDat - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid.

Настройка доступа
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DepartureDate * – дата выезда
  • CountryKey – ключ страны
  • RegionKey – ключ региона
  • CityKey – ключ города
  • HotelKey – ключ отеля

Возвращаемый результат:

  • GetDeparturesByDateResult – результат поиска
    • ReservationId – номер путевки в ИЛ(выводим номер путевки который видим в интерук клиенте)
    • Email – электронный адрес если есть
    • Name – имя фамилия туриста
    • Phone – номер телефона (выводится в формате только цифры, не смотря на то как это в интерлке, обрабатывается при формирование ответа)
    • CheckIn – дата заезда
    • checkOut – дата выезда
    • HotelId – ключ отеля
    • HasTransferArrival – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
    • HasTransferDeparture – трансфер из отеля (true – есть трансфер из отеля, если трансфера в заявке нет выводится false)
    • FlightArrival – номер прямого рейса
    • FlightDeparture – номер обратного рейса
    • FlightArrivalTime – время вылета прямого перелета
    • FlightDepartureTime – время вылета обратного перелета
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetDeparturesByDate>
         <!--Optional:-->
         <meg:guid>a1b232d3-6971-4ede-8ac3-54f43d43c867</meg:guid>
         <meg:departureDate>2021-07-27</meg:departureDate>
      </meg:GetDeparturesByDate>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetDeparturesByDate

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetDeparturesByDateResponse xmlns="http://www.megatec.ru/">
         <GetDeparturesByDateResult>[{"reservationId":"MT110714A02","email":"","name":"dfsgd gfjf","phone":"","checkIn":"14.07.2021",
"checkOut":"27.07.2021","hotelId":2940,"hasTransferArrival":false,"hasTransferDeparture"
:false,"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""},{"reservationId":"MT110713A02","email":"","name":"eter rtet","phone":""
,"checkIn":"13.07.2021","checkOut":"27.07.2021","hotelId":2940,"hasTransferArrival":false,"hasTransferDeparture":false,
"flightArrival":"","flightDeparture":"","flightArrivalTime":"","flightDepartureTime":""}]</GetDeparturesByDateResult>
      </GetDeparturesByDateResponse>
   </soap:Body>
</soap:Envelope>


CancelReservation (Аннулирование путевки)

Метод производит аннуляцию путевки.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки (не номер путевки)
  • AnnulReasonID * – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение There is no this annulating reason in database)
  • Note – комментарий к аннуляции

Возвращаемые значения.

  • CancelReservationResult – результат аннуляции.

В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены.
В случае ошибки получаем в ответ расшифровку ошибки.
В случае некорректности идентификатора аутентификации ошибка примет вид: "Invalid user or password (Invalid GUID)".
Если отсутствует один из обязательных параметров или значение некорректно " Check the parameter 'dgKey' = 0. There is no any reservation for you in the database".

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CancelReservation>
         <!--Optional:-->
         <meg:guid>e5910963-6f5a-4c18-8799-34417675bfe9</meg:guid>
         <meg:dgKey>36018</meg:dgKey>
         <meg:annulReasonID>1001</meg:annulReasonID>
         <!--Optional:-->
         <meg:note>Проверка штрафа</meg:note>
      </meg:CancelReservation>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CancelReservation

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CancelReservationResponse xmlns="http://www.megatec.ru/">
         <CancelReservationResult>
         HTL::Kiev/Maska/Double Room/2AD/Jakuzzi/BB - For cancellation date 19.08.2021, 
         the penalty is 1 night(s). Penalty value is 19.80 EU</CancelReservationResult>
      </CancelReservationResponse>
   </soap:Body>
</soap:Envelope>


CancelReservationExtended (Аннулирование путевки с выводом информации о штрафах)

Метод производит аннуляцию путевки и выдает информацию о штрафе.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • AnnulReasonID * – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение There is no this annulating reason in database)
  • Note – комментарий к аннуляции

Возвращаемые значения.

  • Number – номер сервиса
  • ResultMessage – результат аннуляции с полным описанием. В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены. В случае ошибки получаем в ответ расшифровку ошибки.
    • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан
      • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
      • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
      • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
      • PenaltyValue - размер штрафа
      • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
      • TotalPenalty - полная сумма штрафа
      • Description - описание


Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CancelReservationExtended>
         <!--Optional:-->
         <meg:guid>16e129b9-5e69-4f53-808d-2fca840a32c1</meg:guid>
         <meg:dgKey>37084</meg:dgKey>
         <meg:annulReasonID>1001</meg:annulReasonID>
         <!--Optional:-->
         <meg:note>567658</meg:note>
      </meg:CancelReservationExtended>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CancelReservation

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CancelReservationExtendedResponse xmlns="http://www.megatec.ru/">
         <CancelReservationExtendedResult>
            <CanceledServiceResult>
               <Number>1</Number>
               <ResultMessage>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB - If canceled in period 15.02.2022 - 16.02.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 840.00 EU</ResultMessage>
               <PenaltyCost>
                  <PolicyKey>123</PolicyKey>
                  <DateFrom>2022-02-15T00:00:00</DateFrom>
                  <DateTo>2022-02-16T23:59:59</DateTo>
                  <PenaltyValue>20</PenaltyValue>
                  <IsPercent>true</IsPercent>
                  <TotalPenalty>840</TotalPenalty>
                  <Description>If canceled in period 15.02.2022 - 16.02.2022, the penalty will be  20.00 % of the cost of accommodation Penalty value is 840.00 EU</Description>
               </PenaltyCost>
            </CanceledServiceResult>
         </CancelReservationExtendedResult>
      </CancelReservationExtendedResponse>
   </soap:Body>
</soap:Envelope>


GetReservationsFrom (Отбор данных по дате создания путевки)

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

Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата от
  • DateTo – дата до

Возвращаемый результат:

  • Key – ключ путевки
  • Code – номер путевки

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetReservationsFrom>
         <!--Optional:-->
         <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
         <meg:dateFrom>2021-08-17</meg:dateFrom>
         <meg:dateTo>2021-09-17</meg:dateTo>
      </meg:GetReservationsFrom>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetReservationsFrom

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetReservationsFromResponse xmlns="http://www.megatec.ru/">
         <GetReservationsFromResult Message="Ok">
            <Data>
               <ReservationKeyCode Key="35990" Code="MT110820A0J"/>
               <ReservationKeyCode Key="35991" Code="MT110820A0K"/>
               <ReservationKeyCode Key="35992" Code="MT110821A01"/>
               <ReservationKeyCode Key="35993" Code="MT110821A02"/>
               <ReservationKeyCode Key="35994" Code="MT110821A03"/>
               <ReservationKeyCode Key="35995" Code="MT110820A0L"/>
               <ReservationKeyCode Key="35996" Code="MT110820A0M"/>
               <ReservationKeyCode Key="35997" Code="MT110820A0N"/>
               <ReservationKeyCode Key="35998" Code="MT110820A0P"/>
               <ReservationKeyCode Key="35999" Code="MT110820A0Q"/>
               <ReservationKeyCode Key="36000" Code="MT110820A0R"/>
               <ReservationKeyCode Key="36001" Code="MT110820A0S"/>
               <ReservationKeyCode Key="36002" Code="MT110820A0T"/>
               <ReservationKeyCode Key="36003" Code="MT110820A0U"/>
               <ReservationKeyCode Key="36004" Code="MT110820A0V"/>
               <ReservationKeyCode Key="36005" Code="MT110820A0W"/>
               <ReservationKeyCode Key="36006" Code="MT110820A0X"/>
               <ReservationKeyCode Key="36007" Code="MT110820A0Y"/>
               <ReservationKeyCode Key="36008" Code="MT110820A0Z"/>
               <ReservationKeyCode Key="36009" Code="MT110820A10"/>
               <ReservationKeyCode Key="36010" Code="MT110820A11"/>
               <ReservationKeyCode Key="36011" Code="MT110820A12"/>
               <ReservationKeyCode Key="36012" Code="MT110820A13"/>
               <ReservationKeyCode Key="36013" Code="MT110820A14"/>
               <ReservationKeyCode Key="36014" Code="MT110829A03"/>
               <ReservationKeyCode Key="36015" Code="MT110829A04"/>
               <ReservationKeyCode Key="36016" Code="MT110827A01"/>
               <ReservationKeyCode Key="36017" Code="MT110827A02"/>
            </Data>
         </GetReservationsFromResult>
      </GetReservationsFromResponse>
   </soap:Body>
</soap:Envelope>


CreateReservationMessage (Создание сообщения для путевки)

Метод создает сообщение для конкретной путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • Message * – текст сообщения
  • SenderName * – имя отправителя сообщения

Возвращаемый результат: не возвращает результата

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CreateReservationMessage>
         <!--Optional:-->
         <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
         <meg:dgKey>35950</meg:dgKey>
         <!--Optional:-->
         <meg:message>testmessage</meg:message>
         <!--Optional:-->
         <meg:senderName>testsender</meg:senderName>
      </meg:CreateReservationMessage>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CreateReservationMessage

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CreateReservationMessageResponse xmlns="http://www.megatec.ru/"/>
   </soap:Body>
</soap:Envelope>


GetReservationMessages (Получение сообщений по путевке)

Метод производит получение сообщений для конкретной путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • MessageDirection * – директория расположения сообщений (по умолчанию 1)

Возвращаемый результат:

  • DogovorMessageItem – результат поиска
    • Id – идентификатор сообщения
    • IsOutgouing – исходящее (true - исходящее, false - входящее )
    • DogovorId – номер путевки
    • DateCreate – дата создания сообщения
    • SenderName – имя отправителя
    • IsRead – прочитано (true - прочитано, false - не прочитано )
    • TourOperKey – ключ туроператора
    • Processed – статус обработки
    • Text – текст сообщения

В случае ошибки приходит расшифровка ошибки.
При ошибке в Guid получим сообщение: "Invalid user or password (Invalid GUID)".
При ошибке в ключе путевки получим сообщение: "Check the parameter 'dgKey' = <значение в запросе>. There is no any reservation for you in the database".
В случае отсутствия в выбранной директории сообщений получим ответ: "Ok. There is no any message with 'messageDirection' = <значение в запросе>".

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetReservationMessages>
         <!--Optional:-->
         <meg:guid>b4c08d98-0c24-4e34-abcc-e7794e3225a8</meg:guid>
         <meg:dgKey>35950</meg:dgKey>
         <meg:messageDirection>1</meg:messageDirection>
      </meg:GetReservationMessages>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetReservationMessages

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetReservationMessagesResponse xmlns="http://www.megatec.ru/">
         <GetReservationMessagesResult Message="Ok">
            <Data>
               <DogovorMessageItem>
                  <Id>778841</Id>
                  <IsOutgouing>false</IsOutgouing>
                  <DogovorId>35950</DogovorId>
                  <DateCreate>2021-08-23T09:44:13.49</DateCreate>
                  <SenderName>testsender</SenderName>
                  <IsRead>false</IsRead>
                  <TourOperKey>1035</TourOperKey>
                  <Processed>1</Processed>
                  <Text>testmessage</Text>
               </DogovorMessageItem>
               <DogovorMessageItem>
                  <Id>778838</Id>
                  <IsOutgouing>false</IsOutgouing>
                  <DogovorId>35950</DogovorId>
                  <DateCreate>2021-08-23T09:40:37.2</DateCreate>
                  <SenderName>testsender</SenderName>
                  <IsRead>false</IsRead>
                  <TourOperKey>1035</TourOperKey>
                  <Processed>1</Processed>
                  <Text>testmessage</Text>
               </DogovorMessageItem>
               <DogovorMessageItem>
                  <Id>778837</Id>
                  <IsOutgouing>false</IsOutgouing>
                  <DogovorId>35950</DogovorId>
                  <DateCreate>2021-08-23T09:40:28.177</DateCreate>
                  <SenderName>testsender</SenderName>
                  <IsRead>false</IsRead>
                  <TourOperKey>1035</TourOperKey>
                  <Processed>1</Processed>
                  <Text>estmessage</Text>
               </DogovorMessageItem>
            </Data>
         </GetReservationMessagesResult>
      </GetReservationMessagesResponse>
   </soap:Body>
</soap:Envelope>


Методы поиска

SearchHotelServices (Получение вариантов проживаний по параметрам запроса)

Метод производит получение возможных вариантов проживаний по параметрам запроса.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • PageSize * – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
    • RowIndexFrom * – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
    • DateFrom * – дата «С»
    • DateTo * – дата «По»
    • RegionKeys – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • CityKeys – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • HotelKeys – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • RoomDescriptions – идентификаторы описаний комнат. Если не предавать будет искать для всех
    • PansionKeys – идентификаторы питаний. Если не передавать будет искать для всех
    • Ages – возраст детей (если не указан, то размещения с детьми не ищутся, туристы считаются взрослыми)
    • Pax * – размещение
    • Tariffs – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary
    • CacheGuid – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
    • ResultView – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
    • QuotaTypes – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
    • Mode – не указываем или указываем 0

Возвращаемый результат:

  • DataRequestResult – результат поиска
    • ResultTable – таблица с результатом
      • HotelServices – услуга отеля
        • HotelName – наименование отеля
        • HotelKey – ключ отеля
        • RtCode – тип номера
        • RtKey – ключ типа номера
        • RcName – категория номера
        • RcKey – ключ категории номера
        • RdName – тип+категория номера
        • RdKey – ключ тип+категория номера
        • AcName – тип размещения
        • AcKey – ключ типа размещения
        • PnCode – тип питания
        • PnKey – ключ типа питания
        • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
        • Cost – размер обязательной доплаты Cost
        • AddHotsCost – размер обязательной доплаты AdHot
        • AddHotsWithCosts – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service )
        • DetailBrutto – формула расчета цены
        • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
        • CountryKey – ключ страны предоставления услуги
        • CityKey – ключ города предоставления услуги
        • CityName – наименование города предоставления услуги
        • HotelWebSite – адрес сайта отеля
        • TariffId – идентификатор тарифа
        • TariffName – наименование тарифа
        • TariffDescription – описание тарифа
        • AddHots – идентификатор Adhot
        • ContractPrKey – ключ партнера, предоставляющего услугу
        • HotelImage – фото отеля
        • Rate – валюта
        • AddHotsWithCostID – идентификатор AddHotsWithCost
    • ColunmNames – название столбцов таблицы
      • HotelName – наименование отеля
      • HotelKey – ключ отеля
      • RtCode – тип номера
      • RtKey – ключ типа номера
      • RcName – категория номера
      • RcKey – ключ категории номера
      • RdName – тип+категория номера
      • RdKey – ключ тип+категория номера
      • AcName – тип размещения
      • AcKey – ключ типа размещения
      • PnCode – тип питания
      • PnKey – ключ типа питания
      • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
      • Cost – размер обязательной доплаты Cost
      • AddHotsCost – размер обязательной доплаты AddHotsCost
      • DetailBrutto – формула расчета цены
      • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
      • CountryKey – ключ страны предоставления услуги
      • CityKey – ключ города предоставления услуги
      • CityName – наименование города предоставления услуги
      • HotelWebSite – адрес сайта отеля
      • TariffId – идентификатор тарифа
      • TariffName – наименование тарифа
      • TariffDescription – описание тарифа
      • AddHots – идентификатор Adhot
      • ContractPrKey – ключ партнера, предоставляющего услугу
      • HotelImage – фото отеля
      • Rate – валюта
      • AddHotsWithCostID – идентификатор AddHotsWithCost
    • TotalCount – номер строки, на которой закончился поиск
    • PageSize – количество возвращаемых строк данных
    • PageIndex – номер строки, с которой начали поиск
    • IsLastPage – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение true. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
    • AdditionalData – список обязательных Addhots
      • ArrayOfAnyType – массив типов услуг
        • anyType – тип услуги
          • ExternalID – параметр для внутреннего использования
          • Price – стоимость
          • NMen – количество туристов по путевке
          • PartnerID – идентификатор партнера
          • Quota – квота по услуге
          • PacketKey – ключ пакета
          • AdditionalParams – массив дополнительных параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • Tourists – туристы
          • DetailNetto – подробности нетто
          • DetailBrutto – подробности брутто
          • Notes – примечания к услуге
          • Name – наименование услуги
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
          • StartDay – день предоставления услуги
          • Duration – продолжительность услуги
          • RateBrutto – валюта брутто
          • Brutto – цена брутто
          • RateNetto – валюта нетто
          • Netto – цена нетто
          • ServiceClassID – идентификатор класса услуги
          • TouristCount – количество туристов, пользующихся услугой
          • ID – идентификатор услуги (-1 для новой путевки )
          • Status – статус услуги
            • Name – наименование статуса услуги
            • ID – идентификатор статуса услуги
            • Description – описание статуса услуги
            • NameLat – наименование статуса услуги латиницей
            • Code – код статуса услуги
            • CodeLat – код статуса услуги латиницей
            • Unicode – код ISO статуса услуги
          • CityKey – ключ города предоставления услуги
          • IsPackage – признак пакетной услуги
          • Code – идентификатор услуги
          • HasDuration – услуга с продолжительностью или без
    • ResponseGuid – идентификатор ответа, который необходимо передать, если мы двигаемся по тому же поиску используя пейджинг

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'."

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
<meg:SearchHotelServices>
<!--Optional:-->
         <meg:guid>ef5bafbc-722f-4d8b-bdd5-844e8633788f</meg:guid>
         <!--Optional:-->
         <meg:request>
<meg:PageSize>100000</meg:PageSize>
            <meg:RowIndexFrom>1</meg:RowIndexFrom>
            <meg:DateFrom>2021-12-01</meg:DateFrom>
            <meg:DateTo>2021-12-22</meg:DateTo>
            <!--Optional:-->
<meg:RegionKeys>
               <!--Zero or more repetitions:-->
               <meg:int>28</meg:int>
            </meg:RegionKeys>
            <!--Optional:-->
<meg:HotelKeys>
               <!--Zero or more repetitions:-->
               <meg:int>2932</meg:int>
           </meg:HotelKeys>
            <!--Optional:-->
<meg:Ages>
<!--Zero or more repetitions:-->
            </meg:Ages>
            <meg:Pax>2</meg:Pax>
            <!--Optional:-->
<meg:CacheGuid>9f542137-9403-472c-807d-ae839fb2ee29</meg:CacheGuid>
<meg:ResultView>1</meg:ResultView>
            <meg:Mode>0</meg:Mode>
            <!--Optional:-->
<meg:QuotaTypes>
               <!--Zero or more repetitions:-->
             </meg:QuotaTypes>
         </meg:request>
      </meg:SearchHotelServices>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода SearchHotelServices

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SearchHotelServicesResponse xmlns="http://www.megatec.ru/">
         <SearchHotelServicesResult Message="Ok">
            <Data>
               <DataRequestResult>
                  <ResultTable>
                     <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
                        <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="HotelServices" msdata:UseCurrentLocale="true">
                           <xs:complexType>
                              <xs:choice minOccurs="0" maxOccurs="unbounded">
                                 <xs:element name="HotelServices">
                                    <xs:complexType>
                                       <xs:sequence>
                                          <xs:element name="HotelName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RtCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RtKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RdName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RdKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="PnCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="PnKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TotalCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="Cost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHotsCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHotsWithCosts" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="DetailBrutto" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="QuoteType" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CountryKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CityKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CityName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelWebSite" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffId" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffDescription" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHots" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="ContractPrKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelImage" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="Rate" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHotsWithCostID" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                       </xs:sequence>
                                    </xs:complexType>
                                 </xs:element>
                              </xs:choice>
                           </xs:complexType>
                        </xs:element>
                     </xs:schema>
                     <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
                        <DocumentElement xmlns="">
                           <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room</RtCode>
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</RtKey>
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Side Sea View</RcName>
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">8</RcKey>
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room Side Sea View</RdName>
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">1599</RdKey>
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">BB</PnCode>
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</PnKey>
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">6915.0000</TotalCost>
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">6825.00</Cost>
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">30.00</AddHotsCost>
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(325,00[kolesnyk2]*21) * 1 room = 6825,00</DetailBrutto>
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-1</AddHots>
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-3,-4</AddHotsWithCostID>
                           </HotelServices>
                           <HotelServices diffgr:id="HotelServices2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite</RtCode>
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">45</RtKey>
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Side Sea View</RcName>
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">8</RcKey>
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite Side Sea View</RdName>
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2480</RdKey>
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">HB</PnCode>
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">4</PnKey>
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11335.0000</TotalCost>
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11235.00</Cost>
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">40.00</AddHotsCost>
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(535,00[kolesnyk2]*21) * 1 room = 11235,00</DetailBrutto>
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-2</AddHots>
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-7,-8</AddHotsWithCostID>
                           </HotelServices>
                           <HotelServices diffgr:id="HotelServices3" msdata:rowOrder="2" diffgr:hasChanges="inserted">
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite</RtCode>
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">45</RtKey>
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Jakuzzi</RcName>
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">20</RcKey>
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Junior Suite Jakuzzi</RdName>
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">46528</RdKey>
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">HB</PnCode>
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">4</PnKey>
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11343.0000</TotalCost>
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">11235.00</Cost>
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">48.00</AddHotsCost>
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">60.00</AddHotsWithCosts>
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(535,00[kolesnyk2]*21) * 1 room = 11235,00</DetailBrutto>
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</AddHots>
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
                              <AddHotsWithCostID xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">-5,-6</AddHotsWithCostID>
                           </HotelServices>
                        </DocumentElement>
                     </diffgr:diffgram>
                  </ResultTable>
                  <ColunmNames>
                     <string>HotelName</string>
                     <string>HotelKey</string>
                     <string>RtCode</string>
                     <string>RtKey</string>
                     <string>RcName</string>
                     <string>RcKey</string>
                     <string>RdName</string>
                     <string>RdKey</string>
                     <string>AcName</string>
                     <string>AcKey</string>
                     <string>PnCode</string>
                     <string>PnKey</string>
                     <string>TotalCost</string>
                     <string>Cost</string>
                     <string>AddHotsCost</string>
                     <string>AddHotsWithCosts</string>
                     <string>DetailBrutto</string>
                     <string>QuoteType</string>
                     <string>CountryKey</string>
                     <string>CityKey</string>
                     <string>CityName</string>
                     <string>HotelWebSite</string>
                     <string>TariffId</string>
                     <string>TariffName</string>
                     <string>TariffDescription</string>
                     <string>AddHots</string>
                     <string>ContractPrKey</string>
                     <string>HotelImage</string>
                     <string>Rate</string>
                     <string>AddHotsWithCostID</string>
                  </ColunmNames>
                  <TotalCount>4</TotalCount>
                  <PageSize>100000</PageSize>
                  <PageIndex>1</PageIndex>
                  <IsLastPage>true</IsLastPage>
                  <AdditionalData>
                     <ArrayOfAnyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>48</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>Hardlink</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>0</Duration>
                           <RateBrutto/>
                           <Brutto>48</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>99</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>0</ID>
                           <Status>
                              <Name>Hardlink</Name>
                              <ID>0</ID>
                              <Description/>
                              <NameLat/>
                              <Code/>
                              <CodeLat/>
                              <Unicode/>
                           </Status>
                           <CityKey>80</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>699</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>30</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>Hardlink</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>0</Duration>
                           <RateBrutto/>
                           <Brutto>30</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>99</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-1</ID>
                           <Status>
                              <Name>Hardlink</Name>
                              <ID>0</ID>
                              <Description/>
                              <NameLat/>
                              <Code/>
                              <CodeLat/>
                              <Unicode/>
                           </Status>
                           <CityKey>80</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>699</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>40</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>Hardlink</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>0</Duration>
                           <RateBrutto/>
                           <Brutto>40</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>99</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-2</ID>
                           <Status>
                              <Name>Hardlink</Name>
                              <ID>0</ID>
                              <Description/>
                              <NameLat/>
                              <Code/>
                              <CodeLat/>
                              <Unicode/>
                           </Status>
                           <CityKey>80</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>699</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>40</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>тестовый ужин на 100921</Name>
                           <StartDate>2021-12-05T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>40</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>70</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-3</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>704</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>20</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>_Прачечная, химчистка</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>20</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>78</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-4</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>639</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>40</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>тестовый ужин на 100921</Name>
                           <StartDate>2021-12-05T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>40</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>70</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-5</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>704</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>20</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>_Прачечная, химчистка</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>20</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>78</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-6</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>639</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>40</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>тестовый ужин на 100921</Name>
                           <StartDate>2021-12-05T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>40</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>70</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-7</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>704</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>20</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>_Прачечная, химчистка</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>20</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>78</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-8</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>639</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>40</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>тестовый ужин на 100921</Name>
                           <StartDate>2021-12-05T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>40</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>70</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-9</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>704</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
                           <Price>20</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <Tourists/>
                           <DetailNetto/>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>_Прачечная, химчистка</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
                           <Duration>1</Duration>
                           <RateBrutto/>
                           <Brutto>20</Brutto>
                           <RateNetto/>
                           <Netto>0</Netto>
                           <ServiceClassID>78</ServiceClassID>
                           <TouristCount>0</TouristCount>
                           <ID>-10</ID>
                           <CityKey>0</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>639</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                     </ArrayOfAnyType>
                  </AdditionalData>
                  <ResponseGuid>36d4defd-a39d-48c5-8288-32a22822f411</ResponseGuid>
               </DataRequestResult>
            </Data>
         </SearchHotelServicesResult>
      </SearchHotelServicesResponse>
   </soap:Body>
</soap:Envelope>


SearchHotelServicesMinHotel (Получение одной минимальной рассчитанной цены для отеля)

Метод выводит одну минимальную (сортировка по суточной цене) рассчитанную цену для отеля.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • PageSize * – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
    • RowIndexFrom * – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
    • DateFrom * – дата «С»
    • DateTo * – дата «По»
    • RegionKeys – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • CityKeys – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • HotelKeys – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • RoomDescriptions – идентификаторы описаний комнат. Если не предавать будет искать для всех (возвращается при запросе к методу GetRoomFescriptions)
    • PansionKeys – идентификаторы питаний. Если не передавать будет искать для всех (возвращается при запросе к методу GetPansions)
    • Ages – возраст детей
    • Pax * – размещение
    • Tariffs – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary (0 - Ordinary, 1 - SPO)
    • CacheGuid – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
    • ResultView – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
    • QuotaTypes – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
    • Mode – не указываем или указываем 0

Возвращаемый результат:

  • DataRequestResult – результат поиска
    • ResultTable – таблица с результатом
      • HotelServices – услуга отеля
        • HotelName – наименование отеля
        • HotelKey – ключ отеля
        • RtCode – тип номера
        • RtKey – ключ типа номера
        • RcName – категория номера
        • RcKey – ключ категории номера
        • RdName – тип+категория номера
        • RdKey – ключ тип+категория номера
        • AcName – тип размещения
        • AcKey – ключ типа размещения
        • PnCode – тип питания
        • PnKey – ключ типа питания
        • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
        • Cost – размер обязательной доплаты Cost
        • AddHotsCost – размер обязательной доплаты AdHot
        • AddHotsWithCosts – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service )
        • DetailBrutto – формула расчета цены
        • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
        • CountryKey – ключ страны предоставления услуги
        • CityKey – ключ города предоставления услуги
        • CityName – наименование города предоставления услуги
        • HotelWebSite – адрес веб-сайта отеля
        • TariffId – идентификатор тарифа
        • TariffName – наименование тарифа
        • TariffDescription – описание тарифа
        • AddHots – идентификатор Adhot
        • ContractPrKey – ключ партнера предоставляющего услугу
        • HotelImage – фото отеля
        • AddHotsWithCostID – идентификатор AddHotsWithCost
        • Rate – валюта
    • ColunmNames – название столбцов таблицы
      • HotelName – наименование отеля
      • HotelKey – ключ отеля
      • RtCode – тип номер
      • RtKey – ключ типа номера
      • RcName – категория номера
      • RcKey – ключ категории номера
      • RdName – тип+категория номера
      • RdKey – ключ тип+категория номера
      • AcName – тип размещения
      • AcKey – ключ типа размещения
      • PnCode – тип питания
      • PnKey – ключ типа питания
      • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
      • Cost – размер обязательной доплаты Cost
      • AddHotsCost – размер обязательной доплаты AddHotsCost
      • DetailBrutto – формула расчета цены
      • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
      • CountryKey – ключ страны предоставления услуги
      • CityKey – ключ города предоставления услуги
      • CityName – наименование города предоставления услуги
      • HotelWebSite – адрес сайта отеля
      • TariffId – идентификатор тарифа
      • TariffName – наименование тарифа
      • TariffDescription – описание тарифа
      • AddHots – доплата
      • ContractPrKey – ключ партнера, предоставляющего услугу
      • HotelImage – фото отеля
      • AddHotsWithCostID – идентификатор AddHotsWithCost
      • Rate – валюта
    • TotalCount – номер строки, на которой закончился поиск
    • PageSize – количество возвращаемых строк данных
    • PageIndex – номер строки, с которой начали поиск
    • IsLastPage – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение true. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
    • AdditionalData – список обязательных Adhot
      • ArrayOfAnyType – массив типов услуг
        • anyType – тип услуги
          • ExternalID – параметр для внутреннего использования
          • Price – стоимость
          • NMen – количество туристов по путевке
          • PartnerID – идентификатор партнера
          • Quota – квота по услуге
          • PacketKey – ключ пакета
          • AdditionalParams – массив дополнительных параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • Tourists – туристы
          • DetailNetto – подробности нетто
          • DetailBrutto – подробности брутто
          • Notes – примечания к услуге
          • Name – наименование услуги
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
          • StartDay – день предоставления услуги
          • Duration – продолжительность услуги
          • RateBrutto – валюта брутто
          • Brutto – цена брутто
          • RateNetto – валюта нетто
          • Netto – цена нетто
          • ServiceClassID – идентификатор класса услуги
          • TouristCount – количество туристов, пользующихся услугой
          • ID – идентификатор услуги (-1 для новой путевки )
          • Status – статус услуги
            • Name – наименование статуса услуги
            • ID – идентификатор статуса услуги
            • Description – описание статуса услуги
            • NameLat – наименование статуса услуги латиницей
            • Code – код статуса услуги
            • CodeLat – код статуса услуги латиницей
            • Unicode – код ISO статуса услуги
          • CityKey – ключ города предоставления услуги
          • IsPackage – признак пакетной услуги
          • Code – идентификатор услуги
          • HasDuration – услуга с продолжительностью или без
    • ResponseGuid – идентификатор ответа

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок и/или номер строки с ошибкой.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'."

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:SearchHotelServicesMinHotel>
     <!--Optional:-->
         <meg:guid>138e178e-6c1c-4e5a-9f82-8280cb014804</meg:guid>
         <!--Optional:-->
         <meg:request>
<meg:PageSize>100000</meg:PageSize>
            <meg:RowIndexFrom>0</meg:RowIndexFrom>
            <meg:DateFrom>2021-12-01</meg:DateFrom>
            <meg:DateTo>2022-12-22</meg:DateTo>
            <!--Optional:-->
            <meg:RegionKeys>
               <!--Zero or more repetitions:-->
               <meg:int>6</meg:int>
            </meg:RegionKeys>
            <!--Optional:-->
            <meg:CityKeys>
               <!--Zero or more repetitions:-->
               <meg:int>80</meg:int>
            </meg:CityKeys>
            <!--Optional:-->
            <meg:HotelKeys>
               <!--Zero or more repetitions:-->
               <meg:int>2932</meg:int>
            </meg:HotelKeys>
            <!--Optional:-->
            <meg:RoomDescriptionsKeys>
               <!--Zero or more repetitions:-->
               <meg:int>1894</meg:int>
            </meg:RoomDescriptionsKeys>
            <!--Optional:-->
            <meg:PansionKeys>
               <!--Zero or more repetitions:-->
               <meg:int>3</meg:int>
            </meg:PansionKeys>
            <!--Optional:-->
            <meg:Ages>
               <!--Zero or more repetitions:-->
               <meg:int>0</meg:int>
            </meg:Ages>
            <meg:Pax>2</meg:Pax>
            <!--Optional:-->
            <meg:Tariffs>
               <!--Zero or more repetitions:-->
               <meg:int>0</meg:int>
            </meg:Tariffs>
            <!--Optional:-->
            <meg:CacheGuid>f7f9dd22-5a50-455b-8cf0-f0a21153b650</meg:CacheGuid>
            <meg:ResultView>1</meg:ResultView>
            <meg:Mode>0</meg:Mode>
            <!--Optional:-->
            <meg:QuotaTypes>
               <!--Zero or more repetitions:-->
               <meg:int>0</meg:int>
            </meg:QuotaTypes>
         </meg:request>
      </meg:SearchHotelServicesMinHotel>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода SearchHotelServicesMinHotel

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SearchHotelServicesMinHotelResponse xmlns="http://www.megatec.ru/">
         <SearchHotelServicesMinHotelResult Message="Ok">
            <Data>
               <DataRequestResult>
                  <ResultTable>
                     <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
                        <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="HotelServices" msdata:UseCurrentLocale="true">
                           <xs:complexType>
                              <xs:choice minOccurs="0" maxOccurs="unbounded">
                                 <xs:element name="HotelServices">
                                    <xs:complexType>
                                       <xs:sequence>
                                          <xs:element name="HotelName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RtCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RtKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RdName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="RdKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AcName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AcKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="PnCode" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="PnKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TotalCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="Cost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHotsCost" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHotsWithCosts" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="DetailBrutto" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="QuoteType" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CountryKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CityKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="CityName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelWebSite" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffId" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffName" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="TariffDescription" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="AddHots" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="ContractPrKey" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="HotelImage" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                          <xs:element name="Rate" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0"/>
                                       </xs:sequence>
                                    </xs:complexType>
                                 </xs:element>
                              </xs:choice>
                           </xs:complexType>
                        </xs:element>
                     </xs:schema>
                     <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
                        <DocumentElement xmlns="">
                           <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room</RtCode>
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</RtKey>
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Jakuzzi</RcName>
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">20</RcKey>
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room Jakuzzi</RdName>
                              <RdKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">1894</RdKey>
                              <AcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">2AD</AcName>
                              <AcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">5558</AcKey>
                              <PnCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">BB</PnCode>
                              <PnKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</PnKey>
                              <TotalCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">125470.0000</TotalCost>
                              <Cost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">125450.00</Cost>
                              <AddHotsCost xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">20.00</AddHotsCost>
                              <AddHotsWithCosts xsi:type="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema">-1</AddHotsWithCosts>
                              <DetailBrutto xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">(325,00[kolesnyk2]*386) * 1 room = 125450,00</DetailBrutto>
                              <QuoteType xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</QuoteType>
                              <CountryKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">6</CountryKey>
                              <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
                              <CityName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Kiev</CityName>
                              <HotelWebSite xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <TariffId xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</TariffId>
                              <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
                              <TariffDescription xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
                              <AddHots xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">0</AddHots>
                              <ContractPrKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</ContractPrKey>
                              <Rate xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">EU</Rate>
                           </HotelServices>
                        </DocumentElement>
                     </diffgr:diffgram>
                  </ResultTable>
                  <ColunmNames>
                     <string>HotelName</string>
                     <string>HotelKey</string>
                     <string>RtCode</string>
                     <string>RtKey</string>
                     <string>RcName</string>
                     <string>RcKey</string>
                     <string>RdName</string>
                     <string>RdKey</string>
                     <string>AcName</string>
                     <string>AcKey</string>
                     <string>PnCode</string>
                     <string>PnKey</string>
                     <string>TotalCost</string>
                     <string>Cost</string>
                     <string>AddHotsCost</string>
                     <string>AddHotsWithCosts</string>
                     <string>DetailBrutto</string>
                     <string>QuoteType</string>
                     <string>CountryKey</string>
                     <string>CityKey</string>
                     <string>CityName</string>
                     <string>HotelWebSite</string>
                     <string>TariffId</string>
                     <string>TariffName</string>
                     <string>TariffDescription</string>
                     <string>AddHots</string>
                     <string>ContractPrKey</string>
                     <string>HotelImage</string>
                     <string>Rate</string>
                  </ColunmNames>
                  <TotalCount>1</TotalCount>
                  <PageSize>100000</PageSize>
                  <PageIndex>0</PageIndex>
                  <IsLastPage>true</IsLastPage>
                  <AdditionalData>
                     <ArrayOfAnyType>
                        <anyType xsi:type="ExtraService">
                           <ExternalID xsi:nil="true"/>
                           <Price>20</Price>
                           <NMen>0</NMen>
                           <PartnerID>0</PartnerID>
                           <Quota>NotChecked</Quota>
                           <PacketKey>0</PacketKey>
                           <AdditionalParams>
                              <ParameterPair Key="ContractPrKey">
                                 <Value xsi:type="xsd:int">0</Value>
                              </ParameterPair>
                           </AdditionalParams>
                           <DetailBrutto/>
                           <Notes/>
                           <Name>Hardlink</Name>
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay xsi:nil="true"/>
                           <Duration>0</Duration>
                           <RateBrutto/>
                           <Brutto>20</Brutto>
                           <ServiceClassID>99</ServiceClassID>
                           <TouristCount xsi:nil="true"/>
                           <ID>0</ID>
                           <Status>
                              <Name>Hardlink</Name>
                              <ID>0</ID>
                           </Status>
                           <CityKey>80</CityKey>
                           <IsPackage>false</IsPackage>
                           <Code>699</Code>
                           <HasDuration>false</HasDuration>
                        </anyType>
                     </ArrayOfAnyType>
                  </AdditionalData>
                  <ResponseGuid>f7f9dd22-5a50-455b-8cf0-f0a21153b650</ResponseGuid>
               </DataRequestResult>
            </Data>
         </SearchHotelServicesMinHotelResult>
      </SearchHotelServicesMinHotelResponse>
   </soap:Body>
</soap:Envelope>


SearchActualCostCalculationVariant (Поиск возможных вариантов типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю)

Метод выдает возможные варианты типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса:
    • HotelId * – идентификатор отеля (обязательный параметр, значения 0 и -1 не допустимы)
    • DateFrom * – дата «с»
    • DateTo * – дата «по»
    • ValidateQuoata – проверять ли квоту (true – проверять, false – нет)
    • QuotaTypes – фильтр по типу квоты (0 – запрос, 1 – квота, 2 – стоп)
    • CheckAdHot – учитывать ли цены на обязательные адхоты (true – учитывать, false – нет)
    • Rate * – код валюты, в которой будет вестись расчет

Возвращаемый результат:

  • SearchActualCostCalculationVariantResult – результат поиска
    • CostCalculationVariant – массив данных
      • RoomAccommodationId – ключ размещения
      • RoomTypeId – ключ типа комнаты
      • RoomCategoryId – ключ категории комнаты
      • PansionId – ключ питания
      • RoomAccommodationName – код размещения
      • RoomTypeName – код типа комнаты
      • RoomCategoryName – код категории комнаты
      • PansionName – код питания
      • CountAdult – количество взрослых
      • CountChildren – количество детей
      • Quota – значение квоты
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:SearchActualCostCalculationVariant>
         <!--Optional:-->
         <meg:guid>d1ac9f4d-20bd-43e0-b5b5-ad60c3cf0065</meg:guid>
         <!--Optional:-->
         <meg:request HotelId="2940" DateFrom="2021-09-08" DateTo="2021-09-09" ValidateQuota="true" CheckAdHot="true" Rate="1" QuotaTypes="0"/>
      </meg:SearchActualCostCalculationVariant>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода SearchActualCostCalculationVariant

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SearchActualCostCalculationVariantResponse xmlns="http://www.megatec.ru/">
         <SearchActualCostCalculationVariantResult Message="Ok">
            <Data>
               <CostCalculationVariant>
                  <RoomAccommodationId>5558</RoomAccommodationId>
                  <RoomTypeId>3</RoomTypeId>
                  <RoomCategoryId>20</RoomCategoryId>
                  <PansionId>3</PansionId>
                  <RoomAccommodationName>2AD</RoomAccommodationName>
                  <RoomTypeName>Double Room</RoomTypeName>
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
                  <PansionName>BB</PansionName>
                  <CountAdult>2</CountAdult>
                  <CountChildren>0</CountChildren>
                  <Quota>0</Quota>
               </CostCalculationVariant>
               <CostCalculationVariant>
                  <RoomAccommodationId>5558</RoomAccommodationId>
                  <RoomTypeId>45</RoomTypeId>
                  <RoomCategoryId>20</RoomCategoryId>
                  <PansionId>4</PansionId>
                  <RoomAccommodationName>2AD</RoomAccommodationName>
                  <RoomTypeName>Junior Suite</RoomTypeName>
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
                  <PansionName>HB</PansionName>
                  <CountAdult>2</CountAdult>
                  <CountChildren>0</CountChildren>
                  <Quota>0</Quota>
               </CostCalculationVariant>
             </Data>
         </SearchActualCostCalculationVariantResult>
      </SearchActualCostCalculationVariantResponse>
   </soap:Body>
</soap:Envelope>


Методы работы с ценами

GetSpoList (Получение списка SPO согласно запросу)

Метод возвращает список SPO согласно запросу.
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – класс с параметрами запроса
    • SvKey * – ключ класса услуги (1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис, 0 или -1 не принимаются)
    • PublicationDateBegin * – дата публикации SPO «с»
    • PublicationDateEnd * – дата публикации цены «по»

Возвращаемый результат:

  • SPOInfo – результат поиска
    • ResultTable – таблица с результатом
    • Id – ключ SPO
    • Name – название SPO
    • PeriodBeforeCheckIn – период до заезда
    • SaleDateBegin – дата с которой возможно бронирование
    • SaleDateEnd – дата до которой возможно бронирование
    • Comment – описание SPO
    • CreateDate – дата создания
    • UpdateDate – дата обновления
    • SpoType – тип SPO (Ordinary – 0, Spo – 1)
    • SvKey – класс услуги
    • COLinkServices – услуги SPO
      • COLinkService – конкретная услуга SPO
        • SvKey – ключ типа услуги
        • Code – ключ услуги
        • DurationMin – минимальная продолжительность
        • DurationMax – максимальная продолжительность
        • IsDisable – заблокирована ли услуга
        • DisableDate – дата блокировки
    • COServices – информация о ценах на услуги в этом SPO
      • COService – информация о цене на конкретную услугу в этом SPO
        • Code – идентификатор услуги
        • CostCount – количество цен для услуги в SPO
        • CostLastUpdate – дата последнего изменения (добавления, удаления) цен для услуги в этом СПО
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetSpoList>
         <!--Optional:-->
         <meg:guid>16f4e0ca-725a-4ffe-8a5e-c41d16ef1b01</meg:guid>
         <!--Optional:-->
         <meg:request SvKey="1" PublicationDateBegin="2021-08-01" PublicationDateEnd="2021-08-04"/>
      </meg:GetSpoList>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetSpoList

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetSpoListResponse xmlns="http://www.megatec.ru/">
         <GetSpoListResult Message="Ok">
            <Data>
               <SPOInfo Id="2049" Name="Maska Ordinary" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:31:38.35" UpdateDate="2021-08-03T12:32:35.897" SpoType="0" SvKey="1">
                  <COLinkServices>
                     <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                  </COLinkServices>
                  <XYRules/>
                  <COServices>
                     <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                     <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                  </COServices>
               </SPOInfo>
               <SPOInfo Id="2050" Name="Maska 7=6" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:33:37.847" UpdateDate="2021-08-03T12:35:11.367" SpoType="1" SvKey="1">
                  <COLinkServices>
                     <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                  </COLinkServices>
                  <XYRules>
                     <XYRule ExcludeBy="0" Sign="-" XFrom="2" XTo="7" Y="1"/>
                  </XYRules>
                  <COServices>
                     <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                     <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                  </COServices>
               </SPOInfo>
               <SPOInfo Id="2051" Name="Maska 14=12" PeriodBeforeCheckIn="0" SaleDateBegin="0001-01-01T00:00:00" SaleDateEnd="0001-01-01T00:00:00" Comment="" CreateDate="2021-08-03T12:35:15.797" UpdateDate="2021-08-03T12:35:42.75" SpoType="1" SvKey="1">
                  <COLinkServices>
                     <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                  </COLinkServices>
                  <XYRules>
                     <XYRule ExcludeBy="0" Sign="-" XFrom="8" XTo="14" Y="2"/>
                  </XYRules>
                  <COServices>
                     <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                     <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                  </COServices>
               </SPOInfo>
            </Data>
         </GetSpoListResult>
      </GetSpoListResponse>
   </soap:Body>
</soap:Envelope>


GetCosts (Получение брутто цены по параметрам запроса)

Метод возвращает брутто цены по параметрам запроса.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • SpoId * – ключ SPO ((Параметр CO_Id таблицы CostOffers). Список SPO возвращается при запросе к методу GetSpoList)
    • TariffId * – ключ тарифа ((В таблице цен соответствует параметру CS_CVId). При установке "-1" подбираются все тарифы)
    • SvKey * – тип услуги(1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис)
    • Code * – ключ услуги (Для отеля это ключ из таблицы Partners. Для всех остальных услуг – это ключ SL_KEY из таблицы ServiceList. Так же эти ключи можно получить методами веб сервиса: GetServiceList, GetExcursions, GetTransfers, GetHotels)
    • PriceType – тип цены проживания (0 – за человека, 1 – за комнату, 2 – все). Если не указан, то запрашивается 2.
    • DownloadOnlyActualCosts * – закачка только актуальных цен (1 – получать актуальные, 0 – получать все)
    • DownloadUpdateCostsFromDate * – закачивать цены только с выбранной даты (1 – настройка включена, 0 – получаем все)
    • CostsUpdateDateBegin * – дата, с которой закачивать цены (используется при установке параметра DownloadUpdateCostsFromDate)

Возвращаемый результат:

  • GetCostsResult – результаты выдачи
    • CostInfo – массив данных
      • Id – ключ цены
      • SvKey – ключ типа услуги
      • SpoId – идентификатор SPO
      • Code – ключ услуги
      • AgeFrom – возраст «с»
      • AgeTo – возраст «по»
      • CreateDate – дата создания цены
      • CheckInDateBegin – дата заезда «с»
      • CheckInDateEnd – дата заезда «до»
      • CheckOutDateBegin – дата выезда «с»
      • CheckOutDateEnd – дата выезда «до»
      • DateBegin – дата действия цены «с»
      • DateEnd – дата действия цены «до»
      • UpdateDate – последняя дата обновления цены
      • Price – значение цены
      • Rate – валюта
      • SubCode1 – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
      • SubCode2 – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
      • SubCode3 – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
      • SubCode4 – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
      • TariffId – ключ тарифа
      • Type – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
      • CountryId – ключ страны услуги
      • CityFromId – ключ города услуги
      • CityToId – ключ города услуги «куда» (для трансферов)
      • TouroperatorId – ключ туроператора
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetCosts>
         <!--Optional:-->
         <meg:guid>5932b280-c780-4c84-a83a-52b25bc22615</meg:guid>
         <!--Optional:-->
         <meg:request SpoId="2049" TariffId="-1" SvKey="1" Code="2945" PriceType="2" DownloadOnlyActualCosts="0" DownloadUpdateCostsFromDate="0" CostsUpdateDateBegin="2021-08-04"/>
      </meg:GetCosts>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetCosts

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCostsResponse xmlns="http://www.megatec.ru/">
         <GetCostsResult Message="Ok">
            <Data>
               <CostInfo Id="7795837" SvKey="1" SpoId="2049" Code="2945" AgeFrom="0" AgeTo="0" CreateDate="2021-08-03T12:56:34.237" CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" DateBegin="2021-01-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2021-08-03T12:56:35.08" Price="30.0000" Rate="EU" SubCode1="2" SubCode2="3" SubCode3="20" SubCode4="459" TariffId="0" Type="1" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035"/>
               <CostInfo Id="7795835" SvKey="1" SpoId="2049" Code="2945" AgeFrom="0" AgeTo="0" CreateDate="2021-08-03T12:56:34.237" CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" DateBegin="2021-01-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2021-08-03T12:56:35.08" Price="10.0000" Rate="EU" SubCode1="2" SubCode2="3" SubCode3="20" SubCode4="7864" TariffId="0" Type="1" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035"/>
           </Data>
         </GetCostsResult>
      </GetCostsResponse>
   </soap:Body>
</soap:Envelope>


SpoPriceMarkDownloaded (Получение информации о доступности конкретного SPO для продажи)

Метод возвращает информацию о доступности конкретного SPO для продажи.
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SpoKey * – ключ SPO (возвращается при запросе к методу GetSpoLList)
  • VariantOfCost – вариант цены
  • SvKey – ключ класса услуги
  • Code – код услуги

Возвращаемый результат:

  • SpoPriceMarkDownloadedResult – результат поиска
    • true – SPO доступно
    • false – SPO недоступно
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:SpoPriceMarkDownloaded>
         <!--Optional:-->
         <meg:guid>016e9dd9-802e-46fb-bb79-7c44a31d6560</meg:guid>
         <meg:spoKey>2049</meg:spoKey>
         <meg:variantOfCost>0</meg:variantOfCost>
         <meg:svKey>0</meg:svKey>
         <meg:code>0</meg:code>
      </meg:SpoPriceMarkDownloaded>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода SpoPriceMarkDownloaded

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SpoPriceMarkDownloadedResponse xmlns="http://www.megatec.ru/">
         <SpoPriceMarkDownloadedResult>true</SpoPriceMarkDownloadedResult>
      </SpoPriceMarkDownloadedResponse>
   </soap:Body>
</soap:Envelope>


Методы работы с услугами

GetHotels (Получение списка отелей по параметрам)

Метод возвращает список отелей по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • СountryKey * – ключ страны (-1 для всех)
  • RegionKey * – ключ региона (-1 для всех)
  • СityKey * – ключ города (-1 для всех)

Возвращаемый результат:

  • GetHotelsResult – результаты выдачи
  • Hotel – отель
    • Name – название отеля
    • ID – идентификатор отеля
    • Description – описание отеля
    • NameLat – название отеля латиницей
    • Code – код отеля
    • CodeLat – код отеля латиницей
    • Unicode – код ISO отеля
    • City – город отеля
      • Name – название города
      • ID – идентификатор города
      • Description – описание города
      • NameLat – название города латиницей
      • Code – код города
      • CodeLat – код города латиницей
      • Unicode – код ISO города
      • CountryID – идентификатор страны отеля
      • RegionID – идентификатор региона отеля
    • RegionID – идентификатор региона отеля
    • PriceType – тип цены (PerPerson = 0, PerRoom = 1, All = 2, None = 1000)
    • CountCosts – количество цен на отель
    • CityId – идентификатор города отеля
    • HotelCategoryID – идентификатор категории отеля
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetHotels>
         <meg:countryKey>10</meg:countryKey>
         <meg:regionKey>10</meg:regionKey>
         <meg:cityKey>10</meg:cityKey>
      </meg:GetHotels>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetHotels

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetHotelsResponse xmlns="http://www.megatec.ru/">
         <GetHotelsResult>
            <Hotel>
               <Name>Aegean Blue Hotel</Name>
               <ID>2254</ID>
               <Description>3 stars (B)  (\\Nea KallikratiaABBA)</Description>
               <NameLat/>
               <Code>AGN</Code>
               <CodeLat/>
               <Unicode/>
               <City>
                  <Name>Nea KallikratiaABBA</Name>
                  <ID>10</ID>
                  <Description/>
                  <NameLat/>
                  <Code>NKL</Code>
                  <CodeLat/>
                  <Unicode/>
                  <CountryID>4</CountryID>
                  <RegionID>6</RegionID>
               </City>
               <RegionID>6</RegionID>
               <PriceType>None</PriceType>
               <CountCosts>0</CountCosts>
               <CityID>10</CityID>
               <HotelCategoryID>6</HotelCategoryID>
            </Hotel>
            <Hotel>
               <Name>Alkyonis Hotel</Name>
               <ID>1015</ID>
               <Description>2+ stars (C Sup)   (\\Nea KallikratiaABBA)</Description>
               <NameLat/>
               <Code>ALK</Code>
               <CodeLat/>
               <Unicode/>
               <City>
                  <Name>Nea KallikratiaABBA</Name>
                  <ID>10</ID>
                  <Description/>
                  <NameLat/>
                  <Code>NKL</Code>
                  <CodeLat/>
                  <Unicode/>
                  <CountryID>4</CountryID>
                  <RegionID>6</RegionID>
               </City>
               <RegionID>6</RegionID>
               <PriceType>None</PriceType>
               <CountCosts>0</CountCosts>
               <CityID>10</CityID>
               <HotelCategoryID>7</HotelCategoryID>
            </Hotel>
          </GetHotelsResult>
      </GetHotelsResponse>
   </soap:Body>
</soap:Envelope>


GetTransfers (Получение списка трансферов по параметрам)

Метод возвращает список трансферов по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • СountryKey * – ключ страны (-1 для всех)
    • СityKey * – ключ города (-1 для всех)
    • RegionKey * – ключ региона (-1 для всех)
    • TypeKey * – ключ типа трансфера (-1 для всех)

Возвращаемый результат:

  • GetTransferResult – результаты выдачи
    • TransferDirectionInfo – массив данных
      • ID – идентификатор трансфера
      • Name – название
      • TransferTypeID – ключ типа трансфера
      • TransferTypeName – название типа трансфера
      • CityFromID – идентификатор города откуда
      • CityFromName – название города откуда
      • CityToID – идентификатор города куда
      • CityToName – название города куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
      • PointToID – идентификатор точки куда
      • PointToName – название точки куда
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetTransfers>
         <!--Optional:-->
         <meg:guid>699cbbac-6acc-4339-9d3c-2a231357d0c1</meg:guid>
         <!--Optional:-->
         <meg:request>
            <meg:CountryKey>10</meg:CountryKey>
            <meg:CityKey>10</meg:CityKey>
            <meg:RegionKey>10</meg:RegionKey>
            <meg:TypeKey>1</meg:TypeKey>
         </meg:request>
      </meg:GetTransfers>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetTransfers

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetTransfersResponse xmlns="http://www.megatec.ru/">
         <GetTransfersResult Message="Ok">
            <Data>
               <TransferDirectionInfo Id="527" Name="Arrival transfer: Moscow - All Cities (Finance)" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="87" CityFromName="Moscow" CityToId="0" CityToName="All" PointFromId="0" PointFromName="All" PointToId="1341" PointToName="Finance"/>
               <TransferDirectionInfo Id="530" Name="Arrival transfer: All Cities - All Cities" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="0" CityFromName="All" CityToId="0" CityToName="All" PointFromId="0" PointFromName="All" PointToId="0" PointToName="All"/>
               <TransferDirectionInfo Id="576" Name="Arrival transfer: Moscow (lalala) - All Cities" TransferTypeId="1" TransferTypeName="Arrival transfer" CityFromId="87" CityFromName="Moscow" CityToId="0" CityToName="All" PointFromId="3" PointFromName="lalala" PointToId="0" PointToName="All"/>
            </Data>
         </GetTransfersResult>
      </GetTransfersResponse>
   </soap:Body>
</soap:Envelope>


GetExcursions (Получение списка экскурсий по параметрам)

Метод возвращает экскурсии по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • СountryKey * – ключ страны (-1 для всех)
  • RegionKey * – ключ региона (-1 для всех)
  • СityKey * – ключ города (-1 для всех)

Возвращаемый результат:

  • GetExcursionsResult – результаты выдачи
    • Excursion – массив данных
      • Name – название экскурсии
      • ID – идентификатор экскурсии
      • Description – описание экскурсии
      • NameLat – название экскурсии латиницей
      • Code – код экскурсии
      • CodeLat – код экскурсии латиницей
      • Unicode – код ISO экскурсии
      • CityID – идентификатор города
      • RegionID – идентификатор региона
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetExcursions>
         <meg:countryKey>5</meg:countryKey>
         <meg:regionKey>5</meg:regionKey>
         <meg:cityKey>5</meg:cityKey>
      </meg:GetExcursions>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetExcursions

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetExcursionsResponse xmlns="http://www.megatec.ru/">
         <GetExcursionsResult>
            <Excursion>
               <Name>Exc21_01_2020</Name>
               <ID>670</ID>
               <Description/>
               <NameLat>Exc21_01_2020</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <CityID>5</CityID>
               <RegionID>16</RegionID>
            </Excursion>
         </GetExcursionsResult>
      </GetExcursionsResponse>
   </soap:Body>
</soap:Envelope>
</soap:Envelope>


GetServiceList (Получение списка дополнительных услуг)

Метод возвращает дополнительные услуги.
Возвращаемый результат:

  • GetServiceListResult – результаты выдачи
    • ServiceList – массив данных
      • AdditionalParams – дополнительные параметры
        • Key – ключ
        • Value – значение
      • Name – название дополнительной услуги
      • ID – идентификатор дополнительной услуги
      • NameLat – название дополнительной услуги латиницей
      • Code – код дополнительной услуги
      • CodeLat – код дополнительной услуги латиницей
      • Unicode – код ISO дополнительной услуги
      • ServiceClaseID – идентификатор класса дополнительной услуги
      • CountryID – идентификатор страны дополнительной услуги
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetServiceList/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetServiceList

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetServiceListResponse xmlns="http://www.megatec.ru/">
         <GetServiceListResult>
            <ServiceList>
               <AdditionalParams>
                  <ParameterPair Key="CountryKey">
                     <Value xsi:type="xsd:int">0</Value>
                  </ParameterPair>
                  <ParameterPair Key="CityKey">
                     <Value xsi:type="xsd:int">0</Value>
                  </ParameterPair>
               </AdditionalParams>
               <Name>Extra service class\Cancellation penalty</Name>
               <ID>10</ID>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <ServiceClaseID>1</ServiceClaseID>
               <CountryID>0</CountryID>
            </ServiceList>
            <ServiceList>
               <AdditionalParams>
                  <ParameterPair Key="CountryKey">
                     <Value xsi:type="xsd:int">0</Value>
                  </ParameterPair>
                  <ParameterPair Key="CityKey">
                     <Value xsi:type="xsd:int">0</Value>
                  </ParameterPair>
               </AdditionalParams>
               <Name>Shop Tour\Shop Tour With Terms</Name>
               <ID>15</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <ServiceClaseID>4</ServiceClaseID>
               <CountryID>0</CountryID>
            </ServiceList>
          </GetServiceListResult>
      </GetServiceListResponse>
   </soap:Body>
</soap:Envelope>


GetExtraServices (Получение списка дополнительных услуг включая услуги типа AdHot)

Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • ServiceClassKey * – ключ класса дополнительной услуги (-1 для всех)
    • СountryKey * – ключ страны дополнительной услуги (-1 для всех)
    • СityKey * – ключ города для AdHot (-1 для всех)
    • HotelKey * – ключ отеля для AdHot (-1 для всех)
    • RegionKey * – ключ региона (-1 для всех)
    • TypeKey * – тип AdHot (-1 – для всех, 1 – Manual, 2 – HardLink, 3 – WithCosts)

Возвращаемый результат:

  • GetExtraServicesResult – результаты выдачи
    • ExtraServiceInfo – массив данных
      • Id – идентификатор дополнительной услуги
      • Name – название дополнительной услуги
      • Description – описание дополнительной услуги
      • ServiceClassId – идентификатор класса дополнительной услуги
      • IsWeb – доступность дополнительной услуги в онлайн
      • DurationType – c продолжительностью или без (1 – с продолжительностью)
      • UpdateDate – дата последнего обновления дополнительной услуги
      • IsPartnerLikeHotel – партнер у AdHot такой же как и у проживания
      • LinkType – тип AdHot (1 - Manual, 2 – HardLink, 3 - WithCosts)
      • IsAddHot – является ли услуга AdHot (true – является, false – не является)
      • CountryList – список ключей стран для AdHot (если коллекция пустая – значит для всех)
      • CityList – список ключей городов для AdHot (если коллекция пустая – значит для всех)
      • HotelList – список ключей отелей для AdHot (если коллекция пустая – значит для всех)
      • RoomTypeList – список ключей типов комнат для AdHot (если коллекция пустая – значит для всех)
      • RoomCategoryList – список ключей категорий комнат для AdHot (если коллекция пустая – значит для всех)
      • AccommodationList – список ключей размещений для AdHot (если коллекция пустая – значит для всех)
      • HotelLinkTypeList – список переопределений типа AdHot для отелей
        • HotelLinkTypeEx – переопределение типа AdHot для отеля
          • HotelId – ключ отеля
          • ExtraServiceLinkType – переопределенный тип AdHot (1 – Manual, 2 – HardLink, 3 – WithCosts)
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetExtraServices>
         <!--Optional:-->
         <meg:guid>e7f7b188-611b-4a01-bcff-b7117c222e1f</meg:guid>
         <!--Optional:-->
         <meg:request>
            <meg:ServiceClassKey>-1</meg:ServiceClassKey>
            <meg:CountryKey>10</meg:CountryKey>
            <meg:CityKey>10</meg:CityKey>
            <meg:HotelKey>10</meg:HotelKey>
            <meg:TypeKey>-1</meg:TypeKey>
         </meg:request>
      </meg:GetExtraServices>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetExtraServices

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetExtraServicesResponse xmlns="http://www.megatec.ru/">
         <GetExtraServicesResult Message="Ok">
            <Data>
               <ExtraServiceInfo Id="293" Name="Air tickets test transmission Greece" Description="" ServiceClassId="15" IsWeb="true" DurationType="1" UpdateDate="2018-04-26T17:55:50.04" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
                  <CountryList/>
                  <CityList/>
                  <HotelList/>
                  <RoomTypeList/>
                  <RoomCategoryList/>
                  <AccommodationList/>
                  <HotelLinkTypeList>
                     <HotelLinkTypeEx HotelId="2830" ExtraServiceLinkType="1"/>
                  </HotelLinkTypeList>
               </ExtraServiceInfo>
               <ExtraServiceInfo Id="433" Name="111111111111111" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.937" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
                  <CountryList/>
                  <CityList/>
                  <HotelList/>
                  <RoomTypeList/>
                  <RoomCategoryList/>
                  <AccommodationList/>
                  <HotelLinkTypeList/>
               </ExtraServiceInfo>
               <ExtraServiceInfo Id="439" Name="3221" Description="" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.967" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
                  <CountryList/>
                  <CityList/>
                  <HotelList/>
                  <RoomTypeList/>
                  <RoomCategoryList/>
                  <AccommodationList/>
                  <HotelLinkTypeList>
                     <HotelLinkTypeEx HotelId="2821" ExtraServiceLinkType="1"/>
                  </HotelLinkTypeList>
               </ExtraServiceInfo>
             </Data>
         </GetExtraServicesResult>
      </GetExtraServicesResponse>
   </soap:Body>
</soap:Envelope>
</soap:Envelope>


GetExtraServiceWithPrices (Получение списка дополнительных услуг включая услуги типа AdHot с ценами)

Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot с ценами.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • HotelKey * – ключ отеля для AdHot (-1 для всех)
    • DateFrom – дата действия от
    • DateTo – дата действия до

Возвращаемый результат:

  • GetExtraServiceWithPricesResult Message="Ok">
    • CostInfo – массив данных
      • Id – ключ цены
      • SvKey – ключ типа услуги
      • SpoId – идентификатор SPO
      • Code – ключ услуги
      • AgeFrom – возраст «с»
      • AgeTo – возраст «по»
      • CreateDate – дата создания цены
      • CheckInDateBegin – дата заезда «с»
      • CheckInDateEnd – дата заезда «до»
      • CheckOutDateBegin – дата выезда «с»
      • CheckOutDateEnd – дата выезда «до»
      • DateBegin – дата действия цены «с»
      • DateEnd – дата действия цены «до»
      • UpdateDate – последняя дата обновления цены
      • Price – значение цены
      • Rate – валюта
      • SubCode1 – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
      • SubCode2 – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
      • SubCode3 – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
      • SubCode4 – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
      • TariffId – ключ тарифа
      • Type – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
      • CountryId – ключ страны услуги
      • CityFromId – ключ города услуги
      • CityToId – ключ города услуги «куда» (для трансферов)
      • TouroperatorId – ключ туроператора
      • AdHotName – название доп. услуги в отеле
      • LinkType – тип доп. услуги в отеле: 1 - Manual (услуга, добавляемая по желанию), 2 – HardLink (обязательная услуга в отеле), 3 - WithCosts (обязательная услуга, добавляемая при наличии цены в период бронирования отеля)
      • DurationType – услуга c продолжительностью или без (1 – цена указана за сутки, 0 - цена указана за весь период проживания)
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetExtraServiceWithPrices>
         <!--Optional:-->
         <meg:guid>c80b29df-4110-4769-85a5-99ef5def023c</meg:guid>
         <!--Optional:-->
         <meg:request>
            <meg:HotelKey>2930</meg:HotelKey>
            <meg:DateFrom>2022-01-01</meg:DateFrom>
            <meg:DateTo>2022-12-31</meg:DateTo>
         </meg:request>
      </meg:GetExtraServiceWithPrices>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetExtraServicesWithPrices

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetExtraServiceWithPricesResponse xmlns="http://www.megatec.ru/">
         <GetExtraServiceWithPricesResult Message="Ok" Count="15">
            <Data>
               <CostInfoWithAdHotDescription Id="7795829" SvKey="5" SpoId="2047" Code="471" AgeFrom="0" AgeTo="0" CreateDate="2021-07-26T18:20:02.52" 
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" 
DateBegin="2002-08-01T00:00:00" DateEnd="2023-08-12T00:00:00" UpdateDate="2021-07-26T18:20:03.313" Price="17.0000" Rate="EU" SubCode1="0" SubCode2="2930" 
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="6" CityFromId="80" CityToId="0" TouroperatorId="1035" AdHotName="bonus" LinkType="Manual" 
DurationType="0"/>
               <CostInfoWithAdHotDescription Id="7807924" SvKey="5" SpoId="2029" Code="694" AgeFrom="0" AgeTo="0" CreateDate="2022-12-09T14:24:52.333" 
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" 
DateBegin="2022-02-01T00:00:00" DateEnd="2024-02-01T00:00:00" UpdateDate="2022-12-09T14:24:52.573" Price="3.0000" Rate="EU" SubCode1="0" SubCode2="0" 
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Сейф в номере" LinkType="Manual" 
DurationType="0"/>
               <CostInfoWithAdHotDescription Id="7805052" SvKey="5" SpoId="2136" Code="716" AgeFrom="0" AgeTo="0" CreateDate="2022-01-05T17:16:53.75" 
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00" 
DateBegin="2022-01-01T00:00:00" DateEnd="2025-01-01T00:00:00" UpdateDate="2022-01-05T18:16:55.813" Price="17.0000" Rate="EU" SubCode1="0" SubCode2="0" 
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Maska dinners" LinkType="Manual"
 DurationType="0"/>
               <CostInfoWithAdHotDescription Id="7809780" SvKey="5" SpoId="2604" Code="726" AgeFrom="0" AgeTo="0" CreateDate="2023-02-15T12:29:03.747"
 CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
 DateBegin="2023-02-01T00:00:00" DateEnd="2023-12-31T00:00:00" UpdateDate="2023-02-15T12:29:08.183" Price="0" Rate="USD" SubCode1="0" SubCode2="0" SubCode3="0"
 SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Такса (Тунис)" LinkType="Manual" DurationType="1"/>
            </Data>
         </GetExtraServiceWithPricesResult>
      </GetExtraServiceWithPricesResponse>
   </soap:Body>
</soap:Envelope>


CalculateSingleCost (Расчет стоимости услуги по ее параметрам стандартным механизмом расчета)

Метод рассчитывает стоимость услуги по ее параметрам стандартным механизмом расчета.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SvKey * – ключ типа услуги
  • СountryKey * – ключ страны
  • Сode * – ключ услуги
  • Subcode1 * – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType)
  • Subcode2 * – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала)
  • Subcode3 * – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания)
  • Subcode4 * – параметр цены в зависимости от типа услуги (для проживания – размещение)
  • TourOperatorGroupKey * – ключ группы туроператора
  • TourOperatorKey * – ключ туроператора (продавца)
  • MrKey * – ключ рынка
  • FilialKey * – ключ филиала
  • TafiffKey * – ключ тарифа
  • Pax * – Pax по услуге
  • Ages * – список с возрастами детей
  • CheckInDate * – дата «с»
  • CheckOutDate * – дата «по»
  • CityKey * – ключ города
  • CityKeyTo * – ключ города «куда»
  • Rate * – код валюты
  • PricePerRoom * – за комнату или за человека
  • OnlyPublished * – учитывать только опубликованные цены
  • ServiceProviderKey * – ключ поставщика услуги

Возвращаемый результат:

  • CalculateSingleCostResult – результаты выдачи
    • Brutto – рассчитанная брутто цена
    • ProviderKey – ключ поставщика услуги
    • IsCalcBrutto
    • CancellationPolicies – Политика аннуляции
    • PolicyKey – ключ политики
    • DateFrom – дата "от"
    • DateTo – дата "до"
    • PenaltyValue – значение штрафа
    • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CalculateSingleCost>
         <!--Optional:-->
         <meg:guid>823b2df5-a3fe-4153-b43a-accfba1bf86c</meg:guid>
         <meg:svKey>1</meg:svKey>
         <meg:countryKey>1</meg:countryKey>
         <meg:code>1</meg:code>
         <meg:subcode1>1</meg:subcode1>
         <meg:subcode2>1</meg:subcode2>
         <meg:subcode3>1</meg:subcode3>
         <meg:subcode4>1</meg:subcode4>
         <meg:tourOperatorGroupKey>1</meg:tourOperatorGroupKey>
         <meg:tourOperatorKey>1</meg:tourOperatorKey>
         <meg:mrKey>1</meg:mrKey>
         <meg:filialKey>1</meg:filialKey>
         <meg:tafiffKey>1</meg:tafiffKey>
         <meg:pax>1</meg:pax>
         <!--Optional:-->
         <meg:ages>
         <!--Zero or more repetitions:-->
         <meg:int>1</meg:int>
         </meg:ages>
         <meg:checkInDate>2021-08-01</meg:checkInDate>
         <meg:checkOutDate>2021-08-24</meg:checkOutDate>
         <meg:cityKey>1</meg:cityKey>
         <meg:cityKeyTo>1</meg:cityKeyTo>
         <!--Optional:-->
         <meg:rate>1</meg:rate>
         <meg:pricePerRoom>1</meg:pricePerRoom>
         <meg:onlyPublished>1</meg:onlyPublished>
         <meg:serviceProviderKey>1</meg:serviceProviderKey>
      </meg:CalculateSingleCost>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CalculateSingleCost

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CalculateSingleCostResponse xmlns="http://www.megatec.ru/">
         <CalculateSingleCostResult>
            <Brutto>50.0000</Brutto>
            <ProviderKey>2943</ProviderKey>
            <IsCalcBrutto>false</IsCalcBrutto>
            <CancellationPolicies>
               <CancellationPolicyData>
                  <PolicyKey>151</PolicyKey>
                  <DateFrom>2021-08-25T00:00:00</DateFrom>
                  <DateTo>2021-08-27T00:00:00</DateTo>
                  <PenaltyValue>3</PenaltyValue>
                  <IsPercent>false</IsPercent>
               </CancellationPolicyData>
               <CancellationPolicyData>
                  <PolicyKey>149</PolicyKey>
                  <DateFrom>2021-08-27T00:00:00</DateFrom>
                  <DateTo>2021-08-31T00:00:00</DateTo>
                  <PenaltyValue>4</PenaltyValue>
                  <IsPercent>false</IsPercent>
               </CancellationPolicyData>
              </CancellationPolicies>
         </CalculateSingleCostResult>
      </CalculateSingleCostResponse>
   </soap:Body>
</soap:Envelope>


Методы работы со справочниками

GetRegions (Получение списка регионов)

Метод возвращает список регионов. Принимаемые параметры запроса (* – обязательный):

  • СountryKey * – идентификатор страны (-1 для всех)

Возвращаемый результат:

  • GetRegionsResult – результат поиска
    • Region – массив данных
      • Name – название региона
      • ID – идентификатор региона
      • Description – описание региона
      • NameLat – наименование региона латиницей
      • Code – код региона
      • CodeLat – код региона латиницей
      • Unicode – код ISO региона
      • CountryID – идентификатор страны
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRegions>
         <meg:countryKey>10</meg:countryKey>
      </meg:GetRegions>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRegions

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRegionsResponse xmlns="http://www.megatec.ru/">
         <GetRegionsResult>
            <Region>
               <Name>Chisinau</Name>
               <ID>18</ID>
               <Description/>
               <NameLat/>
               <Code>KIV</Code>
               <CodeLat/>
               <Unicode/>
               <CountryID>10</CountryID>
            </Region>
            <Region>
               <Name>Tiraspol</Name>
               <ID>109</ID>
               <Description/>
               <NameLat/>
               <Code>TRS</Code>
               <CodeLat/>
               <Unicode/>
               <CountryID>10</CountryID>
            </Region>
         </GetRegionsResult>
      </GetRegionsResponse>
   </soap:Body>
</soap:Envelope>


GetCities (Получение списка городов)

Метод возвращает список городов. Принимаемые параметры запроса (* – обязательный):

  • СountryKey * – идентификатор страны (-1 для всех)
  • RegionKey * – идентификатор региона (-1 для всех)

Возвращаемый результат:

  • GetCitiesResult – результат поиска
    • City – массив данных
      • Name – название города
      • ID – идентификатор города
      • Description – описание города
      • NameLat – наименование города латиницей
      • Code – код города
      • CodeLat – код города латиницей
      • Unicode – код ISO города
      • CountryID – идентификатор города
      • RegionID – идентификатор региона
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetCities>
         <meg:countryKey>10</meg:countryKey>
         <meg:regionKey>10</meg:regionKey>
      </meg:GetCities>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetCities

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCitiesResponse xmlns="http://www.megatec.ru/">
         <GetCitiesResult>
            <City>
               <Name>Katerini</Name>
               <ID>153</ID>
               <Description/>
               <NameLat/>
               <Code>KTR</Code>
               <CodeLat/>
               <Unicode/>
               <CountryID>4</CountryID>
               <RegionID>10</RegionID>
            </City>
            <City>
               <Name>Leptokaria</Name>
               <ID>24</ID>
               <Description/>
               <NameLat/>
               <Code>LPK</Code>
               <CodeLat/>
               <Unicode/>
               <CountryID>4</CountryID>
               <RegionID>10</RegionID>
            </City>
         </GetCitiesResult>
      </GetCitiesResponse>
   </soap:Body>
</soap:Envelope>


GetCountries (Получение списка стран)

Метод возвращает список стран.
Возвращаемый результат:

  • GetCountriesResult – результат поиска
    • Country – массив данных
      • Name – название страны
      • ID – идентификатор страны
      • Description – описание страны
      • NameLat – наименование страны латиницей
      • Code – код страны
      • CodeLat – код страны латиницей
      • Unicode – код ISO страны
      • IsIncoming – параметр для внутреннего использования
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetCountries/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetCountries

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCountriesResponse xmlns="http://www.megatec.ru/">
         <GetCountriesResult>
            <Country>
               <Name>Azerbaijan</Name>
               <ID>19</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <IsIncoming>false</IsIncoming>
            </Country>
            <Country>
               <Name>Belarus</Name>
               <ID>7</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <IsIncoming>false</IsIncoming>
            </Country>
            </Country>
         </GetCountriesResult>
      </GetCountriesResponse>
   </soap:Body>
</soap:Envelope>


GetRoomType (Получение списка типов комнат)

Метод возвращает список типов комнат.
Возвращаемый результат:

  • GetRoomTypeResult – результат поиска
    • RoomType – массив данных
      • Name – название типа комнаты
      • ID – идентификатор типа комнаты
      • Description – описание типа комнаты
      • NameLat – наименование типа комнаты
      • Code – код типа комнаты
      • CodeLat – код типа комнаты латиницей
      • Unicode – код ISO типа комнаты
      • Places – количество основных мест
      • ExPlaces – количество дополнительных мест
      • PrintOrder – печать отчета
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRoomType/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRoomType

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRoomTypeResponse xmlns="http://www.megatec.ru/">
         <GetRoomTypeResult>
            <RoomType>
               <Name>NOVALUE</Name>
               <ID>0</ID>
               <Description/>
               <NameLat/>
               <Code>-</Code>
               <CodeLat/>
               <Unicode/>
               <Places>0</Places>
               <ExPlaces>0</ExPlaces>
               <PrintOrder>0</PrintOrder>
            </RoomType>
            <RoomType>
               <Name>10</Name>
               <ID>876</ID>
               <Description>111</Description>
               <NameLat/>
               <Code>111</Code>
               <CodeLat/>
               <Unicode/>
               <Places>111</Places>
               <ExPlaces>0</ExPlaces>
               <PrintOrder>0</PrintOrder>
            </RoomType>
            <RoomType>
               <Name>33444</Name>
               <ID>915</ID>
               <Description>12</Description>
               <NameLat/>
               <Code>1123</Code>
               <CodeLat/>
               <Unicode/>
               <Places>1</Places>
               <ExPlaces>0</ExPlaces>
               <PrintOrder>0</PrintOrder>
            </RoomType>
          </GetRoomTypeResult>
      </GetRoomTypeResponse>
   </soap:Body>
</soap:Envelope>


GetRoomCategories (Получение списка категорий комнат)

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

  • GetRoomCategoriesResult – результат поиска
    • RoomCategory – массив данных
      • Name – название категории комнаты
      • ID – идентификатор категории комнаты
      • Description – описание категории комнаты
      • NameLat – наименование категории комнаты
      • Code – код категории комнаты
      • CodeLat – код категории комнаты латиницей
      • Unicode – код ISO категории комнаты
      • MainPlaces – количество основных мест
      • ExtraPlaces – количество дополнительных мест
      • IsMain – параметр для внутреннего пользования
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRoomCategories/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRoomCategories

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRoomCategoriesResponse xmlns="http://www.megatec.ru/">
         <GetRoomCategoriesResult>
            <RoomCategory>
               <Name>-</Name>
               <ID>0</ID>
               <Description/>
               <NameLat/>
               <CodeLat/>
               <Unicode/>
               <MainPlaces>0</MainPlaces>
               <ExtraPlaces>0</ExtraPlaces>
               <IsMain>false</IsMain>
            </RoomCategory>
            <RoomCategory>
               <Name>!!!</Name>
               <ID>304</ID>
               <Description/>
               <NameLat/>
               <Code>1</Code>
               <CodeLat/>
               <Unicode/>
               <MainPlaces>0</MainPlaces>
               <ExtraPlaces>0</ExtraPlaces>
               <IsMain>false</IsMain>
             </RoomCategory>
         </GetRoomCategoriesResult>
      </GetRoomCategoriesResponse>
   </soap:Body>
</soap:Envelope>


GetPansions (Получение списка типов питаний)

Метод возвращает список типов питаний.
Возвращаемый результат:

  • GetPansionsResult – результат поиска
    • Pansion – массив данных
      • Name – название типа питания
      • ID – идентификатор типа питания
      • Description – описание типа питания
      • NameLat – наименование типа питания латиницей
      • Code – код типа питания
      • CodeLat – код типа питания латиницей
      • Unicode – код ISO типа питания
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetPansions/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetPansions

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetPansionsResponse xmlns="http://www.megatec.ru/">
         <GetPansionsResult>
            <Pansion>
               <Name>&lt;Not defined></Name>
               <ID>0</ID>
               <Description/>
               <NameLat/>
               <Code>ND</Code>
               <CodeLat/>
               <Unicode/>
            </Pansion>
            <Pansion>
               <Name>Full Board</Name>
               <ID>1</ID>
               <Description/>
               <NameLat/>
               <Code>FB</Code>
               <CodeLat/>
               <Unicode/>
            </Pansion>
            <Pansion>
               <Name>All Inclusive</Name>
               <ID>2</ID>
               <Description/>
               <NameLat/>
               <Code>AL</Code>
               <CodeLat/>
               <Unicode/>
            </Pansion>
        </GetPansionsResult>
      </GetPansionsResponse>
   </soap:Body>
</soap:Envelope>


GetRatings (Получение массива категорий (звездностей) отелей)

Метод возвращает массив категорий отелей.
Возвращаемый результат:

  • GetRatingsResult – результат поиска
    • HotelCategory – массив данных
      • Name – название категории отеля
      • ID – идентификатор категории отеля
      • Description – описание категории отеля
      • NameLat – наименование категории отеля латиницей
      • Code – код категории отеля
      • CodeLat – код категории отеля латиницей
      • Unicode – код ISO категории отеля
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRatings/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRatings

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRatingsResponse xmlns="http://www.megatec.ru/">
         <GetRatingsResult>
            <HotelCategory>
               <Name>Not defined</Name>
               <ID>0</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </HotelCategory>
            <HotelCategory>
               <Name>5 stars (Deluxe)</Name>
               <ID>2</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </HotelCategory>
         </GetRatingsResult>
      </GetRatingsResponse>
   </soap:Body>
</soap:Envelope>


GetFlights (Получение списка авиарейсов)

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

  • GetFlightsResult – результат поиска
    • Flight – массив данных
      • AirportFrom – трансферный узел в пункте отбытия
        • Name – название трансферного узла из справочника Flight numbers
        • ID – идентификатор города трансферного узла
        • Description – название города трансферного узла из справочника Pickup point list
        • NameLat – наименование трансферного узла
        • Code – код трансферного узла
        • CodeLat – код трансферного узла латиницей
        • Unicode – код ISO трансферного узла
        • RegionID – идентификатор региона расположения трансферного узла
        • CityID – идентификатор города расположения трансферного узла
      • AirportTo – трансферный узел в пункте прибытия
        • Name – название трансферного узла из справочника Flight numbers
        • ID – идентификатор города трансферного узла
        • Description – название города трансферного узла из справочника Pickup point list
        • NameLat – наименование трансферного узла
        • Code – код трансферного узла
        • CodeLat – код трансферного узла латиницей
        • Unicode – код ISO трансферного узла
        • RegionID – идентификатор региона расположения трансферного узла
        • CityID – идентификатор города расположения трансферного узла
      • TimeFrom – время от
      • TimeTo – время до
      • DateFrom – дата от
      • DateTo – дата до
      • IsArrival
      • Available
      • ID – идентификатор строки из таблицы Charter из БД
      • Name – наименование из справочника Flight numbers
      • Number – номер перелета из справочника Flight numbers
      • ArrivalFlightNumber – номер рейса прибытия из справочника Flight numbers
      • DepartureFlightNumber – номер рейса вылета из справочника Flight numbers


Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetFlights/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetFlights

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetFlightsResponse xmlns="http://www.megatec.ru/">
         <GetFlightsResult>
            <Flight>
               <AirportFrom>
                  <Name>Makedonia</Name>
                  <ID>1000001</ID>
                  <Description>Thessaloniki</Description>
                  <NameLat/>
                  <Code/>
                  <CodeLat/>
                  <Unicode/>
                  <RegionID>7</RegionID>
                  <CityID>12</CityID>
               </AirportFrom>
               <AirportTo>
                  <Name>Makedonia</Name>
                  <ID>1000001</ID>
                  <Description>Thessaloniki</Description>
                  <NameLat/>
                  <Code/>
                  <CodeLat/>
                  <Unicode/>
                  <RegionID>7</RegionID>
                  <CityID>12</CityID>
               </AirportTo>
               <TimeFrom>2021-08-31T00:00:00+04:00</TimeFrom>
               <TimeTo>2021-08-31T00:00:00+04:00</TimeTo>
               <DateFrom>2021-08-31T00:00:00+04:00</DateFrom>
               <DateTo>2021-08-31T00:00:00+04:00</DateTo>
               <IsArrival>false</IsArrival>
               <Available>No</Available>
               <ID>4</ID>
               <Name/>
               <Number>NN 283/284 00:01</Number>
            </Flight>
         </GetFlightsResult>
      </GetFlightsResponse>
   </soap:Body>
</soap:Envelope>


GetAirport (Получение списка трансферных узлов)

Метод возвращает список трансферных узлов.
Возвращаемый результат:

  • GetFlightsResult – результат поиска
    • Airport – массив данных
      • Name – название трансферного узла из справочника Pickup point list
      • ID – идентификатор трансферного узла
      • Description – название города трансферного узла из справочника Pickup point list
      • NameLat – название города трансферного узла латиницей
      • Code – код города трансферного узла латиницей
      • CodeLat – код города трансферного узла латиницей
      • Unicode – код ISO города трансферного узла латиницей
      • RegionID – идентификатор региона расположения трансферного узла
      • CityID – идентификатор города расположения трансферного узла
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetAirport/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetAirport

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetAirportResponse xmlns="http://www.megatec.ru/">
         <GetAirportResult>
            <Airport>
               <Name>lalala</Name>
               <ID>3</ID>
               <Description>Moscow</Description>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <RegionID>19</RegionID>
               <CityID>87</CityID>
            </Airport>
            <Airport>
               <Name>El.Venizelos</Name>
               <ID>1004</ID>
               <Description>Athens</Description>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <RegionID>38</RegionID>
               <CityID>55</CityID>
            </Airport>
         </GetAirportResult>
      </GetAirportResponse>
   </soap:Body>
</soap:Envelope>


GetProviders (Получение списка партнеров, которые являются поставщиками услуг)

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

  • GetProvidersResult – результат поиска
    • Partner – массив данных
      • Name – название партнера
      • ID – идентификатор партера
      • Description – описание партнера
      • NameLat – название партнера латиницей
      • Code – код партнера
      • CodeLat – код партнера латиницей
      • Unicode – код ISO партнера
      • PartnersGroupID – идентификатор группы партнера
      • FullName – полное название партнера
      • Fax – факс партнера
      • Address – адрес партнера
      • Zip – почтовый код партнера
      • Email – e-mail партнера
      • Phones – телефоны партнера
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetProviders/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetProviders

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetProvidersResponse xmlns="http://www.megatec.ru/">
         <GetProvidersResult>
            <Partner>
               <Name>&lt;All></Name>
               <ID>0</ID>
               <Description/>
               <NameLat>&lt;All></NameLat>
               <Code>&lt;AL</Code>
               <CodeLat/>
               <Unicode/>
               <PartnersGroupID>0</PartnersGroupID>
               <FullName>&lt;All></FullName>
               <Fax/>
               <Address/>
               <Zip/>
               <Email/>
               <Phones/>
            </Partner>
            <Partner>
               <Name>HOTEL CHANGE</Name>
               <ID>1</ID>
               <Description/>
               <NameLat>HOTEL CHANGE</NameLat>
               <Code>HOT</Code>
               <CodeLat/>
               <Unicode/>
               <PartnersGroupID>0</PartnersGroupID>
               <FullName>HOTEL CHANGE</FullName>
               <Fax/>
               <Address/>
               <Zip/>
               <Email/>
               <Phones/>
            </Partner>
         </GetProvidersResult>
      </GetProvidersResponse>
   </soap:Body>
</soap:Envelope>


GetTransports (Получение списка транспортных средств)

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

  • GetTransportsResult – результат поиска
    • Transport – массив данных
      • Name – название транспортного средства
      • ID – идентификатор транспортного средства
      • Description – описание транспортного средства
      • NameLat – название транспортного средства латиницей
      • Code – код транспортного средства
      • CodeLat – код транспортного средства латиницей
      • Unicode – код ISO транспортного средства
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetTransports/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetTransports

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetTransportsResponse xmlns="http://www.megatec.ru/">
         <GetTransportsResult>
            <Transport>
               <Name>Not defined</Name>
               <ID>0</ID>
               <Description/>
               <NameLat>Not defined</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </Transport>
            <Transport>
               <Name>Bus</Name>
               <ID>3</ID>
               <Description/>
               <NameLat>Bus</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </Transport>
            <Transport>
               <Name>Minibus</Name>
               <ID>4</ID>
               <Description/>
               <NameLat>Minibus</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </Transport>
         </GetTransportsResult>
      </GetTransportsResponse>
   </soap:Body>
</soap:Envelope>


GetTransferTypes (Получение списка типов трансферов)

Метод возвращает список типов трансферов.
Возвращаемый результат:

  • GetTransferTypesResult – результат поиска
    • Transport – массив данных
      • Name – название трансфера
      • ID – идентификатор трансфера
      • Description – описание трансфера
      • NameLat – наименование трансфера латиницей
      • Code – код трансфера
      • CodeLat – код трансфера латиницей
      • Unicode – код ISO трансфера
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetTransferTypes/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetTransferTypes

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetTransferTypesResponse xmlns="http://www.megatec.ru/">
         <GetTransferTypesResult>
            <Transport>
               <Name>Group</Name>
               <ID>2</ID>
               <Description/>
               <NameLat>Group</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </Transport>
            <Transport>
               <Name>Ind Car</Name>
               <ID>3</ID>
               <Description/>
               <NameLat>Ind Car</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </Transport>
         </GetTransferTypesResult>
      </GetTransferTypesResponse>
   </soap:Body>
</soap:Envelope>


GetRates (Получение списка валют)

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

  • GetRatesResult – результат поиска
    • Rate – массив данных
      • Name – название валюты
      • ID – идентификатор валюты
      • Description – описание валюты
      • NameLat – описание валюты латиницей
      • Code – код валюты
      • CodeLat – код валюты латиницей
      • Unicode – код ISO валюты
      • IsMain – признак валюты "главная"
      • IsNational – признак валюты «национальная»
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRates/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRates

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRatesResponse xmlns="http://www.megatec.ru/">
         <GetRatesResult>
            <Rate>
               <Name>Euro</Name>
               <ID>1</ID>
               <Description/>
               <NameLat/>
               <Code>EU</Code>
               <CodeLat/>
               <Unicode>EUR</Unicode>
               <IsMain>false</IsMain>
               <IsNational>false</IsNational>
            </Rate>
            <Rate>
               <Name>US dollar</Name>
               <ID>2</ID>
               <Description/>
               <NameLat/>
               <Code>USD</Code>
               <CodeLat/>
               <Unicode>USD</Unicode>
               <IsMain>false</IsMain>
               <IsNational>false</IsNational>
            </Rate>
         </GetRatesResult>
      </GetRatesResponse>
   </soap:Body>
</soap:Envelope>


GetServicePackage (Получение списка вариантов пакетных услуг)

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

  • GetServicePackageResult – результат поиска
    • ServiceList – массив данных
      • Name – название варианта
      • ID – идентификатор варианта
      • Description – описание варианта
      • NameLat – описание варианта латиницей
      • Code – код варианта
      • CodeLat – код варианта латиницей
      • Unicode – код ISO варианта
      • ServiceClaseID – идентификатор класса дополнительной услуги
      • CountryID – ключ страны варианта
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetServicePackage/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetServicePackage

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetServicePackageResponse xmlns="http://www.megatec.ru/">
         <GetServicePackageResult>
            <ServiceList>
               <Name>5 days in Antique Greece (4 nights)/DBL BB</Name>
               <ID>21</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <ServiceClaseID>0</ServiceClaseID>
               <CountryID>4</CountryID>
            </ServiceList>
            <ServiceList>
               <Name>5 days in Antique Greece (4 nights)/DBL HB</Name>
               <ID>148</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <ServiceClaseID>0</ServiceClaseID>
               <CountryID>4</CountryID>
            </ServiceList>
         </GetServicePackageResult>
      </GetServicePackageResponse>
   </soap:Body>
</soap:Envelope>


GetDLStatuses (Получение списка статусов услуг)

Метод возвращает список статусов услуг.
Возвращаемый результат:

  • GetDLStatusesResult – результат поиска
    • StatusService – массив данных
      • Name – название статуса услуги
      • ID – идентификатор статуса услуги
      • Description – описание статуса услуги
      • NameLat – описание статуса услуги латиницей
      • Code – код статуса услуги
      • CodeLat – код статуса услуги латиницей
      • Unicode – код ISO статуса услуги
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetDLStatuses/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetDLStatuses

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetDLStatusesResponse xmlns="http://www.megatec.ru/">
         <GetDLStatusesResult>
            <StatusService>
               <Name>Wait</Name>
               <ID>1</ID>
               <Description/>
               <NameLat>Wait</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </StatusService>
            <StatusService>
               <Name>Confirmed</Name>
               <ID>2</ID>
               <Description/>
               <NameLat>Confirmed</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </StatusService>
            <StatusService>
               <Name>Not confirmed</Name>
               <ID>4</ID>
               <Description/>
               <NameLat>Not confirmed</NameLat>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </StatusService>
         </GetDLStatusesResult>
      </GetDLStatusesResponse>
   </soap:Body>
</soap:Envelope>


GetTariffs (Получение списка тарифов для определенного типа услуг)

Метод возвращает тарифы для определенного типа услуг.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SvKey * – ключ типа услуги

Возвращаемый результат:

  • GetTariffsResult – результат поиска
    • Tariff – массив данных
      • ID – идентификатор тарифа
      • Name – наименование тарифа
      • Description – описание тарифа
      • NameLat – наименование тарифа латиницей
      • Code – код тарифа
      • CodeLat – код тарифа латиницей
      • Unicode – код ISO тарифа
      • SvKey – ключ типа услуги
      • Comment – описание
      • CreateDate – дата создания
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetTariffs>
         <!--Optional:-->
         <meg:guid>6ef6eeb2-a766-4a30-92c0-348d5c2afb94</meg:guid>
         <meg:svKey>1</meg:svKey>
      </meg:GetTariffs>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetTariffs

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetTariffsResponse xmlns="http://www.megatec.ru/">
         <GetTariffsResult>
            <Tariff>
               <Name>!A4</Name>
               <ID>785</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <SVKey>1</SVKey>
               <Comment>A</Comment>
               <CreateDate>2018-11-14T00:00:00</CreateDate>
            </Tariff>
            <Tariff>
               <Name>Info Tour</Name>
               <ID>623</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
               <SVKey>1</SVKey>
               <Comment/>
               <CreateDate>2009-10-01T00:00:00</CreateDate>
            </Tariff>
         </GetTariffsResult>
      </GetTariffsResponse>
   </soap:Body>
</soap:Envelope>


GetRoomDescriptions (Получение массива описаний комнат)

Метод возвращает массив описаний комнат.
Принимаемые параметры запроса ( * – обязательный):

  • RoomTypeId * – ключ типа комнаты (0 – для всех)
  • RoomCategoryId * – ключ категории комнаты (0 – для всех)

Возвращаемый результат:

  • GetRoomDescriptionsResult – результат поиска
    • AdditionalDescription – массив данных
      • Name – наименование описания комнаты
      • ID – идентификатор описания комнаты
      • Description – описание
      • NameLat – наименование описания комнаты латиницей
      • Code – код описания комнаты
      • CodeLat – код описания комнаты латиницей
      • Unicode – код ISO описания комнаты
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRoomDescriptions>
         <meg:roomTypeId>7</meg:roomTypeId>
         <meg:roomCategoryId>7</meg:roomCategoryId>
      </meg:GetRoomDescriptions>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRoomDescriptions

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRoomDescriptionsResponse xmlns="http://www.megatec.ru/">
         <GetRoomDescriptionsResult>
            <AdditionalDescription>
               <Name>Family Room Golf View</Name>
               <ID>1368</ID>
               <Description/>
               <NameLat/>
               <Code/>
               <CodeLat/>
               <Unicode/>
            </AdditionalDescription>
         </GetRoomDescriptionsResult>
      </GetRoomDescriptionsResponse>
   </soap:Body>
</soap:Envelope>


GetAccommodations (Получение размещения отелей)

Метод возвращает размещения отелей.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • GetAccommodationsResult – результат поиска
    • Message – идентификатор размещения
    • Data – массив объектов с данными
      • AccomodationInfo – массив данных с размещением
        • Id – идентификатор размещения
        • Code – код размещения
        • Name – название размещения
        • IsPerRoom – за комнату или за человека
        • NameUnicode – название размещения в Unicode
        • CountAdultMain – количество взрослых на главном месте
        • CountChildMain – количество детей на главном месте
        • CountAdultExtra – количество взрослых на доп. месте
        • CountChildExtra – количество детей на доп. месте
        • ChildrenAges – строка с описание возрастов детей
        • IsWeb – доступность для Interlook-Web
        • IsPackage – можно ли добавлять в пакет
        • UpdateDate – дата последнего обновления размещения
        • ClildrenAgesList – список с возрастами детей
          • AccomadationAge – массив данных с возрастом
            • Id – идентификатор записи
            • AgeFrom – возраст «с»
            • AgeTo – возраст «по»
            • CountMen – количество взрослых в размещении
            • IsMain – на главном ли месте ребенок этого возраста
            • UpdateDate – дата последнего обновления записи
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetAccommodations>
         <!--Optional:-->
         <meg:guid>1b972765-0318-4ca3-9437-cefa99a3959d</meg:guid>
      </meg:GetAccommodations>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetAccommodations

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetAccommodationsResponse xmlns="http://www.megatec.ru/">
         <GetAccommodationsResult Message="Ok">
            <Data>
             <AccomodationInfo Id="7939" Code="1Ad+2Ch(3-12)" Name="1Ad+2Ch(3-12)" IsPerRoom="true" NameUnicode="1Ad+2Ch(3-12)" CountAdultMain="1" CountChildMain="2" CountAdultExtra="0" CountChildExtra="0" ChildrenAges="2Ch(3-12)" IsWeb="true" IsPackage="false" UpdateDate="2020-04-10T18:25:09.3">
                  <ChildrenAgesList>
                     <AccomadationAge Id="6664" AgeFrom="3" AgeTo="12" CountMen="2" IsMain="true" UpdateDate="2020-04-10T18:25:09.293"/>
                  </ChildrenAgesList>
               </AccomodationInfo>
            </Data>
         </GetAccommodationsResult>
      </GetAccommodationsResponse>
   </soap:Body>
</soap:Envelope>


GetRoomAccommodations (Получение размещения отелей и первых 2 значений возрастов из списка возрастов детей)

Метод возвращает размещения отелей и первые 2 значения возрастов из списка возрастов детей.
Возвращаемый результат:

  • GetRoomAccommodationsResult – результат поиска
    • RoomAccomodation – массив данных
      • Name – название размещения
      • ID – идентификатор размещения
      • Description – описание размещения
      • NameLat – наименование размещения латиницей
      • Code – код размещения
      • CodeLat – код размещения латиницей
      • Unicode – код ISO размещения
      • PerRoom – за комнату
      • AdultMainPalces – количество взрослых основных мест
      • ChildMainPalces – количество детских основных мест
      • AdultExtraPalces – количество взрослых дополнительных мест
      • ChildExtraPalces – количество детских дополнительных мест
      • MainPlaces – количество основных мест
      • ExtraPlaces – количество дополнительных мест
      • IsMain – есть ли основные места
      • AgeFrom – возраст детей «с»
      • AgeTo – возраст детей «по»
      • Age2From – возраст детей «с»
      • Age2To – возраст детей «по»
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetRoomAccommodations/>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetRoomAccommodations

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetRoomAccommodationsResponse xmlns="http://www.megatec.ru/">
         <GetRoomAccommodationsResult>
            <RoomAccomodation>
               <Name>2Add</Name>
               <ID>15</ID>
               <Description/>
               <NameLat/>
               <Code>2+</Code>
               <CodeLat/>
               <Unicode>2Ad+1Ch(3-5)</Unicode>
               <PerRoom>true</PerRoom>
               <AdultMainPalces>2</AdultMainPalces>
               <ChildMainPalces>4</ChildMainPalces>
               <AdultExtraPalces>0</AdultExtraPalces>
               <ChildExtraPalces>0</ChildExtraPalces>
               <MainPlaces>6</MainPlaces>
               <ExtraPlaces>0</ExtraPlaces>
               <IsMain>true</IsMain>
               <AgeFrom>3</AgeFrom>
               <AgeTo>5</AgeTo>
               <Age2From>0</Age2From>
               <Age2To>0</Age2To>
            </RoomAccomodation>
            <RoomAccomodation>
               <Name>1Ad+1inf</Name>
               <ID>16</ID>
               <Description/>
               <NameLat/>
               <Code>1Ad+1inf</Code>
               <CodeLat/>
               <Unicode>1Ad</Unicode>
               <PerRoom>true</PerRoom>
               <AdultMainPalces>1</AdultMainPalces>
               <ChildMainPalces>0</ChildMainPalces>
               <AdultExtraPalces>0</AdultExtraPalces>
               <ChildExtraPalces>0</ChildExtraPalces>
               <MainPlaces>1</MainPlaces>
               <ExtraPlaces>0</ExtraPlaces>
               <IsMain>true</IsMain>
               <AgeFrom>0</AgeFrom>
               <AgeTo>0</AgeTo>
               <Age2From>0</Age2From>
               <Age2To>0</Age2To>
            </RoomAccomodation>
         </GetRoomAccommodationsResult>
      </GetRoomAccommodationsResponse>
   </soap:Body>
</soap:Envelope>


GetClientInfo (Выдача информации по партнёру, к которому относится on-line user)

Метод выдает информацию по партнёру, к которому относится on-line user, под которым осуществлен запрос в методе Connect.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • Name – наименование партнера
  • MarketName – перечень рынков из карточки партнера
  • Address – адрес из карточки партнера
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetClientInfo>
         <!--Optional:-->
         <meg:guid>6851ab74-f299-4668-ade8-b8e125b7ad61</meg:guid>
      </meg:GetClientInfo>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetClientInfo

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetClientInfoResponse xmlns="http://www.megatec.ru/">
         <GetClientInfoResult Message="Ok">
            <Data>
               <ClientInfo>
                  <Name>Alpha Tour</Name>
                  <MarketName>Russian Market</MarketName>
                  <Address>Belarus,Minsk,Pobediteley street 23/1-115a A</Address>
               </ClientInfo>
            </Data>
         </GetClientInfoResult>
      </GetClientInfoResponse>
   </soap:Body>
</soap:Envelope>


Методы интеграции с системами оплаты

GetReservationPenalties (Получение штрафов по путевке до того, как ее аннулировать)

Метод возвращает размеры штрафов по путевке до того, как ее аннулировать.
Работа метода регулируется лицензией.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ReservationKey * – ключ путевки
  • CancellationDate – дата аннуляции, на которую выдается условие и сумма штрафа. Если не указана, то получаем все возможные правила аннуляции вплоть до заезда.

Возвращаемый результат:

  • GetReservationPenaltiesResult – результат поиска
    • Penalty – штраф
      • ServicePenalty – сервис штрафов
        • ServiceClassID
        • ID – идентификатор штрафа
        • Name – наименование штрафа
        • PenaltyData – массив данных штрафа
          • PenaltyDataInfo – массив данных
            • TotalPenalty – полная сумма штрафа
            • RateCode – код валюты
            • PolicyDescription – условия штрафа
            • CancellationPolicyData – массив данных аннуляции
              • PolicyKey – ключ аннуляции
              • DateFrom – дата с
              • DateTo – дата по
              • PenaltyValue – значение штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
        • Hotel – отель
          • ID – идентификатор отеля
          • Name – наименование отеля
        • RoomType – тип комнаты
          • ID – идентификатор комнаты
          • Name – название комнаты
        • RoomCategory – категория номера
          • ID – идентификатор категории номера
          • Name – наименование категории номера
        • Accommodation – размещение
          • ID – идентификатор размещения
          • Name – наименование размещения
        • Pansion – тип питания
          • ID – идентификатор типа питания
          • Name – наименование типа питания

В случае ошибок получим сообщение с расшифровкой.
В случае некорректного Guid получим сообщение:"Invalid user or password (Invalid GUID)".
В случае отсутствия договора с указанным ключом для текущего партнера получим сообщение:"Check the parameter 'reservationKey' = <значение в запросе>. There is no any reservation for you in the database.".

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetReservationPenalties>
         <!--Optional:-->
         <meg:guid>9d041308-0e4c-4d07-8486-9e2293f1de75</meg:guid>
         <meg:reservationKey>36080</meg:reservationKey>
         </meg:GetReservationPenalties>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetReservationPenalties

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetReservationPenaltiesResponse xmlns="http://www.megatec.ru/">
         <GetReservationPenaltiesResult>
            <Penalty>
               <ServicePenalty xsi:type="HotelPenalty">
                  <ServiceClassID>0</ServiceClassID>
                  <ID>164217</ID>
                  <Name>HTL::Delphi/Fedriades Hotel /Double Room/2AD/100 m2/BB</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>0</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled before 01.09.2021, no penalty Penalty value is 0.00 EU</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>-1</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo>2021-09-01T00:00:00</DateTo>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                     <PenaltyDataInfo>
                        <TotalPenalty>17.76</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled from 01.09.2021, the penalty will be 2.00 % of the cost of accommodation Penalty value is 17.76 EU</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>73</PolicyKey>
                           <DateFrom>2021-09-01T00:00:00</DateFrom>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>2</PenaltyValue>
                           <IsPercent>true</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
                  <Hotel>
                     <ID>2426</ID>
                     <Name>Fedriades Hotel</Name>
                  </Hotel>
                  <RoomType>
                     <ID>3</ID>
                     <Name>Double Room</Name>
                  </RoomType>
                  <RoomCategory>
                     <ID>47</ID>
                     <Name>100 m2</Name>
                  </RoomCategory>
                  <Accommodation>
                     <ID>5558</ID>
                     <Name>2Ad</Name>
                  </Accommodation>
                  <Pansion>
                     <ID>3</ID>
                     <Name>Bed and Breakfast</Name>
                  </Pansion>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>2</ServiceClassID>
                  <ID>164218</ID>
                  <Name>TRF::Arrival transfer/Mini Bus/El.Venizelos-Fedriades Hotel /Delphi/!AA 910</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>0</TotalPenalty>
                        <RateCode/>
                        <PolicyDescription/>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>5</ServiceClassID>
                  <ID>164219</ID>
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>270</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>0</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>5</ServiceClassID>
                  <ID>164220</ID>
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>270</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>0</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>5</ServiceClassID>
                  <ID>164222</ID>
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>100</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>0</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>5</ServiceClassID>
                  <ID>164223</ID>
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>100</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>0</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
               <ServicePenalty>
                  <ServiceClassID>5</ServiceClassID>
                  <ID>164224</ID>
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
                  <PenaltyData>
                     <PenaltyDataInfo>
                        <TotalPenalty>100</TotalPenalty>
                        <RateCode>EU</RateCode>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
                        <CancellationPolicyData>
                           <PolicyKey>0</PolicyKey>
                           <DateFrom xsi:nil="true"/>
                           <DateTo xsi:nil="true"/>
                           <PenaltyValue>0</PenaltyValue>
                           <IsPercent>false</IsPercent>
                        </CancellationPolicyData>
                     </PenaltyDataInfo>
                  </PenaltyData>
               </ServicePenalty>
             </Penalty>
         </GetReservationPenaltiesResult>
      </GetReservationPenaltiesResponse>
   </soap:Body>
</soap:Envelope>


CreatePayment (Создание платежа по путевке)

Метод создает платеж по путевке.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата создания платежа
  • Sum * – сумма платежа
  • CurrencyIsoCode * – ISO код валюты платежа
  • ReservationCode * – код путевки
  • PaymentId * – идентификатор платежа (задается вручную для последующего идентифицирования платежа). Уникальный код, указывается пользователем один раз, не должен повторяться при следующей оплате по данной заявке.

Возвращаемый результат:

  • CreatePaymentResult – результат выдачи
    • 0 – NoError – ошибок нет
    • 1 – DogovorNotFound – путевка с таким кодом не найдена
    • 2 – InternalError – внутренняя ошибка
    • 3 – DogovorAnnulate – путевка аннулирована
    • 4 – DogovorPayed – путевка оплачена
    • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
    • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
    • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
    • 10 – FailureSignature – ошибка подписи
    • 11 – NoInvoices – нет инвойсов (счетов) по путевке
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CreatePayment>
         <!--Optional:-->
         <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
         <meg:date>2021-09-10</meg:date>
         <meg:sum>120</meg:sum>
         <!--Optional:-->
         <meg:currencyIsoCode>EUR</meg:currencyIsoCode>
         <!--Optional:-->
         <meg:reservationCode>MT110919A0K</meg:reservationCode>
         <!--Optional:-->
         <meg:paymentId>13</meg:paymentId>
      </meg:CreatePayment>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CreatePayment

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CreatePaymentResponse xmlns="http://www.megatec.ru/">
         <CreatePaymentResult>0</CreatePaymentResult>
      </CreatePaymentResponse>
   </soap:Body>
</soap:Envelope>


GetPaymentInformation (Поиск информации о платеже с заданным идентификатором платежа из внешней системы)

Метод возвращает информацию о платеже с заданным идентификатором платежа из внешней системы.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ReservationCode * – код путевки
  • ExternalPaymentId * – идентификатор платежа (Параметр PaymentId в запросе метода CreatePayment)

Возвращаемый результат:

  • GetPaymentInformationResult – результат выдачи
    • IsPaymentExists – показывает, есть ли запрошенный платеж
      • true – платеж с указанным идентификатором по указанной путевке существует
      • false – запрошенного платежа нет
    • PaymentInformationResult – массив данных платежа
      • InternalPaymentId – идентификатор платежа в системе Interlook,
      • DogovorCode – код путевки,
      • PaymentSum – сумма платежа,
      • PaymentNationalSum – сумма платежа в национальной валюте,
      • PaymentRateISOCode – ISO код валюты платежа
      • CreateDate – дата проведения платежа
    • ErrorCode – код ошибки
      • 0 – NoError – ошибок нет
      • 1 – DogovorNotFound – путевка с таким кодом не найдена
      • 2 – InternalError – внутренняя ошибка
      • 3 – DogovorAnnulate – путевка аннулирована
      • 4 – DogovorPayed – путевка оплачена
      • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
      • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
      • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
      • 10 – FailureSignature – ошибка подписи
      • 11 – NoInvoices – нет инвойсов (счетов) по путевке
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetPaymentInformation>
         <!--Optional:-->
         <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
         <!--Optional:-->
         <meg:reservationCode>MT110919A0K</meg:reservationCode>
         <!--Optional:-->
         <meg:externalPaymentId>12</meg:externalPaymentId>
      </meg:GetPaymentInformation>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetPaymentInformation

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetPaymentInformationResponse xmlns="http://www.megatec.ru/">
         <GetPaymentInformationResult>
            <IsPaymentExists>true</IsPaymentExists>
            <PaymentsShortInformation>
               <InternalPaymentId>1997</InternalPaymentId>
               <DogovorCode>MT110919A0K</DogovorCode>
               <PaymentSum>150</PaymentSum>
               <PaymentNationalSum>150</PaymentNationalSum>
               <PaymentRateISOCode>EUR</PaymentRateISOCode>
               <CreateDate>2021-09-13T18:17:20.837</CreateDate>
            </PaymentsShortInformation>
            <ErrorCode>0</ErrorCode>
         </GetPaymentInformationResult>
      </GetPaymentInformationResponse>
   </soap:Body>
</soap:Envelope>


GetCancellationPolicyInfoWithPenalty (Получение информации по расчету штрафов по отелю )

Данный функционал доступен начиная с релиза 11.20


Метод возвращает информацию по расчету штрафов по отелю.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата начала проживания
  • DateTo * – дата окончания проживания
  • HotelKey * – идентификатор отеля
  • PansionKey – идентификатор питания
  • AccommodationKey – идентификатор размещения, необязательный если передаем Pax.
  • RoomTypeKey – идентификатор типа комнаты
  • RoomCategoryKey – идентификатор категории номера
  • Pax * – Pax по услуге
  • Ages* – список с возрастами детей. Если ищем размещение без детей передаем пустой параметр (<meg:Ages></meg:Ages>)
  • CancellationDate – дата аннуляции (если не указана – берется текущая)

Возвращаемый результат:

  • GetCancellationPolicyInfoWithPenaltyResult – результат выдачи
    • CancellationPolicyInfoWithPenalty – массив данных
      • HotelKey – идентификатор отеля
      • HotelName – наименование отеля
      • AccomodatioKey – идентификатор размещения
      • AccomodatioName – наименование размещения
      • RoomTypeKey – идентификатор типа комнаты
      • RoomTypeName – наименование типа комнаты
      • RoomCategoryKey – идентификатор категории номера
      • RoomCategoryName – наименование категории номера
      • PansionKey – идентификатор питания
      • PansionName – наименование питания
      • PolicyDescripion – описание политики аннуляции и полной суммы штрафа
      • CancellationDate – дата аннуляции
      • PolicyData – массив данных
        • CancellationPolicyWithPenaltyValue – массив данных по расчету штрафа
          • PolicyKey – ключ политики
          • DateFrom – дата "от"
          • DateTo – не задана
          • PenaltyValue – значение штрафа
          • IsPercent – параметр, указывающий, что штраф в "%" (true) или в "ночах" (false)
          • PenaltyTotal – общая сумма штрафа
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
  <soapenv:Header/>
  <soapenv:Body>
     <meg:GetCancellationPolicyInfoWithPenalty>
        <meg:guid>66c8bbb3-53dc-47a0-8ddb-8e08ec68c84c</meg:guid>
        <meg:dateFrom>2021-12-01</meg:dateFrom>
        <meg:dateTo>2021-12-15</meg:dateTo>
        <meg:HotelKey>2942</meg:HotelKey>
        <meg:PansionKey>3</meg:PansionKey>
        <meg:AccommodationKey>5558</meg:AccommodationKey>
        <meg:RoomTypeKey>3</meg:RoomTypeKey>
        <meg:RoomCategoryKey>20</meg:RoomCategoryKey>
        <meg:Pax>2</meg:Pax>
        <meg:Ages>
           <meg:int>14</meg:int>
        </meg:Ages>
        <meg:CancellationDate>2021-11-30</meg:CancellationDate>
     </meg:GetCancellationPolicyInfoWithPenalty>
  </soapenv:Body>

</soapenv:Envelope> </syntaxhighlight> Возвращаемый результат метода GetCancellationPolicyInfoWithPenalty

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCancellationPolicyInfoWithPenaltyResponse xmlns="http://www.megatec.ru/">
         <GetCancellationPolicyInfoWithPenaltyResult Message="Ok">
            <Data>
               <CancellationPolicyInfoWithPenalty>
                  <HotelKey>2942</HotelKey>
                  <HotelName>Green (Kiev) Not defined</HotelName>
                  <AccomodatioKey>5558</AccomodatioKey>
                  <AccomodatioName>2AD</AccomodatioName>
                  <RoomTypeKey>3</RoomTypeKey>
                  <RoomTypeName>Double Room</RoomTypeName>
                  <RoomCategoryKey>20</RoomCategoryKey>
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
                  <PansionKey>3</PansionKey>
                  <PansionName>BB</PansionName>
                  <PolicyDescripion>
                     <string>If canceled in period 30.11.2021 - 30.11.2021, the penalty will be 2 night(s). Penalty value is 690.00 EU</string>
                     <string>If canceled from 01.12.2021, the penalty will be 100.00 % of the cost of accommodation. Penalty value is 4,140.00 EU</string>
                  </PolicyDescripion>
                  <CancellationDate>2021-11-30T00:00:00</CancellationDate>
                  <PolicyData>
                     <CancellationPolicyWithPenaltyValue>
                        <PolicyKey>166</PolicyKey>
                        <DateFrom>2021-11-30T00:00:00</DateFrom>
                        <DateTo>2021-11-30T00:00:00</DateTo>
                        <PenaltyValue>2</PenaltyValue>
                        <IsPercent>false</IsPercent>
                        <PenaltyTotal>690</PenaltyTotal>
                        <Currency>EU</Currency>
                     </CancellationPolicyWithPenaltyValue>
                     <CancellationPolicyWithPenaltyValue>
                        <PolicyKey>-1</PolicyKey>
                        <DateFrom>2021-12-01T00:00:00</DateFrom>
                        <DateTo xsi:nil="true"/>
                        <PenaltyValue>100</PenaltyValue>
                        <IsPercent>true</IsPercent>
                        <PenaltyTotal>4140</PenaltyTotal>
                        <Currency>EU</Currency>
                     </CancellationPolicyWithPenaltyValue>
                  </PolicyData>
               </CancellationPolicyInfoWithPenalty>
            </Data>
         </GetCancellationPolicyInfoWithPenaltyResult>
      </GetCancellationPolicyInfoWithPenaltyResponse>
   </soap:Body>
</soap:Envelope>


CheckReservation (Получение информации о платеже, необходимом для путевки, в выбранной валюте)

Метод возвращает информацию о платеже, необходимом для путевки, в выбранной валюте.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgCode * – код путевки
  • CurrencyIsoCode * – ISO код валюты платежа

Возвращаемый результат:

  • CheckReservationResult – результат выдачи
    • Amount – сумма платежа
    • RateCode – ISO код валюты платежа
    • NationalCurrencyPrice – сумма платежа в национальной валюте
    • NationalRateCode – ISO код национальной валюты
    • CustomCurrencyPrice – сумма платежа в произвольной валюте
    • CustomRateCode – ISO код произвольной валюты платежа
    • ErrorCode – код результата
      • 0 – NoError – ошибок нет
      • 1 – DogovorNotFound – путевка с таким кодом не найдена
      • 2 – InternalError – внутренняя ошибка
      • 3 – DogovorAnnulate – путевка аннулирована
      • 4 – DogovorPayed – путевка оплачена
      • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
      • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
      • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
      • 10 – FailureSignature – ошибка подписи
      • 11 – NoInvoices – нет инвойсов (счетов) по путевке
    • FilialKey – идентификатор филиала партнера
    • BeginTourDate – дата начала тура по путевке
    • EndTourDate – дата окончания тура путевки
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CheckReservation>
         <!--Optional:-->
         <meg:userToken>d9c97f30-e0f5-450a-a802-f50551960d78</meg:userToken>
         <!--Optional:-->
         <meg:dgCode>MT110919A0K</meg:dgCode>
         <!--Optional:-->
         <meg:currencyIsoCode>EUR</meg:currencyIsoCode>
      </meg:CheckReservation>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CheckReservation

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckReservationResponse xmlns="http://www.megatec.ru/">
         <CheckReservationResult>
            <Amount>1310</Amount>
            <RateCode>EUR</RateCode>
            <NationalCurrencyPrice>1310</NationalCurrencyPrice>
            <NationalRateCode>EUR</NationalRateCode>
            <CustomCurrencyPrice>1310</CustomCurrencyPrice>
            <CustomRateCode>EUR</CustomRateCode>
            <ErrorCode>0</ErrorCode>
            <FilialKey>1199</FilialKey>
            <BeginTourDate>2021-09-19T00:00:00</BeginTourDate>
            <EndTourDate>2021-10-11T00:00:00</EndTourDate>
         </CheckReservationResult>
      </CheckReservationResponse>
   </soap:Body>
</soap:Envelope>


CreatePaymentForDogovor (Создание платежа по путевке по выставленному инвойсу)

Метод создает платеж по путевке, у которой выставлен инвойс.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • Payment * – размер платежа

Возвращаемый результат:

  • CreatePaymentForDogovorResult – результат выдачи
    • OrderId – идентификатор платежа

В случае отсутствия созданного инвойса по путевке получим сообщение: "There is no invoice".

Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CreatePaymentForDogovor>
         <!--Optional:-->
         <meg:guid>92a87a3b-04f8-4cad-bd0f-360fe8bd0a8f</meg:guid>
         <meg:dgKey>36225</meg:dgKey>
         <meg:payment>1500</meg:payment>
      </meg:CreatePaymentForDogovor>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CreatePaymentForDogovor

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CreatePaymentForDogovorResponse xmlns="http://www.megatec.ru/">
         <CreatePaymentForDogovorResult/>
         <orderId>2008</orderId>
      </CreatePaymentForDogovorResponse>
   </soap:Body>
</soap:Envelope>


Метод работы с квотами

CheckQuota (Проверка доступности номера отеля на период)

Метод возвращает информацию о доступности номера отеля на период.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom – дата с
  • DateTo – дата по
  • HotelId * – ключ отеля
  • RoomTypeId * – ключ типа комнаты (-1 для всех)
  • RoomCategoryId * – ключ категории комнаты (-1 для всех)

Возвращаемый результат:

  • ServiceResult – результат поиска
  • QuotaSimpleInfo – массив данных
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
    • Quota – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
    • RoomVariantName – наименование варианта комнаты (комбинации из таблицы RoomVariant)
    • Date – не заполняется
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CheckQuota>
         <!--Optional:-->
         <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
         <meg:dateFrom>2021-07-13</meg:dateFrom>
         <meg:dateTo>2021-07-30</meg:dateTo>
         <meg:hotelId>2930</meg:hotelId>
         <meg:roomTypeId>-1</meg:roomTypeId>
         <meg:roomCategoryId>-1</meg:roomCategoryId>
      </meg:CheckQuota>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода CheckQuota

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
         <CheckQuotaResult Message="Ok">
            <Data>
               <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
               <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
            </Data>
         </CheckQuotaResult>
      </CheckQuotaResponse>
   </soap:Body>
</soap:Envelope>


GetQuotaInfo (Проверка доступности номера отеля на период с детализацией по дням)

Метод возвращает информацию о доступности номера отеля на период с детализацией по дням.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата с
  • DateTo * – дата по
  • HotelId * – ключ отеля
  • RoomTypeId * – ключ типа комнаты (-1 для всех)
  • RoomCategoryId * – ключ категории комнаты (-1 для всех)

Возвращаемый результат:

  • GetQuotaInfoResult – результат поиска
  • QuotaSimpleInfo – массив данных
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
    • Quota – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
    • RoomVariantName – наименование варианта комнаты (комбинации из таблицы RoomVariant)
    • Date – день
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:CheckQuota>
         <!--Optional:-->
         <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
         <meg:dateFrom>2021-07-13</meg:dateFrom>
         <meg:dateTo>2021-07-30</meg:dateTo>
         <meg:hotelId>2930</meg:hotelId>
         <meg:roomTypeId>-1</meg:roomTypeId>
         <meg:roomCategoryId>-1</meg:roomCategoryId>
      </meg:CheckQuota>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetQuotaInfo

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
         <CheckQuotaResult Message="Ok">
            <Data>
               <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
               <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
               <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="6" Quota="0" RoomVariantName="Single Room Standard" Date="0001-01-01T00:00:00"/>
            </Data>
         </CheckQuotaResult>
      </CheckQuotaResponse>
   </soap:Body>
</soap:Envelope>


GetChangeQuotaAndStop (Получение информации по квотам и стопам в отеле)

Метод передает информацию по квотам и стопам в отеле. Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • HotelKey * – ключ отеля
  • Date – дата, с которой получаем изменения (если не отправляем, то берется текущая)
  • UseRoomDescription * – как сопоставляем категорию и тип комнаты (через общее описание комнаты или по-отдельности)
  • LoadQuaota * – загружать или нет изменения по квотам
  • LoadStop * – загружать или нет изменения по стопам

Возвращаемый результат:

  • GetChangeQuotaAndStopResult – результат поиска
    • QuotaStopInfo – массив данных
      • ID – не используется
      • SvKey – ключ сервис класса (для отеля = 1)
      • Code – ключ отеля
      • SubCode1Name – название типа комнаты
      • SubCode1 – ключ типа комнаты
      • SubCode2 – не используется
      • SubCode3Name – название категории комнаты
      • SubCode3 – ключ категории комнаты
      • RoomDescriptionID – ключ описания комнаты
      • RoomDescriptionName – название описания комнаты
      • Place – количество мест (2 и больше, 1 – мест мало или одно, 0 – нет мест в квоте, -1 – стоп отменен (если IsStop=true) или квота удалена(если IsStop=false)), -2 – стоп отменен и квот при этом нет)
      • IsStop – стоит ли стоп на текущую дату
      • Date – дата текущей квоты (стопа)
      • UpdateDate – дата обновления
      • Release – релиз-период
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetChangeQuotaAndStop>
         <!--Optional:-->
         <meg:guid>7e4781f3-cef1-4b05-b6aa-ef9bb091f055</meg:guid>
         <meg:hotelKey>2942</meg:hotelKey>
         <meg:date>2023-11-01T21:17:00</meg:date>
         <meg:UseRoomDescription>true</meg:UseRoomDescription>
         <meg:LoadQuota>true</meg:LoadQuota>
         <meg:LoadStop>false</meg:LoadStop>
      </meg:GetChangeQuotaAndStop>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetChangeQuotaAndStop

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetChangeQuotaAndStopResponse xmlns="http://www.megatec.ru/">
         <GetChangeQuotaAndStopResult>
            <QuotaStopInfo ID="0" SvKey="1" Code="2942" SubCode1Name="Double Room" SubCode1="3" SubCode2="0" SubCode3Name="Inner View" SubCode3="19" RoomDescriptionID="4076" RoomDescriptionName="Double Room Inner View" Place="2" IsStop="false" Date="2023-11-08T00:00:00" UpdateDate="2023-11-01T21:18:18.63" Release="3"/>
         </GetChangeQuotaAndStopResult>
      </GetChangeQuotaAndStopResponse>
   </soap:Body>
</soap:Envelope>


GetHotelQuotaStopInfo (Получение информации по отелям, у которых были изменения в квотах или стопах с определенной даты)

Метод возвращает отели, у которых были изменения в квотах или стопах с определенной даты.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата, с которой будем искать отели с измененными квотами или стопами

Возвращаемый результат:

  • GetHotelQuotaStopResult – результат поиска
    • HotelQuotaStopInfo – массив данных
      • HotelKey – ключ отеля
      • UpdateDateQuota – дата последнего изменения в квотах по отелю
      • UpdateDateStop – дата последнего изменения в стопах по отелю
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetHotelQuotaStopInfo>
         <!--Optional:-->
         <meg:guid>99c047a9-a1e9-4a8c-b585-3c09239b3fa3</meg:guid>
         <meg:date>2021-07-13</meg:date>
      </meg:GetHotelQuotaStopInfo>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetHotelQuotaStopInfo

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetHotelQuotaStopInfoResponse xmlns="http://www.megatec.ru/">
         <GetHotelQuotaStopInfoResult>
            <HotelQuotaStopInfo HotelKey="2930" UpdateDateQuota="2021-08-18T12:51:26.037+04:00" UpdateDateStop="2021-08-18T12:51:26.037+04:00"/>
            <HotelQuotaStopInfo HotelKey="2932" UpdateDateQuota="2021-08-31T16:57:32.213+04:00" UpdateDateStop="0001-01-01T00:00:00"/>
        </GetHotelQuotaStopInfoResult>
      </GetHotelQuotaStopInfoResponse>
   </soap:Body>
</soap:Envelope>


GetQuotaStop (Получение информации по установленным стопам на номера в отеле)

Метод возвращает информацию по установленным стопам на номера в отеле.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата, с которой будем искать отели с измененными квотами или стопами
  • HotelKey * – ключ отеля

Возвращаемый результат:

  • GetQuotaStopResult – результат поиска
    • QuoteHotel – массив данных
      • Code – ключ отеля
      • StartDate – дата начала
      • EndDate – дата окончания
      • Date – дата
      • CreateDate – дата создания
      • ID – не используется
      • IsRemove – удалена или нет
      • Total – количество мест
      • Sold – продано
      • Free – свободно
      • HotelKey – ключ отеля
      • RoomTypeKey – ключ типа комнаты
      • RoomCategoryKey – ключ категории комнаты
      • QuoteType – тип квоты
      • IsStopSale – установлен ли стоп на продажу
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <meg:GetQuotaStop>
         <!--Optional:-->
         <meg:guid>eb99a14f-d4ad-4b90-a37f-a93550eb1c74</meg:guid>
         <meg:date>2021-07-13</meg:date>
         <meg:hotelKey>2941</meg:hotelKey>
      </meg:GetQuotaStop>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода GetQuotaStop

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetQuotaStopResponse xmlns="http://www.megatec.ru/">
         <GetQuotaStopResult>
            <QuoteHotel Code="0" StartDate="2021-07-13T00:00:00" EndDate="2021-07-13T00:00:00" Date="2021-07-13T00:00:00" CreateDate="2021-09-14T00:00:00+04:00" ID="-1" IsRemove="true" Total="0" Sold="0" Free="0" HotelKey="2941" RoomTypeKey="0" RoomCategoryKey="0" QuoteType="NotSet" IsStopSale="true">
               <RelizPeriod>0</RelizPeriod>
            </QuoteHotel>
            <QuoteHotel Code="0" StartDate="2021-07-14T00:00:00" EndDate="2021-07-14T00:00:00" Date="2021-07-14T00:00:00" CreateDate="2021-09-14T00:00:00+04:00" ID="-1" IsRemove="true" Total="0" Sold="0" Free="0" HotelKey="2941" RoomTypeKey="0" RoomCategoryKey="0" QuoteType="NotSet" IsStopSale="true">
               <RelizPeriod>0</RelizPeriod>
            </QuoteHotel>
         </GetQuotaStopResult>
      </GetQuotaStopResponse>
   </soap:Body>
</soap:Envelope>