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

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
(Новая страница: «Версия статьи от {{REVISIONDAY}}-{{REVISIONMONTH}}-{{REVISIONYEAR}}. <table style="background-color:#ffffcc;color:black" border="1" cellpadding="10…»)
 
(CreateReservation (бронирование путевки))
(не показано 11 промежуточных версий этого же участника)
Строка 7: Строка 7:
  
 
==Введение==
 
==Введение==
 +
API '''InterlookIntegrationService''' работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
  
 
==Методы IntegrationService==
 
==Методы IntegrationService==
===CreateReservation (бронирование путевки)===
 
Сигнатура метода.
 
public Megatec.Travel.Entities.Reservation CreateReservation(string guid, Megatec.Travel.Entities.Reservation reserv)
 
  
Принимаемые параметры.
+
===Connect (получение аутентификационного токена)===
*guid - строка-идентификатор подключения,
+
Метод производит получение аутентификационного токена, необходимого для выполнения метода '''CreateReservation'''.<br />
*reserv – класс-объект путевки с услугами, туристами и т.д.
+
 
 +
Принимаемые параметры запроса ( '''*''' – обязательный):
 +
* '''Login *''' – логин online пользователя
 +
* '''Password *''' – пароль online пользователя
 +
Возвращаемый результат:
 +
* '''ConnectResult''' – идентификатор аутентификации, если аутентификация прошла успешно, ''-1'' в противном случае
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 +
<div class="mw-collapsible-content">
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 +
Вызов метода Connect
 +
<syntaxhighlight lang="java" enclose="div">
 +
POST /IntegrationServiceCP/IntegrationService.asmx HTTP/1.1
 +
Host: supp-08.megatec.ru
 +
Content-Type: text/xml; charset=utf-8
 +
Content-Length: length
 +
SOAPAction: "http://www.megatec.ru/Connect"
 +
 
 +
<?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>
 +
    <Connect xmlns="http://www.megatec.ru/">
 +
      <login>sm1</login>
 +
      <password>123</password>
 +
    </Connect>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
</syntaxhighlight>
 +
 
 +
Возвращаемый результат метода Connect
 +
<syntaxhighlight lang="java" enclose="div">
 +
 
 +
HTTP/1.1 200 OK
 +
Content-Type: text/xml; charset=utf-8
 +
Content-Length: length
 +
 
 +
<?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>
 +
    <ConnectResponse xmlns="http://www.megatec.ru/">
 +
      <ConnectResult>30b033a8-0d5b-4a2c-bcf0-2c671e4c6169</ConnectResult>
 +
    </ConnectResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
 +
 
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</div></div><br />
  
Возвращаемые значения.
+
===CreateReservation (бронирование путевки)===
Объект Reservation, представляющий путевку с услугами, туристами и т.д.
 
Описание класса Reservation и классов его основных свойств.
 
  
Формат запроса:
+
Метод производит бронирование путевки.<br />
POST [url]
+
Принимаемые параметры запроса:
После того, как веб-сервис запущен, мы можем взять необходимый урл
+
* '''Guid''' – идентификатор аутентификации (возвращается при запросе к методу [[Master-Interlook:Описание методов#Connect (получение аутентификационного токена)|Connect]])
 +
* '''HasInvoices''' – выставлен ли счет по путевке ('''true''' – выставлен, '''false''' – не выставлен)
 +
** '''true''' – счет выставлен
 +
** '''false''' – счет не выставлен
 +
* '''Rate''' – валюта путевки:
 +
** '''ID''' – идентификатор валюты
 +
** '''Name''' – название валюты
 +
** '''Code''' – код валюты
 +
** '''Unicode''' – код ISO для валюты
 +
** '''IsMain''' – является ли валюта главной ('''true''' – является, '''false''' – не является)
 +
** '''IsNational''' – является ли валюта национальной ('''true''' – является, '''false''' – не является)
 +
* '''ID''' – идентификатор путевки (если указано ''-1'' – создается новая путевка, если ID путевки из базы данных – перебронирование указанной)
 +
* '''Netto''' – нетто цена путевки
 +
* '''Brutto''' – брутто цена путевки
 +
* '''CountryID''' – идентификатор страны путевки
 +
* '''CityID''' – идентификатор города путевки
 +
* '''PartnerID''' – идентификатор покупателя путевки
 +
* '''AgentDiscount''' – скидка агента
 +
* '''Status''' – статус путевки ('''Confirmed''' = ''0'', '''NotConfirmed''' = ''1'', '''WaitingConfirmation''' = ''2'', '''Canceled''' = ''3'', '''WaitingCancelation''' = ''4'')
 +
* '''StartDate''' – дата начала тура (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
* '''EndDate''' – дата окончания тура (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
* '''Duration''' – продолжительность
 +
* '''CreateDate''' – дата создания путевки (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
* '''CreatorID''' – идентификатор создателя путевки
 +
* '''OwnerID''' – идентификатор создателя путевки
 +
* '''ExternalID''' – идентификатор путевки из системы создающей бронь
 +
* '''AdditionalParams''' – дополнительные параметры (представляются в виде пары ключ – значение)
 +
* '''Services''' - услуги по путевке (определенного типа, в зависимости от типа услуги)
 +
* '''Tourists''' – массив туристов по услуге
 +
** '''Tourist''' – турист
 +
*** '''Name''' – имя
 +
*** '''Sex''' –  пол (принимаемые значения: '''Male''' = 0, '''Female''' = 1, '''Child''' = 2, '''Infant''' = 3)
 +
*** '''BirthDate''' – дата рождения туриста (в формате ''ГГГГ-ММ-ДДT00:00:00'')
 +
*** '''FirstNameLat''' – имя туриста латиницей
 +
*** '''LastNameLat''' – фамилия туриста латиницей
 +
*** '''SurNameLat''' – отчество туриста латиницей
 +
*** '''AgeType''' – тип возраста ('''Adult''' = 0, '''Child''' = 1, '''Infant''' = 2)
 +
*** '''Citizen''' – гражданство
 +
*** '''IsMain''' – устанавливает признак главного туриста по путевке ('''Null''', '''0''' – нет, '''1''' – турист главный)
 +
*** '''ExternalID''' – идентификатор путевки из системы создающей бронь
 +
*** '''ID''' – идентификатор туриста (''-1'' для новой путевки )
 +
*** '''Phone''' – телефон туриста (задается по шаблону)
 +
*** '''Email''' – адрес электронной почты туриста
 +
*** '''LocalPassport''' – гражданский паспорт
 +
*** '''ForeignPassport''' – иностранный паспорт
 +
* TouristServices – массив услуг, используемых туристами
 +
** TouristService – отдельная услуга, используемая туристом
 +
*** ID – идентификатор услуги используемой туристом
 +
*** TouristID – идентификатор туриста (''-1'' для новой путевки)
 +
*** ServiceID – идентификатор услуги (-1 для новой путевки)
 +
* '''Services''' – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: '''ExcursionService''', '''ExtraService''', '''HotelService''', '''TransferService''')

Версия 14:24, 9 июля 2021

Версия статьи от 9-07-2021.

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


Введение

API InterlookIntegrationService работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.

Методы IntegrationService

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

Метод производит получение аутентификационного токена, необходимого для выполнения метода CreateReservation.

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

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

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

  • ConnectResult – идентификатор аутентификации, если аутентификация прошла успешно, -1 в противном случае
Пример

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

POST /IntegrationServiceCP/IntegrationService.asmx HTTP/1.1
Host: supp-08.megatec.ru
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.megatec.ru/Connect"

<?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>
    <Connect xmlns="http://www.megatec.ru/">
      <login>sm1</login>
      <password>123</password>
    </Connect>
  </soap:Body>
</soap:Envelope>

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

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?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>
    <ConnectResponse xmlns="http://www.megatec.ru/">
      <ConnectResult>30b033a8-0d5b-4a2c-bcf0-2c671e4c6169</ConnectResult>
    </ConnectResponse>
  </soap:Body>
</soap:Envelope>


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

Метод производит бронирование путевки.
Принимаемые параметры запроса:

  • Guid – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • HasInvoices – выставлен ли счет по путевке (true – выставлен, false – не выставлен)
    • true – счет выставлен
    • false – счет не выставлен
  • Rate – валюта путевки:
    • ID – идентификатор валюты
    • Name – название валюты
    • Code – код валюты
    • Unicode – код ISO для валюты
    • IsMain – является ли валюта главной (true – является, false – не является)
    • IsNational – является ли валюта национальной (true – является, false – не является)
  • ID – идентификатор путевки (если указано -1 – создается новая путевка, если ID путевки из базы данных – перебронирование указанной)
  • Netto – нетто цена путевки
  • Brutto – брутто цена путевки
  • CountryID – идентификатор страны путевки
  • CityID – идентификатор города путевки
  • PartnerID – идентификатор покупателя путевки
  • AgentDiscount – скидка агента
  • Status – статус путевки (Confirmed = 0, NotConfirmed = 1, WaitingConfirmation = 2, Canceled = 3, WaitingCancelation = 4)
  • StartDate – дата начала тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • EndDate – дата окончания тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • Duration – продолжительность
  • CreateDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
  • CreatorID – идентификатор создателя путевки
  • OwnerID – идентификатор создателя путевки
  • ExternalID – идентификатор путевки из системы создающей бронь
  • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
  • Services - услуги по путевке (определенного типа, в зависимости от типа услуги)
  • Tourists – массив туристов по услуге
    • Tourist – турист
      • Name – имя
      • Sex – пол (принимаемые значения: Male = 0, Female = 1, Child = 2, Infant = 3)
      • BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
      • FirstNameLat – имя туриста латиницей
      • LastNameLat – фамилия туриста латиницей
      • SurNameLat – отчество туриста латиницей
      • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
      • Citizen – гражданство
      • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
      • ExternalID – идентификатор путевки из системы создающей бронь
      • ID – идентификатор туриста (-1 для новой путевки )
      • Phone – телефон туриста (задается по шаблону)
      • Email – адрес электронной почты туриста
      • LocalPassport – гражданский паспорт
      • ForeignPassport – иностранный паспорт
  • TouristServices – массив услуг, используемых туристами
    • TouristService – отдельная услуга, используемая туристом
      • ID – идентификатор услуги используемой туристом
      • TouristID – идентификатор туриста (-1 для новой путевки)
      • ServiceID – идентификатор услуги (-1 для новой путевки)
  • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)