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

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
Строка 11: Строка 11:
 
Для доступа к сервису у онлайн пользователя должен быть установлен признак '''Hotel/Service''' в настройке '''Person connection''' и в настройках '''Role'''  активирован параметр '''Show hotel reservations by date'''.</br>
 
Для доступа к сервису у онлайн пользователя должен быть установлен признак '''Hotel/Service''' в настройке '''Person connection''' и в настройках '''Role'''  активирован параметр '''Show hotel reservations by date'''.</br>
 
</br>
 
</br>
 +
<BR>
 
=Методы HotelService=
 
=Методы HotelService=
  
Строка 107: Строка 108:
 
*** '''Booking''' – номер брони в системе Interlook
 
*** '''Booking''' – номер брони в системе Interlook
 
*** '''BookingID''' – ключ заявки из базы данных
 
*** '''BookingID''' – ключ заявки из базы данных
*** '''Action''' –  
+
*** '''Action''' – новая, отмененная или измененная заявка
*** '''CreationDate''' –  
+
*** '''CreationDate''' – дата создания услуги в заявке
*** '''ChangeDate''' –  
+
*** '''ChangeDate''' – не используется
*** '''CancelDate''' –  
+
*** '''CancelDate''' – не используется
*** '''CustomerMarket''' –  
+
*** '''CustomerMarket''' – данные туроператора, оформившего заявку
**** '''CustomerMarketId''' –  
+
**** '''CustomerMarketId''' – ключ туроператора, оформившего заявку
**** '''CustomerMarketName''' –  
+
**** '''CustomerMarketName''' – имя туроператора, оформившего заявку
*** '''HotelServices''' –  
+
*** '''HotelServices''' – массив данных по сервисам отелей
**** '''HotelServiceInfo''' –  
+
**** '''HotelServiceInfo''' – информация по сервису отеля
***** '''HotelServiceId''' –  
+
***** '''HotelServiceId''' – ключ сервиса отеля
***** '''HotelServiceName''' –  
+
***** '''HotelServiceName''' – имя сервиса отеля
***** '''Hotel''' –  
+
***** '''Hotel''' – массив данных по отелям
****** '''HotelId''' –  
+
****** '''HotelId''' – ключ отеля
****** '''HotelName''' –  
+
****** '''HotelName''' – имя отеля
***** '''Pansion''' –  
+
***** '''Pansion''' – тип питания
****** '''PansionId''' –  
+
****** '''PansionId''' – ключ питания
****** '''PansionName''' –  
+
****** '''PansionName''' – имя питания
***** '''RoomType''' –  
+
***** '''RoomType''' – тип номера
****** '''RoomTypeId''' –  
+
****** '''RoomTypeId''' – ключ типа номера
****** '''RoomTypeName''' –  
+
****** '''RoomTypeName''' – имя типа номера
***** '''RoomAccomodation''' –  
+
***** '''RoomAccomodation''' – тип размещения
****** '''AccommodationId''' –  
+
****** '''AccommodationId''' – ключ типа размещения
****** '''AccommodationName''' –  
+
****** '''AccommodationName''' – имя типа размещения
***** '''RoomCategory''' –  
+
***** '''RoomCategory''' – категория номер
****** '''RoomCategoryId''' –  
+
****** '''RoomCategoryId''' – ключ категории номера
****** '''RoomCategoryName''' –  
+
****** '''RoomCategoryName''' – имя категории номера
***** '''Status''' –  
+
***** '''Status''' – статус по услуге проживания
****** '''StatusId''' –  
+
****** '''StatusId''' – ключ статуса по услуге проживания
****** '''StatusName''' –  
+
****** '''StatusName''' – имя статуса по услуге проживания
***** '''HotelConfirmationNumber''' –  
+
***** '''HotelConfirmationNumber''' – номер заказа у поставщика
***** '''CheckIn''' –  
+
***** '''CheckIn''' – дата заезда в отель
***** '''CheckOut''' –  
+
***** '''CheckOut''' – дата выезда из отеля
***** '''Tourists''' –  
+
***** '''Tourists''' – массив данных туристов
****** '''TouristInfo''' –  
+
****** '''TouristInfo''' – массив данных по туристу
******* '''Name''' –  
+
******* '''Name''' – имя туриста
******* '''BirthDate''' –  
+
******* '''BirthDate''' – дата рождения туриста
******* '''Sex''' –  
+
******* '''Sex''' – пол туриста
******* '''HotelServiceId''' –  
+
******* '''HotelServiceId''' – ключ услуги проживания с которой связан турист
 
*** '''MessageInfo''' – массив данных сообщений
 
*** '''MessageInfo''' – массив данных сообщений
 
**** '''Id''' – идентификатор сообщения
 
**** '''Id''' – идентификатор сообщения
**** '''IsOutgoing''' – отправленное или нет
+
**** '''IsOutgoing''' – исходящее (true - исходящее, false - входящее)
 
**** '''DateCreate''' – дата создания сообщения
 
**** '''DateCreate''' – дата создания сообщения
**** '''IsRead''' – прочитано или нет
+
**** '''IsRead''' – прочитано (true - прочитано, false - не прочитано )
 
**** '''Text''' – текст сообщения
 
**** '''Text''' – текст сообщения
 
 
 
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
Вызов метода Connect
+
Вызов метода SearchBookings
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
 
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
 
+
  <soapenv:Header/>
 
+
  <soapenv:Body>
</soapenv:Envelope>
+
      <tem:SearchBookings>
 +
        <!--Optional:-->
 +
        <tem:guid>ba9f3a81-8890-4615-b293-1e1bada343fd</tem:guid>
 +
        <!--Optional:-->
 +
        <tem:hotelID>
 +
            <!--Zero or more repetitions:-->
 +
            <tem:int>2935</tem:int>
 +
        </tem:hotelID>
 +
        <tem:dateInfo>1</tem:dateInfo>
 +
        <tem:dateFrom>2021-01-01</tem:dateFrom>
 +
        <tem:dateTo>2021-12-01</tem:dateTo>
 +
        <tem:New>true</tem:New>
 +
        <tem:change>true</tem:change>
 +
        <tem:cancel>true</tem:cancel>
 +
      </tem:SearchBookings>
 +
  </soapenv:Body>
 +
</soapenv:Envelope></soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Возвращаемый результат метода Connect
+
Возвращаемый результат метода SearchBookings
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
     
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
+
  <soap:Body>
 +
      <SearchBookingsResponse xmlns="http://tempuri.org/">
 +
        <SearchBookingsResult>
 +
            <BookingInfo>
 +
              <Booking>MT110711A01</Booking>
 +
              <BookingID>35897</BookingID>
 +
              <Action>New</Action>
 +
              <CreationDate>2021-07-06T17:29:50.28</CreationDate>
 +
              <ChangeDate xsi:nil="true"/>
 +
              <CancelDate xsi:nil="true"/>
 +
              <CustomerMarket>
 +
                  <CustomerMarketId>2</CustomerMarketId>
 +
                  <CustomerMarketName>Russian Market</CustomerMarketName>
 +
              </CustomerMarket>
 +
              <HotelServices>
 +
                  <HotelServiceInfo>
 +
                    <HotelServiceId>163806</HotelServiceId>
 +
                    <HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
 +
                    <Hotel>
 +
                        <HotelId>2935</HotelId>
 +
                        <HotelName>Hilton</HotelName>
 +
                    </Hotel>
 +
                    <Pansion>
 +
                        <PansionId>3</PansionId>
 +
                        <PansionName>Bed and Breakfast</PansionName>
 +
                    </Pansion>
 +
                    <RoomType>
 +
                        <RoomTypeId>3</RoomTypeId>
 +
                        <RoomTypeName>Double Room</RoomTypeName>
 +
                    </RoomType>
 +
                    <RoomAccomodation>
 +
                        <AccommodationId>5558</AccommodationId>
 +
                        <AccommodationName>2AD</AccommodationName>
 +
                    </RoomAccomodation>
 +
                    <RoomCategory>
 +
                        <RoomCategoryId>20</RoomCategoryId>
 +
                        <RoomCategoryName>Jakuzzi</RoomCategoryName>
 +
                    </RoomCategory>
 +
                    <Status>
 +
                        <StatusId>1</StatusId>
 +
                        <StatusName>Wait</StatusName>
 +
                    </Status>
 +
                    <HotelConfirmationNumber>88888888i</HotelConfirmationNumber>
 +
                    <CheckIn>2021-07-11T00:00:00</CheckIn>
 +
                    <CheckOut>2021-07-20T00:00:00</CheckOut>
 +
                    <Tourists>
 +
                        <TouristInfo>
 +
                          <Name>PatnadzProc Gen</Name>
 +
                          <BirthDate>1966-02-27T00:00:00</BirthDate>
 +
                          <Sex>MR</Sex>
 +
                          <HotelServiceId>163806</HotelServiceId>
 +
                        </TouristInfo>
 +
        </Tourists>
 +
                  </HotelServiceInfo>
 +
              </HotelServices>
 +
              <Mesaages>
 +
                  <MessageInfo>
 +
                    <Id>779217</Id>
 +
                    <IsOutgoing>false</IsOutgoing>
 +
                    <DateCreate>2021-11-15T22:21:34.393</DateCreate>
 +
                    <IsRead>false</IsRead>
 +
                    <Text>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB:яварааааааааарвя</Text>
 +
                  </MessageInfo>
 +
              </Mesaages>
 +
            </BookingInfo>
 +
    </SearchBookingsResult>
 +
      </SearchBookingsResponse>
 +
  </soap:Body>
 +
</soap:Envelope>
  
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 
</div></div><br />
 
</div></div><br />

Версия 11:33, 16 ноября 2021

Версия статьи от 16-11-2021.

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


Введение

Сервис InterlookHotelService работает с методами REST API. Для вызова методов REST API можно использовать SoapUi.

Предупреждение


Для доступа к сервису у онлайн пользователя должен быть установлен признак Hotel/Service в настройке Person connection и в настройках Role активирован параметр Show hotel reservations by date.


Методы HotelService

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

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

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

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

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

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

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

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

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

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ConnectResponse xmlns="http://tempuri.org/">
         <ConnectResult>123c02db-3d47-4db5-861b-758be524a5fe</ConnectResult>
      </ConnectResponse>
   </soap:Body>
</soap:Envelope>


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

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

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

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

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

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

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/">
   <soap:Header/>
   <soap:Body>
      <tem:CheckConnect>
         <!--Optional:-->
         <tem:guid>123c02db-3d47-4db5-861b-758be524a5fe</tem:guid>
      </tem:CheckConnect>
   </soap:Body>
</soap:Envelope>

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

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckConnectResponse xmlns="http://tempuri.org/">
         <CheckConnectResult>true</CheckConnectResult>
      </CheckConnectResponse>
   </soap:Body>
</soap:Envelope>


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

SearchBookings (Получение списка забронированных заявок)

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

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • hotelID – массив данных с ключами отелей. Можно передавать как один так и несколько ключей отелей. Если не передаём данный параметр, то в ответ получаем все заказы, подходящие под выбранные даты.
  • dateInfo * – по какой дате осуществлять поиск (1 - дата создания, 2 - дата заезда, 3 - дата выезда)
  • dateFrom * – дата начала
  • dateTo * – дата окончания
  • checkInFrom – дата заезда от
  • checkInTo – дата заезда по
  • New – возвращает новые бронирования с датой, попадающей в указанное выше условие
  • change – возвращает измененные бронирования с изменениями, внесенными в выбранный период
  • cancel – возвращает информацию об отмененных бронировки за выбранный период

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

  • SearchBookingsResult – массив данных ответа
    • BookingInfo – массив данных брони
      • Booking – номер брони в системе Interlook
      • BookingID – ключ заявки из базы данных
      • Action – новая, отмененная или измененная заявка
      • CreationDate – дата создания услуги в заявке
      • ChangeDate – не используется
      • CancelDate – не используется
      • CustomerMarket – данные туроператора, оформившего заявку
        • CustomerMarketId – ключ туроператора, оформившего заявку
        • CustomerMarketName – имя туроператора, оформившего заявку
      • HotelServices – массив данных по сервисам отелей
        • HotelServiceInfo – информация по сервису отеля
          • HotelServiceId – ключ сервиса отеля
          • HotelServiceName – имя сервиса отеля
          • Hotel – массив данных по отелям
            • HotelId – ключ отеля
            • HotelName – имя отеля
          • Pansion – тип питания
            • PansionId – ключ питания
            • PansionName – имя питания
          • RoomType – тип номера
            • RoomTypeId – ключ типа номера
            • RoomTypeName – имя типа номера
          • RoomAccomodation – тип размещения
            • AccommodationId – ключ типа размещения
            • AccommodationName – имя типа размещения
          • RoomCategory – категория номер
            • RoomCategoryId – ключ категории номера
            • RoomCategoryName – имя категории номера
          • Status – статус по услуге проживания
            • StatusId – ключ статуса по услуге проживания
            • StatusName – имя статуса по услуге проживания
          • HotelConfirmationNumber – номер заказа у поставщика
          • CheckIn – дата заезда в отель
          • CheckOut – дата выезда из отеля
          • Tourists – массив данных туристов
            • TouristInfo – массив данных по туристу
              • Name – имя туриста
              • BirthDate – дата рождения туриста
              • Sex – пол туриста
              • HotelServiceId – ключ услуги проживания с которой связан турист
      • MessageInfo – массив данных сообщений
        • Id – идентификатор сообщения
        • IsOutgoing – исходящее (true - исходящее, false - входящее)
        • DateCreate – дата создания сообщения
        • IsRead – прочитано (true - прочитано, false - не прочитано )
        • Text – текст сообщения
Пример

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:SearchBookings>
         <!--Optional:-->
         <tem:guid>ba9f3a81-8890-4615-b293-1e1bada343fd</tem:guid>
         <!--Optional:-->
         <tem:hotelID>
            <!--Zero or more repetitions:-->
            <tem:int>2935</tem:int>
         </tem:hotelID>
         <tem:dateInfo>1</tem:dateInfo>
         <tem:dateFrom>2021-01-01</tem:dateFrom>
         <tem:dateTo>2021-12-01</tem:dateTo>
         <tem:New>true</tem:New>
         <tem:change>true</tem:change>
         <tem:cancel>true</tem:cancel>
      </tem:SearchBookings>
   </soapenv:Body>
</soapenv:Envelope></soapenv:Envelope>

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

<soap:Envelope xmlns:soap="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>
      <SearchBookingsResponse xmlns="http://tempuri.org/">
         <SearchBookingsResult>
            <BookingInfo>
               <Booking>MT110711A01</Booking>
               <BookingID>35897</BookingID>
               <Action>New</Action>
               <CreationDate>2021-07-06T17:29:50.28</CreationDate>
               <ChangeDate xsi:nil="true"/>
               <CancelDate xsi:nil="true"/>
               <CustomerMarket>
                  <CustomerMarketId>2</CustomerMarketId>
                  <CustomerMarketName>Russian Market</CustomerMarketName>
               </CustomerMarket>
               <HotelServices>
                  <HotelServiceInfo>
                     <HotelServiceId>163806</HotelServiceId>
                     <HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
                     <Hotel>
                        <HotelId>2935</HotelId>
                        <HotelName>Hilton</HotelName>
                     </Hotel>
                     <Pansion>
                        <PansionId>3</PansionId>
                        <PansionName>Bed and Breakfast</PansionName>
                     </Pansion>
                     <RoomType>
                        <RoomTypeId>3</RoomTypeId>
                        <RoomTypeName>Double Room</RoomTypeName>
                     </RoomType>
                     <RoomAccomodation>
                        <AccommodationId>5558</AccommodationId>
                        <AccommodationName>2AD</AccommodationName>
                     </RoomAccomodation>
                     <RoomCategory>
                        <RoomCategoryId>20</RoomCategoryId>
                        <RoomCategoryName>Jakuzzi</RoomCategoryName>
                     </RoomCategory>
                     <Status>
                        <StatusId>1</StatusId>
                        <StatusName>Wait</StatusName>
                     </Status>
                     <HotelConfirmationNumber>88888888i</HotelConfirmationNumber>
                     <CheckIn>2021-07-11T00:00:00</CheckIn>
                     <CheckOut>2021-07-20T00:00:00</CheckOut>
                     <Tourists>
                        <TouristInfo>
                           <Name>PatnadzProc Gen</Name>
                           <BirthDate>1966-02-27T00:00:00</BirthDate>
                           <Sex>MR</Sex>
                           <HotelServiceId>163806</HotelServiceId>
                        </TouristInfo>
         </Tourists>
                  </HotelServiceInfo>
               </HotelServices>
               <Mesaages>
                  <MessageInfo>
                     <Id>779217</Id>
                     <IsOutgoing>false</IsOutgoing>
                     <DateCreate>2021-11-15T22:21:34.393</DateCreate>
                     <IsRead>false</IsRead>
                     <Text>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB:яварааааааааарвя</Text>
                  </MessageInfo>
               </Mesaages>
            </BookingInfo>
    </SearchBookingsResult>
      </SearchBookingsResponse>
   </soap:Body>
</soap:Envelope>