Web-сервисы: Сервис бронирования — различия между версиями
[досмотренная версия] | [досмотренная версия] |
Kurkemova (обсуждение | вклад) (→Настройка) |
Achkasov (обсуждение | вклад) (→Работа в системе) |
||
(не показано 6 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | Версия статьи от {{REVISIONDAY}}-{{REVISIONMONTH}}-{{REVISIONYEAR}}. | ||
+ | |||
==Введение== | ==Введение== | ||
− | Данный модуль включает в себя два сервиса | + | Данный модуль включает в себя '''два сервиса'''. |
− | * Сервис формирования списка услуг | + | * [[#|Сервис формирования списка услуг]]; |
− | * Сервис бронирования | + | * [[#|Сервис бронирования]]. |
− | Сервис формирования списка услуг предназначен для получения следующей информации: | + | |
− | * | + | Сервис '''формирования списка услуг''' предназначен для получения следующей информации: |
− | * | + | * '''Общие данные''' по ключу цены, такие как '''тур''', '''продолжительности''' в '''днях''' и '''ночах''', '''описание тура''' и '''условия бронирования'''; |
− | * | + | * Список услуг, '''включенных в стоимость''', по ключу цены; |
− | * | + | * Список '''не рассчитанных услуг''' по ключу цены; |
− | Сервис бронирования предназначен для расчета стоимости совокупности услуг, с возможностью их последующего бронирования в базе данных. | + | * Список '''вариантов''' какой-либо услуги. |
+ | |||
+ | Сервис '''бронирования''' предназначен для '''расчета стоимости совокупности услуг''', с возможностью их '''последующего бронирования''' в базе данных. | ||
+ | |||
==Установка== | ==Установка== | ||
− | |||
− | |||
===Создание виртуального каталога=== | ===Создание виртуального каталога=== | ||
− | По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия: | + | По умолчанию корневым каталогом '''IIS''' является <code>C:/Inetpub/wwwroot</code>. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:<br /> |
− | + | 1 Зайти в '''Пуск''' ('''Start''') → '''Настройки''' ('''Settings''') → '''Панель управления''' ('''Control Panel''') → '''Администрирование''' ('''Administrative Tools''') | |
− | + | [[Файл: am_745.png|x500px|Панель управления]]<br /> | |
− | + | <br /> | |
− | + | 2 '''Диспетчер служб IIS'''<br /> | |
− | + | [[Файл: am_746.png|x500px|Администрирование - Диспетчер служб IIS]]<br /> | |
− | [[Файл: | + | <br /> |
− | + | 3 В открывшемся дереве каталогов выбрать '''Web Sites – Default Web Site'''. В открывшемся списке найти ''папку'', для которой нужно создать ''виртуальный каталог'', кликнуть по ней правой кнопкой мыши и выбрать '''Преобразовать в приложение'''<br /> | |
− | < | + | [[Файл: am_747.png|x500px|Преобразовать в приложение]]<br /> |
− | [[Файл: | + | <br /> |
− | + | 4 В открывшемся окне нужно нажать кнопку '''ОК'''<br /> | |
− | < | + | [[Файл: am_748.png|x500px|Добавить приложение]]<br /> |
− | [[Файл: | + | <br /> |
− | + | ||
− | < | + | ===Подключение к базе данных ПК «Мастер-Тур»=== |
− | [[Файл: | + | В файле <code>web.config</code>, расположенном в папке '''Reservation''' пропишите необходимые параметры подключения (<span style="color:red">красным цветом</span> выделены значения, которые необходимо ввести). |
− | + | Строка подключения к базе данных ПК «Мастер-Тур»:<br /> | |
− | В файле web.config, расположенном в папке Reservation пропишите необходимые параметры подключения ( | + | <code><add key = "connectionString" value = "Data Source=<span style="color:red">ip-адрес сервера базы данных ПК «Мастер-Тур»</span>;Initial Catalog=<span style="color:red">название базы данных ПК «Мастер-Тур</span>;User ID=<span style="color:red">логин пользователя ПК «Мастер-Тур»</span>;Password=<span style="color:red">пароль пользователя ПК «Мастер-Тур»</span>"/></code> |
− | Строка подключения к базе данных ПК «Мастер-Тур»: | + | |
− | <add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК | ||
==Настройка== | ==Настройка== | ||
− | После установки | + | После установки '''Сервис бронирования''' доступен по адресу: |
− | * http: //ip- адрес сервера Мастер-Веб/Reservation/ServiceProvider.asmx (сервис формирования списка услуг) | + | * <code><nowiki>http://ip-адрес сервера Мастер-Веб/Reservation/ServiceProvider.asmx</nowiki></code> (сервис '''формирования списка услуг'''); |
− | * http: //ip- адрес сервера Мастер-Веб/Reservation/ReservationService.asmx (сервис бронирования) | + | * <code><nowiki>http://ip-адрес сервера Мастер-Веб/Reservation/ReservationService.asmx</nowiki></code> (сервис '''бронирования'''). |
− | [[Файл: mb_030.png|left|Предупреждение]] | + | [[Файл: mb_030.png|left|Предупреждение]] |
− | Для корректной работы сервиса Reservation на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно включить настройку customErrors в элементе <system.web>: | + | Для корректной работы сервиса '''Reservation''' на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно '''включить настройку |
+ | customErrors''' в элементе '''<system.web>:''' | ||
<system.web> | <system.web> | ||
− | + | <customErrors mode="On"/> | |
… | … | ||
− | + | </system.web> | |
==Подготовка данных== | ==Подготовка данных== | ||
===Описание формата данных=== | ===Описание формата данных=== | ||
− | ====CalculatedPriceInfo==== | + | ====CalculatedPriceInfo (Информация по расчитанной цене)==== |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
/// Информация по рассчитанной цене | /// Информация по рассчитанной цене | ||
/// </summary> | /// </summary> | ||
Строка 72: | Строка 81: | ||
/// </summary> | /// </summary> | ||
public int Nights { get; set; } | public int Nights { get; set; } | ||
− | }</ | + | } |
− | ====ReservationParams==== | + | </syntaxhighlight> |
− | + | |} | |
+ | |||
+ | ====ReservationParams (Параметры бронирования)==== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
/// Параметры бронирования | /// Параметры бронирования | ||
/// </summary> | /// </summary> | ||
Строка 140: | Строка 158: | ||
/// </summary> | /// </summary> | ||
public int TouristsCount { get; set; } | public int TouristsCount { get; set; } | ||
− | }</ | + | }</syntaxhighlight> |
− | ====ReservationResult==== | + | |} |
− | + | ||
+ | ====ReservationResult (Результат расчета стоимости и бронирования комплекса услуг)==== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
/// Класс, описывающий результат расчета стоимости и бронирования комплекса услуг | /// Класс, описывающий результат расчета стоимости и бронирования комплекса услуг | ||
/// </summary> | /// </summary> | ||
Строка 176: | Строка 202: | ||
/// </summary> | /// </summary> | ||
public string ErrorMessage { get; set; } | public string ErrorMessage { get; set; } | ||
− | }</ | + | } |
− | === | + | </syntaxhighlight> |
− | ==== | + | |} |
− | + | ||
− | + | ====ReservationInfoParams (Параметры путевки)==== | |
− | /// | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" |
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Класс, описывающий параметры путевки | ||
+ | /// </summary> | ||
+ | public class ReservationInfoParams | ||
+ | { | ||
+ | /// <summary> | ||
+ | /// код путевки | ||
+ | /// </summary> | ||
+ | public string Code { get; set; } | ||
+ | |||
+ | /// <summary> | ||
+ | /// значение скидки | ||
/// </summary> | /// </summary> | ||
− | + | public double Discount { get; set; } | |
− | + | ||
− | + | /// <summary> | |
− | + | /// стоимость путевки | |
− | |||
− | public | ||
− | |||
− | |||
− | |||
− | /// | ||
/// </summary> | /// </summary> | ||
− | + | public double Price { get; set; } | |
− | + | } | |
− | + | </syntaxhighlight> | |
− | + | |} | |
+ | |||
+ | ====ReservationInfo (Описание путевки, включая все услуги и туристов)==== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
− | = | + | | <syntaxhighlight lang="cpp"> |
− | + | /// <summary> | |
− | + | /// Класс, описывающий путевку, включая все услуги путевки и туристов | |
− | /// | + | /// </summary> |
+ | public class ReservationInfo | ||
+ | { | ||
+ | /// <summary> | ||
+ | /// Название города поездки | ||
+ | /// </summary> | ||
+ | public string CityName { get; set; } | ||
+ | /// <summary> | ||
+ | /// Код путевки | ||
+ | /// </summary> | ||
+ | public string Code { get; set; } | ||
+ | /// <summary> | ||
+ | /// Название страны поездки | ||
/// </summary> | /// </summary> | ||
− | + | public string CountryName { get; set; } | |
− | + | /// <summary> | |
− | + | /// Скидка по путевке | |
− | public | ||
− | |||
− | |||
− | |||
− | |||
− | /// | ||
/// </summary> | /// </summary> | ||
− | + | public double Discount { get; set; } | |
− | /// < | + | /// <summary> |
− | /// | + | /// Сумма скидки |
− | /// | + | /// </summary> |
− | + | public double DiscountSum { get; set; } | |
− | /// < | + | /// <summary> |
− | /// | + | /// Обобщенный статус путевки |
− | /// | + | /// </summary> |
− | + | public int? DogovorGlobalStatus { get; set; } | |
− | + | /// <summary> | |
− | + | /// Статус путевки | |
− | |||
− | |||
− | |||
− | public | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | /// | ||
/// </summary> | /// </summary> | ||
− | /// < | + | public int DogovorStatus { get; set; } |
− | /// < | + | /// <summary> |
− | /// < | + | /// Кол-во дней поездки |
− | public | + | /// </summary> |
− | ====Метод | + | public int Ndays { get; set; } |
+ | /// <summary> | ||
+ | /// Количество туристов в путевке | ||
+ | /// </summary> | ||
+ | public int Nmen { get; set; } | ||
+ | /// <summary> | ||
+ | /// Цена без учета скидки | ||
+ | /// </summary> | ||
+ | public double Price { get; set; } | ||
+ | /// <summary> | ||
+ | /// Код валюты путевки | ||
+ | /// </summary> | ||
+ | public string RateCode { get; set; } | ||
+ | /// <summary> | ||
+ | /// Список всеу услуг в путевке | ||
+ | /// </summary> | ||
+ | public List<Service> ReservationServices { get; set; } | ||
+ | /// <summary> | ||
+ | /// Список всех туристов в путевке | ||
+ | /// </summary> | ||
+ | public List<Tourist> ReservationTourists { get; set; } | ||
+ | /// <summary> | ||
+ | /// Дата начала поездки | ||
+ | /// </summary> | ||
+ | public DateTime TurDate { get; set; } | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | |||
+ | ===Сервис формирования списка услуг («ServiceProvider.asmx»)=== | ||
+ | |||
+ | ====Метод получения информации по ключу цены (GetCalculatedPriceInfo)==== | ||
=====Сигнатура вызова===== | =====Сигнатура вызова===== | ||
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | /// | + | |
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Получение информации о цене | ||
/// </summary> | /// </summary> | ||
− | /// <param name=" | + | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> |
− | /// <param name=" | + | /// <param name="priceKey">Ключ цены</param> |
− | /// <param name=" | + | /// <param name="includeTourDescriptionText">Возвращать ли описание тура</param> |
+ | /// <param name="includeBookingConditionsText">Возвращать ли условия бронирования по туру</param> | ||
/// <returns></returns> | /// <returns></returns> | ||
[WebMethod] | [WebMethod] | ||
− | public | + | public CalculatedPriceInfo GetCalculatedPriceInfo(String token, int priceKey, bool includeTourDescriptionText, bool includeBookingConditionsText) |
− | == | + | </syntaxhighlight> |
− | === | + | |} |
− | = | + | <br /> |
− | === | + | ====Метод получения рассчитанных услуг (GetCalculatedServices)==== |
− | + | =====Сигнатура вызова===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="cpp"> | |
− | + | /// <summary> | |
− | + | /// Возвращает список рассчитанных услуг по ключу цены | |
− | + | /// </summary> | |
− | ===== | + | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> |
− | + | /// <param name="priceKey">Ключ обсчитанной цены</param> | |
− | + | /// <returns></returns> | |
− | + | [WebMethod] | |
− | + | public List<Service> GetCalculatedServices(String token, int priceKey) | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ====Метод получения нерасчитанных услуг (GetNotCalculatedServices)==== | |
− | + | =====Сигнатура вызова===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="cpp"> | |
− | + | /// <summary> | |
− | + | /// Возвращает список нерассчитанных услуг по ключу цены | |
− | + | /// </summary> | |
− | + | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | |
− | + | /// <param name="priceKey">Ключ обсчитанной цены</param> | |
− | + | /// <returns></returns> | |
− | + | [WebMethod] | |
− | + | public List<Service> GetNotCalculatedServices(String token, int priceKey) | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ====Метод получения вариантов услуги (GetServiceVariants)==== | |
− | + | =====Сигнатура вызова===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | == | + | |
− | = | + | |- style="background-color:#F2F2F2" |
− | + | |- style="vertical-align:text-top" | |
− | < | + | |
− | + | | <syntaxhighlight lang="cpp"> | |
− | + | /// <summary> | |
− | + | /// Получение вариантов услуги | |
− | + | /// </summary> | |
− | + | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | |
− | + | /// <param name="service">Базовая услуга</param> | |
− | ===== | + | /// <param name="dtDate">Дата заезда</param> |
− | + | /// <param name="duration">Продолжительность тура</param> | |
− | + | /// <param name="allowHidden">Искать ли аналоги для скрытой услуги</param> | |
− | + | /// <param name="allowHotelCodeChange">Можно ли поменять отель</param> | |
− | + | /// <param name="CheckFlightPacket">Проверять ли пакет услуги</param> | |
− | + | /// <param name="checkQuotes">Нужно ли делать проверку квот и удалять варианты без мест</param> | |
− | + | /// <param name="nMen">Количество мест для проверки (если 0, то игнорируем byRoom и userKey</param> | |
− | + | /// <param name="byRoom">Что проверяем. Места или комнаты</param> | |
− | + | /// <param name="userKey">Агент</param> | |
− | + | /// <param name="includeOriginal">Включать в результат базовую услугу</param> | |
− | + | /// <param name="excludeCharterClasses">Исключить из подбора данные классы перелетов</param> | |
− | + | /// <returns>Список услуг</returns> | |
− | + | [WebMethod] | |
− | + | public List<Service> GetServiceVariants(String token, Megatec.Travel.Entities.Service service | |
− | + | , DateTime tourDate | |
− | + | , int tourDuration | |
− | + | , bool allowHidden | |
− | + | , bool allowHotelCodeChange | |
− | + | , bool checkFlightPacket | |
− | + | , bool checkQuotes | |
− | + | , short nMen | |
− | + | , bool byRoom | |
− | + | , int userKey | |
− | + | , bool includeOriginal | |
− | + | , string excludeCharterClasses) | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ||
− | + | ===Сервис бронирования (ReservationService.asmx)=== | |
− | + | ====Метод расчета стоимости услуг (CalculateReservation)==== | |
− | + | =====Сигнатура вызова===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="cpp"> | |
− | + | /// <summary> | |
− | + | /// Метод расчета стоимости услуг | |
− | + | /// </summary> | |
− | + | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | |
− | + | /// <param name="services">Список услуг, по которым рассчитывается стоимость</param> | |
− | + | /// <param name="parameters">Параметры расчета</param> | |
− | + | /// <returns>Результат расчета стоимости</returns> | |
− | + | public Megatec.Travel.Entities.ReservationResult CalculateReservation(List<Megatec.Travel.Entities.Service> services, ReservationParams parameters) | |
− | + | </syntaxhighlight> | |
− | + | |} | |
+ | <br /> | ||
+ | ====Метод бронирования услуг (CreateReservation)==== | ||
+ | =====Сигнатура вызова===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Метод бронирования | ||
+ | /// </summary> | ||
+ | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | ||
+ | /// <param name="services">Список бронируемых услуг</param> | ||
+ | /// <param name="tourists">Список туристов по путевке</param> | ||
+ | /// <param name="parameters">Параметры бронирования</param> | ||
+ | /// <returns></returns> | ||
+ | [WebMethod] | ||
+ | public Megatec.Travel.Entities.ReservationResult CreateReservation(List<Megatec.Travel.Entities.Service> services, List<Tourist> tourists, ReservationParams parameters) | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод получения данных по путевке (GetDogovorInfo)==== | ||
+ | =====Сигнатура метода===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Метод получения полной информации по путевке | ||
+ | /// </summary> | ||
+ | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | ||
+ | /// <param name="reservationCode">Код путевки</param> | ||
+ | /// <returns>Полная информация по услугам и туристам в путевке</returns> | ||
+ | public Megatec.Travel.DataObjects.ReservationInfo GetDogovorInfo(String token, String reservationCode) | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод получения информации по путевке (GetReservationInfo)==== | ||
+ | =====Сигнатура метода===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Метод получения HTML-информации по путевке | ||
+ | /// </summary> | ||
+ | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | ||
+ | /// <param name="reservationCode">Код путевки</param> | ||
+ | /// <param name="partnerKey">Идентификатор покупателя</param> | ||
+ | /// <param name="param">Параметры бронирования</param> | ||
+ | /// <returns>HTML-информация по путевке</returns> | ||
+ | public String GetReservationInfo(String token, String reservationCode, Int32 partnerKey, Megatec.Travel.DataObjects.ReservationInfoParams param) | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | |||
+ | ====Метод для сохранения номера путевки (SetReservationCode)==== | ||
+ | =====Сигнатура метода===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="cpp"> | ||
+ | /// <summary> | ||
+ | /// Сохраняет номер путевки субагента в БД агента | ||
+ | /// (в историю путевки должен записать номер путевки субагента) | ||
+ | /// </summary> | ||
+ | /// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param> | ||
+ | /// <param name="reservationCode">Номер путевки в БД агента</param> | ||
+ | /// <param name="partnerCode">Номер путевки в БД субагента</param> | ||
+ | public void SetReservationCode(String token, String reservationCode, String partnerCode) | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | |||
+ | ==Работа в системе== | ||
+ | ===Работа с сервисом «ServiceProvider.asmx» (Формирование списка услуг)=== | ||
+ | ====Метод получения информации по ключу цены (GetCalculatedPriceInfo )==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <GetCalculatedPriceInfo xmlns="http://megatec.ru/"> | ||
+ | <priceKey>5038425</priceKey> | ||
+ | <includeTourDescriptionText>true</includeTourDescriptionText> | ||
+ | <includeBookingConditionsText>true</includeBookingConditionsText> | ||
+ | </GetCalculatedPriceInfo> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <GetCalculatedPriceInfoResponse xmlns="http://megatec.ru/"> | ||
+ | <GetCalculatedPriceInfoResult> | ||
+ | <PriceTour> | ||
+ | <ID>667</ID> | ||
+ | <Name>Test Tour</Name> | ||
+ | <Description /> | ||
<Country> | <Country> | ||
<ID>90</ID> | <ID>90</ID> | ||
− | <Name | + | <Name>Австрия</Name> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</Country> | </Country> | ||
− | < | + | <Tour> |
− | + | <ID>542</ID> | |
− | + | <Name>Test Tour</Name> | |
− | |||
− | |||
− | <ID> | ||
− | <Name | ||
− | |||
− | |||
− | |||
− | |||
<Description /> | <Description /> | ||
− | < | + | <BookingConditions /> |
− | </ | + | </Tour> |
− | < | + | <Attribute>0</Attribute> |
− | + | <IncludedServices> Авиаперелет, Трансфер, Проживание(питание: Полупансион), Виза, Страховка, Доп. услуги</IncludedServices> | |
− | + | </PriceTour> | |
− | + | <TourDate>2010-07-02T00:00:00</TourDate> | |
− | + | <TotalDays>11</TotalDays> | |
− | + | <Nights>10</Nights> | |
− | + | </GetCalculatedPriceInfoResult> | |
− | + | </GetCalculatedPriceInfoResponse> | |
− | + | </soap:Body> | |
− | + | </soap:Envelope> | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ||
− | + | ====Метод получения рассчитанных услуг (GetCalculatedServices)==== | |
− | + | =====Пример SOAP-запроса к сервису===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="xml"> | |
− | + | <?xml version="1.0" encoding="utf-8"?> | |
− | + | <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> | |
− | + | <GetCalculatedServices xmlns="http://megatec.ru/"> | |
− | + | <priceKey>5038425</priceKey> | |
− | + | </GetCalculatedServices> | |
− | + | </soap:Body> | |
− | + | </soap:Envelope> | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | =====Пример SOAP-ответа сервиса===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="xml"> | |
− | + | <?xml version="1.0" encoding="utf-8"?> | |
− | + | <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> | |
− | + | <GetCalculatedServicesResponse xmlns="http://megatec.ru/"> | |
− | + | <GetCalculatedServicesResult> | |
− | + | <Service xsi:type="HotelService"> | |
− | + | <ID>-159</ID> | |
− | + | <Name>Отель/Отель 5*+ (Арльберг), Single Standart Взрослый, Полупансион, ,</Name> | |
− | + | <ExternalID>0</ExternalID> | |
− | </ | + | <StartDate>0001-01-01T00:00:00</StartDate> |
− | < | + | <EndDate>0001-01-01T00:00:00</EndDate> |
− | + | <StartDay>1</StartDay> | |
− | + | <Duration>10</Duration> | |
− | + | <Attribute>390</Attribute> | |
− | + | <RateBrutto /> | |
− | + | <Brutto>0</Brutto> | |
− | + | <RateNetto /> | |
− | + | <Netto>0</Netto> | |
− | + | <NMen>1</NMen> | |
− | + | <Partner> | |
− | + | <ID>10760</ID> | |
− | + | <Name /> | |
− | + | <NameLat /> | |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | </ | + | <Description /> |
− | </ | + | <PartnersGroupID>0</PartnersGroupID> |
− | < | + | <FullName /> |
− | <ID> | + | <BossName /> |
− | <Name | + | <Fax /> |
+ | <Address /> | ||
+ | <Zip /> | ||
+ | <Email /> | ||
+ | <Phones /> | ||
+ | </Partner> | ||
+ | <Quota>NotChecked</Quota> | ||
+ | <PacketID>250</PacketID> | ||
+ | <City> | ||
+ | <ID>275</ID> | ||
+ | <Name /> | ||
+ | <NameLat /> | ||
+ | <Code /> | ||
+ | <CodeLat /> | ||
+ | <Unicode /> | ||
+ | <Description /> | ||
+ | </City> | ||
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | <Name /> | ||
<NameLat /> | <NameLat /> | ||
− | <Code | + | <Code /> |
<CodeLat /> | <CodeLat /> | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | + | <IsIncoming>false</IsIncoming> | |
− | + | </Country> | |
− | + | <Tourists /> | |
− | + | <DetailNetto /> | |
− | + | <DetailBrutto /> | |
− | + | <Notes /> | |
− | + | <ServiceClass> | |
− | + | <ID>3</ID> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | < | ||
− | < | ||
− | < | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | <ID> | ||
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 507: | Строка 670: | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | < | + | <ServiceClasses>None</ServiceClasses> |
− | + | </ServiceClass> | |
− | + | <Hotel> | |
− | + | <ID>3254</ID> | |
− | + | <Name>Отель 5*+</Name> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | <ID> | ||
− | <Name /> | ||
<NameLat /> | <NameLat /> | ||
<Code /> | <Code /> | ||
Строка 526: | Строка 680: | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | + | <City> | |
− | + | <ID>3254</ID> | |
− | + | <Name>Арльберг</Name> | |
− | + | <NameLat /> | |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | </City> | |
− | + | </Hotel> | |
− | + | <Room> | |
− | + | <ID>1112</ID> | |
− | |||
− | |||
− | < | ||
− | < | ||
− | <ID> | ||
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 549: | Строка 698: | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | < | + | <RoomType> |
− | + | <ID>1</ID> | |
− | + | <Name>Single</Name> | |
− | <ID> | + | <NameLat /> |
− | + | <Code>SGL</Code> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | <PrintOrder>0</PrintOrder> | |
− | + | <Places> | |
− | < | + | <Main>1</Main> |
− | < | + | <Extra>1</Extra> |
− | + | </Places> | |
− | + | </RoomType> | |
− | </ | + | <RoomCategory> |
− | < | + | <ID>20</ID> |
− | <ID> | + | <Name>Standart</Name> |
− | <Name /> | + | <NameLat /> |
− | <NameLat /> | + | <Code>STD</Code> |
− | <Code /> | + | <CodeLat /> |
− | <CodeLat /> | + | <Unicode /> |
− | <Unicode /> | + | <Description /> |
− | <Description /> | + | <PrintOrder>0</PrintOrder> |
− | </ | + | </RoomCategory> |
− | </Service> | + | <RoomAccomodation> |
− | </ | + | <ID>320</ID> |
− | </ | + | <Name>Взрослый</Name> |
− | </soap:Body> | + | <NameLat /> |
− | </soap:Envelope></ | + | <Code>Взр.</Code> |
− | ====Метод получения | + | <CodeLat /> |
− | =====Пример SOAP-запроса к сервису | + | <Unicode /> |
− | + | <Description /> | |
− | <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"> | + | <Places> |
− | <soap:Body> | + | <Main>0</Main> |
− | < | + | <Extra>0</Extra> |
− | < | + | </Places> |
− | + | <IsMain>true</IsMain> | |
− | + | <AgeRange AgeFrom="0" AgeTo="0" /> | |
− | + | <AgeRange2 AgeFrom="0" AgeTo="0" /> | |
− | + | <PerRoom>false</PerRoom> | |
− | + | </RoomAccomodation> | |
− | + | </Room> | |
− | + | <Pansion> | |
− | + | <ID>2</ID> | |
− | + | <Name>Полупансион</Name> | |
− | + | <NameLat /> | |
− | + | <Code>HB</Code> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | </Pansion> | |
− | + | </Service> | |
− | + | </GetCalculatedServicesResult> | |
− | + | </GetCalculatedServicesResponse> | |
− | + | </soap:Body> | |
− | + | </soap:Envelope> | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ====Метод получения нерассчитанных услуг (GetNotCalculatedServices)==== | |
− | + | =====Пример SOAP-запроса к сервису===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="xml"> | |
− | + | <?xml version="1.0" encoding="utf-8"?> | |
− | + | <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> | |
− | + | <GetNotCalculatedServices xmlns="http://megatec.ru/"> | |
− | </ | + | <priceKey>5038425</priceKey> |
+ | </GetNotCalculatedServices> | ||
</soap:Body> | </soap:Body> | ||
− | </soap:Envelope></ | + | </soap:Envelope> |
− | =====Пример SOAP-ответа сервиса | + | </syntaxhighlight> |
− | + | |} | |
− | <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"> | + | <br /> |
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
− | < | + | <GetNotCalculatedServicesResponse xmlns="http://megatec.ru/"> |
− | < | + | <GetNotCalculatedServicesResult> |
− | <Service xsi:type=" | + | <Service xsi:type="ExcursionService"> |
− | <ID>- | + | <ID>-190</ID> |
− | <Name> | + | <Name>Экскурсия::Арльберг/Кладбища Австрии, /Крысиная упряжка /</Name> |
<ExternalID>0</ExternalID> | <ExternalID>0</ExternalID> | ||
<StartDate>0001-01-01T00:00:00</StartDate> | <StartDate>0001-01-01T00:00:00</StartDate> | ||
Строка 637: | Строка 796: | ||
<StartDay>1</StartDay> | <StartDay>1</StartDay> | ||
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>1</Attribute> |
<RateBrutto /> | <RateBrutto /> | ||
<Brutto>0</Brutto> | <Brutto>0</Brutto> | ||
<RateNetto /> | <RateNetto /> | ||
<Netto>0</Netto> | <Netto>0</Netto> | ||
− | <NMen> | + | <NMen>0</NMen> |
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10760</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 661: | Строка 820: | ||
</Partner> | </Partner> | ||
<Quota>NotChecked</Quota> | <Quota>NotChecked</Quota> | ||
− | <PacketID> | + | <PacketID>250</PacketID> |
<City> | <City> | ||
<ID>275</ID> | <ID>275</ID> | ||
Строка 686: | Строка 845: | ||
<Notes /> | <Notes /> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>4</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 695: | Строка 854: | ||
<ServiceClasses>None</ServiceClasses> | <ServiceClasses>None</ServiceClasses> | ||
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Excursion> |
− | <ID> | + | <ID>292</ID> |
− | <Name> | + | <Name>Кладбища Австрии</Name> |
− | <NameLat | + | <NameLat /> |
<Code /> | <Code /> | ||
<CodeLat /> | <CodeLat /> | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | < | + | <PlaceFrom /> |
− | < | + | <PlaceTo /> |
− | < | + | <TimeBeg>0001-01-01T00:00:00</TimeBeg> |
− | </ | + | <TimeEnd>0001-01-01T00:00:00</TimeEnd> |
− | < | + | </Excursion> |
− | <ID> | + | <Transport> |
+ | <ID>28</ID> | ||
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 715: | Строка 875: | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
− | + | </Transport> | |
− | + | </Service> | |
− | + | </GetNotCalculatedServicesResult> | |
− | + | </GetNotCalculatedServicesResponse> | |
− | + | </soap:Body> | |
− | + | </soap:Envelope> | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | ====Метод получения вариантов услуги (GetServiceVariants)==== | |
− | + | =====Пример SOAP-запроса к сервису===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="xml"> | |
− | + | <?xml version="1.0" encoding="utf-8"?> | |
− | + | <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> | |
− | + | <GetServiceVariants xmlns="http://megatec.ru/"> | |
− | + | <service xsi:type="FlightService"> | |
− | + | <StartDay>1</StartDay> | |
− | + | <Duration>0</Duration> | |
− | + | <Attribute>7</Attribute> | |
− | + | <NMen>1</NMen> | |
− | + | <Partner> | |
− | + | <ID>10762</ID> | |
− | + | </Partner> | |
− | + | <PacketID>248</PacketID> | |
− | + | <City> | |
− | + | <ID>275</ID> | |
− | + | </City> | |
− | + | <Country> | |
− | + | <ID>90</ID> | |
− | + | </Country> | |
− | + | <ServiceClass> | |
− | + | <ID>1</ID> | |
− | + | </ServiceClass> | |
− | + | <Tariff> | |
− | + | <ID>89</ID> | |
− | + | </Tariff> | |
− | + | <Flight> | |
− | + | <ID>523</ID> | |
− | + | </Flight> | |
− | + | </service> | |
− | + | <tourDate>2010-07-02T00:00:00</tourDate> | |
− | + | <tourDuration>11</tourDuration> | |
− | + | <allowHidden>false</allowHidden> | |
− | + | <allowHotelCodeChange>false</allowHotelCodeChange> | |
− | + | <checkFlightPacket>true</checkFlightPacket> | |
− | + | <checkQuotes>true</checkQuotes> | |
− | + | <nMen>1</nMen> | |
− | + | <byRoom>false</byRoom> | |
+ | <userKey>1</userKey> | ||
+ | <includeOriginal>true</includeOriginal> | ||
+ | <excludeCharterClasses /> | ||
+ | </GetServiceVariants> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <GetServiceVariantsResponse xmlns="http://megatec.ru/"> | ||
+ | <GetServiceVariantsResult> | ||
<Service xsi:type="FlightService"> | <Service xsi:type="FlightService"> | ||
− | <ID>- | + | <ID>-209</ID> |
− | <Name>А_П::Москва/Арльберг/ | + | <Name>А_П::Москва/Арльберг/P74211, DME-AL, 12:12-15:15/Y Экономический класс/</Name> |
<ExternalID>0</ExternalID> | <ExternalID>0</ExternalID> | ||
<StartDate>0001-01-01T00:00:00</StartDate> | <StartDate>0001-01-01T00:00:00</StartDate> | ||
Строка 848: | Строка 1029: | ||
</Tariff> | </Tariff> | ||
<Flight> | <Flight> | ||
− | <ID> | + | <ID>525</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 874: | Строка 1055: | ||
</CityTo> | </CityTo> | ||
<AirportFrom> | <AirportFrom> | ||
− | <ID>- | + | <ID>-212</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
− | <Code> | + | <Code>DME</Code> |
<CodeLat /> | <CodeLat /> | ||
<Unicode /> | <Unicode /> | ||
Строка 883: | Строка 1064: | ||
</AirportFrom> | </AirportFrom> | ||
<AirportTo> | <AirportTo> | ||
− | <ID>- | + | <ID>-213</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
Строка 892: | Строка 1073: | ||
</AirportTo> | </AirportTo> | ||
<Airline> | <Airline> | ||
− | <ID>- | + | <ID>-211</ID> |
<Name /> | <Name /> | ||
<NameLat /> | <NameLat /> | ||
− | <Code> | + | <Code>P7</Code> |
<CodeLat /> | <CodeLat /> | ||
<Unicode /> | <Unicode /> | ||
<Description /> | <Description /> | ||
</Airline> | </Airline> | ||
− | <Number> | + | <Number>4211</Number> |
− | <TimeFrom>1899-01- | + | <TimeFrom>1899-01-01T12:12:00</TimeFrom> |
− | <TimeTo>1899-01- | + | <TimeTo>1899-01-01T15:15:00</TimeTo> |
<DateFrom>0001-01-01T00:00:00</DateFrom> | <DateFrom>0001-01-01T00:00:00</DateFrom> | ||
<DateTo>0001-01-01T00:00:00</DateTo> | <DateTo>0001-01-01T00:00:00</DateTo> | ||
Строка 909: | Строка 1090: | ||
</Flight> | </Flight> | ||
</Service> | </Service> | ||
− | + | <Service xsi:type="FlightService"> | |
− | + | <ID>-245</ID> | |
− | + | <Name>А_П::Москва/Арльберг/SU1875, SVO1-AL, 20:20-23:30/Y Экономический класс/</Name> | |
− | + | <ExternalID>0</ExternalID> | |
− | + | <StartDate>0001-01-01T00:00:00</StartDate> | |
− | + | <EndDate>0001-01-01T00:00:00</EndDate> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<StartDay>1</StartDay> | <StartDay>1</StartDay> | ||
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>7</Attribute> |
+ | <RateBrutto /> | ||
+ | <Brutto>0</Brutto> | ||
+ | <RateNetto /> | ||
+ | <Netto>0</Netto> | ||
<NMen>1</NMen> | <NMen>1</NMen> | ||
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10762</ID> |
+ | <Name /> | ||
+ | <NameLat /> | ||
+ | <Code /> | ||
+ | <CodeLat /> | ||
+ | <Unicode /> | ||
+ | <Description /> | ||
+ | <PartnersGroupID>0</PartnersGroupID> | ||
+ | <FullName /> | ||
+ | <BossName /> | ||
+ | <Fax /> | ||
+ | <Address /> | ||
+ | <Zip /> | ||
+ | <Email /> | ||
+ | <Phones /> | ||
</Partner> | </Partner> | ||
− | <PacketID> | + | <Quota>NotChecked</Quota> |
+ | <PacketID>248</PacketID> | ||
<City> | <City> | ||
<ID>275</ID> | <ID>275</ID> | ||
+ | <Name /> | ||
+ | <NameLat /> | ||
+ | <Code /> | ||
+ | <CodeLat /> | ||
+ | <Unicode /> | ||
+ | <Description /> | ||
</City> | </City> | ||
<Country> | <Country> | ||
<ID>90</ID> | <ID>90</ID> | ||
+ | <Name /> | ||
+ | <NameLat /> | ||
+ | <Code /> | ||
+ | <CodeLat /> | ||
+ | <Unicode /> | ||
+ | <Description /> | ||
+ | <IsIncoming>false</IsIncoming> | ||
</Country> | </Country> | ||
+ | <Tourists /> | ||
+ | <DetailNetto /> | ||
+ | <DetailBrutto /> | ||
+ | <Notes /> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>1</ID> |
− | + | <Name /> | |
− | + | <NameLat /> | |
− | < | + | <Code /> |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | < | + | <Description /> |
− | + | <ServiceClasses>None</ServiceClasses> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | |||
− | < | ||
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Tariff> |
− | <ID> | + | <ID>89</ID> |
− | + | <Name>Экономический класс</Name> | |
− | + | <NameLat>Coach economy</NameLat> | |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | <ServiceClassID>0</ServiceClassID> | |
− | < | + | <Comment /> |
− | <ID> | + | <CreateDate>0001-01-01T00:00:00</CreateDate> |
− | + | </Tariff> | |
− | + | <Flight> | |
− | + | <ID>523</ID> | |
− | < | + | <Name /> |
− | + | <NameLat /> | |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | <CityFrom> | |
− | + | <ID>1</ID> | |
− | + | <Name /> | |
− | <ID> | + | <NameLat /> |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | + | </CityFrom> | |
− | + | <CityTo> | |
− | + | <ID>275</ID> | |
− | + | <Name /> | |
− | + | <NameLat /> | |
− | + | <Code /> | |
− | + | <CodeLat /> | |
− | <ID> | + | <Unicode /> |
− | + | <Description /> | |
− | + | </CityTo> | |
− | + | <AirportFrom> | |
− | + | <ID>-248</ID> | |
− | <ID> | + | <Name /> |
− | + | <NameLat /> | |
− | + | <Code>SVO1</Code> | |
− | + | <CodeLat /> | |
− | + | <Unicode /> | |
− | + | <Description /> | |
− | < | + | </AirportFrom> |
− | + | <AirportTo> | |
− | + | <ID>-249</ID> | |
− | < | + | <Name /> |
− | + | <NameLat /> | |
− | + | <Code>AL</Code> | |
− | < | + | <CodeLat /> |
− | </ | + | <Unicode /> |
+ | <Description /> | ||
+ | </AirportTo> | ||
+ | <Airline> | ||
+ | <ID>-247</ID> | ||
+ | <Name /> | ||
+ | <NameLat /> | ||
+ | <Code>SU</Code> | ||
+ | <CodeLat /> | ||
+ | <Unicode /> | ||
+ | <Description /> | ||
+ | </Airline> | ||
+ | <Number>1875</Number> | ||
+ | <TimeFrom>1899-01-01T20:20:00</TimeFrom> | ||
+ | <TimeTo>1899-01-01T23:30:00</TimeTo> | ||
+ | <DateFrom>0001-01-01T00:00:00</DateFrom> | ||
+ | <DateTo>0001-01-01T00:00:00</DateTo> | ||
+ | <IsArrival>false</IsArrival> | ||
+ | <Available>No</Available> | ||
+ | </Flight> | ||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | </GetServiceVariantsResult> |
− | <StartDay>1</StartDay> | + | </GetServiceVariantsResponse> |
− | <Duration> | + | </soap:Body> |
− | <Attribute> | + | </soap:Envelope> |
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | |||
+ | ===Работа с сервисом «ReservationService.asmx» (Бронирование)=== | ||
+ | ====Метод расчета стоимости услуг (CalculateReservation)==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <CalculateReservation xmlns="http://megatec.ru/"> | ||
+ | <services> | ||
+ | <Service xsi:type="TransferService"> | ||
+ | <StartDay>1</StartDay> | ||
+ | <Duration>0</Duration> | ||
+ | <Attribute>19975</Attribute> | ||
<NMen>1</NMen> | <NMen>1</NMen> | ||
<Partner> | <Partner> | ||
<ID>10760</ID> | <ID>10760</ID> | ||
</Partner> | </Partner> | ||
− | |||
<PacketID>250</PacketID> | <PacketID>250</PacketID> | ||
<City> | <City> | ||
Строка 1033: | Строка 1268: | ||
</Country> | </Country> | ||
<ServiceClass> | <ServiceClass> | ||
+ | <ID>2</ID> | ||
+ | </ServiceClass> | ||
+ | <Transfer> | ||
+ | <ID>372</ID> | ||
+ | </Transfer> | ||
+ | <Transport> | ||
<ID>3</ID> | <ID>3</ID> | ||
− | </ | + | </Transport> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="VisaService"> |
− | <StartDay> | + | <StartDay>1</StartDay> |
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>131</Attribute> |
− | |||
<Partner> | <Partner> | ||
<ID>10760</ID> | <ID>10760</ID> | ||
</Partner> | </Partner> | ||
<PacketID>250</PacketID> | <PacketID>250</PacketID> | ||
− | |||
− | |||
− | |||
<Country> | <Country> | ||
<ID>90</ID> | <ID>90</ID> | ||
</Country> | </Country> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>5</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Visa> |
− | <ID> | + | <ID>157</ID> |
− | </ | + | </Visa> |
− | |||
− | |||
− | |||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="InsuranceService"> |
<StartDay>1</StartDay> | <StartDay>1</StartDay> | ||
− | <Duration> | + | <Duration>11</Duration> |
− | <NMen> | + | <Attribute>151</Attribute> |
+ | <NMen>1</NMen> | ||
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10763</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <PacketID>250</PacketID> |
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>6</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <AddDescription1> |
− | <ID> | + | <ID>6</ID> |
− | </ | + | </AddDescription1> |
− | < | + | <AddDescription2> |
− | <ID> | + | <ID>0</ID> |
− | + | </AddDescription2> | |
− | + | <Insurance> | |
− | + | <ID>174</ID> | |
− | + | </Insurance> | |
− | |||
− | |||
− | </ | ||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="AdditionalService"> |
− | <StartDay> | + | <StartDay>1</StartDay> |
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>3</Attribute> |
− | <NMen> | + | <NMen>1</NMen> |
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10760</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <Quota>NotChecked</Quota> |
+ | <PacketID>250</PacketID> | ||
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>1032</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Description> |
− | <ID> | + | <ID>183</ID> |
− | </ | + | </Description> |
− | < | + | <Description1> |
− | <ID> | + | <ID>0</ID> |
− | < | + | </Description1> |
− | <ID> | + | <Description2> |
− | </ | + | <ID>0</ID> |
− | < | + | </Description2> |
− | <ID> | + | </Service> |
− | </ | + | <Service xsi:type="HotelService"> |
− | </ | + | <StartDay>1</StartDay> |
+ | <Duration>10</Duration> | ||
+ | <Attribute>390</Attribute> | ||
+ | <NMen>1</NMen> | ||
+ | <Partner> | ||
+ | <ID>10760</ID> | ||
+ | </Partner> | ||
+ | <Quota>NotChecked</Quota> | ||
+ | <PacketID>250</PacketID> | ||
+ | <City> | ||
+ | <ID>275</ID> | ||
+ | </City> | ||
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
+ | <ServiceClass> | ||
+ | <ID>3</ID> | ||
+ | </ServiceClass> | ||
+ | <Hotel> | ||
+ | <ID>3254</ID> | ||
+ | </Hotel> | ||
+ | <Room> | ||
+ | <ID>1112</ID> | ||
+ | <RoomType> | ||
+ | <ID>1</ID> | ||
+ | </RoomType> | ||
+ | <RoomCategory> | ||
+ | <ID>20</ID> | ||
+ | </RoomCategory> | ||
+ | <RoomAccomodation> | ||
+ | <ID>320</ID> | ||
+ | </RoomAccomodation> | ||
+ | </Room> | ||
+ | <Pansion> | ||
+ | <ID>2</ID> | ||
+ | </Pansion> | ||
</Service> | </Service> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<Service xsi:type="TransferService"> | <Service xsi:type="TransferService"> | ||
− | <StartDay> | + | <StartDay>8</StartDay> |
<Duration>0</Duration> | <Duration>0</Duration> | ||
<Attribute>19975</Attribute> | <Attribute>19975</Attribute> | ||
Строка 1184: | Строка 1399: | ||
<ID>90</ID> | <ID>90</ID> | ||
</Country> | </Country> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
<ServiceClass> | <ServiceClass> | ||
<ID>2</ID> | <ID>2</ID> | ||
</ServiceClass> | </ServiceClass> | ||
<Transfer> | <Transfer> | ||
− | <ID> | + | <ID>373</ID> |
</Transfer> | </Transfer> | ||
<Transport> | <Transport> | ||
Строка 1199: | Строка 1409: | ||
</Transport> | </Transport> | ||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="FlightService"> |
<StartDay>1</StartDay> | <StartDay>1</StartDay> | ||
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | < | + | <NMen>2</NMen> |
<Partner> | <Partner> | ||
− | <ID> | + | <ID>27990</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <PacketID>19443</PacketID> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>1</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Tariff> |
− | <ID> | + | <ID>226</ID> |
− | </ | + | </Tariff> |
+ | <Flight> | ||
+ | <ID>17234</ID> | ||
+ | <CityFrom> | ||
+ | <ID>30</ID> | ||
+ | </CityFrom> | ||
+ | <CityTo> | ||
+ | <ID>65</ID> | ||
+ | </CityTo> | ||
+ | </Flight> | ||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="FlightService"> |
− | <StartDay> | + | <StartDay>8</StartDay> |
− | <Duration> | + | <Duration>0</Duration> |
− | <Attribute> | + | <Attribute>0</Attribute> |
− | <NMen> | + | <NMen>2</NMen> |
<Partner> | <Partner> | ||
− | <ID> | + | <ID>27990</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <PacketID>18920</PacketID> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>1</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Tariff> |
− | <ID> | + | <ID>226</ID> |
− | </ | + | </Tariff> |
− | < | + | <Flight> |
− | <ID> | + | <ID>17235</ID> |
− | + | <CityFrom> | |
− | + | <ID>65</ID> | |
− | <ID> | + | </CityFrom> |
− | </ | + | <CityTo> |
+ | <ID>30</ID> | ||
+ | </CityTo> | ||
+ | </Flight> | ||
</Service> | </Service> | ||
− | < | + | </services> |
− | + | <parameters> | |
− | + | <AdvertiseID>-1</AdvertiseID> | |
− | + | <CauseDiscountID>-1</CauseDiscountID> | |
− | + | <CountryID>90</CountryID> | |
− | + | <DupUserID>-1</DupUserID> | |
− | + | <OperatorName /> | |
− | + | <OwnerID>-1</OwnerID> | |
− | + | <PartnerID>10764</PartnerID> | |
− | + | <RateCode /> | |
− | + | <ReserveDuration>-1</ReserveDuration> | |
− | + | <TourDate>2010-07-02T00:00:00</TourDate> | |
− | + | <TourID>542</TourID> | |
− | + | <TouristsCount>1</TouristsCount> | |
− | + | </parameters> | |
− | + | </CalculateReservation> | |
− | + | </soap:Body> | |
− | + | </soap:Envelope> | |
− | + | </syntaxhighlight> | |
− | + | |} | |
− | + | <br /> | |
− | + | =====Пример SOAP-ответа сервиса===== | |
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | <syntaxhighlight lang="xml"> | |
− | + | <?xml version="1.0" encoding="utf-8"?> | |
− | + | <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> | |
− | <Service xsi:type=" | + | <CalculateReservationResponse xmlns="http://megatec.ru/"> |
− | <StartDay>1</StartDay> | + | <CalculateReservationResult> |
− | <Duration> | + | <Brutto>1646</Brutto> |
− | <Attribute> | + | <DiscountPercent>10</DiscountPercent> |
+ | <DiscountSumm>172</DiscountSumm> | ||
+ | <Rate>$</Rate> | ||
+ | <ReservationCode /> | ||
+ | <ErrorMessage /> | ||
+ | </CalculateReservationResult> | ||
+ | </CalculateReservationResponse> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод бронирования услуг (CreateReservation)==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <CalculateReservation xmlns="http://megatec.ru/"> | ||
+ | <services> | ||
+ | <Service xsi:type="TransferService"> | ||
+ | <StartDay>1</StartDay> | ||
+ | <Duration>0</Duration> | ||
+ | <Attribute>19975</Attribute> | ||
<NMen>1</NMen> | <NMen>1</NMen> | ||
<Partner> | <Partner> | ||
<ID>10760</ID> | <ID>10760</ID> | ||
</Partner> | </Partner> | ||
− | |||
<PacketID>250</PacketID> | <PacketID>250</PacketID> | ||
<City> | <City> | ||
Строка 1305: | Строка 1538: | ||
</Tourists> | </Tourists> | ||
<ServiceClass> | <ServiceClass> | ||
+ | <ID>2</ID> | ||
+ | </ServiceClass> | ||
+ | <Transfer> | ||
+ | <ID>372</ID> | ||
+ | </Transfer> | ||
+ | <Transport> | ||
<ID>3</ID> | <ID>3</ID> | ||
− | </ | + | </Transport> |
− | + | </Service> | |
− | + | <Service xsi:type="VisaService"> | |
− | + | <StartDay>1</StartDay> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | </Service> | ||
− | <Service xsi:type=" | ||
− | <StartDay> | ||
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>131</Attribute> |
− | |||
<Partner> | <Partner> | ||
<ID>10760</ID> | <ID>10760</ID> | ||
</Partner> | </Partner> | ||
<PacketID>250</PacketID> | <PacketID>250</PacketID> | ||
− | |||
− | |||
− | |||
<Country> | <Country> | ||
<ID>90</ID> | <ID>90</ID> | ||
Строка 1347: | Строка 1564: | ||
</Tourists> | </Tourists> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>5</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Visa> |
− | <ID> | + | <ID>157</ID> |
− | </ | + | </Visa> |
− | |||
− | |||
− | |||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="InsuranceService"> |
<StartDay>1</StartDay> | <StartDay>1</StartDay> | ||
− | <Duration> | + | <Duration>11</Duration> |
− | <NMen> | + | <Attribute>151</Attribute> |
+ | <NMen>1</NMen> | ||
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10763</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <PacketID>250</PacketID> |
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
<Tourists> | <Tourists> | ||
<Tourist> | <Tourist> | ||
Строка 1370: | Строка 1588: | ||
</Tourists> | </Tourists> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>6</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <AddDescription1> |
− | <ID> | + | <ID>6</ID> |
− | </ | + | </AddDescription1> |
− | < | + | <AddDescription2> |
− | <ID> | + | <ID>0</ID> |
− | + | </AddDescription2> | |
− | + | <Insurance> | |
− | + | <ID>174</ID> | |
− | + | </Insurance> | |
− | |||
− | |||
− | </ | ||
</Service> | </Service> | ||
− | <Service xsi:type=" | + | <Service xsi:type="AdditionalService"> |
− | <StartDay> | + | <StartDay>1</StartDay> |
<Duration>0</Duration> | <Duration>0</Duration> | ||
− | <Attribute> | + | <Attribute>3</Attribute> |
− | <NMen> | + | <NMen>1</NMen> |
<Partner> | <Partner> | ||
− | <ID> | + | <ID>10760</ID> |
</Partner> | </Partner> | ||
− | <PacketID> | + | <Quota>NotChecked</Quota> |
+ | <PacketID>250</PacketID> | ||
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
<Tourists> | <Tourists> | ||
<Tourist> | <Tourist> | ||
Строка 1400: | Строка 1619: | ||
</Tourists> | </Tourists> | ||
<ServiceClass> | <ServiceClass> | ||
− | <ID> | + | <ID>1032</ID> |
</ServiceClass> | </ServiceClass> | ||
− | < | + | <Description> |
− | <ID> | + | <ID>183</ID> |
− | </ | + | </Description> |
− | < | + | <Description1> |
− | <ID> | + | <ID>0</ID> |
− | + | </Description1> | |
− | + | <Description2> | |
− | + | <ID>0</ID> | |
− | + | </Description2> | |
− | |||
− | |||
− | </ | ||
</Service> | </Service> | ||
− | </services> | + | <Service xsi:type="HotelService"> |
− | <tourists> | + | <StartDay>1</StartDay> |
− | <Tourist Sex="Male" BirthDate="1980-02-01T00:00:00" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0"> | + | <Duration>10</Duration> |
− | <ID>0</ID> | + | <Attribute>390</Attribute> |
− | <Name> | + | <NMen>1</NMen> |
− | <FirstName /> | + | <Partner> |
− | <SecondName /> | + | <ID>10760</ID> |
− | <LastName /> | + | </Partner> |
− | </Name> | + | <Quota>NotChecked</Quota> |
− | <NameLat> | + | <PacketID>250</PacketID> |
− | <FirstName>SEMEN</FirstName> | + | <City> |
− | <SecondName /> | + | <ID>275</ID> |
− | <LastName>IVANOV</LastName> | + | </City> |
− | </NameLat> | + | <Country> |
− | <LocalPassport IssuedBy="" Series="" Number="" IssueDate="0001-01-01T00:00:00" EndDate="0001-01-01T00:00:00" /> | + | <ID>90</ID> |
− | <ForeignPassport IssuedBy="" Series="1234" Number="234567" IssueDate="0001-01-01T00:00:00" EndDate="2020-06-05T00:00:00" /> | + | </Country> |
− | </Tourist> | + | <Tourists> |
− | </tourists> | + | <Tourist> |
− | <parameters> | + | <ID>0</ID> |
− | <AdvertiseID>-1</AdvertiseID> | + | </Tourist> |
− | <CauseDiscountID>-1</CauseDiscountID> | + | </Tourists> |
− | <CountryID>90</CountryID> | + | <ServiceClass> |
− | <DupUserID>-1</DupUserID> | + | <ID>3</ID> |
− | <OperatorName /> | + | </ServiceClass> |
− | <OwnerID>-1</OwnerID> | + | <Hotel> |
− | <PartnerID>10764</PartnerID> | + | <ID>3254</ID> |
− | <RateCode /> | + | </Hotel> |
− | <ReserveDuration>-1</ReserveDuration> | + | <Room> |
− | <TourDate>2010-07-02T00:00:00</TourDate> | + | <ID>1112</ID> |
− | <TourID>542</TourID> | + | <RoomType> |
+ | <ID>1</ID> | ||
+ | </RoomType> | ||
+ | <RoomCategory> | ||
+ | <ID>20</ID> | ||
+ | </RoomCategory> | ||
+ | <RoomAccomodation> | ||
+ | <ID>320</ID> | ||
+ | </RoomAccomodation> | ||
+ | </Room> | ||
+ | <Pansion> | ||
+ | <ID>2</ID> | ||
+ | </Pansion> | ||
+ | </Service> | ||
+ | <Service xsi:type="TransferService"> | ||
+ | <StartDay>8</StartDay> | ||
+ | <Duration>0</Duration> | ||
+ | <Attribute>19975</Attribute> | ||
+ | <NMen>1</NMen> | ||
+ | <Partner> | ||
+ | <ID>10760</ID> | ||
+ | </Partner> | ||
+ | <PacketID>250</PacketID> | ||
+ | <City> | ||
+ | <ID>275</ID> | ||
+ | </City> | ||
+ | <Country> | ||
+ | <ID>90</ID> | ||
+ | </Country> | ||
+ | <Tourists> | ||
+ | <Tourist> | ||
+ | <ID>0</ID> | ||
+ | </Tourist> | ||
+ | </Tourists> | ||
+ | <ServiceClass> | ||
+ | <ID>2</ID> | ||
+ | </ServiceClass> | ||
+ | <Transfer> | ||
+ | <ID>373</ID> | ||
+ | </Transfer> | ||
+ | <Transport> | ||
+ | <ID>3</ID> | ||
+ | </Transport> | ||
+ | </Service> | ||
+ | <Service xsi:type="FlightService"> | ||
+ | <StartDay>1</StartDay> | ||
+ | <Duration>0</Duration> | ||
+ | <NMen>2</NMen> | ||
+ | <Partner> | ||
+ | <ID>27990</ID> | ||
+ | </Partner> | ||
+ | <PacketID>19443</PacketID> | ||
+ | <Tourists> | ||
+ | <Tourist> | ||
+ | <ID>0</ID> | ||
+ | </Tourist> | ||
+ | </Tourists> | ||
+ | <ServiceClass> | ||
+ | <ID>1</ID> | ||
+ | </ServiceClass> | ||
+ | <Tariff> | ||
+ | <ID>226</ID> | ||
+ | </Tariff> | ||
+ | <Flight> | ||
+ | <ID>17234</ID> | ||
+ | <CityFrom> | ||
+ | <ID>30</ID> | ||
+ | </CityFrom> | ||
+ | <CityTo> | ||
+ | <ID>65</ID> | ||
+ | </CityTo> | ||
+ | </Flight> | ||
+ | </Service> | ||
+ | <Service xsi:type="FlightService"> | ||
+ | <StartDay>8</StartDay> | ||
+ | <Duration>0</Duration> | ||
+ | <Attribute>0</Attribute> | ||
+ | <NMen>2</NMen> | ||
+ | <Partner> | ||
+ | <ID>27990</ID> | ||
+ | </Partner> | ||
+ | <PacketID>18920</PacketID> | ||
+ | <Tourists> | ||
+ | <Tourist> | ||
+ | <ID>0</ID> | ||
+ | </Tourist> | ||
+ | </Tourists> | ||
+ | <ServiceClass> | ||
+ | <ID>1</ID> | ||
+ | </ServiceClass> | ||
+ | <Tariff> | ||
+ | <ID>226</ID> | ||
+ | </Tariff> | ||
+ | <Flight> | ||
+ | <ID>17235</ID> | ||
+ | <CityFrom> | ||
+ | <ID>65</ID> | ||
+ | </CityFrom> | ||
+ | <CityTo> | ||
+ | <ID>30</ID> | ||
+ | </CityTo> | ||
+ | </Flight> | ||
+ | </Service> | ||
+ | </services> | ||
+ | <tourists> | ||
+ | <Tourist Sex="Male" BirthDate="1980-02-01T00:00:00" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0"> | ||
+ | <ID>0</ID> | ||
+ | <Name> | ||
+ | <FirstName /> | ||
+ | <SecondName /> | ||
+ | <LastName /> | ||
+ | </Name> | ||
+ | <NameLat> | ||
+ | <FirstName>SEMEN</FirstName> | ||
+ | <SecondName /> | ||
+ | <LastName>IVANOV</LastName> | ||
+ | </NameLat> | ||
+ | <LocalPassport IssuedBy="" Series="" Number="" IssueDate="0001-01-01T00:00:00" EndDate="0001-01-01T00:00:00" /> | ||
+ | <ForeignPassport IssuedBy="" Series="1234" Number="234567" IssueDate="0001-01-01T00:00:00" EndDate="2020-06-05T00:00:00" /> | ||
+ | </Tourist> | ||
+ | </tourists> | ||
+ | <parameters> | ||
+ | <AdvertiseID>-1</AdvertiseID> | ||
+ | <CauseDiscountID>-1</CauseDiscountID> | ||
+ | <CountryID>90</CountryID> | ||
+ | <DupUserID>-1</DupUserID> | ||
+ | <OperatorName /> | ||
+ | <OwnerID>-1</OwnerID> | ||
+ | <PartnerID>10764</PartnerID> | ||
+ | <RateCode /> | ||
+ | <ReserveDuration>-1</ReserveDuration> | ||
+ | <TourDate>2010-07-02T00:00:00</TourDate> | ||
+ | <TourID>542</TourID> | ||
<TouristsCount>1</TouristsCount> | <TouristsCount>1</TouristsCount> | ||
− | </parameters> </CalculateReservation> | + | </parameters> </CalculateReservation> |
− | </soap:Body> | + | </soap:Body> |
− | </soap:Envelope></ | + | </soap:Envelope> |
− | =====Пример SOAP-ответа сервиса:===== | + | </syntaxhighlight> |
− | < | + | |} |
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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://megatec.ru/"> | ||
+ | <CreateReservationResult> | ||
+ | <Brutto>1646</Brutto> | ||
+ | <DiscountPercent>10</DiscountPercent> | ||
+ | <DiscountSumm>172</DiscountSumm> | ||
+ | <Rate>$</Rate> | ||
+ | <ReservationCode>AT 0702007</ReservationCode> | ||
+ | <ErrorMessage /> | ||
+ | </CreateReservationResult> | ||
+ | </CreateReservationResponse> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод получения данных по путевке (GetDogovorInfo)==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/"> | ||
+ | <soap:Header/> | ||
+ | <soap:Body> | ||
+ | <GetDogovorInfo xmlns="http://megatec.ru/"> | ||
+ | <token>?</token> | ||
+ | <reservationCode>EN40228001</reservationCode> | ||
+ | </GetDogovorInfo> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <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> | ||
+ | <GetDogovorInfoResponse xmlns="http://megatec.ru/"> | ||
+ | <GetDogovorInfoResult> | ||
+ | <Code>EN40228001</Code> | ||
+ | <TurDate>2014-02-28T00:00:00</TurDate> | ||
+ | <Price>225</Price> | ||
+ | <Discount>0</Discount> | ||
+ | <DiscountSum>0</DiscountSum> | ||
+ | <DogovorStatus>3</DogovorStatus> | ||
+ | <Nmen>1</Nmen> | ||
+ | <Ndays>4</Ndays> | ||
+ | <CountryName>Англия</CountryName> | ||
+ | <CityName>Лондон</CityName> | ||
+ | <RateCode>USD</RateCode> | ||
+ | <ReservationServices> | ||
+ | <Service> | ||
+ | <ID>-1</ID> | ||
+ | <Name>HOTEL::Лондон/Отель в Лондоне-1*,3 ночи/Single(Standart),Взрослый/FB Пансион/</Name> | ||
+ | <ExternalID>0</ExternalID> | ||
+ | <StartDate>2014-02-28T00:00:00</StartDate> | ||
+ | <EndDate>2014-03-02T00:00:00</EndDate> | ||
+ | <StartDay>1</StartDay> | ||
+ | <Duration>3</Duration> | ||
+ | <Attribute>0</Attribute> | ||
+ | <RateBrutto/> | ||
+ | <Brutto>225</Brutto> | ||
+ | <RateNetto/> | ||
+ | <Netto>225</Netto> | ||
+ | <NMen>1</NMen> | ||
+ | <Status> | ||
+ | <ID>1</ID> | ||
+ | <Name>Заказ на бронирование</Name> | ||
+ | <NameLat>order for booking</NameLat> | ||
+ | <Code/> | ||
+ | <CodeLat/> | ||
+ | <Unicode/> | ||
+ | <Description/> | ||
+ | </Status> | ||
+ | <Quota>NotChecked</Quota> | ||
+ | <PacketID>0</PacketID> | ||
+ | <Tourists/> | ||
+ | <DetailNetto/> | ||
+ | <DetailBrutto/> | ||
+ | <Notes/> | ||
+ | <PartnerContractId>0</PartnerContractId> | ||
+ | <LinkingStatus>0</LinkingStatus> | ||
+ | <LinkingServiceKey>0</LinkingServiceKey> | ||
+ | <IsAllNetCostOffers>false</IsAllNetCostOffers> | ||
+ | <IsAllGrossCostOffers>false</IsAllGrossCostOffers> | ||
+ | <ServiceClass> | ||
+ | <ID>3</ID> | ||
+ | <Name>Отель/Круиз</Name> | ||
+ | <NameLat/> | ||
+ | <Code/> | ||
+ | <CodeLat/> | ||
+ | <Unicode/> | ||
+ | <Description/> | ||
+ | <ServiceClasses>None</ServiceClasses> | ||
+ | </ServiceClass> | ||
+ | <IsGroup>false</IsGroup> | ||
+ | </Service> | ||
+ | </ReservationServices> | ||
+ | <ReservationTourists> | ||
+ | <Tourist Sex="Male" BirthDate="0001-01-01T00:00:00" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0"> | ||
+ | <ID>-2</ID> | ||
+ | <Name> | ||
+ | <FirstName>Джек</FirstName> | ||
+ | <LastName>Лондон</LastName> | ||
+ | </Name> | ||
+ | <NameLat> | ||
+ | <FirstName>Dzhek</FirstName> | ||
+ | <LastName>London</LastName> | ||
+ | </NameLat> | ||
+ | <LocalPassport IssuedBy="" Series="" Number="" IssueDate="2014-03-06T00:00:00+04:00" EndDate="2014-03-06T00:00:00+04:00"/> | ||
+ | <ForeignPassport IssuedBy="" Series="" Number="" IssueDate="2014-03-06T00:00:00+04:00" EndDate="0001-01-01T00:00:00"/> | ||
+ | </Tourist> | ||
+ | </ReservationTourists> | ||
+ | <DogovorGlobalStatus>3</DogovorGlobalStatus> | ||
+ | </GetDogovorInfoResult> | ||
+ | </GetDogovorInfoResponse> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод получения информации по путевке (GetReservationInfo)==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/"> | ||
+ | <soap:Header/> | ||
+ | <soap:Body> | ||
+ | <GetReservationInfo xmlns="http://megatec.ru/"> | ||
+ | <token>?</token> | ||
+ | <reservationCode>EN40228001</reservationCode> | ||
+ | <partnerKey>0</partnerKey> | ||
+ | <param> | ||
+ | <Code>EN40228001</Code> | ||
+ | <Price>225</Price> | ||
+ | <Discount>0</Discount> | ||
+ | </param> | ||
+ | </GetReservationInfo> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
<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> | |
− | + | <GetReservationInfoResponse xmlns="http://megatec.ru/"> | |
− | + | <GetReservationInfoResult><![CDATA[<table border="2"> | |
− | + | <tr><td colspan="2"> | |
− | + | Новая заявка | |
− | + | на организацию экскурсионного туристического / | |
− | + | санаторно-курортного обслуживания к путевке EN40228001 | |
− | + | (Англия, Лондон, Индивидуально)</td></tr> | |
− | + | <tr><td colspan="2"></td></tr> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | <tr><td colspan="2"></td></tr> | ||
+ | <tr><td colspan="2">Даты заезда: с 28.02.2014 по 03.03.2014, кол-во дней 4</td></tr> | ||
+ | <tr><td colspan="2"></td></tr> | ||
+ | <tr><td> Наименование: </td><td>Отель в Лондоне 1* (Лондон)</td></tr> | ||
+ | |||
+ | <tr><td> Категория номера: </td><td>Single Standart Взрослый</td></tr> | ||
+ | <tr><td> Размещение (кол-во мест в номере):</td><td> 1</td></tr> | ||
+ | <tr><td> Список заезжающих:</td><td> Лондон Джек /М; </td></tr> | ||
+ | <tr><td> Питание:</td><td> Пансион</td></tr> | ||
+ | <tr><td colspan="2"></td></tr> | ||
+ | |||
+ | <tr><td>Полный список заезжающих: </td><td>Лондон Джек /М ;</td></tr> | ||
+ | <tr><td>Экскурсионная программа:</td><td> </td></tr> | ||
+ | <tr><td>Дополнительные услуги:</td><td> </td></tr> | ||
+ | <tr><td colspan="2"></td></tr> | ||
+ | <tr><td>Итого к оплате: </td><td>225 $ (Двести двадцать пять $ 00 )</td></tr> | ||
+ | <tr><td>Сумма заказа: </td><td>225 $</td></tr> | ||
+ | <tr><td>Номер путевке в базе данных субагента: </td><td>EN40228001</td></tr> | ||
+ | <tr><td>Дата продажи: </td><td>24.02.2014</td></tr> | ||
+ | </table>]]></GetReservationInfoResult> | ||
+ | </GetReservationInfoResponse> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | ====Метод для сохранения номера путевки (SetReservationCode)==== | ||
+ | =====Пример SOAP-запроса к сервису===== | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | ||
+ | |- style="background-color:#F2F2F2" | ||
+ | |- style="vertical-align:text-top" | ||
+ | | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <soap:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/"> | ||
+ | <soap:Header/> | ||
+ | <soap:Body> | ||
+ | <SetReservationCode xmlns="http://megatec.ru/"> | ||
+ | <token>?</token> | ||
+ | <reservationCode>EN40228001</reservationCode> | ||
+ | <partnerCode>40228001EN</partnerCode> | ||
+ | </SetReservationCode> | ||
+ | </soap:Body> | ||
+ | </soap:Envelope> | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | <br /> | ||
+ | =====Пример SOAP-ответа сервиса===== | ||
+ | Метод ничего не возвращает. | ||
[[Category:Мастер-Web_Дополнительные_модули]] | [[Category:Мастер-Web_Дополнительные_модули]] |
Версия 16:04, 12 марта 2014
Версия статьи от 12-03-2014.
Содержание
- 1 Введение
- 2 Установка
- 3 Настройка
- 4 Подготовка данных
- 4.1 Описание формата данных
- 4.1.1 CalculatedPriceInfo (Информация по расчитанной цене)
- 4.1.2 ReservationParams (Параметры бронирования)
- 4.1.3 ReservationResult (Результат расчета стоимости и бронирования комплекса услуг)
- 4.1.4 ReservationInfoParams (Параметры путевки)
- 4.1.5 ReservationInfo (Описание путевки, включая все услуги и туристов)
- 4.2 Сервис формирования списка услуг («ServiceProvider.asmx»)
- 4.3 Сервис бронирования (ReservationService.asmx)
- 4.1 Описание формата данных
- 5 Работа в системе
- 5.1 Работа с сервисом «ServiceProvider.asmx» (Формирование списка услуг)
- 5.2 Работа с сервисом «ReservationService.asmx» (Бронирование)
Введение
Данный модуль включает в себя два сервиса.
Сервис формирования списка услуг предназначен для получения следующей информации:
- Общие данные по ключу цены, такие как тур, продолжительности в днях и ночах, описание тура и условия бронирования;
- Список услуг, включенных в стоимость, по ключу цены;
- Список не рассчитанных услуг по ключу цены;
- Список вариантов какой-либо услуги.
Сервис бронирования предназначен для расчета стоимости совокупности услуг, с возможностью их последующего бронирования в базе данных.
Установка
Создание виртуального каталога
По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot
. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:
1 Зайти в Пуск (Start) → Настройки (Settings) → Панель управления (Control Panel) → Администрирование (Administrative Tools)
2 Диспетчер служб IIS
3 В открывшемся дереве каталогов выбрать Web Sites – Default Web Site. В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать Преобразовать в приложение
4 В открывшемся окне нужно нажать кнопку ОК
Подключение к базе данных ПК «Мастер-Тур»
В файле web.config
, расположенном в папке Reservation пропишите необходимые параметры подключения (красным цветом выделены значения, которые необходимо ввести).
Строка подключения к базе данных ПК «Мастер-Тур»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК «Мастер-Тур»;Initial Catalog=название базы данных ПК «Мастер-Тур;User ID=логин пользователя ПК «Мастер-Тур»;Password=пароль пользователя ПК «Мастер-Тур»"/>
Настройка
После установки Сервис бронирования доступен по адресу:
http://ip-адрес сервера Мастер-Веб/Reservation/ServiceProvider.asmx
(сервис формирования списка услуг);http://ip-адрес сервера Мастер-Веб/Reservation/ReservationService.asmx
(сервис бронирования).
Для корректной работы сервиса Reservation на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно включить настройку customErrors в элементе <system.web>: <system.web> <customErrors mode="On"/> … </system.web>
Подготовка данных
Описание формата данных
CalculatedPriceInfo (Информация по расчитанной цене)
/// <summary>
/// Информация по рассчитанной цене
/// </summary>
public class CalculatedPriceInfo
{
/// <summary>
/// Прайс-лист
/// </summary>
public PriceTour PriceTour { get; set; }
/// <summary>
/// Дата тура
/// </summary>
public DateTime TourDate { get; set; }
/// <summary>
/// Количество дней по туру
/// </summary>
public int TotalDays { get; set; }
/// <summary>
/// Количество ночей по туру
/// </summary>
public int Nights { get; set; }
}
|
ReservationParams (Параметры бронирования)
/// <summary>
/// Параметры бронирования
/// </summary>
public class ReservationParams
{
/// <summary>
/// Идентификатор рекламного источника в БД
/// </summary>
public int AdvertiseID { get; set; }
/// <summary>
/// Идентификатор основания для скидки в БД
/// </summary>
public int CauseDiscountID { get; set; }
/// <summary>
/// Идентификатор страны тура
/// </summary>
public int CountryID { get; set; }
/// <summary>
/// Идентификатор пользователя, бронирующего тур
/// </summary>
public int DupUserID { get; set; }
/// <summary>
/// Имя оператора
/// </summary>
public string OperatorName { get; set; }
/// <summary>
/// Иденификатор ведущего менеджера по путевке
/// </summary>
public int OwnerID { get; set; }
/// <summary>
/// Идентификатор партнера, бронирующего тур
/// </summary>
public int PartnerID { get; set; }
/// <summary>
/// Валюта, в котрой производится бронирование
/// (если не задана, то вытягивается из тура)
/// </summary>
public string RateCode { get; set; }
/// <summary>
/// Бронируемая продолжительность
/// (если не задана, то высчитывается на основании услуг)
/// </summary>
public int ReserveDuration { get; set; }
/// <summary>
/// Дата тура
/// </summary>
public DateTime TourDate { get; set; }
/// <summary>
/// Идентификатор тура
/// </summary>
public int TourID { get; set; }
/// <summary>
/// Количество туристов по услугам
/// </summary>
public int TouristsCount { get; set; }
}
|
ReservationResult (Результат расчета стоимости и бронирования комплекса услуг)
/// <summary>
/// Класс, описывающий результат расчета стоимости и бронирования комплекса услуг
/// </summary>
public class ReservationResult
{
/// <summary>
/// Стоимость к оплате
/// </summary>
public double Brutto { get; set; }
/// <summary>
/// Процент скидки
/// </summary>
public double DiscountPercent { get; set; }
/// <summary>
/// Абсолютная величина скидки
/// </summary>
public double DiscountSumm { get; set; }
/// <summary>
/// Валюта
/// </summary>
public string Rate { get; set; }
/// <summary>
/// Код сформированной путевки
/// </summary>
public string ReservationCode { get; set; }
/// <summary>
/// Сообщение об ошибке
/// </summary>
public string ErrorMessage { get; set; }
}
|
ReservationInfoParams (Параметры путевки)
/// <summary>
/// Класс, описывающий параметры путевки
/// </summary>
public class ReservationInfoParams
{
/// <summary>
/// код путевки
/// </summary>
public string Code { get; set; }
/// <summary>
/// значение скидки
/// </summary>
public double Discount { get; set; }
/// <summary>
/// стоимость путевки
/// </summary>
public double Price { get; set; }
}
|
ReservationInfo (Описание путевки, включая все услуги и туристов)
/// <summary>
/// Класс, описывающий путевку, включая все услуги путевки и туристов
/// </summary>
public class ReservationInfo
{
/// <summary>
/// Название города поездки
/// </summary>
public string CityName { get; set; }
/// <summary>
/// Код путевки
/// </summary>
public string Code { get; set; }
/// <summary>
/// Название страны поездки
/// </summary>
public string CountryName { get; set; }
/// <summary>
/// Скидка по путевке
/// </summary>
public double Discount { get; set; }
/// <summary>
/// Сумма скидки
/// </summary>
public double DiscountSum { get; set; }
/// <summary>
/// Обобщенный статус путевки
/// </summary>
public int? DogovorGlobalStatus { get; set; }
/// <summary>
/// Статус путевки
/// </summary>
public int DogovorStatus { get; set; }
/// <summary>
/// Кол-во дней поездки
/// </summary>
public int Ndays { get; set; }
/// <summary>
/// Количество туристов в путевке
/// </summary>
public int Nmen { get; set; }
/// <summary>
/// Цена без учета скидки
/// </summary>
public double Price { get; set; }
/// <summary>
/// Код валюты путевки
/// </summary>
public string RateCode { get; set; }
/// <summary>
/// Список всеу услуг в путевке
/// </summary>
public List<Service> ReservationServices { get; set; }
/// <summary>
/// Список всех туристов в путевке
/// </summary>
public List<Tourist> ReservationTourists { get; set; }
/// <summary>
/// Дата начала поездки
/// </summary>
public DateTime TurDate { get; set; }
}
|
Сервис формирования списка услуг («ServiceProvider.asmx»)
Метод получения информации по ключу цены (GetCalculatedPriceInfo)
Сигнатура вызова
/// <summary>
/// Получение информации о цене
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="priceKey">Ключ цены</param>
/// <param name="includeTourDescriptionText">Возвращать ли описание тура</param>
/// <param name="includeBookingConditionsText">Возвращать ли условия бронирования по туру</param>
/// <returns></returns>
[WebMethod]
public CalculatedPriceInfo GetCalculatedPriceInfo(String token, int priceKey, bool includeTourDescriptionText, bool includeBookingConditionsText)
|
Метод получения рассчитанных услуг (GetCalculatedServices)
Сигнатура вызова
/// <summary>
/// Возвращает список рассчитанных услуг по ключу цены
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="priceKey">Ключ обсчитанной цены</param>
/// <returns></returns>
[WebMethod]
public List<Service> GetCalculatedServices(String token, int priceKey)
|
Метод получения нерасчитанных услуг (GetNotCalculatedServices)
Сигнатура вызова
/// <summary>
/// Возвращает список нерассчитанных услуг по ключу цены
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="priceKey">Ключ обсчитанной цены</param>
/// <returns></returns>
[WebMethod]
public List<Service> GetNotCalculatedServices(String token, int priceKey)
|
Метод получения вариантов услуги (GetServiceVariants)
Сигнатура вызова
/// <summary>
/// Получение вариантов услуги
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="service">Базовая услуга</param>
/// <param name="dtDate">Дата заезда</param>
/// <param name="duration">Продолжительность тура</param>
/// <param name="allowHidden">Искать ли аналоги для скрытой услуги</param>
/// <param name="allowHotelCodeChange">Можно ли поменять отель</param>
/// <param name="CheckFlightPacket">Проверять ли пакет услуги</param>
/// <param name="checkQuotes">Нужно ли делать проверку квот и удалять варианты без мест</param>
/// <param name="nMen">Количество мест для проверки (если 0, то игнорируем byRoom и userKey</param>
/// <param name="byRoom">Что проверяем. Места или комнаты</param>
/// <param name="userKey">Агент</param>
/// <param name="includeOriginal">Включать в результат базовую услугу</param>
/// <param name="excludeCharterClasses">Исключить из подбора данные классы перелетов</param>
/// <returns>Список услуг</returns>
[WebMethod]
public List<Service> GetServiceVariants(String token, Megatec.Travel.Entities.Service service
, DateTime tourDate
, int tourDuration
, bool allowHidden
, bool allowHotelCodeChange
, bool checkFlightPacket
, bool checkQuotes
, short nMen
, bool byRoom
, int userKey
, bool includeOriginal
, string excludeCharterClasses)
|
Сервис бронирования (ReservationService.asmx)
Метод расчета стоимости услуг (CalculateReservation)
Сигнатура вызова
/// <summary>
/// Метод расчета стоимости услуг
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="services">Список услуг, по которым рассчитывается стоимость</param>
/// <param name="parameters">Параметры расчета</param>
/// <returns>Результат расчета стоимости</returns>
public Megatec.Travel.Entities.ReservationResult CalculateReservation(List<Megatec.Travel.Entities.Service> services, ReservationParams parameters)
|
Метод бронирования услуг (CreateReservation)
Сигнатура вызова
/// <summary>
/// Метод бронирования
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="services">Список бронируемых услуг</param>
/// <param name="tourists">Список туристов по путевке</param>
/// <param name="parameters">Параметры бронирования</param>
/// <returns></returns>
[WebMethod]
public Megatec.Travel.Entities.ReservationResult CreateReservation(List<Megatec.Travel.Entities.Service> services, List<Tourist> tourists, ReservationParams parameters)
|
Метод получения данных по путевке (GetDogovorInfo)
Сигнатура метода
/// <summary>
/// Метод получения полной информации по путевке
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="reservationCode">Код путевки</param>
/// <returns>Полная информация по услугам и туристам в путевке</returns>
public Megatec.Travel.DataObjects.ReservationInfo GetDogovorInfo(String token, String reservationCode)
|
Метод получения информации по путевке (GetReservationInfo)
Сигнатура метода
/// <summary>
/// Метод получения HTML-информации по путевке
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="reservationCode">Код путевки</param>
/// <param name="partnerKey">Идентификатор покупателя</param>
/// <param name="param">Параметры бронирования</param>
/// <returns>HTML-информация по путевке</returns>
public String GetReservationInfo(String token, String reservationCode, Int32 partnerKey, Megatec.Travel.DataObjects.ReservationInfoParams param)
|
Метод для сохранения номера путевки (SetReservationCode)
Сигнатура метода
/// <summary>
/// Сохраняет номер путевки субагента в БД агента
/// (в историю путевки должен записать номер путевки субагента)
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="reservationCode">Номер путевки в БД агента</param>
/// <param name="partnerCode">Номер путевки в БД субагента</param>
public void SetReservationCode(String token, String reservationCode, String partnerCode)
|
Работа в системе
Работа с сервисом «ServiceProvider.asmx» (Формирование списка услуг)
Метод получения информации по ключу цены (GetCalculatedPriceInfo )
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetCalculatedPriceInfo xmlns="http://megatec.ru/">
<priceKey>5038425</priceKey>
<includeTourDescriptionText>true</includeTourDescriptionText>
<includeBookingConditionsText>true</includeBookingConditionsText>
</GetCalculatedPriceInfo>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetCalculatedPriceInfoResponse xmlns="http://megatec.ru/">
<GetCalculatedPriceInfoResult>
<PriceTour>
<ID>667</ID>
<Name>Test Tour</Name>
<Description />
<Country>
<ID>90</ID>
<Name>Австрия</Name>
</Country>
<Tour>
<ID>542</ID>
<Name>Test Tour</Name>
<Description />
<BookingConditions />
</Tour>
<Attribute>0</Attribute>
<IncludedServices> Авиаперелет, Трансфер, Проживание(питание: Полупансион), Виза, Страховка, Доп. услуги</IncludedServices>
</PriceTour>
<TourDate>2010-07-02T00:00:00</TourDate>
<TotalDays>11</TotalDays>
<Nights>10</Nights>
</GetCalculatedPriceInfoResult>
</GetCalculatedPriceInfoResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения рассчитанных услуг (GetCalculatedServices)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetCalculatedServices xmlns="http://megatec.ru/">
<priceKey>5038425</priceKey>
</GetCalculatedServices>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetCalculatedServicesResponse xmlns="http://megatec.ru/">
<GetCalculatedServicesResult>
<Service xsi:type="HotelService">
<ID>-159</ID>
<Name>Отель/Отель 5*+ (Арльберг), Single Standart Взрослый, Полупансион, ,</Name>
<ExternalID>0</ExternalID>
<StartDate>0001-01-01T00:00:00</StartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>10</Duration>
<Attribute>390</Attribute>
<RateBrutto />
<Brutto>0</Brutto>
<RateNetto />
<Netto>0</Netto>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<PartnersGroupID>0</PartnersGroupID>
<FullName />
<BossName />
<Fax />
<Address />
<Zip />
<Email />
<Phones />
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</City>
<Country>
<ID>90</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<IsIncoming>false</IsIncoming>
</Country>
<Tourists />
<DetailNetto />
<DetailBrutto />
<Notes />
<ServiceClass>
<ID>3</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Hotel>
<ID>3254</ID>
<Name>Отель 5*+</Name>
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<City>
<ID>3254</ID>
<Name>Арльберг</Name>
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</City>
</Hotel>
<Room>
<ID>1112</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<RoomType>
<ID>1</ID>
<Name>Single</Name>
<NameLat />
<Code>SGL</Code>
<CodeLat />
<Unicode />
<Description />
<PrintOrder>0</PrintOrder>
<Places>
<Main>1</Main>
<Extra>1</Extra>
</Places>
</RoomType>
<RoomCategory>
<ID>20</ID>
<Name>Standart</Name>
<NameLat />
<Code>STD</Code>
<CodeLat />
<Unicode />
<Description />
<PrintOrder>0</PrintOrder>
</RoomCategory>
<RoomAccomodation>
<ID>320</ID>
<Name>Взрослый</Name>
<NameLat />
<Code>Взр.</Code>
<CodeLat />
<Unicode />
<Description />
<Places>
<Main>0</Main>
<Extra>0</Extra>
</Places>
<IsMain>true</IsMain>
<AgeRange AgeFrom="0" AgeTo="0" />
<AgeRange2 AgeFrom="0" AgeTo="0" />
<PerRoom>false</PerRoom>
</RoomAccomodation>
</Room>
<Pansion>
<ID>2</ID>
<Name>Полупансион</Name>
<NameLat />
<Code>HB</Code>
<CodeLat />
<Unicode />
<Description />
</Pansion>
</Service>
</GetCalculatedServicesResult>
</GetCalculatedServicesResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения нерассчитанных услуг (GetNotCalculatedServices)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetNotCalculatedServices xmlns="http://megatec.ru/">
<priceKey>5038425</priceKey>
</GetNotCalculatedServices>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetNotCalculatedServicesResponse xmlns="http://megatec.ru/">
<GetNotCalculatedServicesResult>
<Service xsi:type="ExcursionService">
<ID>-190</ID>
<Name>Экскурсия::Арльберг/Кладбища Австрии, /Крысиная упряжка /</Name>
<ExternalID>0</ExternalID>
<StartDate>0001-01-01T00:00:00</StartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>1</Attribute>
<RateBrutto />
<Brutto>0</Brutto>
<RateNetto />
<Netto>0</Netto>
<NMen>0</NMen>
<Partner>
<ID>10760</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<PartnersGroupID>0</PartnersGroupID>
<FullName />
<BossName />
<Fax />
<Address />
<Zip />
<Email />
<Phones />
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</City>
<Country>
<ID>90</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<IsIncoming>false</IsIncoming>
</Country>
<Tourists />
<DetailNetto />
<DetailBrutto />
<Notes />
<ServiceClass>
<ID>4</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Excursion>
<ID>292</ID>
<Name>Кладбища Австрии</Name>
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<PlaceFrom />
<PlaceTo />
<TimeBeg>0001-01-01T00:00:00</TimeBeg>
<TimeEnd>0001-01-01T00:00:00</TimeEnd>
</Excursion>
<Transport>
<ID>28</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</Transport>
</Service>
</GetNotCalculatedServicesResult>
</GetNotCalculatedServicesResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения вариантов услуги (GetServiceVariants)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetServiceVariants xmlns="http://megatec.ru/">
<service xsi:type="FlightService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>7</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10762</ID>
</Partner>
<PacketID>248</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>1</ID>
</ServiceClass>
<Tariff>
<ID>89</ID>
</Tariff>
<Flight>
<ID>523</ID>
</Flight>
</service>
<tourDate>2010-07-02T00:00:00</tourDate>
<tourDuration>11</tourDuration>
<allowHidden>false</allowHidden>
<allowHotelCodeChange>false</allowHotelCodeChange>
<checkFlightPacket>true</checkFlightPacket>
<checkQuotes>true</checkQuotes>
<nMen>1</nMen>
<byRoom>false</byRoom>
<userKey>1</userKey>
<includeOriginal>true</includeOriginal>
<excludeCharterClasses />
</GetServiceVariants>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetServiceVariantsResponse xmlns="http://megatec.ru/">
<GetServiceVariantsResult>
<Service xsi:type="FlightService">
<ID>-209</ID>
<Name>А_П::Москва/Арльберг/P74211, DME-AL, 12:12-15:15/Y Экономический класс/</Name>
<ExternalID>0</ExternalID>
<StartDate>0001-01-01T00:00:00</StartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>7</Attribute>
<RateBrutto />
<Brutto>0</Brutto>
<RateNetto />
<Netto>0</Netto>
<NMen>1</NMen>
<Partner>
<ID>10762</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<PartnersGroupID>0</PartnersGroupID>
<FullName />
<BossName />
<Fax />
<Address />
<Zip />
<Email />
<Phones />
</Partner>
<Quota>NotChecked</Quota>
<PacketID>248</PacketID>
<City>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</City>
<Country>
<ID>90</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<IsIncoming>false</IsIncoming>
</Country>
<Tourists />
<DetailNetto />
<DetailBrutto />
<Notes />
<ServiceClass>
<ID>1</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Tariff>
<ID>89</ID>
<Name>Экономический класс</Name>
<NameLat>Coach economy</NameLat>
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClassID>0</ServiceClassID>
<Comment />
<CreateDate>0001-01-01T00:00:00</CreateDate>
</Tariff>
<Flight>
<ID>525</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<CityFrom>
<ID>1</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</CityFrom>
<CityTo>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</CityTo>
<AirportFrom>
<ID>-212</ID>
<Name />
<NameLat />
<Code>DME</Code>
<CodeLat />
<Unicode />
<Description />
</AirportFrom>
<AirportTo>
<ID>-213</ID>
<Name />
<NameLat />
<Code>AL</Code>
<CodeLat />
<Unicode />
<Description />
</AirportTo>
<Airline>
<ID>-211</ID>
<Name />
<NameLat />
<Code>P7</Code>
<CodeLat />
<Unicode />
<Description />
</Airline>
<Number>4211</Number>
<TimeFrom>1899-01-01T12:12:00</TimeFrom>
<TimeTo>1899-01-01T15:15:00</TimeTo>
<DateFrom>0001-01-01T00:00:00</DateFrom>
<DateTo>0001-01-01T00:00:00</DateTo>
<IsArrival>false</IsArrival>
<Available>No</Available>
</Flight>
</Service>
<Service xsi:type="FlightService">
<ID>-245</ID>
<Name>А_П::Москва/Арльберг/SU1875, SVO1-AL, 20:20-23:30/Y Экономический класс/</Name>
<ExternalID>0</ExternalID>
<StartDate>0001-01-01T00:00:00</StartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>7</Attribute>
<RateBrutto />
<Brutto>0</Brutto>
<RateNetto />
<Netto>0</Netto>
<NMen>1</NMen>
<Partner>
<ID>10762</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<PartnersGroupID>0</PartnersGroupID>
<FullName />
<BossName />
<Fax />
<Address />
<Zip />
<Email />
<Phones />
</Partner>
<Quota>NotChecked</Quota>
<PacketID>248</PacketID>
<City>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</City>
<Country>
<ID>90</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<IsIncoming>false</IsIncoming>
</Country>
<Tourists />
<DetailNetto />
<DetailBrutto />
<Notes />
<ServiceClass>
<ID>1</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Tariff>
<ID>89</ID>
<Name>Экономический класс</Name>
<NameLat>Coach economy</NameLat>
<Code />
<CodeLat />
<Unicode />
<Description />
<ServiceClassID>0</ServiceClassID>
<Comment />
<CreateDate>0001-01-01T00:00:00</CreateDate>
</Tariff>
<Flight>
<ID>523</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
<CityFrom>
<ID>1</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</CityFrom>
<CityTo>
<ID>275</ID>
<Name />
<NameLat />
<Code />
<CodeLat />
<Unicode />
<Description />
</CityTo>
<AirportFrom>
<ID>-248</ID>
<Name />
<NameLat />
<Code>SVO1</Code>
<CodeLat />
<Unicode />
<Description />
</AirportFrom>
<AirportTo>
<ID>-249</ID>
<Name />
<NameLat />
<Code>AL</Code>
<CodeLat />
<Unicode />
<Description />
</AirportTo>
<Airline>
<ID>-247</ID>
<Name />
<NameLat />
<Code>SU</Code>
<CodeLat />
<Unicode />
<Description />
</Airline>
<Number>1875</Number>
<TimeFrom>1899-01-01T20:20:00</TimeFrom>
<TimeTo>1899-01-01T23:30:00</TimeTo>
<DateFrom>0001-01-01T00:00:00</DateFrom>
<DateTo>0001-01-01T00:00:00</DateTo>
<IsArrival>false</IsArrival>
<Available>No</Available>
</Flight>
</Service>
</GetServiceVariantsResult>
</GetServiceVariantsResponse>
</soap:Body>
</soap:Envelope>
|
Работа с сервисом «ReservationService.asmx» (Бронирование)
Метод расчета стоимости услуг (CalculateReservation)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<CalculateReservation xmlns="http://megatec.ru/">
<services>
<Service xsi:type="TransferService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>19975</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>2</ID>
</ServiceClass>
<Transfer>
<ID>372</ID>
</Transfer>
<Transport>
<ID>3</ID>
</Transport>
</Service>
<Service xsi:type="VisaService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>131</Attribute>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>5</ID>
</ServiceClass>
<Visa>
<ID>157</ID>
</Visa>
</Service>
<Service xsi:type="InsuranceService">
<StartDay>1</StartDay>
<Duration>11</Duration>
<Attribute>151</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10763</ID>
</Partner>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>6</ID>
</ServiceClass>
<AddDescription1>
<ID>6</ID>
</AddDescription1>
<AddDescription2>
<ID>0</ID>
</AddDescription2>
<Insurance>
<ID>174</ID>
</Insurance>
</Service>
<Service xsi:type="AdditionalService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>3</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>1032</ID>
</ServiceClass>
<Description>
<ID>183</ID>
</Description>
<Description1>
<ID>0</ID>
</Description1>
<Description2>
<ID>0</ID>
</Description2>
</Service>
<Service xsi:type="HotelService">
<StartDay>1</StartDay>
<Duration>10</Duration>
<Attribute>390</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>3</ID>
</ServiceClass>
<Hotel>
<ID>3254</ID>
</Hotel>
<Room>
<ID>1112</ID>
<RoomType>
<ID>1</ID>
</RoomType>
<RoomCategory>
<ID>20</ID>
</RoomCategory>
<RoomAccomodation>
<ID>320</ID>
</RoomAccomodation>
</Room>
<Pansion>
<ID>2</ID>
</Pansion>
</Service>
<Service xsi:type="TransferService">
<StartDay>8</StartDay>
<Duration>0</Duration>
<Attribute>19975</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<ServiceClass>
<ID>2</ID>
</ServiceClass>
<Transfer>
<ID>373</ID>
</Transfer>
<Transport>
<ID>3</ID>
</Transport>
</Service>
<Service xsi:type="FlightService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<NMen>2</NMen>
<Partner>
<ID>27990</ID>
</Partner>
<PacketID>19443</PacketID>
<ServiceClass>
<ID>1</ID>
</ServiceClass>
<Tariff>
<ID>226</ID>
</Tariff>
<Flight>
<ID>17234</ID>
<CityFrom>
<ID>30</ID>
</CityFrom>
<CityTo>
<ID>65</ID>
</CityTo>
</Flight>
</Service>
<Service xsi:type="FlightService">
<StartDay>8</StartDay>
<Duration>0</Duration>
<Attribute>0</Attribute>
<NMen>2</NMen>
<Partner>
<ID>27990</ID>
</Partner>
<PacketID>18920</PacketID>
<ServiceClass>
<ID>1</ID>
</ServiceClass>
<Tariff>
<ID>226</ID>
</Tariff>
<Flight>
<ID>17235</ID>
<CityFrom>
<ID>65</ID>
</CityFrom>
<CityTo>
<ID>30</ID>
</CityTo>
</Flight>
</Service>
</services>
<parameters>
<AdvertiseID>-1</AdvertiseID>
<CauseDiscountID>-1</CauseDiscountID>
<CountryID>90</CountryID>
<DupUserID>-1</DupUserID>
<OperatorName />
<OwnerID>-1</OwnerID>
<PartnerID>10764</PartnerID>
<RateCode />
<ReserveDuration>-1</ReserveDuration>
<TourDate>2010-07-02T00:00:00</TourDate>
<TourID>542</TourID>
<TouristsCount>1</TouristsCount>
</parameters>
</CalculateReservation>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<CalculateReservationResponse xmlns="http://megatec.ru/">
<CalculateReservationResult>
<Brutto>1646</Brutto>
<DiscountPercent>10</DiscountPercent>
<DiscountSumm>172</DiscountSumm>
<Rate>$</Rate>
<ReservationCode />
<ErrorMessage />
</CalculateReservationResult>
</CalculateReservationResponse>
</soap:Body>
</soap:Envelope>
|
Метод бронирования услуг (CreateReservation)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<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>
<CalculateReservation xmlns="http://megatec.ru/">
<services>
<Service xsi:type="TransferService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>19975</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>2</ID>
</ServiceClass>
<Transfer>
<ID>372</ID>
</Transfer>
<Transport>
<ID>3</ID>
</Transport>
</Service>
<Service xsi:type="VisaService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>131</Attribute>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>5</ID>
</ServiceClass>
<Visa>
<ID>157</ID>
</Visa>
</Service>
<Service xsi:type="InsuranceService">
<StartDay>1</StartDay>
<Duration>11</Duration>
<Attribute>151</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10763</ID>
</Partner>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>6</ID>
</ServiceClass>
<AddDescription1>
<ID>6</ID>
</AddDescription1>
<AddDescription2>
<ID>0</ID>
</AddDescription2>
<Insurance>
<ID>174</ID>
</Insurance>
</Service>
<Service xsi:type="AdditionalService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>3</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>1032</ID>
</ServiceClass>
<Description>
<ID>183</ID>
</Description>
<Description1>
<ID>0</ID>
</Description1>
<Description2>
<ID>0</ID>
</Description2>
</Service>
<Service xsi:type="HotelService">
<StartDay>1</StartDay>
<Duration>10</Duration>
<Attribute>390</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<Quota>NotChecked</Quota>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>3</ID>
</ServiceClass>
<Hotel>
<ID>3254</ID>
</Hotel>
<Room>
<ID>1112</ID>
<RoomType>
<ID>1</ID>
</RoomType>
<RoomCategory>
<ID>20</ID>
</RoomCategory>
<RoomAccomodation>
<ID>320</ID>
</RoomAccomodation>
</Room>
<Pansion>
<ID>2</ID>
</Pansion>
</Service>
<Service xsi:type="TransferService">
<StartDay>8</StartDay>
<Duration>0</Duration>
<Attribute>19975</Attribute>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
</Partner>
<PacketID>250</PacketID>
<City>
<ID>275</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>2</ID>
</ServiceClass>
<Transfer>
<ID>373</ID>
</Transfer>
<Transport>
<ID>3</ID>
</Transport>
</Service>
<Service xsi:type="FlightService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<NMen>2</NMen>
<Partner>
<ID>27990</ID>
</Partner>
<PacketID>19443</PacketID>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>1</ID>
</ServiceClass>
<Tariff>
<ID>226</ID>
</Tariff>
<Flight>
<ID>17234</ID>
<CityFrom>
<ID>30</ID>
</CityFrom>
<CityTo>
<ID>65</ID>
</CityTo>
</Flight>
</Service>
<Service xsi:type="FlightService">
<StartDay>8</StartDay>
<Duration>0</Duration>
<Attribute>0</Attribute>
<NMen>2</NMen>
<Partner>
<ID>27990</ID>
</Partner>
<PacketID>18920</PacketID>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>1</ID>
</ServiceClass>
<Tariff>
<ID>226</ID>
</Tariff>
<Flight>
<ID>17235</ID>
<CityFrom>
<ID>65</ID>
</CityFrom>
<CityTo>
<ID>30</ID>
</CityTo>
</Flight>
</Service>
</services>
<tourists>
<Tourist Sex="Male" BirthDate="1980-02-01T00:00:00" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0">
<ID>0</ID>
<Name>
<FirstName />
<SecondName />
<LastName />
</Name>
<NameLat>
<FirstName>SEMEN</FirstName>
<SecondName />
<LastName>IVANOV</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number="" IssueDate="0001-01-01T00:00:00" EndDate="0001-01-01T00:00:00" />
<ForeignPassport IssuedBy="" Series="1234" Number="234567" IssueDate="0001-01-01T00:00:00" EndDate="2020-06-05T00:00:00" />
</Tourist>
</tourists>
<parameters>
<AdvertiseID>-1</AdvertiseID>
<CauseDiscountID>-1</CauseDiscountID>
<CountryID>90</CountryID>
<DupUserID>-1</DupUserID>
<OperatorName />
<OwnerID>-1</OwnerID>
<PartnerID>10764</PartnerID>
<RateCode />
<ReserveDuration>-1</ReserveDuration>
<TourDate>2010-07-02T00:00:00</TourDate>
<TourID>542</TourID>
<TouristsCount>1</TouristsCount>
</parameters> </CalculateReservation>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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://megatec.ru/">
<CreateReservationResult>
<Brutto>1646</Brutto>
<DiscountPercent>10</DiscountPercent>
<DiscountSumm>172</DiscountSumm>
<Rate>$</Rate>
<ReservationCode>AT 0702007</ReservationCode>
<ErrorMessage />
</CreateReservationResult>
</CreateReservationResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения данных по путевке (GetDogovorInfo)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/">
<soap:Header/>
<soap:Body>
<GetDogovorInfo xmlns="http://megatec.ru/">
<token>?</token>
<reservationCode>EN40228001</reservationCode>
</GetDogovorInfo>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetDogovorInfoResponse xmlns="http://megatec.ru/">
<GetDogovorInfoResult>
<Code>EN40228001</Code>
<TurDate>2014-02-28T00:00:00</TurDate>
<Price>225</Price>
<Discount>0</Discount>
<DiscountSum>0</DiscountSum>
<DogovorStatus>3</DogovorStatus>
<Nmen>1</Nmen>
<Ndays>4</Ndays>
<CountryName>Англия</CountryName>
<CityName>Лондон</CityName>
<RateCode>USD</RateCode>
<ReservationServices>
<Service>
<ID>-1</ID>
<Name>HOTEL::Лондон/Отель в Лондоне-1*,3 ночи/Single(Standart),Взрослый/FB Пансион/</Name>
<ExternalID>0</ExternalID>
<StartDate>2014-02-28T00:00:00</StartDate>
<EndDate>2014-03-02T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>3</Duration>
<Attribute>0</Attribute>
<RateBrutto/>
<Brutto>225</Brutto>
<RateNetto/>
<Netto>225</Netto>
<NMen>1</NMen>
<Status>
<ID>1</ID>
<Name>Заказ на бронирование</Name>
<NameLat>order for booking</NameLat>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Status>
<Quota>NotChecked</Quota>
<PacketID>0</PacketID>
<Tourists/>
<DetailNetto/>
<DetailBrutto/>
<Notes/>
<PartnerContractId>0</PartnerContractId>
<LinkingStatus>0</LinkingStatus>
<LinkingServiceKey>0</LinkingServiceKey>
<IsAllNetCostOffers>false</IsAllNetCostOffers>
<IsAllGrossCostOffers>false</IsAllGrossCostOffers>
<ServiceClass>
<ID>3</ID>
<Name>Отель/Круиз</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<IsGroup>false</IsGroup>
</Service>
</ReservationServices>
<ReservationTourists>
<Tourist Sex="Male" BirthDate="0001-01-01T00:00:00" AgeType="Adult" Citizen="" IsMain="true" ExternalID="0">
<ID>-2</ID>
<Name>
<FirstName>Джек</FirstName>
<LastName>Лондон</LastName>
</Name>
<NameLat>
<FirstName>Dzhek</FirstName>
<LastName>London</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number="" IssueDate="2014-03-06T00:00:00+04:00" EndDate="2014-03-06T00:00:00+04:00"/>
<ForeignPassport IssuedBy="" Series="" Number="" IssueDate="2014-03-06T00:00:00+04:00" EndDate="0001-01-01T00:00:00"/>
</Tourist>
</ReservationTourists>
<DogovorGlobalStatus>3</DogovorGlobalStatus>
</GetDogovorInfoResult>
</GetDogovorInfoResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения информации по путевке (GetReservationInfo)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/">
<soap:Header/>
<soap:Body>
<GetReservationInfo xmlns="http://megatec.ru/">
<token>?</token>
<reservationCode>EN40228001</reservationCode>
<partnerKey>0</partnerKey>
<param>
<Code>EN40228001</Code>
<Price>225</Price>
<Discount>0</Discount>
</param>
</GetReservationInfo>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<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>
<GetReservationInfoResponse xmlns="http://megatec.ru/">
<GetReservationInfoResult><![CDATA[<table border="2">
<tr><td colspan="2">
Новая заявка
на организацию экскурсионного туристического /
санаторно-курортного обслуживания к путевке EN40228001
(Англия, Лондон, Индивидуально)</td></tr>
<tr><td colspan="2"></td></tr>
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">Даты заезда: с 28.02.2014 по 03.03.2014, кол-во дней 4</td></tr>
<tr><td colspan="2"></td></tr>
<tr><td> Наименование: </td><td>Отель в Лондоне 1* (Лондон)</td></tr>
<tr><td> Категория номера: </td><td>Single Standart Взрослый</td></tr>
<tr><td> Размещение (кол-во мест в номере):</td><td> 1</td></tr>
<tr><td> Список заезжающих:</td><td> Лондон Джек /М; </td></tr>
<tr><td> Питание:</td><td> Пансион</td></tr>
<tr><td colspan="2"></td></tr>
<tr><td>Полный список заезжающих: </td><td>Лондон Джек /М ;</td></tr>
<tr><td>Экскурсионная программа:</td><td> </td></tr>
<tr><td>Дополнительные услуги:</td><td> </td></tr>
<tr><td colspan="2"></td></tr>
<tr><td>Итого к оплате: </td><td>225 $ (Двести двадцать пять $ 00 )</td></tr>
<tr><td>Сумма заказа: </td><td>225 $</td></tr>
<tr><td>Номер путевке в базе данных субагента: </td><td>EN40228001</td></tr>
<tr><td>Дата продажи: </td><td>24.02.2014</td></tr>
</table>]]></GetReservationInfoResult>
</GetReservationInfoResponse>
</soap:Body>
</soap:Envelope>
|
Метод для сохранения номера путевки (SetReservationCode)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://megatec.ru/">
<soap:Header/>
<soap:Body>
<SetReservationCode xmlns="http://megatec.ru/">
<token>?</token>
<reservationCode>EN40228001</reservationCode>
<partnerCode>40228001EN</partnerCode>
</SetReservationCode>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
Метод ничего не возвращает.