Web-сервисы: Сервис бронирования
Версия статьи от 24-05-2018.
Более ранние версии: |
Содержание
- 1 Введение
- 2 Установка
- 3 Настройка
- 4 Настройки в файле WEB.CONFIG
- 5 Подготовка данных
- 5.1 Описание формата данных
- 5.1.1 MainDependentAccommodation (Доступное основное или зависимое размещение)
- 5.1.2 CalculatedPriceInfo (Информация по расчитанной цене)
- 5.1.3 ReservationParams (Параметры бронирования)
- 5.1.4 ReservationResult (Результат расчета стоимости и бронирования комплекса услуг)
- 5.1.5 ReservationInfoParams (Параметры путевки)
- 5.1.6 ReservationInfo (Описание путевки, включая все услуги и туристов)
- 5.2 Сервис формирования списка услуг («ServiceProvider.asmx»)
- 5.2.1 Метод получения основных и неосновных размещений (GetAvailableAccommodations)
- 5.2.2 Метод получения информации по ключу цены (GetCalculatedPriceInfo)
- 5.2.3 Метод получения рассчитанных услуг (GetCalculatedServices)
- 5.2.4 Метод получения информации о дополнительных услугах (GetExtraServiceInfo)
- 5.2.5 Метод получения дополнительных услуг (GetNotCalculatedServices)
- 5.2.6 Метод получения вариантов услуги (GetServiceVariants)
- 5.3 Сервис бронирования (ReservationService.asmx)
- 5.1 Описание формата данных
- 6 Работа в системе
- 6.1 Работа с сервисом «ServiceProvider.asmx» (Формирование списка услуг)
- 6.1.1 Метод получения основных и неосновных размещений (GetAvailableAccommodations )
- 6.1.2 Метод получения информации по ключу цены (GetCalculatedPriceInfo )
- 6.1.3 Метод получения рассчитанных услуг (GetCalculatedServices)
- 6.1.4 Meтод получения получения информации о дополнительных услугах (GetExtraServiceInfo)
- 6.1.5 Метод получения нерассчитанных услуг (GetNotCalculatedServices)
- 6.1.6 Метод получения вариантов услуги (GetServiceVariants)
- 6.2 Работа с сервисом «ReservationService.asmx» (Бронирование)
- 6.1 Работа с сервисом «ServiceProvider.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>
Настройки в файле WEB.CONFIG
Общие настройки
№ | Описание | Значение | Настройка |
---|---|---|---|
1 | Пользователь, который будет отображаться как Владелец путевки (если не указан ведущий менеджер по туру и партнеру). | Ключ пользователя - поле US_KEY из таблицы [UserList] .
|
<add key="webUserKey" value="458" />
|
2 | Определение приоритета проставления ведущего менеджера по путевке. |
|
<add key="managerPriority" value="partner" />
|
3 | Задание статуса заявки в ПК «Мастер-Тур», забронированной через систему бронирования ПК «Мастер-Web». |
Подробнее см. Механизм изменения статуса путевки. |
<add key="orderStatus" value="web" />
|
4 | Настройка, определяющая максимальный возможный возраст детей.
Работает только совместно с настройкой «checkTouristAgeEnable». |
Максимальный возраст ребенка. При отсутствии настройки максимальный возраст ребенка равен 14 лет. |
<add key="maxChildAge" value="16" />
|
5 | Определяет справочник, по которому будет проверяться количество основных мест при поиске в экране «Динамический лист предложений» и при бронировании в коризинах бронирования ПК «Мастер-Web». |
Если соответствующее поле там не заполнено, то из справочника «Типы номеров».
|
<add key="useAccomodationPlaces" value="false" />
|
6 | Определяет справочник, по которому будет проверяться количество дополнительных мест при поиске в экране «Динамический лист предложений» и при бронировании в коризинах бронирования ПК «Мастер-Web». |
Если соответствующее поле там не заполнено, то из справочника «Типы размещений».
|
<add key="useRoomsExtraPlaces" value="false" />
|
7 | Настройка, включающая режим учета процента при конвертации валют. | Коэффициент, на который умножается конвертируемая сумма. | <add key="courseMultiplier" value="1,02" />
|
8 | Настройка указывает на то, что в справочнике «Типы номеров» в колонке Число основных мест указано общее количество взрослых и детей. Дополнительно должно быть прописано и количество детей в соответствующей колонке.
При включенной настройке в случае, если сумма основных и дополнительных мест в справочнике «Типы размещений» превышает значение в колонке число основных мест, бронирование невозможно. |
|
<add key="combinedPlaces" value="true" />
|
9 | Настройка, включающая проверку прав текущего пользователя на получение доступа к путевке. |
|
<add key="IsAuthDubUser" value="true" />
|
Настройки бронирования инфантов
№ | Описание | Значение | Настройка |
---|---|---|---|
1 | Ключи тарифов на авиаперелет для размещения Младенец (Infant).
Настройка используется либо в дополнительном модуле «Бронирование индивидуального тура», либо для исключения тарифов при отображении списка рейсов в корзинах бронирования. |
Ключи тарифов - поле AS_CODE из таблицы [AirService] через запятую.
|
<add key="infantCharterClasses" value="132,110" />
|
2 | Взрослые тарифы (эконом) авиаперелетов, для которых будет подбираться тариф - YCH - Экономический класс (детский). | Ключи тарифа - поле AS_CODE из таблицы [AirService] через запятую.
|
<add key="YCH" value="81,87,89" />
|
3 | Взрослые тарифы (бизнес) авиаперелетов, для которых будет подбираться тариф - CCH - Бизнес класс (детский). | Ключи тарифа - поле AS_CODE из таблицы [AirService] через запятую.
|
<add key="CCH" value="67,68,74" />
|
Настройки добавления доплат к рейсам
№ | Описание | Значение | Настройка |
---|---|---|---|
1 | Включение отображения блока доплат к рейсу. | Ключ типа тура - поле TP_KEY из таблицы [TipTur] , к которому должны привязываться туры, содержащие доплаты к рейсам.
|
<add key="addFlightTourType" value="13" />
|
2 | Название доплаты за изменение рейса. | Текст - название доплаты за изменение рейса, которое будет отображаться в блоке доплат. | <add key="changeFlightPaymentName" value="Доплата за выбор рейса" />
|
3 | Настройка, скрывающая поле с доплатой за изменение рейса в блоке доплат. | false - поле с доплатой за изменение рейса скрыто;
true или отсутствие настройки - поле с доплатой за изменение рейса отображается. |
<add key="showFlightVariantDifference" value="true" />
|
Для того, что бы получить все связанные дополнительные услуги, необходимо добавить в файл web.config
настройку <add key="addFlightTourType" value="ххх" />
, где ххх - ключ типа тура, откуда берутся доплаты. Например, ключ типа у текущего тура - 17, а дополнительная услуга топливного сбора лежит в пакете с ключом типа тура 50. Значит, нам надо указать 50 вместо ххх. При получении списка услуг необходимо использовать метод GetCalculatedServices
сервиса ServiceProvider.asmx
. Услуга топливного сбора будет находиться в подразделе AdditionalPayments
раздела Service
структуры XML.
Настройки дополнительного модуля «Бронирование новогодних и рожденственских ужинов»
№ | Описание | Значение | Настройка |
---|---|---|---|
1 | Включение дополнительного модуля «Бронирование новогодних и рожденственских ужинов». | Ссылка на дополнительный модуль. | <add key="happyNewYearServiceManager" value="MasterWebStandard.Extra.HappyNewYearServices.HappyNewYearStandardManager, MasterWebStandard.Extra.HappyNewYearServices" />
|
2 | Тип тура для обязательных праздничных ужинов. | Ключ типа тура - поле TP_KEY из таблицы [TipTur] для обязательных ужинов.
|
<add key="requiredNewYearServicesTourTypes" value="12" />
|
3 | Тип тура для необязательных праздничных ужинов. | Ключ типа тура - поле TP_KEY из таблицы [TipTur] для необязательных ужинов.
|
<add key="optionalNewYearServicesTourTypes" value="12" />
|
Подготовка данных
С 1 января 2017 года вступили в силу положения Федерального закона от 02.03.2016 № 49-ФЗ «О внесении изменений в отдельные законодательные акты Российской Федерации в целях совершенствования законодательства, регулирующего туристскую деятельность» (далее – Федеральный закон № 49-ФЗ), в связи с чем вводится ограничение на осуществление бронирования партнёрами, не указавшими реестровый номер. Установить дату, начиная с которой данное ограничение начинает функционировать, можно в дополнительных настройках ПК «Мастер-Тур». Настройка работает, начиная с релиза 9222SP0.
Описание формата данных
MainDependentAccommodation (Доступное основное или зависимое размещение)
/// <summary>
/// Доступное основное или зависимое размещение
/// </summary>
public class MainDependentAccommodation
{
/// <summary>
/// Ключ прайса, к которому относится размещение
/// </summary>
public Int32 PriceKey { get; set; }
/// <summary>
/// Название размещения
/// </summary>
public String AccommodationName { get; set; }
/// <summary>
/// Количество человек
/// </summary>
public Int32 Places { get; set; }
/// <summary>
/// Цена
/// </summary>
public Decimal Price { get; set; }
/// <summary>
/// Валюта цены
/// </summary>
public String Currency { get; set; }
/// <summary>
/// Наличие мест
/// </summary>
public QuotaResultStatus QuotaStatus { get; set; }
}
|
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»)
Метод получения основных и неосновных размещений (GetAvailableAccommodations)
Сигнатура вызова
/// <summary>
/// Возвращает доступные для бронирования размещения
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="priceKey">Ключ обсчитанной цены (ключ прайса)</param>
/// <param name="isCheckExtraPlaceQuota:">Проверять ли места на еще одно такое же размещение</param>
/// <returns>Список пар [основное размещение; коллекция неосновных]</returns>
[WebMethod]
public List<SerializableKeyValuePair<MainDependentAccommodation, List<MainDependentAccommodation>>>
GetAvailableAccommodations(String token, Int32 priceKey, Boolean isCheckExtraPlaceQuota)
|
Метод получения информации по ключу цены (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)
|
Метод получения информации о дополнительных услугах (GetExtraServiceInfo)
Сигнатура вызова
/// <summary>
/// Получение информации о дополнительных услугах
/// </summary>
/// <param name="token">Авторизационный токен (если сервисом запрещен анонимный доступ)</param>
/// <param name="priceKey">Ключ цены</param>
/// <returns></returns>
[WebMethod]
public ExtraServiceInfo GetExtraServiceInfo(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 ReservationResult CalculateReservation(String token, List<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 ReservationResult CreateReservation(String token, List<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» (Формирование списка услуг)
Метод получения основных и неосновных размещений (GetAvailableAccommodations )
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetAvailableAccommodations xmlns="http://megatec.ru/">
<token>?</token>
<priceKey>33345</priceKey>
<isCheckExtraPlaceQuota>true</isCheckExtraPlaceQuota>
</GetAvailableAccommodations>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetAvailableAccommodationsResponse xmlns="http://megatec.ru/">
<GetAvailableAccommodationsResult>
<SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<Key>
<PriceKey>33349</PriceKey>
<AccommodationName>DBL 1-1 STD</AccommodationName>
<Places>2</Places>
<Price>812</Price>
<Currency>$</Currency>
<QuotaStatus>No</QuotaStatus>
</Key>
<Value>
<MainDependentAccommodation xsi:nil="true" />
<MainDependentAccommodation xsi:nil="true" />
</Value>
</SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<Key>
<PriceKey>33337</PriceKey>
<AccommodationName>DBL 2-0 Sea View</AccommodationName>
<Places>2</Places>
<Price>938</Price>
<Currency>$</Currency>
<QuotaStatus>No</QuotaStatus>
</Key>
<Value>
<MainDependentAccommodation xsi:nil="true" />
<MainDependentAccommodation xsi:nil="true" />
</Value>
</SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<Key>
<PriceKey>33345</PriceKey>
<AccommodationName>DBL 1-1 Sea View</AccommodationName>
<Places>2</Places>
<Price>740</Price>
<Currency>$</Currency>
<QuotaStatus>No</QuotaStatus>
</Key>
<Value>
<MainDependentAccommodation xsi:nil="true" />
<MainDependentAccommodation xsi:nil="true" />
</Value>
</SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<Key>
<PriceKey>33353</PriceKey>
<AccommodationName>DBL 0-2 Sea View</AccommodationName>
<Places>1</Places>
<Price>650</Price>
<Currency>$</Currency>
<QuotaStatus>No</QuotaStatus>
</Key>
<Value>
<MainDependentAccommodation xsi:nil="true" />
<MainDependentAccommodation xsi:nil="true" />
</Value>
</SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
<Key>
<PriceKey>33341</PriceKey>
<AccommodationName>DBL 2-0 GV</AccommodationName>
<Places>2</Places>
<Price>1370</Price>
<Currency>$</Currency>
<QuotaStatus>Request</QuotaStatus>
</Key>
<Value>
<MainDependentAccommodation xsi:nil="true" />
<MainDependentAccommodation xsi:nil="true" />
</Value>
</SerializableKeyValuePairOfMainDependentAccommodationListOfMainDependentAccommodation>
</GetAvailableAccommodationsResult>
</GetAvailableAccommodationsResponse>
</soap:Body>
</soap:Envelope>
|
Метод получения информации по ключу цены (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/">
<token>?</token>
<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/">
<token>?</token>
<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>
|
Meтод получения получения информации о дополнительных услугах (GetExtraServiceInfo)
Пример SOAP-запроса к сервису
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetExtraServiceInfo xmlns="http://megatec.ru/">
<token>?</token>
<priceKey>27084</priceKey>
</GetExtraServiceInfo>
</soap:Body>
</soap:Envelope>
|
Пример SOAP-ответа сервиса
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetExtraServiceInfoResponse xmlns="http://megatec.ru/">
<GetExtraServiceInfoResult>
<ExtraServiceInfo>
<ID>76</ID>
<Name>Лондонский Тауэр</Name>
<ServiceClass>
<ID>4</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Attribute>0</Attribute>
<CountryKey>222</CountryKey>
<CityKey>25</CityKey>
<IsRequired>true</IsRequired>
<Direction>0</Direction>
<ServiceVariants>
</ExtraServiceInfo>
<ExtraServiceInfo>
<ID>3231</ID>
<Name>test</Name>
<ServiceClass>
<ID>8</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<Attribute>0</Attribute>
<CountryKey>222</CountryKey>
<CityKey>25</CityKey>
<IsRequired>false</IsRequired>
<Direction>0</Direction>
<ServiceVariants>
<ExtraServiceVariant xsi:type="ExtraAddHotelService">
<AvailableDate>2015-06-01T00:00:00</AvailableDate>
<Day>1</Day>
<PartnerKey>10760</PartnerKey>
<PacketKey>249</PacketKey>
<Cost>0</Cost>
<IsCostForPerson>true</IsCostForPerson>
<NMen>1</NMen>
<Description1>
<ID>0</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Description1>
<Description2>
<ID>3</ID>
<Name>test,1/</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Description2>
<IsPackage>false</IsPackage>
<HasDuration>false</HasDuration>
</ExtraServiceVariant>
<ExtraServiceVariant xsi:type="ExtraAddHotelService">
<AvailableDate>2015-06-02T00:00:00</AvailableDate>
<Day>2</Day>
<PartnerKey>10760</PartnerKey>
<PacketKey>249</PacketKey>
<Cost>0</Cost>
<IsCostForPerson>true</IsCostForPerson>
<NMen>1</NMen>
<Description1>
<ID>0</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Description1>
<Description2>
<ID>3</ID>
<Name>test,1/</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Description2>
<IsPackage>false</IsPackage>
<HasDuration>false</HasDuration>
</ExtraServiceVariant>
</ServiceVariants>
</ExtraServiceInfo>
</GetExtraServiceInfoResult>
</GetExtraServiceInfoResponse>
</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/">
<token>?</token>
<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/">
<token>?</token>
<service xsi:type="FlightService">
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>7</Attribute>
<RateBrutto>$</RateBrutto>
<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>$</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/">
<token>?</token>
<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>
<CreateReservation xmlns="http://megatec.ru/">
<token>?</token>
<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="ExcursionService">
<StartDay>2</StartDay>
<Duration>1</Duration>
<Attribute>0</Attribute>
<Partner>
<ID>10771</ID>
</Partner>
<PacketID>682</PacketID>
<City>
<ID>35</ID>
</City>
<Country>
<ID>90</ID>
</Country>
<Tourists>
<Tourist>
<ID>0</ID>
</Tourist>
</Tourists>
<ServiceClass>
<ID>4</ID>
</ServiceClass>
<Excursion>
<ID>52</ID>
</Excursion>
<Transport>
<ID>3</ID>
</Transport>
</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>
<Notes>some service comment</Notes>
<Brutto>2</Brutto>
<RateBrutto>$</RateBrutto>
<Netto>3</Netto>
<Discount>4</Discount>
</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>
</Tourist>
</tourists>
<parameters>
<AdvertiseID>-1</AdvertiseID>
<CauseDiscountID>-1</CauseDiscountID>
<ExternalReservationId>ext res code</ExternalReservationId>
<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> </CreateReservation>
</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>LON8052402</Code>
<TurDate>2018-05-24T00:00:00</TurDate>
<Price>4537</Price>
<Discount>10</Discount>
<DiscountSum>30</DiscountSum>
<DogovorStatus>3</DogovorStatus>
<Nmen>6</Nmen>
<Ndays>6</Ndays>
<CountryName>Англия</CountryName>
<CityName>Лондон</CityName>
<RateCode>USD</RateCode>
<ReservationServices>
<Service xsi:type="HotelService" Brutto="472.5" Netto="450">
<ID>-150</ID>
<Name>
HOTEL::Лондон/Тестовый отель-1*,5 ночей/DBL(Standart),2A/FB Пансион/
</Name>
<ExternalID>0</ExternalID>
<StartDate>2018-05-24T00:00:00</StartDate>
<EndDate>2018-05-28T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>5</Duration>
<Attribute>670</Attribute>
<RateBrutto/>
<Brutto>472.5</Brutto>
<DetailBrutto/>
<RateNetto/>
<Netto>450</Netto>
<DetailNetto/>
<Discount xsi:nil="true"/>
<NMen>3</NMen>
<Partner>
<ID>10766</ID>
<Name>Консульство</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<PartnersGroupID>0</PartnersGroupID>
<FullName/>
<BossName/>
<Fax/>
<Address/>
<Zip/>
<Email/>
<Phones/>
</Partner>
<Status>
<ID>1</ID>
<Name>Заказ на бронирование</Name>
<NameLat>order for booking</NameLat>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Status>
<Quota>NotChecked</Quota>
<PacketID>211</PacketID>
<City>
<ID>25</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</City>
<Country>
<ID>222</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<IsIncoming>false</IsIncoming>
</Country>
<Tourists>
<Tourist Sex="Male" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="true" ExternalID="0">
<ID>1</ID>
<Name>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</Name>
<NameLat>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
<Tourist Sex="Male" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="false" ExternalID="0">
<ID>2</ID>
<Name>
<FirstName>BBB</FirstName>
<LastName>BBB</LastName>
</Name>
<NameLat>
<FirstName>BBB</FirstName>
<LastName>BBB</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
<Tourist Sex="Female" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="false" ExternalID="0">
<ID>3</ID>
<Name>
<FirstName>CCC</FirstName>
<LastName>CCC</LastName>
</Name>
<NameLat>
<FirstName>CCC</FirstName>
<LastName>CCC</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
</Tourists>
<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>
<Hotel>
<ID>3231</ID>
<Name>Тестовый отель 1*</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<City>
<ID>3231</ID>
<Name>Лондон</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</City>
</Hotel>
<Room>
<ID>1117</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<RoomType>
<ID>2</ID>
<Name>DBL</Name>
<NameLat/>
<Code>DBL</Code>
<CodeLat/>
<Unicode/>
<Description/>
<Places>
<Main>2</Main>
<Extra>3</Extra>
</Places>
</RoomType>
<RoomCategory>
<ID>20</ID>
<Name>Standart</Name>
<NameLat/>
<Code>STD</Code>
<CodeLat/>
<Unicode/>
<Description/>
<PrintOrder>0</PrintOrder>
</RoomCategory>
<RoomAccomodation>
<ID>325</ID>
<Name>2A</Name>
<NameLat/>
<Code>2A</Code>
<CodeLat/>
<Unicode/>
<Description/>
<Places>
<Main>2</Main>
<Extra>1</Extra>
</Places>
<IsMain>true</IsMain>
<AgeRange AgeFrom="0" AgeTo="0"/>
<AgeRange2 AgeFrom="0" AgeTo="0"/>
<PerRoom>true</PerRoom>
</RoomAccomodation>
</Room>
<Pansion>
<ID>1</ID>
<Name>Пансион</Name>
<NameLat/>
<Code>FB</Code>
<CodeLat/>
<Unicode/>
<Description/>
</Pansion>
</Service>
<Service xsi:type="ExcursionService" Brutto="5.25" Netto="5">
<ID>-162</ID>
<Name>
Экскурсия::Лондон/Британский музей, 3 часа/автобус,20 чел./
</Name>
<ExternalID>0</ExternalID>
<StartDate>2018-05-24T00:00:00</StartDate>
<EndDate>2018-05-24T00:00:00</EndDate>
<StartDay>1</StartDay>
<Duration>0</Duration>
<Attribute>0</Attribute>
<RateBrutto/>
<Brutto>5.25</Brutto>
<DetailBrutto/>
<RateNetto/>
<Netto>5</Netto>
<DetailNetto/>
<Discount xsi:nil="true"/>
<NMen>1</NMen>
<Partner>
<ID>10760</ID>
<Name>партнер</Name>
<NameLat>partner</NameLat>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<PartnersGroupID>0</PartnersGroupID>
<FullName/>
<BossName/>
<Fax/>
<Address/>
<Zip/>
<Email/>
<Phones/>
</Partner>
<Status>
<ID>0</ID>
<Name>Ok</Name>
<NameLat>Ok</NameLat>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Status>
<Quota>NotChecked</Quota>
<PacketID>252</PacketID>
<City>
<ID>25</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</City>
<Country>
<ID>222</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<IsIncoming>false</IsIncoming>
</Country>
<Tourists>
<Tourist Sex="Male" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="true" ExternalID="0">
<ID>1</ID>
<Name>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</Name>
<NameLat>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
</Tourists>
<Notes/>
<PartnerContractId>0</PartnerContractId>
<LinkingStatus>0</LinkingStatus>
<LinkingServiceKey>0</LinkingServiceKey>
<IsAllNetCostOffers>false</IsAllNetCostOffers>
<IsAllGrossCostOffers>false</IsAllGrossCostOffers>
<ServiceClass>
<ID>4</ID>
<Name>Экскурсия</Name>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
<ServiceClasses>None</ServiceClasses>
</ServiceClass>
<IsGroup>false</IsGroup>
<Excursion>
<ID>41</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>3</ID>
<Name/>
<NameLat/>
<Code/>
<CodeLat/>
<Unicode/>
<Description/>
</Transport>
</Service>
</ReservationServices>
<ReservationTourists>
<Tourist Sex="Male" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="true" ExternalID="0">
<ID>1</ID>
<Name>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</Name>
<NameLat>
<FirstName>AAA</FirstName>
<LastName>AAA</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
<Tourist Sex="Male" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="false" ExternalID="0">
<ID>2</ID>
<Name>
<FirstName>BBB</FirstName>
<LastName>BBB</LastName>
</Name>
<NameLat>
<FirstName>BBB</FirstName>
<LastName>BBB</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
<Tourist Sex="Female" BirthDate="1990-12-12T00:00:00" AgeType="Adult" Citizen="Россия" IsMain="false" ExternalID="0">
<ID>3</ID>
<Name>
<FirstName>CCC</FirstName>
<LastName>CCC</LastName>
</Name>
<NameLat>
<FirstName>CCC</FirstName>
<LastName>CCC</LastName>
</NameLat>
<LocalPassport IssuedBy="" Series="" Number=""/>
<ForeignPassport IssuedBy="" Series="" Number=""/>
</Tourist>
</ReservationTourists>
<DogovorGlobalStatus>3</DogovorGlobalStatus>
</ReservationInfo>
</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-ответа сервиса
Метод ничего не возвращает.