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

Материал из Megatec
Перейти к: навигация, поиск
(GetClientInfo (Выдача информации по партнёру, к которому относится on-line user))
(Введение)
 
(не показано 27 промежуточных версий 3 участников)
Строка 7: Строка 7:
  
 
=Введение=
 
=Введение=
API '''InterlookIntegrationService''' работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
+
API '''InterlookIntegrationService''' работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi. <br />
 +
Документацию на английском языке можно загрузить тут [[Файл:Master-InterlookIntegrationService.docx]] либо с [https://disk.yandex.ru/i/JL4OSE52zSX3Gg яндекс диска]
  
=Расшифровка ошибок сервера=
+
==Подключение к базе данных ПК «Мастер-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"
 +
 
 +
|- 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 ошибка.<br />
 
"В документе XML (12, 49) присутствует ошибка." - в данном случае ошибка в 12 строке, всего 49 символов в строке с ошибкой.<br />
 
"В документе XML (12, 49) присутствует ошибка." - в данном случае ошибка в 12 строке, всего 49 символов в строке с ошибкой.<br />
Строка 2263: Строка 2448:
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''DgKey *''' – ключ путевки
+
* '''DgKey *''' – ключ путевки (не номер путевки)
 
* '''AnnulReasonID *''' – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение '''There is no this annulating reason in database''')
 
* '''AnnulReasonID *''' – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение '''There is no this annulating reason in database''')
 
* '''Note''' – комментарий к аннуляции
 
* '''Note''' – комментарий к аннуляции
Строка 2380: Строка 2565:
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''DateFrom *''' – дата от
 
* '''DateFrom *''' – дата от
* '''DateTo *''' – дата до
+
* '''DateTo''' – дата до
  
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
Строка 2588: Строка 2773:
 
** '''DateFrom *''' – дата «С»
 
** '''DateFrom *''' – дата «С»
 
** '''DateTo *''' – дата «По»
 
** '''DateTo *''' – дата «По»
** '''RegionKeys''' – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам)
+
** '''RegionKeys''' – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
** '''CityKeys''' – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов)
+
** '''CityKeys''' – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
** '''HotelKeys *''' – идентификаторы отелей (если заданы отели – поиск только для них)
+
** '''HotelKeys''' – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
 
** '''RoomDescriptions''' – идентификаторы описаний комнат. Если не предавать будет искать для всех
 
** '''RoomDescriptions''' – идентификаторы описаний комнат. Если не предавать будет искать для всех
** '''KeysPansionKeys''' – идентификаторы питаний. Если не передавать будет искать для всех
+
** '''PansionKeys''' – идентификаторы питаний. Если не передавать будет искать для всех
** '''Ages *''' – возраст детей
+
** '''Ages''' – возраст детей (если не указан, то размещения с детьми не ищутся, туристы считаются взрослыми)
 
** '''Pax *''' – размещение
 
** '''Pax *''' – размещение
 
** '''Tariffs''' – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary
 
** '''Tariffs''' – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary
** '''CacheGuid''' – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)  
+
** '''CacheGuid''' – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)  
** '''ResultView *''' – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
+
** '''ResultView''' – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
** '''QuotaTypes *''' – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты
+
** '''QuotaTypes''' – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
 
** ''' Mode''' – не указываем или указываем 0
 
** ''' Mode''' – не указываем или указываем 0
  
Строка 2724: Строка 2909:
 
<meg:SearchHotelServices>
 
<meg:SearchHotelServices>
 
<!--Optional:-->
 
<!--Optional:-->
         <meg:guid>4345e860-1480-4116-be3e-60bf28124d50</meg:guid>
+
         <meg:guid>ef5bafbc-722f-4d8b-bdd5-844e8633788f</meg:guid>
 
         <!--Optional:-->
 
         <!--Optional:-->
 
         <meg:request>
 
         <meg:request>
Строка 2747: Строка 2932:
 
             <meg:Pax>2</meg:Pax>
 
             <meg:Pax>2</meg:Pax>
 
             <!--Optional:-->
 
             <!--Optional:-->
 +
<meg:CacheGuid>9f542137-9403-472c-807d-ae839fb2ee29</meg:CacheGuid>
 
<meg:ResultView>1</meg:ResultView>
 
<meg:ResultView>1</meg:ResultView>
 
             <meg:Mode>0</meg:Mode>
 
             <meg:Mode>0</meg:Mode>
Строка 3343: Строка 3529:
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''Request ''' – объект с параметрами запроса:
+
* '''Request ''' – объект с параметрами запроса
** '''PageSize *''' – размер страницы возвращаемых данных. То есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных цен (но перебрать цен он может больше, не все цены подходят) выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount  
+
** '''PageSize *''' – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
** '''RowIndexFrom *''' – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)  
+
** '''RowIndexFrom *''' – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)  
** '''DateFrom *''' – дата «с»
+
** '''DateFrom *''' – дата «С»
** '''DateTo *''' – дата «по»
+
** '''DateTo *''' – дата «По»
** '''HotelKeys *''' – идентификаторы отелей (если заданы отели – поиск только для них)
+
** '''RegionKeys''' – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
** '''Ages *''' – возраста детей
+
** '''CityKeys''' – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
** '''ResultView *''' – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
+
** '''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
 
** ''' Mode''' – не указываем или указываем 0
** '''QuotaTypes *''' – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты
 
  
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
Строка 3462: Строка 3655:
 
***** '''HasDuration''' – услуга с продолжительностью или без
 
***** '''HasDuration''' – услуга с продолжительностью или без
 
** '''ResponseGuid''' – идентификатор ответа<br />
 
** '''ResponseGuid''' – идентификатор ответа<br />
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.<br />
+
В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок и/или номер строки с ошибкой.<br />
 
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br />
 
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."<br />
 
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."<br />
 
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."<br />
Строка 3476: Строка 3669:
 
   <soapenv:Body>
 
   <soapenv:Body>
 
       <meg:SearchHotelServicesMinHotel>
 
       <meg:SearchHotelServicesMinHotel>
        <!--Optional:-->
+
    <!--Optional:-->
                <meg:guid>579a78af-2e56-459b-9986-1a49f36a5fb0</meg:guid>
+
        <meg:guid>138e178e-6c1c-4e5a-9f82-8280cb014804</meg:guid>
 
         <!--Optional:-->
 
         <!--Optional:-->
 
         <meg:request>
 
         <meg:request>
Строка 3483: Строка 3676:
 
             <meg:RowIndexFrom>0</meg:RowIndexFrom>
 
             <meg:RowIndexFrom>0</meg:RowIndexFrom>
 
             <meg:DateFrom>2021-12-01</meg:DateFrom>
 
             <meg:DateFrom>2021-12-01</meg:DateFrom>
             <meg:DateTo>2021-12-22</meg:DateTo>
+
             <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:-->
 
             <!--Optional:-->
<meg:HotelKeys>
+
            <meg:HotelKeys>
 
               <!--Zero or more repetitions:-->
 
               <!--Zero or more repetitions:-->
               <meg:int>2942</meg:int>
+
               <meg:int>2932</meg:int>
                      <meg:int>2932</meg:int>
 
 
             </meg:HotelKeys>
 
             </meg:HotelKeys>
<meg:Ages>
+
            <!--Optional:-->
<!--Zero or more repetitions:-->
+
            <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:Ages>
 
             <meg:Pax>2</meg:Pax>
 
             <meg:Pax>2</meg:Pax>
 
             <!--Optional:-->
 
             <!--Optional:-->
<meg:ResultView>1</meg:ResultView>
+
            <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>
 
             <meg:Mode>0</meg:Mode>
 
             <!--Optional:-->
 
             <!--Optional:-->
<meg:QuotaTypes>
+
            <meg:QuotaTypes>
 
               <!--Zero or more repetitions:-->
 
               <!--Zero or more repetitions:-->
 +
              <meg:int>0</meg:int>
 
             </meg:QuotaTypes>
 
             </meg:QuotaTypes>
 
         </meg:request>
 
         </meg:request>
Строка 3551: Строка 3772:
 
                                           <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="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="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:sequence>
 
                                     </xs:complexType>
 
                                     </xs:complexType>
Строка 3562: Строка 3782:
 
                         <DocumentElement xmlns="">
 
                         <DocumentElement xmlns="">
 
                           <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
 
                           <HotelServices diffgr:id="HotelServices1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
                               <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Green (Kiev) Not defined</HotelName>
+
                               <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">2942</HotelKey>
+
                               <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>
 
                               <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>
 
                               <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">Inner View</RcName>
+
                               <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">19</RcKey>
+
                               <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 Inner View</RdName>
+
                               <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">4076</RdKey>
+
                               <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>
 
                               <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>
 
                               <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>
 
                               <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>
 
                               <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">3317.5000</TotalCost>
+
                               <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">3277.50</Cost>
+
                               <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">0</AddHotsCost>
+
                               <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">40.00</AddHotsWithCosts>
+
                               <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">(172,50[Green - 14-12]*(21-2)) * 1 room = 3277,50</DetailBrutto>
+
                               <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">1</QuoteType>
+
                               <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>
 
                               <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>
 
                               <CityKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">80</CityKey>
Строка 3587: Строка 3807:
 
                               <TariffName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Ordinary</TariffName>
 
                               <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"/>
 
                               <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"/>
+
                               <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">2942</ContractPrKey>
+
                               <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>
 
                               <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>
                          <HotelServices diffgr:id="HotelServices2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
+
                         </DocumentElement>
                              <HotelName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">One (Kiev) 4 stars (A)</HotelName>
+
                     </diffgr:diffgram>
                              <HotelKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">2932</HotelKey>
+
                   </ResultTable>
                              <RtCode xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room</RtCode>
+
                   <ColunmNames>
                              <RtKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">3</RtKey>
+
                     <string>HotelName</string>
                              <RcName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Side Sea View</RcName>
+
                     <string>HotelKey</string>
                              <RcKey xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema">8</RcKey>
+
                     <string>RtCode</string>
                              <RdName xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema">Double Room Side Sea View</RdName>
+
                     <string>RtKey</string>
                              <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">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">-3,-4</AddHotsWithCostID>
 
                          </HotelServices>
 
                         </DocumentElement>
 
                     </diffgr:diffgram>
 
                   </ResultTable>
 
                   <ColunmNames>
 
                     <string>HotelName</string>
 
                     <string>HotelKey</string>
 
                     <string>RtCode</string>
 
                     <string>RtKey</string>
 
 
                     <string>RcName</string>
 
                     <string>RcName</string>
 
                     <string>RcKey</string>
 
                     <string>RcKey</string>
Строка 3656: Строка 3844:
 
                     <string>HotelImage</string>
 
                     <string>HotelImage</string>
 
                     <string>Rate</string>
 
                     <string>Rate</string>
                    <string>AddHotsWithCostID</string>
 
 
                   </ColunmNames>
 
                   </ColunmNames>
                   <TotalCount>9</TotalCount>
+
                   <TotalCount>1</TotalCount>
 
                   <PageSize>100000</PageSize>
 
                   <PageSize>100000</PageSize>
 
                   <PageIndex>0</PageIndex>
 
                   <PageIndex>0</PageIndex>
Строка 3665: Строка 3852:
 
                     <ArrayOfAnyType>
 
                     <ArrayOfAnyType>
 
                         <anyType xsi:type="ExtraService">
 
                         <anyType xsi:type="ExtraService">
                           <ExternalID>0</ExternalID>
+
                           <ExternalID xsi:nil="true"/>
                           <Price>30</Price>
+
                           <Price>20</Price>
 
                           <NMen>0</NMen>
 
                           <NMen>0</NMen>
 
                           <PartnerID>0</PartnerID>
 
                           <PartnerID>0</PartnerID>
Строка 3676: Строка 3863:
 
                               </ParameterPair>
 
                               </ParameterPair>
 
                           </AdditionalParams>
 
                           </AdditionalParams>
                          <Tourists/>
 
                          <DetailNetto/>
 
 
                           <DetailBrutto/>
 
                           <DetailBrutto/>
 
                           <Notes/>
 
                           <Notes/>
 
                           <Name>Hardlink</Name>
 
                           <Name>Hardlink</Name>
 
                           <StartDate>2021-12-01T00:00:00</StartDate>
 
                           <StartDate>2021-12-01T00:00:00</StartDate>
                           <StartDay>0</StartDay>
+
                           <StartDay xsi:nil="true"/>
 
                           <Duration>0</Duration>
 
                           <Duration>0</Duration>
 
                           <RateBrutto/>
 
                           <RateBrutto/>
                           <Brutto>30</Brutto>
+
                           <Brutto>20</Brutto>
                          <RateNetto/>
 
                          <Netto>0</Netto>
 
 
                           <ServiceClassID>99</ServiceClassID>
 
                           <ServiceClassID>99</ServiceClassID>
                           <TouristCount>0</TouristCount>
+
                           <TouristCount xsi:nil="true"/>
 
                           <ID>0</ID>
 
                           <ID>0</ID>
 
                           <Status>
 
                           <Status>
 
                               <Name>Hardlink</Name>
 
                               <Name>Hardlink</Name>
 
                               <ID>0</ID>
 
                               <ID>0</ID>
                              <Description/>
 
                              <NameLat/>
 
                              <Code/>
 
                              <CodeLat/>
 
                              <Unicode/>
 
 
                           </Status>
 
                           </Status>
 
                           <CityKey>80</CityKey>
 
                           <CityKey>80</CityKey>
Строка 3705: Строка 3883:
 
                           <HasDuration>false</HasDuration>
 
                           <HasDuration>false</HasDuration>
 
                         </anyType>
 
                         </anyType>
                        <anyType xsi:type="ExtraService">
+
                    </ArrayOfAnyType>
                          <ExternalID>0</ExternalID>
+
                  </AdditionalData>
                          <Price>20</Price>
+
                  <ResponseGuid>f7f9dd22-5a50-455b-8cf0-f0a21153b650</ResponseGuid>
                          <NMen>0</NMen>
+
              </DataRequestResult>
                          <PartnerID>0</PartnerID>
+
            </Data>
                          <Quota>NotChecked</Quota>
+
        </SearchHotelServicesMinHotelResult>
                          <PacketKey>0</PacketKey>
+
      </SearchHotelServicesMinHotelResponse>
                          <AdditionalParams>
+
  </soap:Body>
                              <ParameterPair Key="ContractPrKey">
+
</soap:Envelope>
                                <Value xsi:type="xsd:int">0</Value>
+
</syntaxhighlight>
                              </ParameterPair>
+
</TD></TR></TABLE>
                          </AdditionalParams>
+
</div></div><br />
                          <Tourists/>
+
 
                          <DetailNetto/>
+
===SearchActualCostCalculationVariant (Поиск возможных вариантов типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю)===
                          <DetailBrutto/>
+
Метод выдает возможные варианты типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю.<br />
                          <Notes/>
+
Принимаемые параметры запроса ( * – обязательный):<br />
                          <Name>Ужин1</Name>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
* '''Request ''' – объект с параметрами запроса:
                          <StartDay>0</StartDay>
+
** '''HotelId *''' – идентификатор отеля (обязательный параметр, значения 0 и -1 не допустимы)
                          <Duration>1</Duration>
+
** '''DateFrom *''' – дата «с»
                          <RateBrutto/>
+
** '''DateTo *''' – дата «по»
                          <Brutto>20</Brutto>
+
** '''ValidateQuoata''' – проверять ли квоту (true – проверять, false – нет)
                          <RateNetto/>
+
** '''QuotaTypes''' – фильтр по типу квоты (0 – запрос, 1 – квота, 2 – стоп)
                          <Netto>0</Netto>
+
** '''CheckAdHot''' – учитывать ли цены на обязательные адхоты (true – учитывать, false – нет)
                          <ServiceClassID>70</ServiceClassID>
+
** '''Rate *''' – код валюты, в которой будет вестись расчет
                          <TouristCount>0</TouristCount>
+
Возвращаемый результат:<br />
                          <ID>-1</ID>
+
* '''SearchActualCostCalculationVariantResult''' – результат поиска
                          <CityKey>0</CityKey>
+
** '''CostCalculationVariant''' – массив данных
                          <IsPackage>false</IsPackage>
+
*** '''RoomAccommodationId''' – ключ размещения
                          <Code>586</Code>
+
*** '''RoomTypeId''' – ключ типа комнаты
                          <HasDuration>false</HasDuration>
+
*** '''RoomCategoryId''' – ключ категории комнаты
                        </anyType>
+
*** '''PansionId''' – ключ питания
                        <anyType xsi:type="ExtraService">
+
*** '''RoomAccommodationName''' – код размещения
                          <ExternalID>0</ExternalID>
+
*** '''RoomTypeName''' – код типа комнаты
                          <Price>20</Price>
+
*** '''RoomCategoryName''' – код категории комнаты
                          <NMen>0</NMen>
+
*** '''PansionName''' – код питания
                          <PartnerID>0</PartnerID>
+
*** '''CountAdult''' – количество взрослых
                          <Quota>NotChecked</Quota>
+
*** '''CountChildren''' – количество детей
                          <PacketKey>0</PacketKey>
+
*** '''Quota''' – значение квоты
                          <AdditionalParams>
+
 
                              <ParameterPair Key="ContractPrKey">
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                                <Value xsi:type="xsd:int">0</Value>
+
<div class="mw-collapsible-content">
                              </ParameterPair>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          </AdditionalParams>
+
Вызов метода SearchActualCostCalculationVariant
                          <Tourists/>
+
<syntaxhighlight lang="java" enclose="div">
                          <DetailNetto/>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <DetailBrutto/>
+
  <soapenv:Header/>
                          <Notes/>
+
  <soapenv:Body>
                          <Name>test q</Name>
+
      <meg:SearchActualCostCalculationVariant>
                          <StartDate>2021-12-10T00:00:00</StartDate>
+
        <!--Optional:-->
                          <StartDay>0</StartDay>
+
        <meg:guid>d1ac9f4d-20bd-43e0-b5b5-ad60c3cf0065</meg:guid>
                          <Duration>1</Duration>
+
        <!--Optional:-->
                          <RateBrutto/>
+
        <meg:request HotelId="2940" DateFrom="2021-09-08" DateTo="2021-09-09" ValidateQuota="true" CheckAdHot="true" Rate="1" QuotaTypes="0"/>
                          <Brutto>20</Brutto>
+
      </meg:SearchActualCostCalculationVariant>
                          <RateNetto/>
+
  </soapenv:Body>
                          <Netto>0</Netto>
+
</soapenv:Envelope>
                          <ServiceClassID>28</ServiceClassID>
+
</syntaxhighlight>
                          <TouristCount>0</TouristCount>
+
Возвращаемый результат метода SearchActualCostCalculationVariant
                          <ID>-2</ID>
+
<syntaxhighlight lang="java" enclose="div">
                          <CityKey>0</CityKey>
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                          <IsPackage>false</IsPackage>
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                          <Code>635</Code>
+
  <soap:Body>
                          <HasDuration>false</HasDuration>
+
      <SearchActualCostCalculationVariantResponse xmlns="http://www.megatec.ru/">
                        </anyType>
+
        <SearchActualCostCalculationVariantResult Message="Ok">
                        <anyType xsi:type="ExtraService">
+
            <Data>
                          <ExternalID>0</ExternalID>
+
              <CostCalculationVariant>
                          <Price>20</Price>
+
                  <RoomAccommodationId>5558</RoomAccommodationId>
                          <NMen>0</NMen>
+
                  <RoomTypeId>3</RoomTypeId>
                          <PartnerID>0</PartnerID>
+
                  <RoomCategoryId>20</RoomCategoryId>
                          <Quota>NotChecked</Quota>
+
                  <PansionId>3</PansionId>
                          <PacketKey>0</PacketKey>
+
                  <RoomAccommodationName>2AD</RoomAccommodationName>
                          <AdditionalParams>
+
                  <RoomTypeName>Double Room</RoomTypeName>
                              <ParameterPair Key="ContractPrKey">
+
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
                                <Value xsi:type="xsd:int">0</Value>
+
                  <PansionName>BB</PansionName>
                              </ParameterPair>
+
                  <CountAdult>2</CountAdult>
                          </AdditionalParams>
+
                  <CountChildren>0</CountChildren>
                          <Tourists/>
+
                  <Quota>0</Quota>
                          <DetailNetto/>
+
              </CostCalculationVariant>
                          <DetailBrutto/>
+
              <CostCalculationVariant>
                          <Notes/>
+
                  <RoomAccommodationId>5558</RoomAccommodationId>
                          <Name>Ужин1</Name>
+
                  <RoomTypeId>45</RoomTypeId>
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
                  <RoomCategoryId>20</RoomCategoryId>
                          <StartDay>0</StartDay>
+
                  <PansionId>4</PansionId>
                          <Duration>1</Duration>
+
                  <RoomAccommodationName>2AD</RoomAccommodationName>
                          <RateBrutto/>
+
                  <RoomTypeName>Junior Suite</RoomTypeName>
                          <Brutto>20</Brutto>
+
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
                          <RateNetto/>
+
                  <PansionName>HB</PansionName>
                          <Netto>0</Netto>
+
                  <CountAdult>2</CountAdult>
                          <ServiceClassID>70</ServiceClassID>
+
                  <CountChildren>0</CountChildren>
                          <TouristCount>0</TouristCount>
+
                  <Quota>0</Quota>
                          <ID>-3</ID>
+
              </CostCalculationVariant>
                          <CityKey>0</CityKey>
+
            </Data>
                          <IsPackage>false</IsPackage>
+
        </SearchActualCostCalculationVariantResult>
                          <Code>586</Code>
+
      </SearchActualCostCalculationVariantResponse>
                          <HasDuration>false</HasDuration>
+
  </soap:Body>
                        </anyType>
+
</soap:Envelope>
                        <anyType xsi:type="ExtraService">
+
</syntaxhighlight>
                          <ExternalID>0</ExternalID>
+
</TD></TR></TABLE>
                          <Price>20</Price>
+
</div></div><br />
                          <NMen>0</NMen>
+
 
                          <PartnerID>0</PartnerID>
+
==Методы работы с ценами==
                          <Quota>NotChecked</Quota>
+
===GetSpoList (Получение списка SPO согласно запросу)===
                          <PacketKey>0</PacketKey>
+
Метод возвращает  список SPO согласно запросу.<br />
                          <AdditionalParams>
+
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
                              <ParameterPair Key="ContractPrKey">
+
Принимаемые параметры запроса (* – обязательный):
                                <Value xsi:type="xsd:int">0</Value>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                              </ParameterPair>
+
* '''Request''' – класс с параметрами запроса
                          </AdditionalParams>
+
** '''SvKey *''' – ключ класса услуги (1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис, 0 или -1 не принимаются)
                          <Tourists/>
+
** '''PublicationDateBegin *''' – дата публикации SPO «с»
                          <DetailNetto/>
+
** '''PublicationDateEnd *''' – дата публикации цены «по»
                          <DetailBrutto/>
+
Возвращаемый результат:<br />
                          <Notes/>
+
* '''SPOInfo''' – результат поиска
                          <Name>test q</Name>
+
** '''ResultTable''' – таблица с результатом
                          <StartDate>2021-12-10T00:00:00</StartDate>
+
** '''Id''' – ключ SPO
                          <StartDay>0</StartDay>
+
** '''Name''' – название SPO
                          <Duration>1</Duration>
+
** '''PeriodBeforeCheckIn''' – период до заезда
                          <RateBrutto/>
+
** '''SaleDateBegin''' – дата с которой возможно бронирование
                          <Brutto>20</Brutto>
+
** '''SaleDateEnd''' – дата до которой возможно бронирование
                          <RateNetto/>
+
** '''Comment''' – описание SPO
                          <Netto>0</Netto>
+
** '''CreateDate''' – дата создания
                          <ServiceClassID>28</ServiceClassID>
+
** '''UpdateDate''' – дата обновления
                          <TouristCount>0</TouristCount>
+
** '''SpoType''' – тип SPO (Ordinary – 0, Spo – 1)
                          <ID>-4</ID>
+
** '''SvKey''' – класс услуги
                          <CityKey>0</CityKey>
+
** '''COLinkServices''' – услуги SPO
                          <IsPackage>false</IsPackage>
+
*** '''COLinkService''' – конкретная услуга SPO
                          <Code>635</Code>
+
**** '''SvKey''' –  ключ типа услуги
                          <HasDuration>false</HasDuration>
+
**** '''Code''' –  ключ услуги
                        </anyType>
+
**** '''DurationMin''' – минимальная продолжительность
                        <anyType xsi:type="ExtraService">
+
**** '''DurationMax''' – максимальная продолжительность
                          <ExternalID>0</ExternalID>
+
**** '''IsDisable''' – заблокирована ли услуга
                          <Price>20</Price>
+
**** '''DisableDate''' – дата блокировки
                          <NMen>0</NMen>
+
** '''COServices''' – информация о ценах на услуги в этом SPO
                          <PartnerID>0</PartnerID>
+
*** '''COService''' – информация о цене на конкретную услугу в этом SPO
                          <Quota>NotChecked</Quota>
+
**** '''Code''' – идентификатор услуги
                          <PacketKey>0</PacketKey>
+
**** '''CostCount''' – количество цен для услуги в SPO
                          <AdditionalParams>
+
**** '''CostLastUpdate''' – дата последнего изменения (добавления, удаления) цен для услуги в этом СПО
                              <ParameterPair Key="ContractPrKey">
+
 
                                <Value xsi:type="xsd:int">0</Value>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                              </ParameterPair>
+
<div class="mw-collapsible-content">
                          </AdditionalParams>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <Tourists/>
+
Вызов метода GetSpoList
                          <DetailNetto/>
+
<syntaxhighlight lang="java" enclose="div">
                          <DetailBrutto/>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <Notes/>
+
  <soapenv:Header/>
                          <Name>Ужин1</Name>
+
  <soapenv:Body>
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
      <meg:GetSpoList>
                          <StartDay>0</StartDay>
+
        <!--Optional:-->
                          <Duration>1</Duration>
+
        <meg:guid>16f4e0ca-725a-4ffe-8a5e-c41d16ef1b01</meg:guid>
                          <RateBrutto/>
+
        <!--Optional:-->
                          <Brutto>20</Brutto>
+
        <meg:request SvKey="1" PublicationDateBegin="2021-08-01" PublicationDateEnd="2021-08-04"/>
                          <RateNetto/>
+
      </meg:GetSpoList>
                          <Netto>0</Netto>
+
  </soapenv:Body>
                          <ServiceClassID>70</ServiceClassID>
+
</soapenv:Envelope>
                          <TouristCount>0</TouristCount>
+
</syntaxhighlight>
                          <ID>-5</ID>
+
Возвращаемый результат метода GetSpoList
                          <CityKey>0</CityKey>
+
<syntaxhighlight lang="java" enclose="div">
                          <IsPackage>false</IsPackage>
+
<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">
                          <Code>586</Code>
+
  <soap:Body>
                          <HasDuration>false</HasDuration>
+
      <GetSpoListResponse xmlns="http://www.megatec.ru/">
                        </anyType>
+
        <GetSpoListResult Message="Ok">
                        <anyType xsi:type="ExtraService">
+
            <Data>
                          <ExternalID>0</ExternalID>
+
              <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">
                          <Price>20</Price>
+
                  <COLinkServices>
                          <NMen>0</NMen>
+
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                          <PartnerID>0</PartnerID>
+
                  </COLinkServices>
                          <Quota>NotChecked</Quota>
+
                  <XYRules/>
                          <PacketKey>0</PacketKey>
+
                  <COServices>
                          <AdditionalParams>
+
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                              <ParameterPair Key="ContractPrKey">
+
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                                <Value xsi:type="xsd:int">0</Value>
+
                  </COServices>
                              </ParameterPair>
+
              </SPOInfo>
                          </AdditionalParams>
+
              <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">
                          <Tourists/>
+
                  <COLinkServices>
                          <DetailNetto/>
+
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                          <DetailBrutto/>
+
                  </COLinkServices>
                          <Notes/>
+
                  <XYRules>
                          <Name>test q</Name>
+
                    <XYRule ExcludeBy="0" Sign="-" XFrom="2" XTo="7" Y="1"/>
                          <StartDate>2021-12-10T00:00:00</StartDate>
+
                  </XYRules>
                          <StartDay>0</StartDay>
+
                  <COServices>
                          <Duration>1</Duration>
+
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                          <RateBrutto/>
+
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                          <Brutto>20</Brutto>
+
                  </COServices>
                          <RateNetto/>
+
              </SPOInfo>
                          <Netto>0</Netto>
+
              <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">
                          <ServiceClassID>28</ServiceClassID>
+
                  <COLinkServices>
                          <TouristCount>0</TouristCount>
+
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
                          <ID>-6</ID>
+
                  </COLinkServices>
                          <CityKey>0</CityKey>
+
                  <XYRules>
                          <IsPackage>false</IsPackage>
+
                    <XYRule ExcludeBy="0" Sign="-" XFrom="8" XTo="14" Y="2"/>
                          <Code>635</Code>
+
                  </XYRules>
                          <HasDuration>false</HasDuration>
+
                  <COServices>
                        </anyType>
+
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
                        <anyType xsi:type="ExtraService">
+
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
                          <ExternalID>0</ExternalID>
+
                  </COServices>
                          <Price>40</Price>
+
              </SPOInfo>
                          <NMen>0</NMen>
+
            </Data>
                          <PartnerID>0</PartnerID>
+
        </GetSpoListResult>
                          <Quota>NotChecked</Quota>
+
      </GetSpoListResponse>
                          <PacketKey>0</PacketKey>
+
  </soap:Body>
                          <AdditionalParams>
+
</soap:Envelope>
                              <ParameterPair Key="ContractPrKey">
+
</syntaxhighlight>
                                <Value xsi:type="xsd:int">0</Value>
+
</TD></TR></TABLE>
                              </ParameterPair>
+
</div></div><br />
                          </AdditionalParams>
+
 
                          <Tourists/>
+
===GetCosts (Получение брутто цены по параметрам запроса)===
                          <DetailNetto/>
+
Метод возвращает брутто цены по параметрам запроса.<br />
                          <DetailBrutto/>
+
Принимаемые параметры запроса ( * – обязательный):
                          <Notes/>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                          <Name>Hardlink</Name>
+
* '''Request''' – объект с параметрами запроса
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
** '''SpoId *''' – ключ SPO ((Параметр CO_Id таблицы CostOffers). Список SPO возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoList (Получение списка СПО согласно запросу)|GetSpoList]])<br />
                          <StartDay>0</StartDay>
+
** '''TariffId *''' – ключ тарифа ((В таблице цен соответствует параметру CS_CVId). При установке "-1" подбираются все тарифы)
                          <Duration>0</Duration>
+
** '''SvKey *''' – тип услуги(1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис)
                          <RateBrutto/>
+
** '''Code *''' – ключ услуги (Для отеля это ключ из таблицы Partners. Для всех остальных  услуг – это ключ SL_KEY из таблицы ServiceList. Так же эти ключи можно получить методами веб сервиса: GetServiceList, GetExcursions, GetTransfers, GetHotels)
                          <Brutto>40</Brutto>
+
** '''PriceType''' – тип цены проживания (0 – за человека, 1 – за комнату, 2 – все). Если не указан, то запрашивается 2.
                          <RateNetto/>
+
** '''DownloadOnlyActualCosts *''' – закачка только актуальных цен (1 – получать актуальные, 0 – получать все) 
                          <Netto>0</Netto>
+
** '''DownloadUpdateCostsFromDate *''' – закачивать цены только с выбранной даты (1 – настройка включена, 0 – получаем все)
                          <ServiceClassID>99</ServiceClassID>
+
** '''CostsUpdateDateBegin *''' – дата, с которой закачивать цены (используется при установке параметра DownloadUpdateCostsFromDate)
                          <TouristCount>0</TouristCount>
+
Возвращаемый результат:<br />
                          <ID>-7</ID>
+
* '''GetCostsResult''' – результаты выдачи
                          <Status>
+
** '''CostInfo''' – массив данных
                              <Name>Hardlink</Name>
+
*** '''Id''' – ключ цены
                              <ID>0</ID>
+
*** '''SvKey''' – ключ типа услуги
                              <Description/>
+
*** '''SpoId''' – идентификатор SPO
                              <NameLat/>
+
*** '''Code''' – ключ услуги
                              <Code/>
+
*** '''AgeFrom''' – возраст «с»
                              <CodeLat/>
+
*** '''AgeTo''' – возраст «по»
                              <Unicode/>
+
*** '''CreateDate''' – дата создания цены
                          </Status>
+
*** '''CheckInDateBegin''' – дата заезда «с»
                          <CityKey>80</CityKey>
+
*** '''CheckInDateEnd''' – дата заезда «до»
                          <IsPackage>false</IsPackage>
+
*** '''CheckOutDateBegin''' – дата выезда «с»
                          <Code>699</Code>
+
*** '''CheckOutDateEnd''' – дата выезда «до»
                          <HasDuration>false</HasDuration>
+
*** '''DateBegin''' – дата действия цены «с»
                        </anyType>
+
*** '''DateEnd''' – дата действия цены «до»
                        <anyType xsi:type="ExtraService">
+
*** '''UpdateDate''' – последняя дата обновления цены
                          <ExternalID>0</ExternalID>
+
*** '''Price''' – значение цены
                          <Price>48</Price>
+
*** '''Rate''' – валюта
                          <NMen>0</NMen>
+
*** '''SubCode1''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
                          <PartnerID>0</PartnerID>
+
*** '''SubCode2''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
                          <Quota>NotChecked</Quota>
+
*** '''SubCode3''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
                          <PacketKey>0</PacketKey>
+
*** '''SubCode4''' – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
                          <AdditionalParams>
+
*** '''TariffId''' – ключ тарифа
                              <ParameterPair Key="ContractPrKey">
+
*** '''Type''' – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
                                <Value xsi:type="xsd:int">0</Value>
+
*** '''CountryId''' – ключ страны услуги
                              </ParameterPair>
+
*** '''CityFromId''' – ключ города услуги
                          </AdditionalParams>
+
*** '''CityToId''' – ключ города услуги «куда» (для трансферов)
                          <Tourists/>
+
*** '''TouroperatorId''' – ключ туроператора
                          <DetailNetto/>
+
 
                          <DetailBrutto/>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                          <Notes/>
+
<div class="mw-collapsible-content">
                          <Name>Hardlink</Name>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
Вызов метода GetCosts
                          <StartDay>0</StartDay>
+
<syntaxhighlight lang="java" enclose="div">
                          <Duration>0</Duration>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <RateBrutto/>
+
  <soapenv:Header/>
                          <Brutto>48</Brutto>
+
  <soapenv:Body>
                          <RateNetto/>
+
      <meg:GetCosts>
                          <Netto>0</Netto>
+
        <!--Optional:-->
                          <ServiceClassID>99</ServiceClassID>
+
        <meg:guid>5932b280-c780-4c84-a83a-52b25bc22615</meg:guid>
                          <TouristCount>0</TouristCount>
+
        <!--Optional:-->
                          <ID>-8</ID>
+
        <meg:request SpoId="2049" TariffId="-1" SvKey="1" Code="2945" PriceType="2" DownloadOnlyActualCosts="0" DownloadUpdateCostsFromDate="0" CostsUpdateDateBegin="2021-08-04"/>
                          <Status>
+
      </meg:GetCosts>
                              <Name>Hardlink</Name>
+
  </soapenv:Body>
                              <ID>0</ID>
+
</soapenv:Envelope>
                              <Description/>
+
</syntaxhighlight>
                              <NameLat/>
+
Возвращаемый результат метода GetCosts
                              <Code/>
+
<syntaxhighlight lang="java" enclose="div">
                              <CodeLat/>
+
<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">
                              <Unicode/>
+
  <soap:Body>
                          </Status>
+
      <GetCostsResponse xmlns="http://www.megatec.ru/">
                          <CityKey>80</CityKey>
+
        <GetCostsResult Message="Ok">
                          <IsPackage>false</IsPackage>
+
            <Data>
                          <Code>699</Code>
+
              <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"/>
                          <HasDuration>false</HasDuration>
+
              <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"/>
                        </anyType>
+
          </Data>
                        <anyType xsi:type="ExtraService">
+
        </GetCostsResult>
                          <ExternalID>0</ExternalID>
+
      </GetCostsResponse>
                          <Price>20</Price>
+
  </soap:Body>
                          <NMen>0</NMen>
+
</soap:Envelope>
                          <PartnerID>0</PartnerID>
+
</syntaxhighlight>
                          <Quota>NotChecked</Quota>
+
</TD></TR></TABLE>
                          <PacketKey>0</PacketKey>
+
</div></div><br />
                          <AdditionalParams>
+
 
                              <ParameterPair Key="ContractPrKey">
+
===SpoPriceMarkDownloaded (Получение информации о доступности конкретного SPO для продажи)===
                                <Value xsi:type="xsd:int">0</Value>
+
Метод возвращает информацию о доступности конкретного SPO для продажи.<br />
                              </ParameterPair>
+
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
                          </AdditionalParams>
+
Принимаемые параметры запроса (* – обязательный):<br />
                          <Tourists/>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                          <DetailNetto/>
+
* '''SpoKey *''' – ключ SPO (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoLList (получение списка SPO согласно запросу)|GetSpoLList]])
                          <DetailBrutto/>
+
* '''VariantOfCost''' – вариант цены
                          <Notes/>
+
* '''SvKey''' – ключ класса услуги
                          <Name>Ужин1</Name>
+
* '''Code''' – код услуги
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
Возвращаемый результат:<br />
                          <StartDay>0</StartDay>
+
* '''SpoPriceMarkDownloadedResult''' – результат поиска
                          <Duration>1</Duration>
+
** '''true''' – SPO доступно
                          <RateBrutto/>
+
** '''false''' – SPO недоступно
                          <Brutto>20</Brutto>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                          <RateNetto/>
+
<div class="mw-collapsible-content">
                          <Netto>0</Netto>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <ServiceClassID>70</ServiceClassID>
+
Вызов метода SpoPriceMarkDownloaded
                          <TouristCount>0</TouristCount>
+
<syntaxhighlight lang="java" enclose="div">
                          <ID>-9</ID>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <CityKey>0</CityKey>
+
  <soapenv:Header/>
                          <IsPackage>false</IsPackage>
+
  <soapenv:Body>
                          <Code>586</Code>
+
      <meg:SpoPriceMarkDownloaded>
                          <HasDuration>false</HasDuration>
+
        <!--Optional:-->
                        </anyType>
+
        <meg:guid>016e9dd9-802e-46fb-bb79-7c44a31d6560</meg:guid>
                        <anyType xsi:type="ExtraService">
+
        <meg:spoKey>2049</meg:spoKey>
                          <ExternalID>0</ExternalID>
+
        <meg:variantOfCost>0</meg:variantOfCost>
                          <Price>20</Price>
+
        <meg:svKey>0</meg:svKey>
                          <NMen>0</NMen>
+
        <meg:code>0</meg:code>
                          <PartnerID>0</PartnerID>
+
      </meg:SpoPriceMarkDownloaded>
                          <Quota>NotChecked</Quota>
+
  </soapenv:Body>
                          <PacketKey>0</PacketKey>
+
</soapenv:Envelope>
                          <AdditionalParams>
+
</syntaxhighlight>
                              <ParameterPair Key="ContractPrKey">
+
Возвращаемый результат метода SpoPriceMarkDownloaded
                                <Value xsi:type="xsd:int">0</Value>
+
<syntaxhighlight lang="java" enclose="div">
                              </ParameterPair>
+
<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">
                          </AdditionalParams>
+
  <soap:Body>
                          <Tourists/>
+
      <SpoPriceMarkDownloadedResponse xmlns="http://www.megatec.ru/">
                          <DetailNetto/>
+
        <SpoPriceMarkDownloadedResult>true</SpoPriceMarkDownloadedResult>
                          <DetailBrutto/>
+
      </SpoPriceMarkDownloadedResponse>
                          <Notes/>
+
  </soap:Body>
                          <Name>test q</Name>
+
</soap:Envelope>
                          <StartDate>2021-12-10T00:00:00</StartDate>
+
</syntaxhighlight>
                          <StartDay>0</StartDay>
+
</TD></TR></TABLE>
                          <Duration>1</Duration>
+
</div></div><br />
                          <RateBrutto/>
+
 
                          <Brutto>20</Brutto>
+
==Методы работы с услугами==
                          <RateNetto/>
+
===GetHotels (Получение списка отелей по параметрам)===
                          <Netto>0</Netto>
+
Метод возвращает список отелей по параметрам.<br />
                          <ServiceClassID>28</ServiceClassID>
+
Принимаемые параметры запроса ( * – обязательный):
                          <TouristCount>0</TouristCount>
+
* '''СountryKey *''' – ключ страны (-1 для всех)
                          <ID>-10</ID>
+
* '''RegionKey *''' – ключ региона (-1 для всех)
                          <CityKey>0</CityKey>
+
* '''СityKey *''' – ключ города (-1 для всех)
                          <IsPackage>false</IsPackage>
+
Возвращаемый результат:<br />
                          <Code>635</Code>
+
* '''GetHotelsResult''' – результаты выдачи
                          <HasDuration>false</HasDuration>
+
* '''Hotel''' – отель
                        </anyType>
+
** '''Name''' – название отеля
                        <anyType xsi:type="ExtraService">
+
** '''ID''' – идентификатор отеля
                          <ExternalID>0</ExternalID>
+
** '''Description''' – описание отеля
                          <Price>40</Price>
+
** '''NameLat''' – название отеля латиницей
                          <NMen>0</NMen>
+
** '''Code''' – код отеля
                          <PartnerID>0</PartnerID>
+
** '''CodeLat''' – код отеля латиницей
                          <Quota>NotChecked</Quota>
+
** '''Unicode''' – код ISO отеля
                          <PacketKey>0</PacketKey>
+
** '''City''' – город отеля
                          <AdditionalParams>
+
*** '''Name''' – название города
                              <ParameterPair Key="ContractPrKey">
+
*** '''ID''' – идентификатор города
                                <Value xsi:type="xsd:int">0</Value>
+
*** '''Description''' – описание города
                              </ParameterPair>
+
*** '''NameLat''' – название города латиницей
                          </AdditionalParams>
+
*** '''Code''' – код города
                          <Tourists/>
+
*** '''CodeLat''' – код города латиницей
                          <DetailNetto/>
+
*** '''Unicode''' – код ISO города
                          <DetailBrutto/>
+
*** '''CountryID''' – идентификатор страны отеля
                          <Notes/>
+
*** '''RegionID''' – идентификатор региона отеля
                          <Name>тестовый ужин на 100921</Name>
+
** '''RegionID''' – идентификатор региона отеля
                          <StartDate>2021-12-05T00:00:00</StartDate>
+
** '''PriceType''' – тип цены (PerPerson = 0, PerRoom = 1, All = 2, None = 1000)
                          <StartDay>0</StartDay>
+
** '''CountCosts''' – количество цен на отель
                          <Duration>1</Duration>
+
** '''CityId''' – идентификатор города отеля
                          <RateBrutto/>
+
** '''HotelCategoryID''' – идентификатор категории отеля
                          <Brutto>40</Brutto>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                          <RateNetto/>
+
<div class="mw-collapsible-content">
                          <Netto>0</Netto>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <ServiceClassID>70</ServiceClassID>
+
Вызов метода GetHotels
                          <TouristCount>0</TouristCount>
+
<syntaxhighlight lang="java" enclose="div">
                          <ID>-11</ID>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <CityKey>0</CityKey>
+
  <soapenv:Header/>
                          <IsPackage>false</IsPackage>
+
  <soapenv:Body>
                          <Code>704</Code>
+
      <meg:GetHotels>
                          <HasDuration>false</HasDuration>
+
        <meg:countryKey>10</meg:countryKey>
                        </anyType>
+
        <meg:regionKey>10</meg:regionKey>
                        <anyType xsi:type="ExtraService">
+
        <meg:cityKey>10</meg:cityKey>
                          <ExternalID>0</ExternalID>
+
      </meg:GetHotels>
                          <Price>20</Price>
+
  </soapenv:Body>
                          <NMen>0</NMen>
+
</soapenv:Envelope>
                          <PartnerID>0</PartnerID>
+
</syntaxhighlight>
                          <Quota>NotChecked</Quota>
+
Возвращаемый результат метода GetHotels
                          <PacketKey>0</PacketKey>
+
<syntaxhighlight lang="java" enclose="div">
                          <AdditionalParams>
+
<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">
                              <ParameterPair Key="ContractPrKey">
+
  <soap:Body>
                                <Value xsi:type="xsd:int">0</Value>
+
      <GetHotelsResponse xmlns="http://www.megatec.ru/">
                              </ParameterPair>
+
        <GetHotelsResult>
                          </AdditionalParams>
+
            <Hotel>
                          <Tourists/>
+
              <Name>Aegean Blue Hotel</Name>
                          <DetailNetto/>
+
              <ID>2254</ID>
                          <DetailBrutto/>
+
              <Description>3 stars (B)  (\\Nea KallikratiaABBA)</Description>
                          <Notes/>
+
              <NameLat/>
                          <Name>_Прачечная, химчистка</Name>
+
              <Code>AGN</Code>
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
              <CodeLat/>
                          <StartDay>0</StartDay>
+
              <Unicode/>
                          <Duration>1</Duration>
+
              <City>
                          <RateBrutto/>
+
                  <Name>Nea KallikratiaABBA</Name>
                          <Brutto>20</Brutto>
+
                  <ID>10</ID>
                          <RateNetto/>
+
                  <Description/>
                          <Netto>0</Netto>
+
                  <NameLat/>
                          <ServiceClassID>78</ServiceClassID>
+
                  <Code>NKL</Code>
                          <TouristCount>0</TouristCount>
+
                  <CodeLat/>
                          <ID>-12</ID>
+
                  <Unicode/>
                          <CityKey>0</CityKey>
+
                  <CountryID>4</CountryID>
                          <IsPackage>false</IsPackage>
+
                  <RegionID>6</RegionID>
                          <Code>639</Code>
+
              </City>
                          <HasDuration>false</HasDuration>
+
              <RegionID>6</RegionID>
                        </anyType>
+
              <PriceType>None</PriceType>
                        <anyType xsi:type="ExtraService">
+
              <CountCosts>0</CountCosts>
                          <ExternalID>0</ExternalID>
+
              <CityID>10</CityID>
                          <Price>40</Price>
+
              <HotelCategoryID>6</HotelCategoryID>
                          <NMen>0</NMen>
+
            </Hotel>
                          <PartnerID>0</PartnerID>
+
            <Hotel>
                          <Quota>NotChecked</Quota>
+
              <Name>Alkyonis Hotel</Name>
                          <PacketKey>0</PacketKey>
+
              <ID>1015</ID>
                          <AdditionalParams>
+
              <Description>2+ stars (C Sup)  (\\Nea KallikratiaABBA)</Description>
                              <ParameterPair Key="ContractPrKey">
+
              <NameLat/>
                                <Value xsi:type="xsd:int">0</Value>
+
              <Code>ALK</Code>
                              </ParameterPair>
+
              <CodeLat/>
                          </AdditionalParams>
+
              <Unicode/>
                          <Tourists/>
+
              <City>
                          <DetailNetto/>
+
                  <Name>Nea KallikratiaABBA</Name>
                          <DetailBrutto/>
+
                  <ID>10</ID>
                          <Notes/>
+
                  <Description/>
                          <Name>тестовый ужин на 100921</Name>
+
                  <NameLat/>
                          <StartDate>2021-12-05T00:00:00</StartDate>
+
                  <Code>NKL</Code>
                          <StartDay>0</StartDay>
+
                  <CodeLat/>
                          <Duration>1</Duration>
+
                  <Unicode/>
                          <RateBrutto/>
+
                  <CountryID>4</CountryID>
                          <Brutto>40</Brutto>
+
                  <RegionID>6</RegionID>
                          <RateNetto/>
+
              </City>
                          <Netto>0</Netto>
+
              <RegionID>6</RegionID>
                          <ServiceClassID>70</ServiceClassID>
+
              <PriceType>None</PriceType>
                          <TouristCount>0</TouristCount>
+
              <CountCosts>0</CountCosts>
                          <ID>-13</ID>
+
              <CityID>10</CityID>
                          <CityKey>0</CityKey>
+
              <HotelCategoryID>7</HotelCategoryID>
                          <IsPackage>false</IsPackage>
+
            </Hotel>
                          <Code>704</Code>
+
          </GetHotelsResult>
                          <HasDuration>false</HasDuration>
+
      </GetHotelsResponse>
                        </anyType>
+
  </soap:Body>
                        <anyType xsi:type="ExtraService">
+
</soap:Envelope>
                          <ExternalID>0</ExternalID>
+
</syntaxhighlight>
                          <Price>20</Price>
+
</TD></TR></TABLE>
                          <NMen>0</NMen>
+
</div></div><br />
                          <PartnerID>0</PartnerID>
+
 
                          <Quota>NotChecked</Quota>
+
===GetTransfers (Получение списка трансферов по параметрам)===
                          <PacketKey>0</PacketKey>
+
Метод возвращает список трансферов по параметрам.<br />
                          <AdditionalParams>
+
Принимаемые параметры запроса ( * – обязательный):
                              <ParameterPair Key="ContractPrKey">
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                                <Value xsi:type="xsd:int">0</Value>
+
* '''Request''' – объект с параметрами запроса
                              </ParameterPair>
+
** '''СountryKey *''' – ключ страны (-1 для всех)
                          </AdditionalParams>
+
** '''СityKey *''' – ключ города (-1 для всех)
                          <Tourists/>
+
** '''RegionKey *''' – ключ региона (-1 для всех)
                          <DetailNetto/>
+
** '''TypeKey *''' – ключ типа трансфера (-1 для всех)
                          <DetailBrutto/>
+
Возвращаемый результат:<br />
                          <Notes/>
+
* '''GetTransferResult''' – результаты выдачи
                          <Name>_Прачечная, химчистка</Name>
+
** '''TransferDirectionInfo''' – массив данных
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
*** '''ID''' – идентификатор трансфера
                          <StartDay>0</StartDay>
+
*** '''Name''' – название
                          <Duration>1</Duration>
+
*** '''TransferTypeID''' – ключ типа трансфера
                          <RateBrutto/>
+
*** '''TransferTypeName''' – название типа трансфера
                          <Brutto>20</Brutto>
+
*** '''CityFromID''' – идентификатор города откуда
                          <RateNetto/>
+
*** '''CityFromName''' – название города откуда
                          <Netto>0</Netto>
+
*** '''CityToID''' – идентификатор города куда
                          <ServiceClassID>78</ServiceClassID>
+
*** '''CityToName''' – название города куда
                          <TouristCount>0</TouristCount>
+
*** '''PointFromID''' – идентификатор точки откуда
                          <ID>-14</ID>
+
*** '''PointFromName''' – название точки откуда
                          <CityKey>0</CityKey>
+
*** '''PointToID''' – идентификатор точки куда
                          <IsPackage>false</IsPackage>
+
*** '''PointToName''' – название точки куда
                          <Code>639</Code>
+
 
                          <HasDuration>false</HasDuration>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                        </anyType>
+
<div class="mw-collapsible-content">
                        <anyType xsi:type="ExtraService">
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <ExternalID>0</ExternalID>
+
Вызов метода GetTransfers
                          <Price>20</Price>
+
<syntaxhighlight lang="java" enclose="div">
                          <NMen>0</NMen>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <PartnerID>0</PartnerID>
+
  <soapenv:Header/>
                          <Quota>NotChecked</Quota>
+
  <soapenv:Body>
                          <PacketKey>0</PacketKey>
+
      <meg:GetTransfers>
                          <AdditionalParams>
+
        <!--Optional:-->
                              <ParameterPair Key="ContractPrKey">
+
        <meg:guid>699cbbac-6acc-4339-9d3c-2a231357d0c1</meg:guid>
                                <Value xsi:type="xsd:int">0</Value>
+
        <!--Optional:-->
                              </ParameterPair>
+
        <meg:request>
                          </AdditionalParams>
+
            <meg:CountryKey>10</meg:CountryKey>
                          <Tourists/>
+
            <meg:CityKey>10</meg:CityKey>
                          <DetailNetto/>
+
            <meg:RegionKey>10</meg:RegionKey>
                          <DetailBrutto/>
+
            <meg:TypeKey>1</meg:TypeKey>
                          <Notes/>
+
        </meg:request>
                          <Name>Ужин1</Name>
+
      </meg:GetTransfers>
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
  </soapenv:Body>
                          <StartDay>0</StartDay>
+
</soapenv:Envelope>
                          <Duration>1</Duration>
+
</syntaxhighlight>
                          <RateBrutto/>
+
Возвращаемый результат метода GetTransfers
                          <Brutto>20</Brutto>
+
<syntaxhighlight lang="java" enclose="div">
                          <RateNetto/>
+
<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">
                          <Netto>0</Netto>
+
  <soap:Body>
                          <ServiceClassID>70</ServiceClassID>
+
      <GetTransfersResponse xmlns="http://www.megatec.ru/">
                          <TouristCount>0</TouristCount>
+
        <GetTransfersResult Message="Ok">
                          <ID>-15</ID>
+
            <Data>
                          <CityKey>0</CityKey>
+
              <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"/>
                          <IsPackage>false</IsPackage>
+
              <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"/>
                          <Code>586</Code>
+
              <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"/>
                          <HasDuration>false</HasDuration>
+
            </Data>
                        </anyType>
+
        </GetTransfersResult>
                        <anyType xsi:type="ExtraService">
+
      </GetTransfersResponse>
                          <ExternalID>0</ExternalID>
+
  </soap:Body>
                          <Price>20</Price>
+
</soap:Envelope>
                          <NMen>0</NMen>
+
</syntaxhighlight>
                          <PartnerID>0</PartnerID>
+
</TD></TR></TABLE>
                          <Quota>NotChecked</Quota>
+
</div></div><br />
                          <PacketKey>0</PacketKey>
+
 
                          <AdditionalParams>
+
===GetExcursions (Получение списка экскурсий по параметрам)===
                              <ParameterPair Key="ContractPrKey">
+
Метод возвращает экскурсии по параметрам.<br />
                                <Value xsi:type="xsd:int">0</Value>
+
Принимаемые параметры запроса ( * – обязательный):
                              </ParameterPair>
+
* '''СountryKey *''' – ключ страны (-1 для всех)
                          </AdditionalParams>
+
* '''RegionKey *''' – ключ региона (-1 для всех)
                          <Tourists/>
+
* '''СityKey *''' – ключ города (-1 для всех)
                          <DetailNetto/>
+
Возвращаемый результат:<br />
                          <DetailBrutto/>
+
* '''GetExcursionsResult''' – результаты выдачи
                          <Notes/>
+
** '''Excursion''' – массив данных
                          <Name>test q</Name>
+
*** '''Name''' – название экскурсии
                          <StartDate>2021-12-10T00:00:00</StartDate>
+
*** '''ID''' – идентификатор экскурсии
                          <StartDay>0</StartDay>
+
*** '''Description''' – описание экскурсии
                          <Duration>1</Duration>
+
*** '''NameLat''' – название экскурсии латиницей
                          <RateBrutto/>
+
*** '''Code''' – код экскурсии
                          <Brutto>20</Brutto>
+
*** '''CodeLat''' – код экскурсии латиницей
                          <RateNetto/>
+
*** '''Unicode''' – код ISO экскурсии
                          <Netto>0</Netto>
+
*** '''CityID''' – идентификатор города
                          <ServiceClassID>28</ServiceClassID>
+
*** '''RegionID''' – идентификатор региона
                          <TouristCount>0</TouristCount>
+
 
                          <ID>-16</ID>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                          <CityKey>0</CityKey>
+
<div class="mw-collapsible-content">
                          <IsPackage>false</IsPackage>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <Code>635</Code>
+
Вызов метода GetExcursions
                          <HasDuration>false</HasDuration>
+
<syntaxhighlight lang="java" enclose="div">
                        </anyType>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                        <anyType xsi:type="ExtraService">
+
  <soapenv:Header/>
                          <ExternalID>0</ExternalID>
+
  <soapenv:Body>
                          <Price>40</Price>
+
      <meg:GetExcursions>
                          <NMen>0</NMen>
+
        <meg:countryKey>5</meg:countryKey>
                          <PartnerID>0</PartnerID>
+
        <meg:regionKey>5</meg:regionKey>
                          <Quota>NotChecked</Quota>
+
        <meg:cityKey>5</meg:cityKey>
                          <PacketKey>0</PacketKey>
+
      </meg:GetExcursions>
                          <AdditionalParams>
+
  </soapenv:Body>
                              <ParameterPair Key="ContractPrKey">
+
</soapenv:Envelope>
                                <Value xsi:type="xsd:int">0</Value>
+
</syntaxhighlight>
                              </ParameterPair>
+
Возвращаемый результат метода GetExcursions
                          </AdditionalParams>
+
<syntaxhighlight lang="java" enclose="div">
                          <Tourists/>
+
<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">
                          <DetailNetto/>
+
  <soap:Body>
                          <DetailBrutto/>
+
      <GetExcursionsResponse xmlns="http://www.megatec.ru/">
                          <Notes/>
+
        <GetExcursionsResult>
                          <Name>тестовый ужин на 100921</Name>
+
            <Excursion>
                          <StartDate>2021-12-05T00:00:00</StartDate>
+
              <Name>Exc21_01_2020</Name>
                          <StartDay>0</StartDay>
+
              <ID>670</ID>
                          <Duration>1</Duration>
+
              <Description/>
                          <RateBrutto/>
+
              <NameLat>Exc21_01_2020</NameLat>
                          <Brutto>40</Brutto>
+
              <Code/>
                          <RateNetto/>
+
              <CodeLat/>
                          <Netto>0</Netto>
+
              <Unicode/>
                          <ServiceClassID>70</ServiceClassID>
+
              <CityID>5</CityID>
                          <TouristCount>0</TouristCount>
+
              <RegionID>16</RegionID>
                          <ID>-17</ID>
+
            </Excursion>
                          <CityKey>0</CityKey>
+
        </GetExcursionsResult>
                          <IsPackage>false</IsPackage>
+
      </GetExcursionsResponse>
                          <Code>704</Code>
+
  </soap:Body>
                          <HasDuration>false</HasDuration>
+
</soap:Envelope>
                        </anyType>
+
</soap:Envelope>
                        <anyType xsi:type="ExtraService">
+
</syntaxhighlight>
                          <ExternalID>0</ExternalID>
+
</TD></TR></TABLE>
                          <Price>20</Price>
+
</div></div><br />
                          <NMen>0</NMen>
+
 
                          <PartnerID>0</PartnerID>
+
===GetServiceList (Получение списка дополнительных услуг)===
                          <Quota>NotChecked</Quota>
+
Метод возвращает дополнительные услуги.<br />
                          <PacketKey>0</PacketKey>
+
Возвращаемый результат:<br />
                          <AdditionalParams>
+
* '''GetServiceListResult''' – результаты выдачи
                              <ParameterPair Key="ContractPrKey">
+
** '''ServiceList''' – массив данных
                                <Value xsi:type="xsd:int">0</Value>
+
*** '''AdditionalParams''' – дополнительные параметры
                              </ParameterPair>
+
**** '''Key''' – ключ
                          </AdditionalParams>
+
**** '''Value''' – значение
                          <Tourists/>
+
*** '''Name''' – название дополнительной услуги
                          <DetailNetto/>
+
*** '''ID''' – идентификатор дополнительной услуги
                          <DetailBrutto/>
+
*** '''NameLat''' – название дополнительной услуги латиницей
                          <Notes/>
+
*** '''Code''' – код дополнительной услуги
                          <Name>_Прачечная, химчистка</Name>
+
*** '''CodeLat''' – код дополнительной услуги латиницей
                          <StartDate>2021-12-01T00:00:00</StartDate>
+
*** '''Unicode''' – код ISO дополнительной услуги
                          <StartDay>0</StartDay>
+
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
                          <Duration>1</Duration>
+
*** '''CountryID''' – идентификатор страны дополнительной услуги
                          <RateBrutto/>
+
                          <Brutto>20</Brutto>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                          <RateNetto/>
+
<div class="mw-collapsible-content">
                          <Netto>0</Netto>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                          <ServiceClassID>78</ServiceClassID>
+
Вызов метода GetServiceList
                          <TouristCount>0</TouristCount>
+
<syntaxhighlight lang="java" enclose="div">
                          <ID>-18</ID>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                          <CityKey>0</CityKey>
+
  <soapenv:Header/>
                          <IsPackage>false</IsPackage>
+
  <soapenv:Body>
                          <Code>639</Code>
+
      <meg:GetServiceList/>
                          <HasDuration>false</HasDuration>
+
  </soapenv:Body>
                        </anyType>
+
</soapenv:Envelope>
                        <anyType xsi:type="ExtraService">
+
</syntaxhighlight>
                          <ExternalID>0</ExternalID>
+
Возвращаемый результат метода GetServiceList
                          <Price>40</Price>
+
<syntaxhighlight lang="java" enclose="div">
                          <NMen>0</NMen>
+
<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">
                          <PartnerID>0</PartnerID>
+
  <soap:Body>
                          <Quota>NotChecked</Quota>
+
      <GetServiceListResponse xmlns="http://www.megatec.ru/">
                          <PacketKey>0</PacketKey>
+
        <GetServiceListResult>
                          <AdditionalParams>
+
            <ServiceList>
                              <ParameterPair Key="ContractPrKey">
+
              <AdditionalParams>
                                <Value xsi:type="xsd:int">0</Value>
+
                  <ParameterPair Key="CountryKey">
                              </ParameterPair>
+
                    <Value xsi:type="xsd:int">0</Value>
                          </AdditionalParams>
+
                  </ParameterPair>
                          <Tourists/>
+
                  <ParameterPair Key="CityKey">
                          <DetailNetto/>
+
                    <Value xsi:type="xsd:int">0</Value>
                          <DetailBrutto/>
+
                  </ParameterPair>
                          <Notes/>
+
              </AdditionalParams>
                          <Name>тестовый ужин на 100921</Name>
+
              <Name>Extra service class\Cancellation penalty</Name>
                          <StartDate>2021-12-05T00:00:00</StartDate>
+
              <ID>10</ID>
                          <StartDay>0</StartDay>
+
              <NameLat/>
                          <Duration>1</Duration>
+
              <Code/>
                          <RateBrutto/>
+
              <CodeLat/>
                          <Brutto>40</Brutto>
+
              <Unicode/>
                          <RateNetto/>
+
              <ServiceClaseID>1</ServiceClaseID>
                          <Netto>0</Netto>
+
              <CountryID>0</CountryID>
                          <ServiceClassID>70</ServiceClassID>
+
            </ServiceList>
                          <TouristCount>0</TouristCount>
+
            <ServiceList>
                          <ID>-19</ID>
+
              <AdditionalParams>
                          <CityKey>0</CityKey>
+
                  <ParameterPair Key="CountryKey">
                          <IsPackage>false</IsPackage>
+
                    <Value xsi:type="xsd:int">0</Value>
                          <Code>704</Code>
+
                  </ParameterPair>
                          <HasDuration>false</HasDuration>
+
                  <ParameterPair Key="CityKey">
                        </anyType>
+
                    <Value xsi:type="xsd:int">0</Value>
                        <anyType xsi:type="ExtraService">
+
                  </ParameterPair>
                          <ExternalID>0</ExternalID>
+
              </AdditionalParams>
                          <Price>20</Price>
+
              <Name>Shop Tour\Shop Tour With Terms</Name>
                          <NMen>0</NMen>
+
              <ID>15</ID>
                          <PartnerID>0</PartnerID>
+
              <Description/>
                          <Quota>NotChecked</Quota>
+
              <NameLat/>
                          <PacketKey>0</PacketKey>
+
              <Code/>
                          <AdditionalParams>
+
              <CodeLat/>
                              <ParameterPair Key="ContractPrKey">
+
              <Unicode/>
                                <Value xsi:type="xsd:int">0</Value>
+
              <ServiceClaseID>4</ServiceClaseID>
                              </ParameterPair>
+
              <CountryID>0</CountryID>
                          </AdditionalParams>
+
             </ServiceList>
                          <Tourists/>
+
          </GetServiceListResult>
                          <DetailNetto/>
+
       </GetServiceListResponse>
                          <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>-20</ID>
 
                          <CityKey>0</CityKey>
 
                          <IsPackage>false</IsPackage>
 
                          <Code>639</Code>
 
                          <HasDuration>false</HasDuration>
 
                        </anyType>
 
                    </ArrayOfAnyType>
 
                  </AdditionalData>
 
                  <ResponseGuid>d4e2a82f-88ad-4700-b51f-606fd5bdc78a</ResponseGuid>
 
              </DataRequestResult>
 
             </Data>
 
        </SearchHotelServicesMinHotelResult>
 
       </SearchHotelServicesMinHotelResponse>
 
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 4376: Строка 4529:
 
</div></div><br />
 
</div></div><br />
  
===SearchActualCostCalculationVariant (Поиск возможных вариантов типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю)===
+
===GetExtraServices (Получение списка дополнительных услуг включая услуги типа AdHot)===
Метод выдает возможные варианты типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю.<br />
+
Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot.<br />
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
Принимаемые параметры запроса ( * – обязательный):<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''Request ''' – объект с параметрами запроса:
+
* '''Request''' – объект с параметрами запроса
** '''HotelId *''' – идентификатор отеля (обязательный параметр, значения 0 и -1 не допустимы)
+
** '''ServiceClassKey *''' – ключ класса дополнительной услуги (-1 для всех)
** '''DateFrom *''' – дата «с»
+
** '''СountryKey *''' – ключ страны дополнительной услуги (-1 для всех)
** '''DateTo *''' – дата «по»
+
** '''СityKey *''' – ключ города  для AdHot (-1 для всех)
** '''ValidateQuoata''' – проверять ли квоту (true – проверять, false – нет)
+
** '''HotelKey *''' – ключ отеля для AdHot (-1 для всех)
** '''QuotaTypes''' – фильтр по типу квоты (0 – запрос, 1 – квота, 2 – стоп)
+
** '''RegionKey *''' – ключ региона (-1 для всех)
** '''CheckAdHot''' – учитывать ли цены на обязательные адхоты (true учитывать, false нет)
+
** '''TypeKey *''' – тип AdHot (-1 для всех, 1 Manual, 2 HardLink, 3 – WithCosts)
** '''Rate *''' код валюты, в которой будет вестись расчет
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''SearchActualCostCalculationVariantResult''' – результат поиска
+
* '''GetExtraServicesResult''' – результаты выдачи
** '''CostCalculationVariant''' – массив данных
+
** '''ExtraServiceInfo''' – массив данных
*** '''RoomAccommodationId''' – ключ размещения
+
*** '''Id''' – идентификатор дополнительной услуги
*** '''RoomTypeId''' – ключ типа комнаты
+
*** '''Name''' – название дополнительной услуги
*** '''RoomCategoryId''' – ключ категории комнаты
+
*** '''Description''' – описание  дополнительной услуги
*** '''PansionId''' – ключ питания
+
*** '''ServiceClassId''' – идентификатор класса дополнительной услуги
*** '''RoomAccommodationName''' – код размещения
+
*** '''IsWeb''' – доступность дополнительной услуги в онлайн
*** '''RoomTypeName''' – код типа комнаты
+
*** '''DurationType''' – c продолжительностью или без (1 – с продолжительностью)
*** '''RoomCategoryName''' – код категории комнаты
+
*** '''UpdateDate''' – дата последнего обновления дополнительной услуги
*** '''PansionName''' – код питания
+
*** '''IsPartnerLikeHotel''' – партнер у AdHot  такой же как и у проживания
*** '''CountAdult''' – количество взрослых
+
*** '''LinkType''' – тип AdHot (1 - Manual, 2 – HardLink, 3 - WithCosts)
*** '''CountChildren''' – количество детей
+
*** '''IsAddHot''' – является ли услуга AdHot (true – является, false – не является)
*** '''Quota''' – значение квоты
+
*** '''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="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>
Вызов метода SearchActualCostCalculationVariant
+
Вызов метода GetExtraServices
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:SearchActualCostCalculationVariant>
+
       <meg:GetExtraServices>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>d1ac9f4d-20bd-43e0-b5b5-ad60c3cf0065</meg:guid>
+
         <meg:guid>e7f7b188-611b-4a01-bcff-b7117c222e1f</meg:guid>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:request HotelId="2940" DateFrom="2021-09-08" DateTo="2021-09-09" ValidateQuota="true" CheckAdHot="true" Rate="1" QuotaTypes="0"/>
+
         <meg:request>
       </meg:SearchActualCostCalculationVariant>
+
            <meg:ServiceClassKey>-1</meg:ServiceClassKey>
   </soapenv:Body>
+
            <meg:CountryKey>10</meg:CountryKey>
</soapenv:Envelope>
+
            <meg:CityKey>10</meg:CityKey>
 +
            <meg:HotelKey>10</meg:HotelKey>
 +
            <meg:TypeKey>-1</meg:TypeKey>
 +
        </meg:request>
 +
       </meg:GetExtraServices>
 +
   </soapenv:Body>
 +
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода SearchActualCostCalculationVariant
+
Возвращаемый результат метода GetExtraServices
 
<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>
       <SearchActualCostCalculationVariantResponse xmlns="http://www.megatec.ru/">
+
       <GetExtraServicesResponse xmlns="http://www.megatec.ru/">
         <SearchActualCostCalculationVariantResult Message="Ok">
+
         <GetExtraServicesResult Message="Ok">
 
             <Data>
 
             <Data>
               <CostCalculationVariant>
+
               <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">
                   <RoomAccommodationId>5558</RoomAccommodationId>
+
                   <CountryList/>
                   <RoomTypeId>3</RoomTypeId>
+
                   <CityList/>
                   <RoomCategoryId>20</RoomCategoryId>
+
                   <HotelList/>
                   <PansionId>3</PansionId>
+
                   <RoomTypeList/>
                   <RoomAccommodationName>2AD</RoomAccommodationName>
+
                   <RoomCategoryList/>
                   <RoomTypeName>Double Room</RoomTypeName>
+
                   <AccommodationList/>
                   <RoomCategoryName>Jakuzzi</RoomCategoryName>
+
                   <HotelLinkTypeList>
                   <PansionName>BB</PansionName>
+
                    <HotelLinkTypeEx HotelId="2830" ExtraServiceLinkType="1"/>
                  <CountAdult>2</CountAdult>
+
                   </HotelLinkTypeList>
                   <CountChildren>0</CountChildren>
+
              </ExtraServiceInfo>
                   <Quota>0</Quota>
+
              <ExtraServiceInfo Id="433" Name="111111111111111" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.937" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
              </CostCalculationVariant>
+
                  <CountryList/>
              <CostCalculationVariant>
+
                   <CityList/>
                   <RoomAccommodationId>5558</RoomAccommodationId>
+
                   <HotelList/>
                   <RoomTypeId>45</RoomTypeId>
+
                  <RoomTypeList/>
                  <RoomCategoryId>20</RoomCategoryId>
+
                  <RoomCategoryList/>
                   <PansionId>4</PansionId>
+
                   <AccommodationList/>
                   <RoomAccommodationName>2AD</RoomAccommodationName>
+
                   <HotelLinkTypeList/>
                   <RoomTypeName>Junior Suite</RoomTypeName>
+
              </ExtraServiceInfo>
                   <RoomCategoryName>Jakuzzi</RoomCategoryName>
+
              <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">
                   <PansionName>HB</PansionName>
+
                   <CountryList/>
                   <CountAdult>2</CountAdult>
+
                   <CityList/>
                   <CountChildren>0</CountChildren>
+
                   <HotelList/>
                   <Quota>0</Quota>
+
                   <RoomTypeList/>
               </CostCalculationVariant>
+
                   <RoomCategoryList/>
 +
                   <AccommodationList/>
 +
                   <HotelLinkTypeList>
 +
                    <HotelLinkTypeEx HotelId="2821" ExtraServiceLinkType="1"/>
 +
                   </HotelLinkTypeList>
 +
               </ExtraServiceInfo>
 
             </Data>
 
             </Data>
         </SearchActualCostCalculationVariantResult>
+
         </GetExtraServicesResult>
       </SearchActualCostCalculationVariantResponse>
+
       </GetExtraServicesResponse>
 
   </soap:Body>
 
   </soap:Body>
 +
</soap:Envelope>
 
</soap:Envelope>
 
</soap:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 4463: Строка 4635:
 
</div></div><br />
 
</div></div><br />
  
==Методы работы с ценами==
+
===GetExtraServiceWithPrices (Получение списка дополнительных услуг включая услуги типа AdHot с ценами)===
===GetSpoList (Получение списка SPO согласно запросу)===
+
Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot с ценами.<br />
Метод возвращает список SPO согласно запросу.<br />
+
Принимаемые параметры запроса ( * – обязательный):<br />
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
 
Принимаемые параметры запроса (* – обязательный):
 
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''Request''' – класс с параметрами запроса
+
* '''Request''' – объект с параметрами запроса
** '''SvKey *''' – ключ класса услуги (1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис, 0 или -1 не принимаются)
+
** '''HotelKey *''' – ключ отеля для AdHot (-1 для всех)
** '''PublicationDateBegin *''' – дата публикации SPO «с»
+
** '''DateFrom''' – дата действия от
** '''PublicationDateEnd *''' – дата публикации цены «по»
+
** '''DateTo''' – дата действия до
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''SPOInfo''' – результат поиска
+
* '''GetExtraServiceWithPricesResult Message="Ok">
** '''ResultTable''' – таблица с результатом
+
** '''CostInfo''' – массив данных
** '''Id''' – ключ SPO
+
*** '''Id''' – ключ цены
** '''Name''' – название SPO
+
*** '''SvKey''' – ключ типа услуги
** '''PeriodBeforeCheckIn''' – период до заезда
+
*** '''SpoId''' – идентификатор SPO
** '''SaleDateBegin''' – дата с которой возможно бронирование
+
*** '''Code''' – ключ услуги
** '''SaleDateEnd''' – дата до которой возможно бронирование
+
*** '''AgeFrom''' – возраст «с»
** '''Comment''' – описание SPO
+
*** '''AgeTo''' – возраст «по»
** '''CreateDate''' – дата создания
+
*** '''CreateDate''' – дата создания цены
** '''UpdateDate''' – дата обновления
+
*** '''CheckInDateBegin''' – дата заезда «с»
** '''SpoType''' – тип SPO (Ordinary – 0, Spo – 1)
+
*** '''CheckInDateEnd''' – дата заезда «до»
** '''SvKey''' – класс услуги
+
*** '''CheckOutDateBegin''' – дата выезда «с»
** '''COLinkServices''' – услуги SPO
+
*** '''CheckOutDateEnd''' – дата выезда «до»
*** '''COLinkService''' – конкретная услуга SPO
+
*** '''DateBegin''' – дата действия цены «с»
**** '''SvKey''' – ключ типа услуги
+
*** '''DateEnd''' – дата действия цены «до»
**** '''Code''' – ключ услуги
+
*** '''UpdateDate''' – последняя дата обновления цены
**** '''DurationMin''' – минимальная продолжительность
+
*** '''Price''' – значение цены
**** '''DurationMax''' – максимальная продолжительность
+
*** '''Rate''' – валюта
**** '''IsDisable''' – заблокирована ли услуга
+
*** '''SubCode1''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
**** '''DisableDate''' – дата блокировки
+
*** '''SubCode2''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
** '''COServices''' – информация о ценах на услуги в этом SPO
+
*** '''SubCode3''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
*** '''COService''' – информация о цене на конкретную услугу в этом SPO
+
*** '''SubCode4''' – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
**** '''Code''' – идентификатор услуги
+
*** '''TariffId''' – ключ тарифа
**** '''CostCount''' – количество цен для услуги в SPO
+
*** '''Type''' – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
**** '''CostLastUpdate''' – дата последнего изменения (добавления, удаления) цен для услуги в этом СПО
+
*** '''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="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>
Вызов метода GetSpoList
+
Вызов метода GetExtraServicesWithPrices
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetSpoList>
+
       <meg:GetExtraServiceWithPrices>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>16f4e0ca-725a-4ffe-8a5e-c41d16ef1b01</meg:guid>
+
         <meg:guid>c80b29df-4110-4769-85a5-99ef5def023c</meg:guid>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:request SvKey="1" PublicationDateBegin="2021-08-01" PublicationDateEnd="2021-08-04"/>
+
         <meg:request>
       </meg:GetSpoList>
+
            <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:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetSpoList
+
Возвращаемый результат метода GetExtraServicesWithPrices
 
<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" 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>
 
   <soap:Body>
       <GetSpoListResponse xmlns="http://www.megatec.ru/">
+
       <GetExtraServiceWithPricesResponse xmlns="http://www.megatec.ru/">
         <GetSpoListResult Message="Ok">
+
         <GetExtraServiceWithPricesResult Message="Ok" Count="15">
 
             <Data>
 
             <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">
+
               <CostInfoWithAdHotDescription Id="7795829" SvKey="5" SpoId="2047" Code="471" AgeFrom="0" AgeTo="0" CreateDate="2021-07-26T18:20:02.52"
                  <COLinkServices>
+
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="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"  
                  </COLinkServices>
+
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="6" CityFromId="80" CityToId="0" TouroperatorId="1035" AdHotName="bonus" LinkType="Manual"  
                  <XYRules/>
+
DurationType="0"/>
                  <COServices>
+
              <CostInfoWithAdHotDescription Id="7807924" SvKey="5" SpoId="2029" Code="694" AgeFrom="0" AgeTo="0" CreateDate="2022-12-09T14:24:52.333"  
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
+
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"  
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
+
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"  
                  </COServices>
+
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Сейф в номере" LinkType="Manual"  
              </SPOInfo>
+
DurationType="0"/>
              <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">
+
              <CostInfoWithAdHotDescription Id="7805052" SvKey="5" SpoId="2136" Code="716" AgeFrom="0" AgeTo="0" CreateDate="2022-01-05T17:16:53.75"  
                  <COLinkServices>
+
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"  
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="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"  
                  </COLinkServices>
+
SubCode3="0" SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Maska dinners" LinkType="Manual"
                  <XYRules>
+
DurationType="0"/>
                    <XYRule ExcludeBy="0" Sign="-" XFrom="2" XTo="7" Y="1"/>
+
              <CostInfoWithAdHotDescription Id="7809780" SvKey="5" SpoId="2604" Code="726" AgeFrom="0" AgeTo="0" CreateDate="2023-02-15T12:29:03.747"
                  </XYRules>
+
CheckInDateBegin="0001-01-01T00:00:00" CheckInDateEnd="0001-01-01T00:00:00" CheckOutDateBegin="0001-01-01T00:00:00" CheckOutDateEnd="0001-01-01T00:00:00"
                  <COServices>
+
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"
                    <COService Code="2945" CostCount="50" CostLastUpdate="2021-08-03T12:56:35.08"/>
+
SubCode4="0" TariffId="0" Type="0" CountryId="0" CityFromId="0" CityToId="0" TouroperatorId="1035" AdHotName="Такса (Тунис)" LinkType="Manual" DurationType="1"/>
                    <COService Code="2945" CostCount="4" CostLastUpdate="2021-08-03T17:47:22.58"/>
+
             </Data>
                  </COServices>
+
         </GetExtraServiceWithPricesResult>
              </SPOInfo>
+
       </GetExtraServiceWithPricesResponse>
              <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">
+
   </soap:Body>
                  <COLinkServices>
+
</soap:Envelope>
                    <COLinkService SvKey="1" Code="2945" DurationMin="0" DurationMax="0" IsDisable="false" DisableDate="0001-01-01T00:00:00"/>
+
</syntaxhighlight>
                  </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>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</div></div><br />
  
===GetCosts (Получение брутто цены по параметрам запроса)===
+
===CalculateSingleCost (Расчет стоимости услуги по ее параметрам стандартным механизмом расчета)===
Метод возвращает брутто цены по параметрам запроса.<br />
+
Метод рассчитывает стоимость услуги по ее параметрам стандартным механизмом расчета.<br />
 
Принимаемые параметры запроса ( * – обязательный):
 
Принимаемые параметры запроса ( * – обязательный):
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''Request''' – объект с параметрами запроса
+
* '''SvKey *''' – ключ типа услуги
** '''SpoId *''' – ключ SPO ((Параметр CO_Id таблицы CostOffers). Список SPO возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoList (Получение списка СПО согласно запросу)|GetSpoList]])<br />
+
* '''СountryKey *''' – ключ страны
** '''TariffId *''' – ключ тарифа ((В таблице цен соответствует параметру CS_CVId). При установке "-1" подбираются все тарифы)
+
* '''Сode *''' – ключ услуги
** '''SvKey *''' – тип услуги(1 проживание, 2 трансфер, 4 экскурсия, 5 экстрасервис)
+
* '''Subcode1 *''' – параметр цены в зависимости от типа услуги (для проживания ключ типа номера, для трансфера – TransferType)
** '''Code *''' – ключ услуги (Для отеля это ключ из таблицы Partners. Для всех остальных  услуг это ключ SL_KEY из таблицы ServiceList. Так же эти ключи можно получить методами веб сервиса: GetServiceList, GetExcursions, GetTransfers, GetHotels)
+
* '''Subcode2 *''' параметр цены в зависимости от типа услуги (для проживания ключ питания, для трансфера точка начала)
** '''PriceType *''' – тип цены проживания (0 за человека, 1 за комнату, 2 все)
+
* '''Subcode3 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания)
** '''DownloadOnlyActualCosts *''' – закачка только актуальных цен (1 получать актуальные, 0 получать все) 
+
* '''Subcode4 *''' – параметр цены в зависимости от типа услуги (для проживания – размещение)
** '''DownloadUpdateCostsFromDate *''' – закачивать цены только с выбранной даты (1 настройка включена, 0 получаем все)
+
* '''TourOperatorGroupKey *''' ключ группы туроператора
** '''CostsUpdateDateBegin *''' – дата, с которой закачивать цены (используется при установке параметра DownloadUpdateCostsFromDate)
+
* '''TourOperatorKey *''' ключ туроператора (продавца)
 +
* '''MrKey *''' – ключ рынка
 +
* '''FilialKey *''' – ключ филиала
 +
* '''TafiffKey *''' – ключ тарифа
 +
* '''Pax *''' – Pax по услуге
 +
* '''Ages *''' список с возрастами детей
 +
* '''CheckInDate *''' дата «с»
 +
* '''CheckOutDate *''' – дата «по»
 +
* '''CityKey *''' – ключ города
 +
* '''CityKeyTo *''' ключ города «куда»
 +
* '''Rate *''' код валюты
 +
* '''PricePerRoom *''' – за комнату или за человека
 +
* '''OnlyPublished *''' – учитывать только опубликованные цены
 +
* '''ServiceProviderKey *''' –  ключ поставщика услуги
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetCostsResult''' – результаты выдачи
+
* '''CalculateSingleCostResult''' – результаты выдачи
** '''CostInfo''' – массив данных
+
** '''Brutto''' – рассчитанная брутто цена
*** '''Id''' – ключ цены
+
** '''ProviderKey''' – ключ поставщика услуги
*** '''SvKey''' – ключ типа услуги
+
** '''IsCalcBrutto'''
*** '''SpoId''' – идентификатор SPO
+
** '''CancellationPolicies''' – Политика аннуляции
*** '''Code''' – ключ услуги
+
** '''PolicyKey''' – ключ политики
*** '''AgeFrom''' – возраст «с»
+
** '''DateFrom''' – дата "от"
*** '''AgeTo''' – возраст «по»
+
** '''DateTo''' – дата "до"
*** '''CreateDate''' – дата создания цены
+
** '''PenaltyValue''' – значение штрафа
*** '''CheckInDateBegin''' – дата заезда «с»
+
** '''IsPercent''' - процент, указывающий, что штраф в "%" (''true'') или в "ночах" (''false'')
*** '''CheckInDateEnd''' – дата заезда «до»
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
*** '''CheckOutDateBegin''' – дата выезда «с»
+
<div class="mw-collapsible-content">
*** '''CheckOutDateEnd''' – дата выезда «до»
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
*** '''DateBegin''' – дата действия цены «с»
+
Вызов метода CalculateSingleCost
*** '''DateEnd''' – дата действия цены «до»
+
<syntaxhighlight lang="java" enclose="div">
*** '''UpdateDate''' – последняя дата обновления цены
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
*** '''Price''' – значение цены
+
   <soapenv:Header/>
*** '''Rate''' – валюта
+
   <soapenv:Body>
*** '''SubCode1''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
+
       <meg:CalculateSingleCost>
*** '''SubCode2''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
+
        <!--Optional:-->
*** '''SubCode3''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
+
        <meg:guid>823b2df5-a3fe-4153-b43a-accfba1bf86c</meg:guid>
*** '''SubCode4''' – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
+
        <meg:svKey>1</meg:svKey>
*** '''TariffId''' – ключ тарифа
+
        <meg:countryKey>1</meg:countryKey>
*** '''Type''' – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
+
        <meg:code>1</meg:code>
*** '''CountryId''' – ключ страны услуги
+
        <meg:subcode1>1</meg:subcode1>
*** '''CityFromId''' – ключ города услуги
+
        <meg:subcode2>1</meg:subcode2>
*** '''CityToId''' – ключ города услуги «куда» (для трансферов)
+
        <meg:subcode3>1</meg:subcode3>
*** '''TouroperatorId''' – ключ туроператора
+
        <meg:subcode4>1</meg:subcode4>
 
+
        <meg:tourOperatorGroupKey>1</meg:tourOperatorGroupKey>
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
+
        <meg:tourOperatorKey>1</meg:tourOperatorKey>
<div class="mw-collapsible-content">
+
        <meg:mrKey>1</meg:mrKey>
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
+
        <meg:filialKey>1</meg:filialKey>
Вызов метода GetCosts
+
        <meg:tafiffKey>1</meg:tafiffKey>
<syntaxhighlight lang="java" enclose="div">
+
        <meg:pax>1</meg:pax>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
       <meg:GetCosts>
 
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>5932b280-c780-4c84-a83a-52b25bc22615</meg:guid>
+
         <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:-->
 
         <!--Optional:-->
         <meg:request SpoId="2049" TariffId="-1" SvKey="1" Code="2945" PriceType="2" DownloadOnlyActualCosts="0" DownloadUpdateCostsFromDate="0" CostsUpdateDateBegin="2021-08-04"/>
+
         <meg:rate>1</meg:rate>
       </meg:GetCosts>
+
        <meg:pricePerRoom>1</meg:pricePerRoom>
 +
        <meg:onlyPublished>1</meg:onlyPublished>
 +
        <meg:serviceProviderKey>1</meg:serviceProviderKey>
 +
       </meg:CalculateSingleCost>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetCosts
+
Возвращаемый результат метода CalculateSingleCost
 
<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" 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>
 
   <soap:Body>
       <GetCostsResponse xmlns="http://www.megatec.ru/">
+
       <CalculateSingleCostResponse xmlns="http://www.megatec.ru/">
         <GetCostsResult Message="Ok">
+
         <CalculateSingleCostResult>
             <Data>
+
            <Brutto>50.0000</Brutto>
               <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"/>
+
            <ProviderKey>2943</ProviderKey>
               <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"/>
+
            <IsCalcBrutto>false</IsCalcBrutto>
          </Data>
+
             <CancellationPolicies>
         </GetCostsResult>
+
               <CancellationPolicyData>
       </GetCostsResponse>
+
                  <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 4645: Строка 4844:
 
</div></div><br />
 
</div></div><br />
  
===SpoPriceMarkDownloaded (Получение информации о доступности конкретного SPO для продажи)===
+
==Методы работы со справочниками==
Метод возвращает информацию о доступности конкретного SPO для продажи.<br />
+
 
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.<br />
+
===GetRegions (Получение списка регионов)===
Принимаемые параметры запроса (* – обязательный):<br />
+
Метод возвращает список регионов.
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
+
Принимаемые параметры запроса (* – обязательный):
* '''SpoKey *''' – ключ SPO (возвращается при запросе к методу [[Master-Interlook:IntegrationService#GetSpoLList (получение списка SPO согласно запросу)|GetSpoLList]])
+
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
* '''VariantOfCost''' – вариант цены
 
* '''SvKey''' – ключ класса услуги
 
* '''Code''' – код услуги
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''SpoPriceMarkDownloadedResult''' – результат поиска
+
* '''GetRegionsResult''' – результат поиска
** '''true''' – SPO доступно
+
** '''Region''' – массив данных
** '''false''' – SPO недоступно
+
*** '''Name''' – название региона
 +
*** '''ID''' – идентификатор региона
 +
*** '''Description''' – описание региона
 +
*** '''NameLat''' – наименование региона латиницей
 +
*** '''Code''' – код региона
 +
*** '''CodeLat''' – код региона латиницей
 +
*** '''Unicode''' – код ISO региона
 +
*** '''CountryID''' – идентификатор страны
 +
 
 
<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>
Вызов метода SpoPriceMarkDownloaded
+
Вызов метода GetRegions
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:SpoPriceMarkDownloaded>
+
       <meg:GetRegions>
        <!--Optional:-->
+
         <meg:countryKey>10</meg:countryKey>
        <meg:guid>016e9dd9-802e-46fb-bb79-7c44a31d6560</meg:guid>
+
       </meg:GetRegions>
        <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:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода SpoPriceMarkDownloaded
+
Возвращаемый результат метода GetRegions
 
<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" 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>
 
   <soap:Body>
       <SpoPriceMarkDownloadedResponse xmlns="http://www.megatec.ru/">
+
       <GetRegionsResponse xmlns="http://www.megatec.ru/">
         <SpoPriceMarkDownloadedResult>true</SpoPriceMarkDownloadedResult>
+
         <GetRegionsResult>
       </SpoPriceMarkDownloadedResponse>
+
            <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 4690: Строка 4910:
 
</div></div><br />
 
</div></div><br />
  
==Методы работы с услугами==
+
===GetCities (Получение списка городов)===
===GetHotels (Получение списка отелей по параметрам)===
+
Метод возвращает список городов.
Метод возвращает список отелей по параметрам.<br />
+
Принимаемые параметры запроса (* – обязательный):
Принимаемые параметры запроса ( * – обязательный):
+
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
* '''СountryKey *''' – ключ страны (-1 для всех)
+
* '''RegionKey *''' – идентификатор региона (-1 для всех)<br />
* '''RegionKey *''' – ключ региона (-1 для всех)
 
* '''СityKey *''' – ключ города (-1 для всех)
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetHotelsResult''' – результаты выдачи
+
* '''GetCitiesResult''' – результат поиска
* '''Hotel''' – отель
+
** '''City''' – массив данных
** '''Name''' – название отеля
 
** '''ID''' – идентификатор отеля
 
** '''Description''' – описание отеля
 
** '''NameLat''' – название отеля латиницей
 
** '''Code''' – код отеля
 
** '''CodeLat''' – код отеля латиницей
 
** '''Unicode''' – код ISO отеля
 
** '''City''' – город отеля
 
 
*** '''Name''' – название города
 
*** '''Name''' – название города
 
*** '''ID''' – идентификатор города
 
*** '''ID''' – идентификатор города
 
*** '''Description''' – описание города
 
*** '''Description''' – описание города
*** '''NameLat''' – название города латиницей
+
*** '''NameLat''' – наименование города латиницей
 
*** '''Code''' – код города
 
*** '''Code''' – код города
 
*** '''CodeLat''' – код города латиницей
 
*** '''CodeLat''' – код города латиницей
 
*** '''Unicode''' – код ISO города
 
*** '''Unicode''' – код ISO города
*** '''CountryID''' – идентификатор страны отеля
+
*** '''CountryID''' – идентификатор города
*** '''RegionID''' – идентификатор региона отеля
+
*** '''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="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>
Вызов метода GetHotels
+
Вызов метода GetCities
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetHotels>
+
       <meg:GetCities>
 
         <meg:countryKey>10</meg:countryKey>
 
         <meg:countryKey>10</meg:countryKey>
 
         <meg:regionKey>10</meg:regionKey>
 
         <meg:regionKey>10</meg:regionKey>
        <meg:cityKey>10</meg:cityKey>
+
       </meg:GetCities>
       </meg:GetHotels>
 
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetHotels
+
Возвращаемый результат метода GetCities
 
<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" 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>
 
   <soap:Body>
       <GetHotelsResponse xmlns="http://www.megatec.ru/">
+
       <GetCitiesResponse xmlns="http://www.megatec.ru/">
         <GetHotelsResult>
+
         <GetCitiesResult>
             <Hotel>
+
             <City>
               <Name>Aegean Blue Hotel</Name>
+
               <Name>Katerini</Name>
               <ID>2254</ID>
+
               <ID>153</ID>
               <Description>3 stars (B)  (\\Nea KallikratiaABBA)</Description>
+
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
               <Code>AGN</Code>
+
               <Code>KTR</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <City>
+
               <CountryID>4</CountryID>
                  <Name>Nea KallikratiaABBA</Name>
+
               <RegionID>10</RegionID>
                  <ID>10</ID>
+
             </City>
                  <Description/>
+
             <City>
                  <NameLat/>
+
               <Name>Leptokaria</Name>
                  <Code>NKL</Code>
+
               <ID>24</ID>
                  <CodeLat/>
+
               <Description/>
                  <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/>
 
               <NameLat/>
               <Code>ALK</Code>
+
               <Code>LPK</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <City>
+
               <CountryID>4</CountryID>
                  <Name>Nea KallikratiaABBA</Name>
+
               <RegionID>10</RegionID>
                  <ID>10</ID>
+
             </City>
                  <Description/>
+
        </GetCitiesResult>
                  <NameLat/>
+
       </GetCitiesResponse>
                  <Code>NKL</Code>
+
   </soap:Body>
                  <CodeLat/>
+
</soap:Envelope>
                  <Unicode/>
+
</syntaxhighlight>
                  <CountryID>4</CountryID>
+
</TD></TR></TABLE>
                  <RegionID>6</RegionID>
+
</div></div><br />
              </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 (Получение списка трансферов по параметрам)===
+
===GetCountries (Получение списка стран)===
Метод возвращает список трансферов по параметрам.<br />
+
Метод возвращает список стран.<br />
Принимаемые параметры запроса ( * – обязательный):
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Request''' – объект с параметрами запроса
 
** '''СountryKey *''' – ключ страны (-1 для всех)
 
** '''СityKey *''' – ключ города (-1 для всех)
 
** '''RegionKey *''' – ключ региона (-1 для всех)
 
** '''TypeKey *''' – ключ типа трансфера (-1 для всех)
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetTransferResult''' – результаты выдачи
+
* '''GetCountriesResult''' – результат поиска
** '''TransferDirectionInfo''' – массив данных
+
** '''Country''' – массив данных
*** '''ID''' – идентификатор трансфера
+
*** '''Name''' – название страны
*** '''Name''' – название
+
*** '''ID''' – идентификатор страны
*** '''TransferTypeID''' – ключ типа трансфера
+
*** '''Description''' – описание страны
*** '''TransferTypeName''' – название типа трансфера
+
*** '''NameLat''' – наименование страны латиницей
*** '''CityFromID''' – идентификатор города откуда
+
*** '''Code''' – код страны
*** '''CityFromName''' – название города откуда
+
*** '''CodeLat''' – код страны латиницей
*** '''CityToID''' – идентификатор города куда
+
*** '''Unicode''' – код ISO страны
*** '''CityToName''' – название города куда
+
*** '''IsIncoming''' – параметр для внутреннего использования
*** '''PointFromID''' – идентификатор точки откуда
 
*** '''PointFromName''' – название точки откуда
 
*** '''PointToID''' – идентификатор точки куда
 
*** '''PointToName''' – название точки куда
 
  
 
<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>
Вызов метода GetTransfers
+
Вызов метода GetCountries
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetTransfers>
+
       <meg:GetCountries/>
        <!--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:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetTransfers
+
Возвращаемый результат метода GetCountries
 
<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" 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>
 
   <soap:Body>
       <GetTransfersResponse xmlns="http://www.megatec.ru/">
+
       <GetCountriesResponse xmlns="http://www.megatec.ru/">
         <GetTransfersResult Message="Ok">
+
         <GetCountriesResult>
             <Data>
+
             <Country>
               <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"/>
+
               <Name>Azerbaijan</Name>
               <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"/>
+
              <ID>19</ID>
               <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"/>
+
              <Description/>
             </Data>
+
              <NameLat/>
         </GetTransfersResult>
+
              <Code/>
       </GetTransfersResponse>
+
              <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 4868: Строка 5040:
 
</div></div><br />
 
</div></div><br />
  
===GetExcursions (Получение списка экскурсий по параметрам)===
+
===GetRoomType (Получение списка типов комнат)===
Метод возвращает экскурсии по параметрам.<br />
+
Метод возвращает список типов комнат.<br />
Принимаемые параметры запроса ( * – обязательный):
+
Возвращаемый результат:<br />
* '''СountryKey *''' – ключ страны (-1 для всех)
+
* '''GetRoomTypeResult''' – результат поиска
* '''RegionKey *''' – ключ региона (-1 для всех)
+
** '''RoomType''' – массив данных
* '''СityKey *''' – ключ города (-1 для всех)
+
*** '''Name''' – название типа комнаты
Возвращаемый результат:<br />
+
*** '''ID''' – идентификатор типа комнаты
* '''GetExcursionsResult''' – результаты выдачи
+
*** '''Description''' – описание типа комнаты
** '''Excursion''' – массив данных
+
*** '''NameLat''' – наименование типа комнаты
*** '''Name''' – название экскурсии
+
*** '''Code''' – код типа комнаты
*** '''ID''' – идентификатор экскурсии
+
*** '''CodeLat''' – код типа комнаты латиницей
*** '''Description''' – описание экскурсии
+
*** '''Unicode''' – код ISO типа комнаты
*** '''NameLat''' – название экскурсии латиницей
+
*** '''Places''' – количество основных мест
*** '''Code''' – код экскурсии
+
*** '''ExPlaces''' – количество дополнительных мест
*** '''CodeLat''' – код экскурсии латиницей
+
*** '''PrintOrder''' – печать отчета
*** '''Unicode''' – код ISO экскурсии
 
*** '''CityID''' – идентификатор города
 
*** '''RegionID''' – идентификатор региона
 
  
 
<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>
Вызов метода GetExcursions
+
Вызов метода GetRoomType
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetExcursions>
+
       <meg:GetRoomType/>
        <meg:countryKey>5</meg:countryKey>
 
        <meg:regionKey>5</meg:regionKey>
 
        <meg:cityKey>5</meg:cityKey>
 
      </meg:GetExcursions>
 
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetExcursions
+
Возвращаемый результат метода GetRoomType
 
<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" 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: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>
 
   <soap:Body>
       <GetExcursionsResponse xmlns="http://www.megatec.ru/">
+
       <GetRoomTypeResponse xmlns="http://www.megatec.ru/">
         <GetExcursionsResult>
+
         <GetRoomTypeResult>
             <Excursion>
+
             <RoomType>
               <Name>Exc21_01_2020</Name>
+
               <Name>NOVALUE</Name>
               <ID>670</ID>
+
               <ID>0</ID>
 
               <Description/>
 
               <Description/>
               <NameLat>Exc21_01_2020</NameLat>
+
               <NameLat/>
               <Code/>
+
               <Code>-</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <CityID>5</CityID>
+
               <Places>0</Places>
               <RegionID>16</RegionID>
+
               <ExPlaces>0</ExPlaces>
             </Excursion>
+
              <PrintOrder>0</PrintOrder>
        </GetExcursionsResult>
+
            </RoomType>
       </GetExcursionsResponse>
+
            <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:Body>
</soap:Envelope>
 
 
</soap:Envelope>
 
</soap:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 4929: Строка 5119:
 
</div></div><br />
 
</div></div><br />
  
===GetServiceList (Получение списка дополнительных услуг)===
+
=== GetRoomCategories (Получение списка категорий комнат)===
Метод возвращает дополнительные услуги.<br />
+
Метод возвращает список категорий комнат.<br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetServiceListResult''' – результаты выдачи
+
* '''GetRoomCategoriesResult''' – результат поиска
** '''ServiceList''' – массив данных
+
** '''RoomCategory''' – массив данных
*** '''AdditionalParams''' – дополнительные параметры
+
*** '''Name''' – название категории комнаты
**** '''Key''' – ключ
+
*** '''ID''' – идентификатор категории комнаты
**** '''Value''' – значение
+
*** '''Description''' – описание категории комнаты
*** '''Name''' – название дополнительной услуги
+
*** '''NameLat''' – наименование категории комнаты
*** '''ID''' – идентификатор дополнительной услуги
+
*** '''Code''' – код категории комнаты
*** '''NameLat''' – название дополнительной услуги латиницей
+
*** '''CodeLat''' – код категории комнаты латиницей
*** '''Code''' – код дополнительной услуги
+
*** '''Unicode''' – код ISO категории комнаты
*** '''CodeLat''' – код дополнительной услуги латиницей
+
*** '''MainPlaces''' – количество основных мест
*** '''Unicode''' – код ISO дополнительной услуги
+
*** '''ExtraPlaces''' – количество дополнительных мест
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
+
*** '''IsMain''' – параметр для внутреннего пользования
*** '''CountryID''' – идентификатор страны дополнительной услуги
+
 
 
 
<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>
Вызов метода GetServiceList
+
Вызов метода GetRoomCategories
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetServiceList/>
+
       <meg:GetRoomCategories/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetServiceList
+
Возвращаемый результат метода GetRoomCategories
 
<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" 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>
 
   <soap:Body>
       <GetServiceListResponse xmlns="http://www.megatec.ru/">
+
       <GetRoomCategoriesResponse xmlns="http://www.megatec.ru/">
         <GetServiceListResult>
+
         <GetRoomCategoriesResult>
             <ServiceList>
+
             <RoomCategory>
               <AdditionalParams>
+
               <Name>-</Name>
                  <ParameterPair Key="CountryKey">
+
              <ID>0</ID>
                    <Value xsi:type="xsd:int">0</Value>
+
               <Description/>
                  </ParameterPair>
 
                  <ParameterPair Key="CityKey">
 
                    <Value xsi:type="xsd:int">0</Value>
 
                  </ParameterPair>
 
              </AdditionalParams>
 
              <Name>Extra service class\Cancellation penalty</Name>
 
               <ID>10</ID>
 
 
               <NameLat/>
 
               <NameLat/>
              <Code/>
 
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <ServiceClaseID>1</ServiceClaseID>
+
               <MainPlaces>0</MainPlaces>
               <CountryID>0</CountryID>
+
               <ExtraPlaces>0</ExtraPlaces>
            </ServiceList>
+
               <IsMain>false</IsMain>
            <ServiceList>
+
            </RoomCategory>
               <AdditionalParams>
+
            <RoomCategory>
                  <ParameterPair Key="CountryKey">
+
               <Name>!!!</Name>
                    <Value xsi:type="xsd:int">0</Value>
+
               <ID>304</ID>
                  </ParameterPair>
+
               <Description/>
                  <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/>
 
               <NameLat/>
               <Code/>
+
               <Code>1</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <ServiceClaseID>4</ServiceClaseID>
+
               <MainPlaces>0</MainPlaces>
               <CountryID>0</CountryID>
+
               <ExtraPlaces>0</ExtraPlaces>
            </ServiceList>
+
              <IsMain>false</IsMain>
          </GetServiceListResult>
+
            </RoomCategory>
       </GetServiceListResponse>
+
        </GetRoomCategoriesResult>
 +
       </GetRoomCategoriesResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5009: Строка 5184:
 
</div></div><br />
 
</div></div><br />
  
===GetExtraServices (Получение списка дополнительных услуг включая услуги типа AdHot)===
+
=== GetPansions (Получение списка типов питаний)===
Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot.<br />
+
Метод возвращает список типов питаний.<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 />
 
Возвращаемый результат:<br />
* '''GetExtraServicesResult''' – результаты выдачи
+
* '''GetPansionsResult''' – результат поиска
** '''ExtraServiceInfo''' – массив данных
+
** '''Pansion''' – массив данных
*** '''Id''' – идентификатор дополнительной услуги
+
*** '''Name''' – название типа питания
*** '''Name''' – название дополнительной услуги
+
*** '''ID''' – идентификатор типа питания
*** '''Description''' – описание  дополнительной услуги
+
*** '''Description''' – описание типа питания
*** '''ServiceClassId''' – идентификатор класса дополнительной услуги
+
*** '''NameLat''' – наименование типа питания латиницей
*** '''IsWeb''' – доступность дополнительной услуги в онлайн
+
*** '''Code''' – код типа питания
*** '''DurationType''' – c продолжительностью или без (1 – с продолжительностью)
+
*** '''CodeLat''' –  код типа питания латиницей
*** '''UpdateDate''' – дата последнего обновления дополнительной услуги
+
*** '''Unicode''' – код ISO типа питания
*** '''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="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>
Вызов метода GetExtraServices
+
Вызов метода GetPansions
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetExtraServices>
+
       <meg:GetPansions/>
        <!--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:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetExtraServices
+
Возвращаемый результат метода GetPansions
 
<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" 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>
 
   <soap:Body>
       <GetExtraServicesResponse xmlns="http://www.megatec.ru/">
+
       <GetPansionsResponse xmlns="http://www.megatec.ru/">
         <GetExtraServicesResult Message="Ok">
+
         <GetPansionsResult>
             <Data>
+
             <Pansion>
               <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">
+
               <Name>&lt;Not defined></Name>
                  <CountryList/>
+
              <ID>0</ID>
                  <CityList/>
+
              <Description/>
                  <HotelList/>
+
              <NameLat/>
                  <RoomTypeList/>
+
              <Code>ND</Code>
                  <RoomCategoryList/>
+
              <CodeLat/>
                  <AccommodationList/>
+
              <Unicode/>
                  <HotelLinkTypeList>
+
            </Pansion>
                    <HotelLinkTypeEx HotelId="2830" ExtraServiceLinkType="1"/>
+
            <Pansion>
                  </HotelLinkTypeList>
+
               <Name>Full Board</Name>
              </ExtraServiceInfo>
+
              <ID>1</ID>
               <ExtraServiceInfo Id="433" Name="111111111111111" ServiceClassId="36" IsWeb="true" DurationType="0" UpdateDate="2018-09-19T10:52:06.937" IsPartnerLikeHotel="false" LinkType="1" IsAddHot="true">
+
              <Description/>
                  <CountryList/>
+
              <NameLat/>
                  <CityList/>
+
              <Code>FB</Code>
                  <HotelList/>
+
               <CodeLat/>
                  <RoomTypeList/>
+
               <Unicode/>
                  <RoomCategoryList/>
+
            </Pansion>
                  <AccommodationList/>
+
            <Pansion>
                  <HotelLinkTypeList/>
+
              <Name>All Inclusive</Name>
               </ExtraServiceInfo>
+
              <ID>2</ID>
               <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">
+
              <Description/>
                  <CountryList/>
+
              <NameLat/>
                  <CityList/>
+
              <Code>AL</Code>
                  <HotelList/>
+
              <CodeLat/>
                  <RoomTypeList/>
+
               <Unicode/>
                  <RoomCategoryList/>
+
            </Pansion>
                  <AccommodationList/>
+
        </GetPansionsResult>
                  <HotelLinkTypeList>
+
       </GetPansionsResponse>
                    <HotelLinkTypeEx HotelId="2821" ExtraServiceLinkType="1"/>
 
                  </HotelLinkTypeList>
 
               </ExtraServiceInfo>
 
            </Data>
 
        </GetExtraServicesResult>
 
       </GetExtraServicesResponse>
 
 
   </soap:Body>
 
   </soap:Body>
</soap:Envelope>
 
 
</soap:Envelope>
 
</soap:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 5115: Строка 5250:
 
</div></div><br />
 
</div></div><br />
  
===CalculateSingleCost (Расчет стоимости услуги по ее параметрам стандартным механизмом расчета)===
+
=== GetRatings (Получение массива категорий (звездностей) отелей)===
Метод рассчитывает стоимость услуги по ее параметрам стандартным механизмом расчета.<br />
+
Метод возвращает массив категорий отелей.<br />
Принимаемые параметры запроса ( * – обязательный):
+
Возвращаемый результат:<br />
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
+
* '''GetRatingsResult''' – результат поиска
* '''SvKey *''' – ключ типа услуги
+
** '''HotelCategory''' – массив данных
* '''СountryKey *''' – ключ страны
+
*** '''Name''' – название категории отеля
* '''Сode *''' – ключ услуги
+
*** '''ID''' – идентификатор категории отеля
* '''Subcode1 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType)
+
*** '''Description''' – описание категории отеля
* '''Subcode2 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала)
+
*** '''NameLat''' – наименование категории отеля латиницей
* '''Subcode3 *''' – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания)
+
*** '''Code''' – код категории отеля
* '''Subcode4 *''' – параметр цены в зависимости от типа услуги (для проживания – размещение)
+
*** '''CodeLat''' – код категории отеля латиницей
* '''TourOperatorGroupKey *''' – ключ группы туроператора
+
*** '''Unicode''' –  код ISO категории отеля
* '''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="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>
Вызов метода CalculateSingleCost
+
Вызов метода GetRatings
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:CalculateSingleCost>
+
       <meg:GetRatings/>
        <!--Optional:-->
+
   </soapenv:Body>
        <meg:guid>823b2df5-a3fe-4153-b43a-accfba1bf86c</meg:guid>
+
</soapenv:Envelope>
        <meg:svKey>1</meg:svKey>
+
</syntaxhighlight>
        <meg:countryKey>1</meg:countryKey>
+
Возвращаемый результат метода GetRatings
        <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">
 
<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>
 
   <soap:Body>
       <CalculateSingleCostResponse xmlns="http://www.megatec.ru/">
+
       <GetRatingsResponse xmlns="http://www.megatec.ru/">
         <CalculateSingleCostResult>
+
         <GetRatingsResult>
             <Brutto>50.0000</Brutto>
+
             <HotelCategory>
            <ProviderKey>2943</ProviderKey>
+
              <Name>Not defined</Name>
            <IsCalcBrutto>false</IsCalcBrutto>
+
              <ID>0</ID>
            <CancellationPolicies>
+
              <Description/>
               <CancellationPolicyData>
+
               <NameLat/>
                  <PolicyKey>151</PolicyKey>
+
              <Code/>
                  <DateFrom>2021-08-25T00:00:00</DateFrom>
+
              <CodeLat/>
                  <DateTo>2021-08-27T00:00:00</DateTo>
+
              <Unicode/>
                  <PenaltyValue>3</PenaltyValue>
+
            </HotelCategory>
                  <IsPercent>false</IsPercent>
+
            <HotelCategory>
              </CancellationPolicyData>
+
              <Name>5 stars (Deluxe)</Name>
               <CancellationPolicyData>
+
               <ID>2</ID>
                  <PolicyKey>149</PolicyKey>
+
              <Description/>
                  <DateFrom>2021-08-27T00:00:00</DateFrom>
+
              <NameLat/>
                  <DateTo>2021-08-31T00:00:00</DateTo>
+
              <Code/>
                  <PenaltyValue>4</PenaltyValue>
+
              <CodeLat/>
                  <IsPercent>false</IsPercent>
+
               <Unicode/>
               </CancellationPolicyData>
+
            </HotelCategory>
              </CancellationPolicies>
+
         </GetRatingsResult>
         </CalculateSingleCostResult>
+
       </GetRatingsResponse>
       </CalculateSingleCostResponse>
 
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5227: Строка 5307:
 
</div></div><br />
 
</div></div><br />
  
==Методы работы со справочниками==
+
=== GetFlights (Получение списка авиарейсов)===
 
+
Метод возвращает список авиарейсов.<br />
===GetRegions (Получение списка регионов)===
 
Метод возвращает список регионов.
 
Принимаемые параметры запроса (* – обязательный):
 
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetRegionsResult''' – результат поиска
+
* '''GetFlightsResult''' – результат поиска
** '''Region''' – массив данных
+
** '''Flight''' – массив данных
*** '''Name''' – название региона
+
*** '''AirportFrom''' – трансферный узел в пункте отбытия
*** '''ID''' – идентификатор региона
+
**** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
*** '''Description''' – описание региона
+
**** '''ID''' – идентификатор города трансферного узла
*** '''NameLat''' – наименование региона латиницей
+
**** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
*** '''Code''' – код региона
+
**** '''NameLat''' – наименование трансферного узла
*** '''CodeLat''' – код региона латиницей
+
**** '''Code''' – код трансферного узла
*** '''Unicode''' – код ISO региона
+
**** '''CodeLat''' – код трансферного узла латиницей
*** '''CountryID''' – идентификатор страны
+
**** '''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="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>
Вызов метода GetRegions
+
Вызов метода GetFlights
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRegions>
+
       <meg:GetFlights/>
        <meg:countryKey>10</meg:countryKey>
 
      </meg:GetRegions>
 
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRegions
+
Возвращаемый результат метода GetFlights
 
<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" 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>
 
   <soap:Body>
       <GetRegionsResponse xmlns="http://www.megatec.ru/">
+
       <GetFlightsResponse xmlns="http://www.megatec.ru/">
         <GetRegionsResult>
+
         <GetFlightsResult>
             <Region>
+
             <Flight>
               <Name>Chisinau</Name>
+
               <AirportFrom>
              <ID>18</ID>
+
                  <Name>Makedonia</Name>
              <Description/>
+
                  <ID>1000001</ID>
               <NameLat/>
+
                  <Description>Thessaloniki</Description>
               <Code>KIV</Code>
+
                  <NameLat/>
              <CodeLat/>
+
                  <Code/>
              <Unicode/>
+
                  <CodeLat/>
              <CountryID>10</CountryID>
+
                  <Unicode/>
            </Region>
+
                  <RegionID>7</RegionID>
            <Region>
+
                  <CityID>12</CityID>
               <Name>Tiraspol</Name>
+
               </AirportFrom>
               <ID>109</ID>
+
               <AirportTo>
               <Description/>
+
                  <Name>Makedonia</Name>
               <NameLat/>
+
                  <ID>1000001</ID>
               <Code>TRS</Code>
+
                  <Description>Thessaloniki</Description>
               <CodeLat/>
+
                  <NameLat/>
               <Unicode/>
+
                  <Code/>
               <CountryID>10</CountryID>
+
                  <CodeLat/>
             </Region>
+
                  <Unicode/>
         </GetRegionsResult>
+
                  <RegionID>7</RegionID>
       </GetRegionsResponse>
+
                  <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5293: Строка 5404:
 
</div></div><br />
 
</div></div><br />
  
===GetCities (Получение списка городов)===
+
=== GetAirport (Получение списка трансферных узлов)===
Метод возвращает список городов.
+
Метод возвращает список трансферных узлов.<br />
Принимаемые параметры запроса (* – обязательный):
 
* '''СountryKey *''' – идентификатор страны (-1 для всех)<br />
 
* '''RegionKey *''' – идентификатор региона (-1 для всех)<br />
 
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetCitiesResult''' – результат поиска
+
* '''GetFlightsResult''' – результат поиска
** '''City''' – массив данных
+
** '''Airport''' – массив данных
*** '''Name''' – название города
+
*** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
*** '''ID''' – идентификатор города
+
*** '''ID''' – идентификатор трансферного узла
*** '''Description''' – описание города
+
*** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
*** '''NameLat''' – наименование города латиницей
+
*** '''NameLat''' – название города трансферного узла латиницей
*** '''Code''' – код города
+
*** '''Code''' – код города трансферного узла латиницей
*** '''CodeLat''' – код города латиницей
+
*** '''CodeLat''' – код города трансферного узла латиницей
*** '''Unicode''' – код ISO города
+
*** '''Unicode''' – код ISO города трансферного узла латиницей
*** '''CountryID''' – идентификатор города
+
*** '''RegionID''' – идентификатор региона расположения трансферного узла
*** '''RegionID''' – идентификатор региона
+
*** '''CityID''' – идентификатор города расположения трансферного узла
  
 
<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>
Вызов метода GetCities
+
Вызов метода GetAirport
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetCities>
+
       <meg:GetAirport/>
        <meg:countryKey>10</meg:countryKey>
 
        <meg:regionKey>10</meg:regionKey>
 
      </meg:GetCities>
 
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetCities
+
Возвращаемый результат метода GetAirport
 
<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" 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>
 
   <soap:Body>
       <GetCitiesResponse xmlns="http://www.megatec.ru/">
+
       <GetAirportResponse xmlns="http://www.megatec.ru/">
         <GetCitiesResult>
+
         <GetAirportResult>
             <City>
+
             <Airport>
               <Name>Katerini</Name>
+
               <Name>lalala</Name>
               <ID>153</ID>
+
               <ID>3</ID>
               <Description/>
+
               <Description>Moscow</Description>
 
               <NameLat/>
 
               <NameLat/>
               <Code>KTR</Code>
+
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <CountryID>4</CountryID>
+
               <RegionID>19</RegionID>
               <RegionID>10</RegionID>
+
               <CityID>87</CityID>
             </City>
+
             </Airport>
             <City>
+
             <Airport>
               <Name>Leptokaria</Name>
+
               <Name>El.Venizelos</Name>
               <ID>24</ID>
+
               <ID>1004</ID>
               <Description/>
+
               <Description>Athens</Description>
 
               <NameLat/>
 
               <NameLat/>
               <Code>LPK</Code>
+
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <CountryID>4</CountryID>
+
               <RegionID>38</RegionID>
               <RegionID>10</RegionID>
+
               <CityID>55</CityID>
             </City>
+
             </Airport>
         </GetCitiesResult>
+
         </GetAirportResult>
       </GetCitiesResponse>
+
       </GetAirportResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5362: Строка 5467:
 
</div></div><br />
 
</div></div><br />
  
===GetCountries (Получение списка стран)===
+
=== GetProviders (Получение списка партнеров, которые являются поставщиками услуг)===
Метод возвращает список стран.<br />
+
Метод возвращает список партнеров системы, которые являются поставщиками услуг. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetCountriesResult''' – результат поиска
+
* '''GetProvidersResult''' – результат поиска
** '''Country''' – массив данных
+
** '''Partner''' – массив данных
*** '''Name''' – название страны
+
*** '''Name''' – название партнера
*** '''ID''' – идентификатор страны
+
*** '''ID''' – идентификатор партера
*** '''Description''' – описание страны
+
*** '''Description''' – описание партнера
*** '''NameLat''' – наименование страны латиницей
+
*** '''NameLat''' – название партнера латиницей
*** '''Code''' – код страны
+
*** '''Code''' – код партнера
*** '''CodeLat''' – код страны латиницей
+
*** '''CodeLat''' – код партнера латиницей
*** '''Unicode''' – код ISO страны
+
*** '''Unicode''' – код ISO партнера
*** '''IsIncoming''' – параметр для внутреннего использования
+
*** '''PartnersGroupID''' – идентификатор группы партнера
 +
*** '''FullName''' – полное название партнера
 +
*** '''Fax''' – факс партнера
 +
*** '''Address''' – адрес партнера
 +
*** '''Zip''' –  почтовый код партнера
 +
*** '''Email''' – e-mail партнера
 +
*** '''Phones''' – телефоны партнера
  
 
<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>
Вызов метода GetCountries
+
Вызов метода GetProviders
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetCountries/>
+
       <meg:GetProviders/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetCountries
+
Возвращаемый результат метода GetProviders
 
<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" 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>
 
   <soap:Body>
       <GetCountriesResponse xmlns="http://www.megatec.ru/">
+
       <GetProvidersResponse xmlns="http://www.megatec.ru/">
         <GetCountriesResult>
+
         <GetProvidersResult>
             <Country>
+
             <Partner>
               <Name>Azerbaijan</Name>
+
               <Name>&lt;All></Name>
               <ID>19</ID>
+
               <ID>0</ID>
 
               <Description/>
 
               <Description/>
               <NameLat/>
+
               <NameLat>&lt;All></NameLat>
               <Code/>
+
               <Code>&lt;AL</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <IsIncoming>false</IsIncoming>
+
               <PartnersGroupID>0</PartnersGroupID>
             </Country>
+
              <FullName>&lt;All></FullName>
             <Country>
+
              <Fax/>
               <Name>Belarus</Name>
+
              <Address/>
               <ID>7</ID>
+
              <Zip/>
 +
              <Email/>
 +
              <Phones/>
 +
             </Partner>
 +
             <Partner>
 +
               <Name>HOTEL CHANGE</Name>
 +
               <ID>1</ID>
 
               <Description/>
 
               <Description/>
               <NameLat/>
+
               <NameLat>HOTEL CHANGE</NameLat>
               <Code/>
+
               <Code>HOT</Code>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <IsIncoming>false</IsIncoming>
+
               <PartnersGroupID>0</PartnersGroupID>
            </Country>
+
              <FullName>HOTEL CHANGE</FullName>
             </Country>
+
              <Fax/>
         </GetCountriesResult>
+
              <Address/>
       </GetCountriesResponse>
+
              <Zip/>
 +
              <Email/>
 +
              <Phones/>
 +
             </Partner>
 +
         </GetProvidersResult>
 +
       </GetProvidersResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5423: Строка 5545:
 
</div></div><br />
 
</div></div><br />
  
===GetRoomType (Получение списка типов комнат)===
+
=== GetTransports (Получение списка транспортных средств)===
Метод возвращает список типов комнат.<br />
+
Метод возвращает список транспортных средств. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetRoomTypeResult''' – результат поиска
+
* '''GetTransportsResult''' – результат поиска
** '''RoomType''' – массив данных
+
** '''Transport''' – массив данных
*** '''Name''' – название типа комнаты
+
*** '''Name''' – название транспортного средства
*** '''ID''' – идентификатор типа комнаты
+
*** '''ID''' – идентификатор транспортного средства
*** '''Description''' – описание типа комнаты
+
*** '''Description''' – описание транспортного средства
*** '''NameLat''' – наименование типа комнаты
+
*** '''NameLat''' – название транспортного средства латиницей
*** '''Code''' – код типа комнаты
+
*** '''Code''' – код транспортного средства
*** '''CodeLat''' – код типа комнаты латиницей
+
*** '''CodeLat''' – код транспортного средства латиницей
*** '''Unicode''' – код ISO типа комнаты
+
*** '''Unicode''' – код ISO транспортного средства
*** '''Places''' – количество основных мест
 
*** '''ExPlaces''' – количество дополнительных мест
 
*** '''PrintOrder''' – печать отчета
 
  
 
<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>
Вызов метода GetRoomType
+
Вызов метода GetTransports
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRoomType/>
+
       <meg:GetTransports/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRoomType
+
Возвращаемый результат метода GetTransports
 
<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" 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: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>
 
   <soap:Body>
       <GetRoomTypeResponse xmlns="http://www.megatec.ru/">
+
       <GetTransportsResponse xmlns="http://www.megatec.ru/">
         <GetRoomTypeResult>
+
         <GetTransportsResult>
             <RoomType>
+
             <Transport>
               <Name>NOVALUE</Name>
+
               <Name>Not defined</Name>
 
               <ID>0</ID>
 
               <ID>0</ID>
 
               <Description/>
 
               <Description/>
               <NameLat/>
+
               <NameLat>Not defined</NameLat>
               <Code>-</Code>
+
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <Places>0</Places>
+
             </Transport>
              <ExPlaces>0</ExPlaces>
+
             <Transport>
              <PrintOrder>0</PrintOrder>
+
               <Name>Bus</Name>
             </RoomType>
+
               <ID>3</ID>
             <RoomType>
+
               <Description/>
               <Name>10</Name>
+
               <NameLat>Bus</NameLat>
               <ID>876</ID>
+
               <Code/>
               <Description>111</Description>
 
               <NameLat/>
 
               <Code>111</Code>
 
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <Places>111</Places>
+
             </Transport>
              <ExPlaces>0</ExPlaces>
+
             <Transport>
              <PrintOrder>0</PrintOrder>
+
               <Name>Minibus</Name>
             </RoomType>
+
               <ID>4</ID>
             <RoomType>
+
               <Description/>
               <Name>33444</Name>
+
               <NameLat>Minibus</NameLat>
               <ID>915</ID>
+
               <Code/>
               <Description>12</Description>
 
               <NameLat/>
 
               <Code>1123</Code>
 
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <Places>1</Places>
+
             </Transport>
              <ExPlaces>0</ExPlaces>
+
        </GetTransportsResult>
              <PrintOrder>0</PrintOrder>
+
       </GetTransportsResponse>
             </RoomType>
 
          </GetRoomTypeResult>
 
       </GetRoomTypeResponse>
 
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5502: Строка 5611:
 
</div></div><br />
 
</div></div><br />
  
=== GetRoomCategories (Получение списка категорий комнат)===
+
=== GetTransferTypes (Получение списка типов трансферов)===
Метод возвращает список категорий комнат.<br />
+
Метод возвращает список типов трансферов. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetRoomCategoriesResult''' – результат поиска
+
* '''GetTransferTypesResult''' – результат поиска
** '''RoomCategory''' – массив данных
+
** '''Transport''' – массив данных
*** '''Name''' – название категории комнаты
+
*** '''Name''' – название трансфера
*** '''ID''' – идентификатор категории комнаты
+
*** '''ID''' – идентификатор трансфера
*** '''Description''' – описание категории комнаты
+
*** '''Description''' – описание трансфера
*** '''NameLat''' – наименование категории комнаты
+
*** '''NameLat''' – наименование трансфера латиницей
*** '''Code''' – код категории комнаты
+
*** '''Code''' – код трансфера
*** '''CodeLat''' – код категории комнаты латиницей
+
*** '''CodeLat''' – код трансфера латиницей
*** '''Unicode''' – код ISO категории комнаты
+
*** '''Unicode''' – код ISO трансфера
*** '''MainPlaces''' – количество основных мест
 
*** '''ExtraPlaces''' – количество дополнительных мест
 
*** '''IsMain''' – параметр для внутреннего пользования
 
  
 
<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>
Вызов метода GetRoomCategories
+
Вызов метода GetTransferTypes
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRoomCategories/>
+
       <meg:GetTransferTypes/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRoomCategories
+
Возвращаемый результат метода GetTransferTypes
 
<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" 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>
 
   <soap:Body>
       <GetRoomCategoriesResponse xmlns="http://www.megatec.ru/">
+
       <GetTransferTypesResponse xmlns="http://www.megatec.ru/">
         <GetRoomCategoriesResult>
+
         <GetTransferTypesResult>
             <RoomCategory>
+
             <Transport>
               <Name>-</Name>
+
               <Name>Group</Name>
               <ID>0</ID>
+
               <ID>2</ID>
 
               <Description/>
 
               <Description/>
               <NameLat/>
+
               <NameLat>Group</NameLat>
 +
              <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <MainPlaces>0</MainPlaces>
+
             </Transport>
              <ExtraPlaces>0</ExtraPlaces>
+
             <Transport>
              <IsMain>false</IsMain>
+
               <Name>Ind Car</Name>
             </RoomCategory>
+
               <ID>3</ID>
             <RoomCategory>
 
               <Name>!!!</Name>
 
               <ID>304</ID>
 
 
               <Description/>
 
               <Description/>
               <NameLat/>
+
               <NameLat>Ind Car</NameLat>
               <Code>1</Code>
+
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <MainPlaces>0</MainPlaces>
+
            </Transport>
              <ExtraPlaces>0</ExtraPlaces>
+
         </GetTransferTypesResult>
              <IsMain>false</IsMain>
+
       </GetTransferTypesResponse>
            </RoomCategory>
 
         </GetRoomCategoriesResult>
 
       </GetRoomCategoriesResponse>
 
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5567: Строка 5668:
 
</div></div><br />
 
</div></div><br />
  
=== GetPansions (Получение списка типов питаний)===
+
=== GetRates (Получение списка валют)===
Метод возвращает список типов питаний.<br />
+
Метод возвращает список валют. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetPansionsResult''' – результат поиска
+
* '''GetRatesResult''' – результат поиска
** '''Pansion''' – массив данных
+
** '''Rate''' – массив данных
*** '''Name''' – название типа питания
+
*** '''Name''' – название валюты
*** '''ID''' – идентификатор типа питания
+
*** '''ID''' – идентификатор валюты
*** '''Description''' – описание типа питания
+
*** '''Description''' – описание валюты
*** '''NameLat''' – наименование типа питания латиницей
+
*** '''NameLat''' – описание валюты латиницей
*** '''Code''' – код типа питания
+
*** '''Code''' – код валюты
*** '''CodeLat''' – код типа питания латиницей
+
*** '''CodeLat''' – код валюты латиницей
*** '''Unicode''' – код ISO типа питания
+
*** '''Unicode''' – код ISO валюты
 +
*** '''IsMain''' – признак валюты "главная"
 +
*** '''IsNational''' – признак валюты «национальная»
  
 
<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>
Вызов метода GetPansions
+
Вызов метода GetRates
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetPansions/>
+
       <meg:GetRates/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetPansions
+
Возвращаемый результат метода GetRates
 
<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" 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>
 
   <soap:Body>
       <GetPansionsResponse xmlns="http://www.megatec.ru/">
+
       <GetRatesResponse xmlns="http://www.megatec.ru/">
         <GetPansionsResult>
+
         <GetRatesResult>
             <Pansion>
+
             <Rate>
               <Name>&lt;Not defined></Name>
+
               <Name>Euro</Name>
              <ID>0</ID>
 
              <Description/>
 
              <NameLat/>
 
              <Code>ND</Code>
 
              <CodeLat/>
 
              <Unicode/>
 
            </Pansion>
 
            <Pansion>
 
              <Name>Full Board</Name>
 
 
               <ID>1</ID>
 
               <ID>1</ID>
 
               <Description/>
 
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
               <Code>FB</Code>
+
               <Code>EU</Code>
 
               <CodeLat/>
 
               <CodeLat/>
               <Unicode/>
+
               <Unicode>EUR</Unicode>
             </Pansion>
+
              <IsMain>false</IsMain>
             <Pansion>
+
              <IsNational>false</IsNational>
               <Name>All Inclusive</Name>
+
             </Rate>
 +
             <Rate>
 +
               <Name>US dollar</Name>
 
               <ID>2</ID>
 
               <ID>2</ID>
 
               <Description/>
 
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
               <Code>AL</Code>
+
               <Code>USD</Code>
 
               <CodeLat/>
 
               <CodeLat/>
               <Unicode/>
+
               <Unicode>USD</Unicode>
             </Pansion>
+
              <IsMain>false</IsMain>
        </GetPansionsResult>
+
              <IsNational>false</IsNational>
       </GetPansionsResponse>
+
             </Rate>
 +
        </GetRatesResult>
 +
       </GetRatesResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5633: Строка 5731:
 
</div></div><br />
 
</div></div><br />
  
=== GetRatings (Получение массива категорий (звездностей) отелей)===
+
=== GetServicePackage (Получение списка вариантов пакетных услуг)===
Метод возвращает массив категорий отелей.<br />
+
Метод возвращает список вариантов пакетных услуг. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetRatingsResult''' – результат поиска
+
* '''GetServicePackageResult''' – результат поиска
** '''HotelCategory''' – массив данных
+
** '''ServiceList''' – массив данных
*** '''Name''' – название категории отеля
+
*** '''Name''' – название варианта
*** '''ID''' – идентификатор категории отеля
+
*** '''ID''' – идентификатор варианта
*** '''Description''' – описание категории отеля
+
*** '''Description''' – описание варианта
*** '''NameLat''' – наименование категории отеля латиницей
+
*** '''NameLat''' – описание варианта латиницей
*** '''Code''' – код категории отеля
+
*** '''Code''' – код варианта
*** '''CodeLat''' – код категории отеля латиницей
+
*** '''CodeLat''' – код варианта латиницей
*** '''Unicode''' – код ISO категории отеля
+
*** '''Unicode''' – код ISO варианта
 +
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
 +
*** '''CountryID''' – ключ страны варианта
  
 
<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>
Вызов метода GetRatings
+
Вызов метода GetServicePackage
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRatings/>
+
       <meg:GetServicePackage/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRatings
+
Возвращаемый результат метода GetServicePackage
 
<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" 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>
 
   <soap:Body>
       <GetRatingsResponse xmlns="http://www.megatec.ru/">
+
       <GetServicePackageResponse xmlns="http://www.megatec.ru/">
         <GetRatingsResult>
+
         <GetServicePackageResult>
             <HotelCategory>
+
             <ServiceList>
               <Name>Not defined</Name>
+
               <Name>5 days in Antique Greece (4 nights)/DBL BB</Name>
               <ID>0</ID>
+
               <ID>21</ID>
 
               <Description/>
 
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
Строка 5672: Строка 5772:
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
             </HotelCategory>
+
              <ServiceClaseID>0</ServiceClaseID>
             <HotelCategory>
+
              <CountryID>4</CountryID>
               <Name>5 stars (Deluxe)</Name>
+
             </ServiceList>
               <ID>2</ID>
+
             <ServiceList>
 +
               <Name>5 days in Antique Greece (4 nights)/DBL HB</Name>
 +
               <ID>148</ID>
 
               <Description/>
 
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
Строка 5681: Строка 5783:
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
             </HotelCategory>
+
              <ServiceClaseID>0</ServiceClaseID>
         </GetRatingsResult>
+
              <CountryID>4</CountryID>
       </GetRatingsResponse>
+
             </ServiceList>
 +
         </GetServicePackageResult>
 +
       </GetServicePackageResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5690: Строка 5794:
 
</div></div><br />
 
</div></div><br />
  
=== GetFlights (Получение списка авиарейсов)===
+
=== GetDLStatuses (Получение списка статусов услуг)===
Метод возвращает список авиарейсов.<br />
+
Метод возвращает список статусов услуг. <br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetFlightsResult''' – результат поиска
+
* '''GetDLStatusesResult''' – результат поиска
** '''Flight''' – массив данных
+
** '''StatusService''' – массив данных
*** '''AirportFrom''' – трансферный узел в пункте отбытия
+
*** '''Name''' – название статуса услуги
**** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
+
*** '''ID''' – идентификатор статуса услуги
**** '''ID''' – идентификатор города трансферного узла
+
*** '''Description''' – описание статуса услуги
**** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
+
*** '''NameLat''' – описание статуса услуги латиницей
**** '''NameLat''' – наименование трансферного узла
+
*** '''Code''' – код статуса услуги
**** '''Code''' – код трансферного узла
+
*** '''CodeLat''' – код статуса услуги латиницей
**** '''CodeLat''' – код трансферного узла латиницей
+
*** '''Unicode''' – код ISO статуса услуги
**** '''Unicode''' – код ISO трансферного узла
+
 
**** '''RegionID''' – идентификатор региона расположения трансферного узла
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
**** '''CityID''' – идентификатор города расположения трансферного узла
+
<div class="mw-collapsible-content">
*** '''AirportTo''' – трансферный узел в пункте прибытия
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
**** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Flight numbers|Flight numbers]]
+
Вызов метода GetDLStatuses
**** '''ID''' – идентификатор города трансферного узла
+
<syntaxhighlight lang="java" enclose="div">
**** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
**** '''NameLat''' – наименование трансферного узла
+
   <soapenv:Header/>
**** '''Code''' – код трансферного узла
+
   <soapenv:Body>
**** '''CodeLat''' – код трансферного узла латиницей
+
       <meg:GetDLStatuses/>
**** '''Unicode''' – код ISO трансферного узла
+
   </soapenv:Body>
**** '''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>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetFlights
+
Возвращаемый результат метода GetDLStatuses
 
<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" 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>
 
   <soap:Body>
       <GetFlightsResponse xmlns="http://www.megatec.ru/">
+
       <GetDLStatusesResponse xmlns="http://www.megatec.ru/">
         <GetFlightsResult>
+
         <GetDLStatusesResult>
             <Flight>
+
             <StatusService>
               <AirportFrom>
+
               <Name>Wait</Name>
                  <Name>Makedonia</Name>
+
              <ID>1</ID>
                  <ID>1000001</ID>
+
              <Description/>
                  <Description>Thessaloniki</Description>
+
              <NameLat>Wait</NameLat>
                  <NameLat/>
+
              <Code/>
                  <Code/>
+
              <CodeLat/>
                  <CodeLat/>
+
              <Unicode/>
                  <Unicode/>
+
            </StatusService>
                  <RegionID>7</RegionID>
+
            <StatusService>
                  <CityID>12</CityID>
+
               <Name>Confirmed</Name>
              </AirportFrom>
+
              <ID>2</ID>
               <AirportTo>
+
              <Description/>
                  <Name>Makedonia</Name>
+
              <NameLat>Confirmed</NameLat>
                  <ID>1000001</ID>
+
               <Code/>
                  <Description>Thessaloniki</Description>
+
               <CodeLat/>
                  <NameLat/>
+
               <Unicode/>
                  <Code/>
+
            </StatusService>
                  <CodeLat/>
+
            <StatusService>
                  <Unicode/>
+
               <Name>Not confirmed</Name>
                  <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>
 
               <ID>4</ID>
               <Name/>
+
               <Description/>
               <Number>NN 283/284 00:01</Number>
+
               <NameLat>Not confirmed</NameLat>
             </Flight>
+
              <Code/>
         </GetFlightsResult>
+
              <CodeLat/>
       </GetFlightsResponse>
+
              <Unicode/>
 +
             </StatusService>
 +
         </GetDLStatusesResult>
 +
       </GetDLStatusesResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5787: Строка 5860:
 
</div></div><br />
 
</div></div><br />
  
=== GetAirport (Получение списка трансферных узлов)===
+
=== GetTariffs (Получение списка тарифов для определенного типа услуг)===
Метод возвращает список трансферных узлов.<br />
+
Метод возвращает тарифы для определенного типа услуг. <br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''SvKey *''' – ключ типа услуги
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetFlightsResult''' – результат поиска
+
* '''GetTariffsResult''' – результат поиска
** '''Airport''' – массив данных
+
** '''Tariff''' – массив данных
*** '''Name''' – название трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
+
*** '''ID''' – идентификатор тарифа
*** '''ID''' – идентификатор трансферного узла
+
*** '''Name''' – наименование тарифа
*** '''Description''' – название города трансферного узла из справочника [[Master-Interlook:Справочники. Pickup point list|Pickup point list]]
+
*** '''Description''' – описание тарифа
*** '''NameLat''' – название города трансферного узла латиницей
+
*** '''NameLat''' – наименование тарифа латиницей
*** '''Code''' – код города трансферного узла латиницей
+
*** '''Code''' – код тарифа
*** '''CodeLat''' – код города трансферного узла латиницей
+
*** '''CodeLat''' – код тарифа латиницей
*** '''Unicode''' – код ISO города трансферного узла латиницей
+
*** '''Unicode''' – код ISO тарифа
*** '''RegionID''' – идентификатор региона расположения трансферного узла
+
*** '''SvKey''' – ключ типа услуги
*** '''CityID''' – идентификатор города расположения трансферного узла
+
*** '''Comment''' – описание
 +
*** '''CreateDate''' – дата создания
  
 
<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>
Вызов метода GetAirport
+
Вызов метода GetTariffs
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetAirport/>
+
       <meg:GetTariffs>
 +
        <!--Optional:-->
 +
        <meg:guid>6ef6eeb2-a766-4a30-92c0-348d5c2afb94</meg:guid>
 +
        <meg:svKey>1</meg:svKey>
 +
      </meg:GetTariffs>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetAirport
+
Возвращаемый результат метода GetTariffs
 
<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" 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>
 
   <soap:Body>
       <GetAirportResponse xmlns="http://www.megatec.ru/">
+
       <GetTariffsResponse xmlns="http://www.megatec.ru/">
         <GetAirportResult>
+
         <GetTariffsResult>
             <Airport>
+
             <Tariff>
               <Name>lalala</Name>
+
               <Name>!A4</Name>
               <ID>3</ID>
+
               <ID>785</ID>
               <Description>Moscow</Description>
+
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
 
               <Code/>
 
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <RegionID>19</RegionID>
+
               <SVKey>1</SVKey>
               <CityID>87</CityID>
+
               <Comment>A</Comment>
             </Airport>
+
              <CreateDate>2018-11-14T00:00:00</CreateDate>
             <Airport>
+
             </Tariff>
               <Name>El.Venizelos</Name>
+
             <Tariff>
               <ID>1004</ID>
+
               <Name>Info Tour</Name>
               <Description>Athens</Description>
+
               <ID>623</ID>
 +
               <Description/>
 
               <NameLat/>
 
               <NameLat/>
 
               <Code/>
 
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
               <RegionID>38</RegionID>
+
               <SVKey>1</SVKey>
               <CityID>55</CityID>
+
               <Comment/>
             </Airport>
+
              <CreateDate>2009-10-01T00:00:00</CreateDate>
         </GetAirportResult>
+
             </Tariff>
       </GetAirportResponse>
+
         </GetTariffsResult>
 +
       </GetTariffsResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5850: Строка 5933:
 
</div></div><br />
 
</div></div><br />
  
=== GetProviders (Получение списка партнеров, которые являются поставщиками услуг)===
+
=== GetRoomDescriptions (Получение массива описаний комнат)===
Метод возвращает список партнеров системы, которые являются поставщиками услуг. <br />
+
Метод возвращает массив описаний комнат.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''RoomTypeId *''' – ключ типа комнаты (0 – для всех)<br />
 +
* '''RoomCategoryId *''' – ключ категории комнаты (0 – для всех)
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetProvidersResult''' – результат поиска
+
* '''GetRoomDescriptionsResult''' – результат поиска
** '''Partner''' – массив данных
+
** '''AdditionalDescription''' – массив данных
*** '''Name''' – название партнера
+
*** '''Name''' – наименование описания комнаты
*** '''ID''' – идентификатор партера
+
*** '''ID''' – идентификатор описания комнаты
*** '''Description''' – описание партнера
+
*** '''Description''' – описание
*** '''NameLat''' – название партнера латиницей
+
*** '''NameLat''' – наименование описания комнаты латиницей
*** '''Code''' – код партнера
+
*** '''Code''' – код описания комнаты
*** '''CodeLat''' – код партнера латиницей
+
*** '''CodeLat''' – код описания комнаты латиницей
*** '''Unicode''' – код ISO партнера
+
*** '''Unicode''' – код ISO описания комнаты
*** '''PartnersGroupID''' – идентификатор группы партнера
 
*** '''FullName''' – полное название партнера
 
*** '''Fax''' – факс партнера
 
*** '''Address''' – адрес партнера
 
*** '''Zip''' –  почтовый код партнера
 
*** '''Email''' – e-mail партнера
 
*** '''Phones''' – телефоны партнера
 
  
 
<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>
Вызов метода GetProviders
+
Вызов метода GetRoomDescriptions
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetProviders/>
+
       <meg:GetRoomDescriptions>
 +
        <meg:roomTypeId>7</meg:roomTypeId>
 +
        <meg:roomCategoryId>7</meg:roomCategoryId>
 +
      </meg:GetRoomDescriptions>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetProviders
+
Возвращаемый результат метода GetRoomDescriptions
 
<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" 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>
 
   <soap:Body>
       <GetProvidersResponse xmlns="http://www.megatec.ru/">
+
       <GetRoomDescriptionsResponse xmlns="http://www.megatec.ru/">
         <GetProvidersResult>
+
         <GetRoomDescriptionsResult>
             <Partner>
+
             <AdditionalDescription>
               <Name>&lt;All></Name>
+
               <Name>Family Room Golf View</Name>
               <ID>0</ID>
+
               <ID>1368</ID>
 
               <Description/>
 
               <Description/>
               <NameLat>&lt;All></NameLat>
+
               <NameLat/>
               <Code>&lt;AL</Code>
+
               <Code/>
 
               <CodeLat/>
 
               <CodeLat/>
 
               <Unicode/>
 
               <Unicode/>
              <PartnersGroupID>0</PartnersGroupID>
+
             </AdditionalDescription>
              <FullName>&lt;All></FullName>
+
         </GetRoomDescriptionsResult>
              <Fax/>
+
       </GetRoomDescriptionsResponse>
              <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5928: Строка 5987:
 
</div></div><br />
 
</div></div><br />
  
=== GetTransports (Получение списка транспортных средств)===
+
=== GetAccommodations (Получение размещения отелей)===
Метод возвращает список транспортных средств. <br />
+
Метод возвращает размещения отелей.<br />
 +
Принимаемые параметры запроса ( * – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetTransportsResult''' – результат поиска
+
* '''GetAccommodationsResult''' – результат поиска
** '''Transport''' – массив данных
+
** '''Message''' – идентификатор размещения
*** '''Name''' – название транспортного средства
+
** '''Data''' – массив объектов с данными
*** '''ID''' – идентификатор транспортного средства
+
*** '''AccomodationInfo''' – массив данных с размещением
*** '''Description''' – описание транспортного средства
+
**** '''Id''' – идентификатор размещения
*** '''NameLat''' – название транспортного средства латиницей
+
**** '''Code''' – код размещения
*** '''Code''' – код транспортного средства
+
**** '''Name''' – название размещения
*** '''CodeLat''' – код транспортного средства латиницей
+
**** '''IsPerRoom''' – за комнату или за человека
*** '''Unicode''' – код ISO транспортного средства
+
**** '''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="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>
Вызов метода GetTransports
+
Вызов метода GetAccommodations
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetTransports/>
+
       <meg:GetAccommodations>
 +
        <!--Optional:-->
 +
        <meg:guid>1b972765-0318-4ca3-9437-cefa99a3959d</meg:guid>
 +
      </meg:GetAccommodations>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetTransports
+
Возвращаемый результат метода GetAccommodations
 
<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" 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>
 
   <soap:Body>
       <GetTransportsResponse xmlns="http://www.megatec.ru/">
+
       <GetAccommodationsResponse xmlns="http://www.megatec.ru/">
         <GetTransportsResult>
+
         <GetAccommodationsResult Message="Ok">
             <Transport>
+
             <Data>
              <Name>Not defined</Name>
+
            <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">
              <ID>0</ID>
+
                  <ChildrenAgesList>
              <Description/>
+
                    <AccomadationAge Id="6664" AgeFrom="3" AgeTo="12" CountMen="2" IsMain="true" UpdateDate="2020-04-10T18:25:09.293"/>
              <NameLat>Not defined</NameLat>
+
                  </ChildrenAgesList>
              <Code/>
+
               </AccomodationInfo>
              <CodeLat/>
+
             </Data>
              <Unicode/>
+
         </GetAccommodationsResult>
            </Transport>
+
       </GetAccommodationsResponse>
            <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 5994: Строка 6054:
 
</div></div><br />
 
</div></div><br />
  
=== GetTransferTypes (Получение списка типов трансферов)===
+
=== GetRoomAccommodations (Получение размещения отелей и первых 2 значений возрастов из списка возрастов детей)===
Метод возвращает список типов трансферов. <br />
+
Метод возвращает размещения отелей и первые 2 значения возрастов из списка возрастов детей.<br />
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetTransferTypesResult''' – результат поиска
+
* '''GetRoomAccommodationsResult''' – результат поиска
** '''Transport''' – массив данных
+
** '''RoomAccomodation''' – массив данных
*** '''Name''' – название трансфера
+
*** '''Name''' – название размещения
*** '''ID''' – идентификатор трансфера
+
*** '''ID''' – идентификатор размещения
*** '''Description''' – описание трансфера
+
*** '''Description''' – описание размещения
*** '''NameLat''' – наименование трансфера латиницей
+
*** '''NameLat''' – наименование размещения латиницей
*** '''Code''' – код трансфера
+
*** '''Code''' – код размещения
*** '''CodeLat''' – код трансфера латиницей
+
*** '''CodeLat''' – код размещения латиницей
*** '''Unicode''' – код ISO трансфера
+
*** '''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="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>
Вызов метода GetTransferTypes
+
Вызов метода GetRoomAccommodations
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetTransferTypes/>
+
       <meg:GetRoomAccommodations/>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetTransferTypes
+
Возвращаемый результат метода GetRoomAccommodations
 
<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" 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>
 
   <soap:Body>
       <GetTransferTypesResponse xmlns="http://www.megatec.ru/">
+
       <GetRoomAccommodationsResponse xmlns="http://www.megatec.ru/">
         <GetTransferTypesResult>
+
         <GetRoomAccommodationsResult>
             <Transport>
+
             <RoomAccomodation>
               <Name>Group</Name>
+
               <Name>2Add</Name>
               <ID>2</ID>
+
               <ID>15</ID>
 
               <Description/>
 
               <Description/>
               <NameLat>Group</NameLat>
+
               <NameLat/>
               <Code/>
+
               <Code>2+</Code>
 
               <CodeLat/>
 
               <CodeLat/>
               <Unicode/>
+
               <Unicode>2Ad+1Ch(3-5)</Unicode>
             </Transport>
+
              <PerRoom>true</PerRoom>
             <Transport>
+
              <AdultMainPalces>2</AdultMainPalces>
               <Name>Ind Car</Name>
+
              <ChildMainPalces>4</ChildMainPalces>
               <ID>3</ID>
+
              <AdultExtraPalces>0</AdultExtraPalces>
               <Description/>
+
              <ChildExtraPalces>0</ChildExtraPalces>
               <NameLat>Ind Car</NameLat>
+
              <MainPlaces>6</MainPlaces>
               <Code/>
+
              <ExtraPlaces>0</ExtraPlaces>
               <CodeLat/>
+
              <IsMain>true</IsMain>
               <Unicode/>
+
              <AgeFrom>3</AgeFrom>
             </Transport>
+
              <AgeTo>5</AgeTo>
         </GetTransferTypesResult>
+
              <Age2From>0</Age2From>
       </GetTransferTypesResponse>
+
              <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 6051: Строка 6147:
 
</div></div><br />
 
</div></div><br />
  
=== GetRates (Получение списка валют)===
+
===GetClientInfo (Выдача информации по партнёру, к которому относится on-line user)===
Метод возвращает список валют. <br />
+
Метод выдает информацию по партнёру, к которому относится on-line user, под которым осуществлен запрос в методе [[#Connect (Получение аутентификационного токена)|Connect]].<br />
Возвращаемый результат:<br />
+
Принимаемые параметры запроса ( * – обязательный):
* '''GetRatesResult''' результат поиска
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[#Connect (Получение аутентификационного токена)|Connect]])<br />
** '''Rate''' – массив данных
+
Возвращаемый результат:
*** '''Name''' – название валюты
+
* '''Name''' – наименование партнера
*** '''ID''' – идентификатор валюты
+
* '''MarketName''' – перечень рынков из карточки партнера
*** '''Description''' – описание валюты
+
* '''Address''' – адрес из карточки партнера
*** '''NameLat''' – описание валюты латиницей
 
*** '''Code''' – код валюты
 
*** '''CodeLat''' – код валюты латиницей
 
*** '''Unicode''' – код ISO валюты
 
*** '''IsMain''' – признак валюты "главная"
 
*** '''IsNational''' – признак валюты «национальная»
 
  
 
<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>
Вызов метода GetRates
+
Вызов метода GetClientInfo
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRates/>
+
       <meg:GetClientInfo>
 +
        <!--Optional:-->
 +
        <meg:guid>6851ab74-f299-4668-ade8-b8e125b7ad61</meg:guid>
 +
      </meg:GetClientInfo>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRates
+
 
 +
Возвращаемый результат метода GetClientInfo
 
<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" 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>
 
   <soap:Body>
       <GetRatesResponse xmlns="http://www.megatec.ru/">
+
       <GetClientInfoResponse xmlns="http://www.megatec.ru/">
         <GetRatesResult>
+
         <GetClientInfoResult Message="Ok">
             <Rate>
+
             <Data>
              <Name>Euro</Name>
+
               <ClientInfo>
              <ID>1</ID>
+
                  <Name>Alpha Tour</Name>
              <Description/>
+
                  <MarketName>Russian Market</MarketName>
              <NameLat/>
+
                  <Address>Belarus,Minsk,Pobediteley street 23/1-115a A</Address>
              <Code>EU</Code>
+
               </ClientInfo>
              <CodeLat/>
+
             </Data>
              <Unicode>EUR</Unicode>
+
         </GetClientInfoResult>
              <IsMain>false</IsMain>
+
       </GetClientInfoResponse>
               <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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 6114: Строка 6193:
 
</div></div><br />
 
</div></div><br />
  
=== GetServicePackage (Получение списка вариантов пакетных услуг)===
+
==Методы интеграции с системами оплаты==
Метод возвращает список вариантов пакетных услуг. <br />
+
=== GetReservationPenalties (Получение штрафов по путевке до того, как ее аннулировать)===
 +
Метод возвращает размеры штрафов по путевке до того, как ее аннулировать.<br />
 +
Работа метода регулируется лицензией.<br />  
 +
Принимаемые параметры запроса (* – обязательный):
 +
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''ReservationKey *''' – ключ путевки
 +
* '''CancellationDate''' – дата аннуляции, на которую выдается условие и сумма штрафа. Если не указана, то получаем все возможные правила аннуляции вплоть до заезда.
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetServicePackageResult''' – результат поиска
+
* '''GetReservationPenaltiesResult''' – результат поиска
** '''ServiceList''' – массив данных
+
** '''Penalty''' – штраф
*** '''Name''' – название варианта
+
*** '''ServicePenalty''' – сервис штрафов
*** '''ID''' – идентификатор варианта
+
**** '''ServiceClassID'''
*** '''Description''' – описание варианта
+
**** '''ID''' – идентификатор штрафа
*** '''NameLat''' – описание варианта латиницей
+
**** '''Name''' – наименование штрафа
*** '''Code''' – код варианта
+
**** '''PenaltyData''' – массив данных штрафа
*** '''CodeLat''' – код варианта латиницей
+
***** '''PenaltyDataInfo''' – массив данных
*** '''Unicode''' – код ISO варианта
+
****** '''TotalPenalty''' – полная сумма штрафа
*** '''ServiceClaseID''' – идентификатор класса дополнительной услуги
+
****** '''RateCode''' – код валюты
*** '''CountryID''' – ключ страны варианта
+
****** '''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="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>
Вызов метода GetServicePackage
+
Вызов метода GetReservationPenalties
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetServicePackage/>
+
       <meg:GetReservationPenalties>
   </soapenv:Body>
+
        <!--Optional:-->
 +
        <meg:guid>9d041308-0e4c-4d07-8486-9e2293f1de75</meg:guid>
 +
        <meg:reservationKey>36080</meg:reservationKey>
 +
        </meg:GetReservationPenalties>
 +
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetServicePackage
+
Возвращаемый результат метода GetReservationPenalties
 
<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" 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>
 
   <soap:Body>
       <GetServicePackageResponse xmlns="http://www.megatec.ru/">
+
       <GetReservationPenaltiesResponse xmlns="http://www.megatec.ru/">
         <GetServicePackageResult>
+
         <GetReservationPenaltiesResult>
             <ServiceList>
+
             <Penalty>
               <Name>5 days in Antique Greece (4 nights)/DBL BB</Name>
+
               <ServicePenalty xsi:type="HotelPenalty">
              <ID>21</ID>
+
                  <ServiceClassID>0</ServiceClassID>
              <Description/>
+
                  <ID>164217</ID>
              <NameLat/>
+
                  <Name>HTL::Delphi/Fedriades Hotel /Double Room/2AD/100 m2/BB</Name>
              <Code/>
+
                  <PenaltyData>
              <CodeLat/>
+
                    <PenaltyDataInfo>
              <Unicode/>
+
                        <TotalPenalty>0</TotalPenalty>
              <ServiceClaseID>0</ServiceClaseID>
+
                        <RateCode>EU</RateCode>
              <CountryID>4</CountryID>
+
                        <PolicyDescription>If canceled before 01.09.2021, no penalty Penalty value is 0.00 EU</PolicyDescription>
            </ServiceList>
+
                        <CancellationPolicyData>
            <ServiceList>
+
                          <PolicyKey>-1</PolicyKey>
              <Name>5 days in Antique Greece (4 nights)/DBL HB</Name>
+
                          <DateFrom xsi:nil="true"/>
              <ID>148</ID>
+
                          <DateTo>2021-09-01T00:00:00</DateTo>
              <Description/>
+
                          <PenaltyValue>0</PenaltyValue>
              <NameLat/>
+
                          <IsPercent>false</IsPercent>
              <Code/>
+
                        </CancellationPolicyData>
              <CodeLat/>
+
                    </PenaltyDataInfo>
              <Unicode/>
+
                    <PenaltyDataInfo>
              <ServiceClaseID>0</ServiceClaseID>
+
                        <TotalPenalty>17.76</TotalPenalty>
              <CountryID>4</CountryID>
+
                        <RateCode>EU</RateCode>
            </ServiceList>
+
                        <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>
        </GetServicePackageResult>
+
                        <CancellationPolicyData>
      </GetServicePackageResponse>
+
                          <PolicyKey>73</PolicyKey>
  </soap:Body>
+
                          <DateFrom>2021-09-01T00:00:00</DateFrom>
</soap:Envelope>
+
                          <DateTo xsi:nil="true"/>
</syntaxhighlight>
+
                          <PenaltyValue>2</PenaltyValue>
</TD></TR></TABLE>
+
                          <IsPercent>true</IsPercent>
</div></div><br />
+
                        </CancellationPolicyData>
 
+
                    </PenaltyDataInfo>
=== GetDLStatuses (Получение списка статусов услуг)===
+
                  </PenaltyData>
Метод возвращает список статусов услуг. <br />
+
                  <Hotel>
Возвращаемый результат:<br />
+
                    <ID>2426</ID>
* '''GetDLStatusesResult''' – результат поиска
+
                    <Name>Fedriades Hotel</Name>
** '''StatusService''' – массив данных
+
                  </Hotel>
*** '''Name''' – название статуса услуги
+
                  <RoomType>
*** '''ID''' – идентификатор статуса услуги
+
                    <ID>3</ID>
*** '''Description''' – описание статуса услуги
+
                    <Name>Double Room</Name>
*** '''NameLat''' – описание статуса услуги латиницей
+
                  </RoomType>
*** '''Code''' – код статуса услуги
+
                  <RoomCategory>
*** '''CodeLat''' – код статуса услуги латиницей
+
                    <ID>47</ID>
*** '''Unicode''' – код ISO статуса услуги
+
                    <Name>100 m2</Name>
 
+
                  </RoomCategory>
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
+
                  <Accommodation>
<div class="mw-collapsible-content">
+
                    <ID>5558</ID>
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
+
                    <Name>2Ad</Name>
Вызов метода GetDLStatuses
+
                  </Accommodation>
<syntaxhighlight lang="java" enclose="div">
+
                  <Pansion>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
+
                    <ID>3</ID>
  <soapenv:Header/>
+
                    <Name>Bed and Breakfast</Name>
  <soapenv:Body>
+
                  </Pansion>
      <meg:GetDLStatuses/>
+
              </ServicePenalty>
  </soapenv:Body>
+
              <ServicePenalty>
</soapenv:Envelope>
+
                  <ServiceClassID>2</ServiceClassID>
</syntaxhighlight>
+
                  <ID>164218</ID>
Возвращаемый результат метода GetDLStatuses
+
                  <Name>TRF::Arrival transfer/Mini Bus/El.Venizelos-Fedriades Hotel /Delphi/!AA 910</Name>
<syntaxhighlight lang="java" enclose="div">
+
                  <PenaltyData>
<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">
+
                    <PenaltyDataInfo>
  <soap:Body>
+
                        <TotalPenalty>0</TotalPenalty>
      <GetDLStatusesResponse xmlns="http://www.megatec.ru/">
+
                        <RateCode/>
        <GetDLStatusesResult>
+
                        <PolicyDescription/>
            <StatusService>
+
                    </PenaltyDataInfo>
              <Name>Wait</Name>
+
                  </PenaltyData>
              <ID>1</ID>
+
              </ServicePenalty>
              <Description/>
+
              <ServicePenalty>
              <NameLat>Wait</NameLat>
+
                  <ServiceClassID>5</ServiceClassID>
              <Code/>
+
                  <ID>164219</ID>
               <CodeLat/>
+
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
               <Unicode/>
+
                  <PenaltyData>
            </StatusService>
+
                    <PenaltyDataInfo>
            <StatusService>
+
                        <TotalPenalty>270</TotalPenalty>
              <Name>Confirmed</Name>
+
                        <RateCode>EU</RateCode>
              <ID>2</ID>
+
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
              <Description/>
+
                        <CancellationPolicyData>
              <NameLat>Confirmed</NameLat>
+
                          <PolicyKey>0</PolicyKey>
              <Code/>
+
                          <DateFrom xsi:nil="true"/>
              <CodeLat/>
+
                          <DateTo xsi:nil="true"/>
              <Unicode/>
+
                          <PenaltyValue>0</PenaltyValue>
            </StatusService>
+
                          <IsPercent>false</IsPercent>
            <StatusService>
+
                        </CancellationPolicyData>
              <Name>Not confirmed</Name>
+
                    </PenaltyDataInfo>
              <ID>4</ID>
+
                  </PenaltyData>
              <Description/>
+
              </ServicePenalty>
              <NameLat>Not confirmed</NameLat>
+
              <ServicePenalty>
               <Code/>
+
                  <ServiceClassID>5</ServiceClassID>
               <CodeLat/>
+
                  <ID>164220</ID>
              <Unicode/>
+
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
            </StatusService>
+
                  <PenaltyData>
        </GetDLStatusesResult>
+
                    <PenaltyDataInfo>
      </GetDLStatusesResponse>
+
                        <TotalPenalty>270</TotalPenalty>
  </soap:Body>
+
                        <RateCode>EU</RateCode>
</soap:Envelope>
+
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
</syntaxhighlight>
+
                        <CancellationPolicyData>
</TD></TR></TABLE>
+
                          <PolicyKey>0</PolicyKey>
</div></div><br />
+
                          <DateFrom xsi:nil="true"/>
 
+
                          <DateTo xsi:nil="true"/>
=== GetTariffs (Получение списка тарифов для определенного типа услуг)===
+
                          <PenaltyValue>0</PenaltyValue>
Метод возвращает тарифы для определенного типа услуг. <br />
+
                          <IsPercent>false</IsPercent>
Принимаемые параметры запроса ( * – обязательный):
+
                        </CancellationPolicyData>
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
+
                    </PenaltyDataInfo>
* '''SvKey *''' – ключ типа услуги
+
                  </PenaltyData>
Возвращаемый результат:<br />
+
               </ServicePenalty>
* '''GetTariffsResult''' – результат поиска
+
               <ServicePenalty>
** '''Tariff''' – массив данных
+
                  <ServiceClassID>5</ServiceClassID>
*** '''ID''' – идентификатор тарифа
+
                  <ID>164222</ID>
*** '''Name''' – наименование тарифа
+
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
*** '''Description''' – описание тарифа
+
                  <PenaltyData>
*** '''NameLat''' – наименование тарифа латиницей
+
                    <PenaltyDataInfo>
*** '''Code''' – код тарифа
+
                        <TotalPenalty>100</TotalPenalty>
*** '''CodeLat''' – код тарифа латиницей
+
                        <RateCode>EU</RateCode>
*** '''Unicode''' – код ISO тарифа
+
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
*** '''SvKey''' – ключ типа услуги
+
                        <CancellationPolicyData>
*** '''Comment''' – описание
+
                          <PolicyKey>0</PolicyKey>
*** '''CreateDate''' – дата создания
+
                          <DateFrom xsi:nil="true"/>
 
+
                          <DateTo xsi:nil="true"/>
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
+
                          <PenaltyValue>0</PenaltyValue>
<div class="mw-collapsible-content">
+
                          <IsPercent>false</IsPercent>
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
+
                        </CancellationPolicyData>
Вызов метода GetTariffs
+
                    </PenaltyDataInfo>
<syntaxhighlight lang="java" enclose="div">
+
                  </PenaltyData>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
+
               </ServicePenalty>
  <soapenv:Header/>
+
               <ServicePenalty>
  <soapenv:Body>
+
                  <ServiceClassID>5</ServiceClassID>
      <meg:GetTariffs>
+
                  <ID>164223</ID>
        <!--Optional:-->
+
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
        <meg:guid>6ef6eeb2-a766-4a30-92c0-348d5c2afb94</meg:guid>
+
                  <PenaltyData>
         <meg:svKey>1</meg:svKey>
+
                    <PenaltyDataInfo>
       </meg:GetTariffs>
+
                        <TotalPenalty>100</TotalPenalty>
   </soapenv:Body>
+
                        <RateCode>EU</RateCode>
</soapenv:Envelope>
+
                        <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>
 
</syntaxhighlight>
Возвращаемый результат метода GetTariffs
+
</TD></TR></TABLE>
<syntaxhighlight lang="java" enclose="div">
+
</div></div><br />
<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>
+
===CreatePayment (Создание платежа по путевке)===
      <GetTariffsResponse xmlns="http://www.megatec.ru/">
+
Метод создает платеж по путевке.<br />
        <GetTariffsResult>
+
Принимаемые параметры запроса (* – обязательный):
            <Tariff>
+
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
              <Name>!A4</Name>
+
* '''Date *''' – дата создания платежа
              <ID>785</ID>
+
* '''Sum *''' – сумма платежа
              <Description/>
+
* '''CurrencyIsoCode *''' – ISO код валюты платежа
              <NameLat/>
+
* '''ReservationCode *''' – код путевки
              <Code/>
+
* '''PaymentId *''' – идентификатор платежа (задается вручную для последующего идентифицирования платежа). Уникальный код, указывается пользователем один раз, не должен повторяться при следующей оплате по данной заявке.
              <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 />
 
Возвращаемый результат:<br />
* '''GetRoomDescriptionsResult''' – результат поиска
+
* '''CreatePaymentResult''' – результат выдачи
** '''AdditionalDescription''' – массив данных
+
** '''0''' – NoError – ошибок нет
*** '''Name''' – наименование описания комнаты
+
** '''1''' – DogovorNotFound – путевка с таким кодом не найдена
*** '''ID''' – идентификатор описания комнаты
+
** '''2''' – InternalError – внутренняя ошибка
*** '''Description''' – описание
+
** '''3''' – DogovorAnnulate – путевка аннулирована
*** '''NameLat''' – наименование описания комнаты латиницей
+
** '''4''' – DogovorPayed – путевка оплачена
*** '''Code''' – код описания комнаты
+
** '''7''' – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
*** '''CodeLat''' – код описания комнаты латиницей
+
** '''8''' – IncorrectPaymentType – по путевке есть платежи запрещенных типов
*** '''Unicode''' – код ISO описания комнаты
+
** '''9''' – NotAllowedPartnerKey – партнер по путевке не разрешен
 +
** '''10''' – FailureSignature – ошибка подписи
 +
** '''11''' – NoInvoices – нет инвойсов (счетов) по путевке
  
 
<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>
Вызов метода GetRoomDescriptions
+
Вызов метода CreatePayment
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRoomDescriptions>
+
       <meg:CreatePayment>
         <meg:roomTypeId>7</meg:roomTypeId>
+
        <!--Optional:-->
         <meg:roomCategoryId>7</meg:roomCategoryId>
+
        <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
       </meg:GetRoomDescriptions>
+
        <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:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRoomDescriptions
+
Возвращаемый результат метода CreatePayment
 
<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" 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>
 
   <soap:Body>
       <GetRoomDescriptionsResponse xmlns="http://www.megatec.ru/">
+
       <CreatePaymentResponse xmlns="http://www.megatec.ru/">
         <GetRoomDescriptionsResult>
+
         <CreatePaymentResult>0</CreatePaymentResult>
            <AdditionalDescription>
+
       </CreatePaymentResponse>
              <Name>Family Room Golf View</Name>
 
              <ID>1368</ID>
 
              <Description/>
 
              <NameLat/>
 
              <Code/>
 
              <CodeLat/>
 
              <Unicode/>
 
            </AdditionalDescription>
 
        </GetRoomDescriptionsResult>
 
       </GetRoomDescriptionsResponse>
 
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 6370: Строка 6486:
 
</div></div><br />
 
</div></div><br />
  
=== GetAccommodations (Получение размещения отелей)===
+
===GetPaymentInformation (Поиск информации о платеже с заданным идентификатором платежа из внешней системы)===
Метод возвращает размещения отелей.<br />
+
Метод возвращает информацию о платеже с заданным идентификатором платежа из внешней системы.<br />
Принимаемые параметры запроса ( * – обязательный):
+
Принимаемые параметры запроса (* – обязательный):
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
+
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 +
* '''ReservationCode *''' – код путевки
 +
* '''ExternalPaymentId *''' – идентификатор платежа (Параметр PaymentId в запросе метода [[Master-Interlook:IntegrationService#CreatePayment|CreatePayment]])
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetAccommodationsResult''' – результат поиска
+
* '''GetPaymentInformationResult''' – результат выдачи
** '''Message''' – идентификатор размещения
+
** '''IsPaymentExists''' – показывает, есть ли запрошенный платеж
** '''Data''' – массив объектов с данными
+
*** '''true''' – платеж с указанным идентификатором по указанной путевке существует
*** '''AccomodationInfo''' – массив данных с размещением
+
*** '''false''' – запрошенного платежа нет
**** '''Id''' – идентификатор размещения
+
** '''PaymentInformationResult''' – массив данных платежа
**** '''Code''' – код размещения
+
*** '''InternalPaymentId''' – идентификатор платежа в системе Interlook,
**** '''Name''' – название размещения
+
*** '''DogovorCode''' – код путевки,
**** '''IsPerRoom''' – за комнату или за человека
+
*** '''PaymentSum''' – сумма платежа,
**** '''NameUnicode''' – название размещения в Unicode
+
*** '''PaymentNationalSum''' – сумма платежа в национальной валюте,
**** '''CountAdultMain''' – количество взрослых на главном месте
+
*** '''PaymentRateISOCode''' – ISO код валюты платежа
**** '''CountChildMain''' – количество детей на главном месте
+
*** '''CreateDate''' – дата проведения платежа
**** '''CountAdultExtra''' – количество взрослых на доп. месте
+
** '''ErrorCode''' – код ошибки
**** '''CountChildExtra''' – количество детей на доп. месте
+
*** '''0''' – NoError – ошибок нет
**** '''ChildrenAges''' – строка с описание возрастов детей
+
*** '''1''' – DogovorNotFound – путевка с таким кодом не найдена
**** '''IsWeb''' – доступность для Interlook-Web
+
*** '''2''' – InternalError – внутренняя ошибка
**** '''IsPackage''' – можно ли добавлять в пакет
+
*** '''3''' – DogovorAnnulate – путевка аннулирована
**** '''UpdateDate''' – дата последнего обновления размещения
+
*** '''4''' – DogovorPayed – путевка оплачена
**** '''ClildrenAgesList''' – список с возрастами детей
+
*** '''7''' – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
***** '''AccomadationAge''' – массив данных с возрастом
+
*** '''8''' – IncorrectPaymentType – по путевке есть платежи запрещенных типов
****** '''Id''' – идентификатор записи
+
*** '''9''' – NotAllowedPartnerKey партнер по путевке не разрешен
****** '''AgeFrom''' возраст «с»
+
*** '''10''' – FailureSignature ошибка подписи
****** '''AgeTo''' – возраст «по»
+
*** '''11''' – NoInvoices нет инвойсов (счетов) по путевке
****** '''CountMen''' количество взрослых в размещении
 
****** '''IsMain''' – на главном ли месте ребенок этого возраста
 
****** '''UpdateDate''' дата последнего обновления записи
 
  
 
<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>
Вызов метода GetAccommodations
+
Вызов метода GetPaymentInformation
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetAccommodations>
+
       <meg:GetPaymentInformation>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>1b972765-0318-4ca3-9437-cefa99a3959d</meg:guid>
+
         <meg:userToken>96ce5daf-f8ca-4dd9-a114-ede84d1d1608</meg:userToken>
       </meg:GetAccommodations>
+
        <!--Optional:-->
 +
        <meg:reservationCode>MT110919A0K</meg:reservationCode>
 +
        <!--Optional:-->
 +
        <meg:externalPaymentId>12</meg:externalPaymentId>
 +
       </meg:GetPaymentInformation>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetAccommodations
+
Возвращаемый результат метода GetPaymentInformation
 
<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" 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>
 
   <soap:Body>
       <GetAccommodationsResponse xmlns="http://www.megatec.ru/">
+
       <GetPaymentInformationResponse xmlns="http://www.megatec.ru/">
         <GetAccommodationsResult Message="Ok">
+
         <GetPaymentInformationResult>
             <Data>
+
            <IsPaymentExists>true</IsPaymentExists>
            <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">
+
             <PaymentsShortInformation>
                  <ChildrenAgesList>
+
              <InternalPaymentId>1997</InternalPaymentId>
                    <AccomadationAge Id="6664" AgeFrom="3" AgeTo="12" CountMen="2" IsMain="true" UpdateDate="2020-04-10T18:25:09.293"/>
+
              <DogovorCode>MT110919A0K</DogovorCode>
                  </ChildrenAgesList>
+
              <PaymentSum>150</PaymentSum>
              </AccomodationInfo>
+
              <PaymentNationalSum>150</PaymentNationalSum>
            </Data>
+
              <PaymentRateISOCode>EUR</PaymentRateISOCode>
         </GetAccommodationsResult>
+
              <CreateDate>2021-09-13T18:17:20.837</CreateDate>
       </GetAccommodationsResponse>
+
            </PaymentsShortInformation>
 +
            <ErrorCode>0</ErrorCode>
 +
         </GetPaymentInformationResult>
 +
       </GetPaymentInformationResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 6437: Строка 6559:
 
</div></div><br />
 
</div></div><br />
  
=== GetRoomAccommodations (Получение размещения отелей и первых 2 значений возрастов из списка возрастов детей)===
+
===GetCancellationPolicyInfoWithPenalty (Получение информации по расчету штрафов по отелю ) ===
Метод возвращает размещения отелей и первые 2 значения возрастов из списка возрастов детей.<br />
+
<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 />
 
Возвращаемый результат:<br />
* '''GetRoomAccommodationsResult''' – результат поиска
+
* '''GetCancellationPolicyInfoWithPenaltyResult''' – результат выдачи
** '''RoomAccomodation''' – массив данных
+
** '''CancellationPolicyInfoWithPenalty''' – массив данных
*** '''Name''' – название размещения
+
*** '''HotelKey''' – идентификатор отеля
*** '''ID''' – идентификатор размещения
+
*** '''HotelName''' – наименование отеля
*** '''Description''' – описание размещения
+
*** '''AccomodatioKey''' – идентификатор размещения
*** '''NameLat''' – наименование размещения латиницей
+
*** '''AccomodatioName''' – наименование размещения
*** '''Code''' – код размещения
+
*** '''RoomTypeKey''' – идентификатор типа комнаты
*** '''CodeLat''' – код размещения латиницей
+
*** '''RoomTypeName''' – наименование типа комнаты
*** '''Unicode''' – код ISO размещения
+
*** '''RoomCategoryKey''' – идентификатор категории номера
*** '''PerRoom''' – за комнату
+
*** '''RoomCategoryName''' – наименование категории номера
*** '''AdultMainPalces''' – количество взрослых основных мест
+
*** '''PansionKey''' – идентификатор питания
*** '''ChildMainPalces''' – количество детских основных мест
+
*** '''PansionName''' – наименование питания
*** '''AdultExtraPalces''' – количество взрослых дополнительных мест
+
*** '''PolicyDescripion''' – описание политики аннуляции и полной суммы штрафа
*** '''ChildExtraPalces''' – количество детских дополнительных мест
+
*** '''CancellationDate''' – дата аннуляции
*** '''MainPlaces''' – количество основных мест
+
*** '''PolicyData''' – массив данных
*** '''ExtraPlaces''' – количество дополнительных мест
+
**** '''CancellationPolicyWithPenaltyValue''' – массив данных по расчету штрафа
*** '''IsMain''' – есть ли основные места
+
***** '''PolicyKey''' – ключ политики
*** '''AgeFrom''' – возраст детей «с»
+
***** '''DateFrom''' – дата "от"
*** '''AgeTo''' – возраст детей «по»
+
***** '''DateTo''' – не задана
*** '''Age2From''' – возраст детей «с»
+
***** '''PenaltyValue''' – значение штрафа
*** '''Age2To''' – возраст детей «по»
+
***** '''IsPercent''' – параметр, указывающий, что штраф в "%" (true) или в "ночах" (false)
 +
***** '''PenaltyTotal''' – общая сумма штрафа
  
 
<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>
Вызов метода GetRoomAccommodations
+
Вызов метода GetCancellationPolicyInfoWithPenalty
<syntaxhighlight lang="java" enclose="div">
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetRoomAccommodations/>
+
       <meg:GetCancellationPolicyInfoWithPenalty>
   </soapenv:Body>
+
      <!--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>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetRoomAccommodations
+
Возвращаемый результат метода GetCancellationPolicyInfoWithPenalty
 
<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" 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>
 
   <soap:Body>
       <GetRoomAccommodationsResponse xmlns="http://www.megatec.ru/">
+
       <GetCancellationPolicyInfoWithPenaltyResponse xmlns="http://www.megatec.ru/">
         <GetRoomAccommodationsResult>
+
         <GetCancellationPolicyInfoWithPenaltyResult Message="Ok">
             <RoomAccomodation>
+
             <Data>
               <Name>2Add</Name>
+
               <CancellationPolicyInfoWithPenalty>
              <ID>15</ID>
+
                  <HotelKey>2942</HotelKey>
              <Description/>
+
                  <HotelName>Green (Kiev) Not defined</HotelName>
              <NameLat/>
+
                  <AccomodatioKey>5558</AccomodatioKey>
              <Code>2+</Code>
+
                  <AccomodatioName>2AD</AccomodatioName>
              <CodeLat/>
+
                  <RoomTypeKey>3</RoomTypeKey>
              <Unicode>2Ad+1Ch(3-5)</Unicode>
+
                  <RoomTypeName>Double Room</RoomTypeName>
              <PerRoom>true</PerRoom>
+
                  <RoomCategoryKey>20</RoomCategoryKey>
              <AdultMainPalces>2</AdultMainPalces>
+
                  <RoomCategoryName>Jakuzzi</RoomCategoryName>
              <ChildMainPalces>4</ChildMainPalces>
+
                  <PansionKey>3</PansionKey>
              <AdultExtraPalces>0</AdultExtraPalces>
+
                  <PansionName>BB</PansionName>
              <ChildExtraPalces>0</ChildExtraPalces>
+
                  <PolicyDescripion>
              <MainPlaces>6</MainPlaces>
+
                    <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>
              <ExtraPlaces>0</ExtraPlaces>
+
                    <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>
              <IsMain>true</IsMain>
+
                  </PolicyDescripion>
              <AgeFrom>3</AgeFrom>
+
                  <CancellationDate>2021-11-30T00:00:00</CancellationDate>
              <AgeTo>5</AgeTo>
+
                  <PolicyData>
              <Age2From>0</Age2From>
+
                    <CancellationPolicyWithPenaltyValue>
              <Age2To>0</Age2To>
+
                        <PolicyKey>166</PolicyKey>
            </RoomAccomodation>
+
                        <DateFrom>2021-11-30T00:00:00</DateFrom>
            <RoomAccomodation>
+
                        <DateTo>2021-11-30T00:00:00</DateTo>
              <Name>1Ad+1inf</Name>
+
                        <PenaltyValue>2</PenaltyValue>
              <ID>16</ID>
+
                        <IsPercent>false</IsPercent>
              <Description/>
+
                        <PenaltyTotal>690</PenaltyTotal>
              <NameLat/>
+
                        <Currency>EU</Currency>
              <Code>1Ad+1inf</Code>
+
                    </CancellationPolicyWithPenaltyValue>
              <CodeLat/>
+
                    <CancellationPolicyWithPenaltyValue>
              <Unicode>1Ad</Unicode>
+
                        <PolicyKey>-1</PolicyKey>
              <PerRoom>true</PerRoom>
+
                        <DateFrom>2021-12-01T00:00:00</DateFrom>
              <AdultMainPalces>1</AdultMainPalces>
+
                        <DateTo xsi:nil="true"/>
              <ChildMainPalces>0</ChildMainPalces>
+
                        <PenaltyValue>100</PenaltyValue>
              <AdultExtraPalces>0</AdultExtraPalces>
+
                        <IsPercent>true</IsPercent>
              <ChildExtraPalces>0</ChildExtraPalces>
+
                        <PenaltyTotal>4140</PenaltyTotal>
              <MainPlaces>1</MainPlaces>
+
                        <Currency>EU</Currency>
              <ExtraPlaces>0</ExtraPlaces>
+
                    </CancellationPolicyWithPenaltyValue>
              <IsMain>true</IsMain>
+
                  </PolicyData>
              <AgeFrom>0</AgeFrom>
+
               </CancellationPolicyInfoWithPenalty>
              <AgeTo>0</AgeTo>
+
             </Data>
              <Age2From>0</Age2From>
+
         </GetCancellationPolicyInfoWithPenaltyResult>
               <Age2To>0</Age2To>
+
       </GetCancellationPolicyInfoWithPenaltyResponse>
             </RoomAccomodation>
+
   </soap:Body>
         </GetRoomAccommodationsResult>
+
</soap:Envelope>
       </GetRoomAccommodationsResponse>
 
   </soap:Body>
 
</soap:Envelope>
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</div></div><br />
  
===GetClientInfo (Выдача информации по партнёру, к которому относится on-line user)===
+
===CheckReservation (Получение информации о платеже, необходимом для путевки, в выбранной валюте)===
Метод выдает информацию по партнёру, к которому относится on-line user, под которым осуществлен запрос в методе [[#Connect|Connect]].<br />
+
Метод возвращает информацию о платеже, необходимом для путевки, в выбранной валюте.<br />
Принимаемые параметры запроса ( * – обязательный):
+
Принимаемые параметры запроса (* – обязательный):
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[#Connect|Connect]])<br />  
+
* '''UserToken *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
Возвращаемый результат:
+
* '''DgCode *''' – код путевки
* '''Name''' – наименование партнера
+
* '''CurrencyIsoCode *''' – ISO код валюты платежа
* '''MarketName''' – перечень рынков из карточки партнера
+
Возвращаемый результат:<br />
* '''Address''' – адрес из карточки партнера
+
* '''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="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>
Вызов метода GetClientInfo
+
Вызов метода CheckReservation
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetClientInfo>
+
       <meg:CheckReservation>
 +
        <!--Optional:-->
 +
        <meg:userToken>d9c97f30-e0f5-450a-a802-f50551960d78</meg:userToken>
 +
        <!--Optional:-->
 +
        <meg:dgCode>MT110919A0K</meg:dgCode>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>6851ab74-f299-4668-ade8-b8e125b7ad61</meg:guid>
+
         <meg:currencyIsoCode>EUR</meg:currencyIsoCode>
       </meg:GetClientInfo>
+
       </meg:CheckReservation>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
Возвращаемый результат метода CheckReservation
Возвращаемый результат метода GetClientInfo
 
 
<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" 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>
 
   <soap:Body>
       <GetClientInfoResponse xmlns="http://www.megatec.ru/">
+
       <CheckReservationResponse xmlns="http://www.megatec.ru/">
         <GetClientInfoResult Message="Ok">
+
         <CheckReservationResult>
             <Data>
+
            <Amount>1310</Amount>
              <ClientInfo>
+
             <RateCode>EUR</RateCode>
                  <Name>Alpha Tour</Name>
+
            <NationalCurrencyPrice>1310</NationalCurrencyPrice>
                  <MarketName>Russian Market</MarketName>
+
            <NationalRateCode>EUR</NationalRateCode>
                  <Address>Belarus,Minsk,Pobediteley street 23/1-115a A</Address>
+
            <CustomCurrencyPrice>1310</CustomCurrencyPrice>
              </ClientInfo>
+
            <CustomRateCode>EUR</CustomRateCode>
             </Data>
+
            <ErrorCode>0</ErrorCode>
         </GetClientInfoResult>
+
            <FilialKey>1199</FilialKey>
       </GetClientInfoResponse>
+
             <BeginTourDate>2021-09-19T00:00:00</BeginTourDate>
 +
            <EndTourDate>2021-10-11T00:00:00</EndTourDate>
 +
         </CheckReservationResult>
 +
       </CheckReservationResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 6576: Строка 6754:
 
</div></div><br />
 
</div></div><br />
  
==Методы интеграции с системами оплаты==
+
===CreatePaymentForDogovor (Создание платежа по путевке по выставленному инвойсу)===
=== GetReservationPenalties (Получение штрафов по путевке до того, как ее аннулировать)===
+
Метод создает платеж по путевке, у которой выставлен инвойс.<br />
Метод возвращает размеры штрафов по путевке до того, как ее аннулировать.<br />
 
Работа метода регулируется лицензией.<br />  
 
 
Принимаемые параметры запроса (* – обязательный):
 
Принимаемые параметры запроса (* – обязательный):
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
 
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
* '''ReservationKey *''' – ключ путевки
+
* '''DgKey *''' – ключ путевки
* '''CancellationDate''' – дата аннуляции, на которую выдается условие и сумма штрафа. Если не указана, то получаем все возможные правила аннуляции вплоть до заезда.
+
* '''Payment *''' – размер платежа
 
Возвращаемый результат:<br />
 
Возвращаемый результат:<br />
* '''GetReservationPenaltiesResult''' – результат поиска
+
* '''CreatePaymentForDogovorResult''' – результат выдачи
** '''Penalty''' – штраф
+
** '''OrderId''' – идентификатор платежа
*** '''ServicePenalty''' – сервис штрафов
+
В случае отсутствия созданного инвойса по путевке получим сообщение: "There is no invoice".
**** '''ServiceClassID'''
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
**** '''ID''' – идентификатор штрафа
+
<div class="mw-collapsible-content">
**** '''Name''' – наименование штрафа
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
**** '''PenaltyData''' – массив данных штрафа
+
Вызов метода CreatePaymentForDogovor
***** '''PenaltyDataInfo''' – массив данных
+
<syntaxhighlight lang="java" enclose="div">
****** '''TotalPenalty''' – полная сумма штрафа
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
****** '''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:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:GetReservationPenalties>
+
       <meg:CreatePaymentForDogovor>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>9d041308-0e4c-4d07-8486-9e2293f1de75</meg:guid>
+
         <meg:guid>92a87a3b-04f8-4cad-bd0f-360fe8bd0a8f</meg:guid>
         <meg:reservationKey>36080</meg:reservationKey>
+
         <meg:dgKey>36225</meg:dgKey>
         </meg:GetReservationPenalties>
+
         <meg:payment>1500</meg:payment>
 +
      </meg:CreatePaymentForDogovor>
 
   </soapenv:Body>
 
   </soapenv:Body>
</soapenv:Envelope>
+
</soapenv:Envelope>  
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода GetReservationPenalties
+
Возвращаемый результат метода CreatePaymentForDogovor
 
<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" 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>
 
   <soap:Body>
       <GetReservationPenaltiesResponse xmlns="http://www.megatec.ru/">
+
       <CreatePaymentForDogovorResponse xmlns="http://www.megatec.ru/">
         <GetReservationPenaltiesResult>
+
         <CreatePaymentForDogovorResult/>
            <Penalty>
+
        <orderId>2008</orderId>
              <ServicePenalty xsi:type="HotelPenalty">
+
      </CreatePaymentForDogovorResponse>
                  <ServiceClassID>0</ServiceClassID>
+
  </soap:Body>
                  <ID>164217</ID>
+
</soap:Envelope>
                  <Name>HTL::Delphi/Fedriades Hotel /Double Room/2AD/100 m2/BB</Name>
+
</syntaxhighlight>
                  <PenaltyData>
+
</TD></TR></TABLE>
                    <PenaltyDataInfo>
+
</div></div><br />
                        <TotalPenalty>0</TotalPenalty>
+
 
                        <RateCode>EU</RateCode>
+
==Метод работы с квотами==
                        <PolicyDescription>If canceled before 01.09.2021, no penalty Penalty value is 0.00 EU</PolicyDescription>
+
=== CheckQuota (Проверка доступности номера отеля на период)===
                        <CancellationPolicyData>
+
Метод возвращает информацию о доступности номера отеля на период. <br />
                          <PolicyKey>-1</PolicyKey>
+
Принимаемые параметры запроса (* – обязательный):
                          <DateFrom xsi:nil="true"/>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                          <DateTo>2021-09-01T00:00:00</DateTo>
+
* '''DateFrom''' – дата с
                          <PenaltyValue>0</PenaltyValue>
+
* '''DateTo''' – дата по
                          <IsPercent>false</IsPercent>
+
* '''HotelId *''' – ключ отеля
                        </CancellationPolicyData>
+
* '''RoomTypeId *''' – ключ типа комнаты (-1 для всех)
                    </PenaltyDataInfo>
+
* '''RoomCategoryId *''' – ключ категории комнаты (-1 для всех)
                    <PenaltyDataInfo>
+
Возвращаемый результат:<br />
                        <TotalPenalty>17.76</TotalPenalty>
+
* '''ServiceResult''' – результат поиска
                        <RateCode>EU</RateCode>
+
* '''QuotaSimpleInfo''' – массив данных
                        <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>
+
** '''RoomTypeId''' – ключ типа комнаты
                        <CancellationPolicyData>
+
** '''RoomCategoryId''' – ключ категории комнаты
                          <PolicyKey>73</PolicyKey>
+
** '''Quota''' – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
                          <DateFrom>2021-09-01T00:00:00</DateFrom>
+
** '''RoomVariantName''' – наименование варианта комнаты (комбинации из таблицы RoomVariant)
                          <DateTo xsi:nil="true"/>
+
** '''Date''' – не заполняется
                          <PenaltyValue>2</PenaltyValue>
+
 
                          <IsPercent>true</IsPercent>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
                        </CancellationPolicyData>
+
<div class="mw-collapsible-content">
                    </PenaltyDataInfo>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                  </PenaltyData>
+
Вызов метода CheckQuota
                  <Hotel>
+
<syntaxhighlight lang="java" enclose="div">
                    <ID>2426</ID>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                    <Name>Fedriades Hotel</Name>
+
  <soapenv:Header/>
                  </Hotel>
+
  <soapenv:Body>
                  <RoomType>
+
      <meg:CheckQuota>
                    <ID>3</ID>
+
        <!--Optional:-->
                    <Name>Double Room</Name>
+
        <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
                  </RoomType>
+
        <meg:dateFrom>2021-07-13</meg:dateFrom>
                  <RoomCategory>
+
        <meg:dateTo>2021-07-30</meg:dateTo>
                    <ID>47</ID>
+
        <meg:hotelId>2930</meg:hotelId>
                    <Name>100 m2</Name>
+
        <meg:roomTypeId>-1</meg:roomTypeId>
                  </RoomCategory>
+
        <meg:roomCategoryId>-1</meg:roomCategoryId>
                  <Accommodation>
+
      </meg:CheckQuota>
                    <ID>5558</ID>
+
  </soapenv:Body>
                    <Name>2Ad</Name>
+
</soapenv:Envelope>
                  </Accommodation>
+
</syntaxhighlight>
                  <Pansion>
+
Возвращаемый результат метода CheckQuota
                    <ID>3</ID>
+
<syntaxhighlight lang="java" enclose="div">
                    <Name>Bed and Breakfast</Name>
+
<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">
                  </Pansion>
+
  <soap:Body>
              </ServicePenalty>
+
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
              <ServicePenalty>
+
        <CheckQuotaResult Message="Ok">
                  <ServiceClassID>2</ServiceClassID>
+
            <Data>
                  <ID>164218</ID>
+
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
                  <Name>TRF::Arrival transfer/Mini Bus/El.Venizelos-Fedriades Hotel /Delphi/!AA 910</Name>
+
              <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
                  <PenaltyData>
+
            </Data>
                    <PenaltyDataInfo>
+
        </CheckQuotaResult>
                        <TotalPenalty>0</TotalPenalty>
+
      </CheckQuotaResponse>
                        <RateCode/>
+
  </soap:Body>
                        <PolicyDescription/>
+
</soap:Envelope>
                    </PenaltyDataInfo>
+
</syntaxhighlight>
                  </PenaltyData>
+
</TD></TR></TABLE>
              </ServicePenalty>
+
</div></div><br />
              <ServicePenalty>
+
=== GetQuotaInfo (Проверка доступности номера отеля на период с детализацией по дням)===
                  <ServiceClassID>5</ServiceClassID>
+
Метод возвращает информацию о доступности номера отеля на период с детализацией по дням. <br />
                  <ID>164219</ID>
+
Принимаемые параметры запроса (* – обязательный):
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                  <PenaltyData>
+
* '''DateFrom *''' – дата с
                    <PenaltyDataInfo>
+
* '''DateTo *''' – дата по
                        <TotalPenalty>270</TotalPenalty>
+
* '''HotelId *''' – ключ отеля
                        <RateCode>EU</RateCode>
+
* '''RoomTypeId *''' – ключ типа комнаты (-1 для всех)
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
+
* '''RoomCategoryId *''' – ключ категории комнаты (-1 для всех)
                        <CancellationPolicyData>
+
Возвращаемый результат:<br />
                          <PolicyKey>0</PolicyKey>
+
* '''GetQuotaInfoResult''' – результат поиска
                          <DateFrom xsi:nil="true"/>
+
* '''QuotaSimpleInfo''' – массив данных
                          <DateTo xsi:nil="true"/>
+
** '''RoomTypeId''' – ключ типа комнаты
                          <PenaltyValue>0</PenaltyValue>
+
** '''RoomCategoryId''' – ключ категории комнаты
                          <IsPercent>false</IsPercent>
+
** '''Quota''' – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
                        </CancellationPolicyData>
+
** '''RoomVariantName''' – наименование варианта комнаты (комбинации из таблицы RoomVariant)
                    </PenaltyDataInfo>
+
** '''Date''' – день
                  </PenaltyData>
+
 
              </ServicePenalty>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
              <ServicePenalty>
+
<div class="mw-collapsible-content">
                  <ServiceClassID>5</ServiceClassID>
+
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
                  <ID>164220</ID>
+
Вызов метода GetQuotaInfo
                  <Name>EX::adhot 2/Fedriades Hotel /Double Room/2AD/100 m2 (Hard link) (Delphi)</Name>
+
<syntaxhighlight lang="java" enclose="div">
                  <PenaltyData>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
                    <PenaltyDataInfo>
+
  <soapenv:Header/>
                        <TotalPenalty>270</TotalPenalty>
+
  <soapenv:Body>
                        <RateCode>EU</RateCode>
+
      <meg:CheckQuota>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
+
        <!--Optional:-->
                        <CancellationPolicyData>
+
        <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
                          <PolicyKey>0</PolicyKey>
+
        <meg:dateFrom>2021-07-13</meg:dateFrom>
                          <DateFrom xsi:nil="true"/>
+
        <meg:dateTo>2021-07-30</meg:dateTo>
                          <DateTo xsi:nil="true"/>
+
        <meg:hotelId>2930</meg:hotelId>
                          <PenaltyValue>0</PenaltyValue>
+
        <meg:roomTypeId>-1</meg:roomTypeId>
                          <IsPercent>false</IsPercent>
+
        <meg:roomCategoryId>-1</meg:roomCategoryId>
                        </CancellationPolicyData>
+
      </meg:CheckQuota>
                    </PenaltyDataInfo>
+
  </soapenv:Body>
                  </PenaltyData>
+
</soapenv:Envelope>
              </ServicePenalty>
+
</syntaxhighlight>
              <ServicePenalty>
+
Возвращаемый результат метода GetQuotaInfo
                  <ServiceClassID>5</ServiceClassID>
+
<syntaxhighlight lang="java" enclose="div">
                  <ID>164222</ID>
+
<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">
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
+
  <soap:Body>
                  <PenaltyData>
+
      <CheckQuotaResponse xmlns="http://www.megatec.ru/">
                    <PenaltyDataInfo>
+
        <CheckQuotaResult Message="Ok">
                        <TotalPenalty>100</TotalPenalty>
+
            <Data>
                        <RateCode>EU</RateCode>
+
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
+
               <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
                        <CancellationPolicyData>
+
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="6" Quota="0" RoomVariantName="Single Room Standard" Date="0001-01-01T00:00:00"/>
                          <PolicyKey>0</PolicyKey>
+
            </Data>
                          <DateFrom xsi:nil="true"/>
+
        </CheckQuotaResult>
                          <DateTo xsi:nil="true"/>
+
      </CheckQuotaResponse>
                          <PenaltyValue>0</PenaltyValue>
+
  </soap:Body>
                          <IsPercent>false</IsPercent>
+
</soap:Envelope>
                        </CancellationPolicyData>
+
</syntaxhighlight>
                    </PenaltyDataInfo>
+
</TD></TR></TABLE>
                  </PenaltyData>
+
</div></div><br />
              </ServicePenalty>
+
=== GetChangeQuotaAndStop (Получение информации по квотам и стопам в отеле)===
              <ServicePenalty>
+
Метод передает информацию по квотам и стопам в отеле.
                  <ServiceClassID>5</ServiceClassID>
+
Принимаемые параметры запроса (* – обязательный):
                  <ID>164223</ID>
+
* '''Guid *''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:IntegrationService#Connect (получение аутентификационного токена)|Connect]])<br />
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
+
* '''HotelKey *''' – ключ отеля
                  <PenaltyData>
+
* '''Date''' – дата, с которой получаем изменения (если не отправляем, то берется текущая)
                    <PenaltyDataInfo>
+
* '''UseRoomDescription *''' – как сопоставляем категорию и тип комнаты (через общее описание комнаты или по-отдельности)
                        <TotalPenalty>100</TotalPenalty>
+
* '''LoadQuaota *''' – загружать или нет изменения по квотам
                        <RateCode>EU</RateCode>
+
* '''LoadStop *''' – загружать или нет изменения по стопам
                        <PolicyDescription>If canceled, the penalty is 100 % of the cost</PolicyDescription>
+
Возвращаемый результат:<br />
                        <CancellationPolicyData>
+
* '''GetChangeQuotaAndStopResult''' – результат поиска
                          <PolicyKey>0</PolicyKey>
+
** '''QuotaStopInfo''' – массив данных
                          <DateFrom xsi:nil="true"/>
+
*** '''ID''' – не используется
                          <DateTo xsi:nil="true"/>
+
*** '''SvKey''' – ключ сервис класса (для отеля  = 1)
                          <PenaltyValue>0</PenaltyValue>
+
*** '''Code''' – ключ отеля
                          <IsPercent>false</IsPercent>
+
*** '''SubCode1Name''' – название типа комнаты
                        </CancellationPolicyData>
+
*** '''SubCode1''' – ключ типа комнаты
                    </PenaltyDataInfo>
+
*** '''SubCode2''' – не используется
                  </PenaltyData>
+
*** '''SubCode3Name''' – название категории комнаты
              </ServicePenalty>
+
*** '''SubCode3''' – ключ категории комнаты
              <ServicePenalty>
+
*** '''RoomDescriptionID''' ключ описания комнаты
                  <ServiceClassID>5</ServiceClassID>
+
*** '''RoomDescriptionName''' – название описания комнаты
                  <ID>164224</ID>
+
*** '''Place''' количество мест (2 и больше, 1 – мест мало или одно, 0 – нет мест в квоте, -1 – стоп отменен (если IsStop=true)  или квота удалена(если IsStop=false)), -2 – стоп отменен и квот при этом нет)
                  <Name>EX::Test with cost/Fedriades Hotel /Double Room/2AD/100 m2(Delphi)</Name>
+
*** '''IsStop''' – стоит ли стоп на текущую дату
                  <PenaltyData>
+
*** '''Date''' – дата текущей квоты (стопа)
                    <PenaltyDataInfo>
+
*** '''UpdateDate''' – дата обновления
                        <TotalPenalty>100</TotalPenalty>
+
*** '''Release''' – релиз-период
                        <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="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>
Вызов метода CheckQuota
+
Вызов метода GetChangeQuotaAndStop
 
<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:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:meg="http://www.megatec.ru/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <meg:CheckQuota>
+
       <meg:GetChangeQuotaAndStop>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <meg:guid>fcce4f31-dd71-4d70-bbb3-0e279f59eefc</meg:guid>
+
         <meg:guid>7e4781f3-cef1-4b05-b6aa-ef9bb091f055</meg:guid>
         <meg:dateFrom>2021-07-13</meg:dateFrom>
+
         <meg:hotelKey>2942</meg:hotelKey>
         <meg:dateTo>2021-07-30</meg:dateTo>
+
         <meg:date>2023-11-01T21:17:00</meg:date>
         <meg:hotelId>2930</meg:hotelId>
+
         <meg:UseRoomDescription>true</meg:UseRoomDescription>
         <meg:roomTypeId>-1</meg:roomTypeId>
+
         <meg:LoadQuota>true</meg:LoadQuota>
         <meg:roomCategoryId>-1</meg:roomCategoryId>
+
         <meg:LoadStop>false</meg:LoadStop>
       </meg:CheckQuota>
+
       </meg:GetChangeQuotaAndStop>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
Возвращаемый результат метода CheckQuota
+
Возвращаемый результат метода GetChangeQuotaAndStop
 
<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" 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>
 
   <soap:Body>
       <CheckQuotaResponse xmlns="http://www.megatec.ru/">
+
       <GetChangeQuotaAndStopResponse xmlns="http://www.megatec.ru/">
         <CheckQuotaResult Message="Ok">
+
         <GetChangeQuotaAndStopResult>
             <Data>
+
             <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"/>
              <QuotaSimpleInfo RoomTypeId="2" RoomCategoryId="8" Quota="0" RoomVariantName="Single Room Side Sea View" Date="0001-01-01T00:00:00"/>
+
         </GetChangeQuotaAndStopResult>
              <QuotaSimpleInfo RoomTypeId="150" RoomCategoryId="8" Quota="0" RoomVariantName="Double Classical Side Sea View" Date="0001-01-01T00:00:00"/>
+
       </GetChangeQuotaAndStopResponse>
            </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:Body>
 
</soap:Envelope>
 
</soap:Envelope>
Строка 7290: Строка 6968:
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</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''' – дата обновления
 
  
<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>3893ebe6-7200-4356-b022-732eb25cdeac</meg:guid>
 
        <meg:hotelKey>2941</meg:hotelKey>
 
        <meg:date>2021-07-13</meg:date>
 
        <meg:UseRoomDescription>true</meg:UseRoomDescription>
 
        <meg:LoadQuota>true</meg:LoadQuota>
 
        <meg:LoadStop>true</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="2941" SubCode1Name="Single Room" SubCode1="2" SubCode2="0" SubCode3Name="Side Sea View" SubCode3="8" RoomDescriptionID="2893" RoomDescriptionName="Single Room Side Sea View" Place="2" IsStop="false" Date="2021-09-14T00:00:00" UpdateDate="2021-07-16T15:42:21.327"/>
 
            <QuotaStopInfo ID="0" SvKey="1" Code="2941" SubCode1Name="Single Room" SubCode1="2" SubCode2="0" SubCode3Name="Side Sea View" SubCode3="8" RoomDescriptionID="2893" RoomDescriptionName="Single Room Side Sea View" Place="2" IsStop="false" Date="2021-09-15T00:00:00" UpdateDate="2021-07-16T15:42:21.33"/>
 
            <QuotaStopInfo ID="0" SvKey="1" Code="2941" SubCode1Name="Single Room" SubCode1="2" SubCode2="0" SubCode3Name="Side Sea View" SubCode3="8" RoomDescriptionID="2893" RoomDescriptionName="Single Room Side Sea View" Place="2" IsStop="false" Date="2021-09-16T00:00:00" UpdateDate="2021-07-16T15:42:21.33"/>
 
          </GetChangeQuotaAndStopResult>
 
      </GetChangeQuotaAndStopResponse>
 
  </soap:Body>
 
</soap:Envelope>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</div></div><br />
 
 
=== GetHotelQuotaStopInfo (Получение информации по отелям, у которых были изменения в квотах или стопах с определенной даты)===
 
=== GetHotelQuotaStopInfo (Получение информации по отелям, у которых были изменения в квотах или стопах с определенной даты)===
 
Метод  возвращает отели, у которых были изменения в квотах или стопах с определенной даты.<br />
 
Метод  возвращает отели, у которых были изменения в квотах или стопах с определенной даты.<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>