Web-сервисы: Сервис по проверке наличия мест — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
м (Подключение к базе данных ПК «Мастер-Тур»)
м (Пример SOAP-запроса к сервису на проверку квот по отелю)
(не показано 7 промежуточных версий этого же участника)
Строка 75: Строка 75:
 
           </Tariff>
 
           </Tariff>
 
           <Flight>
 
           <Flight>
             <ID>17234</ID>
+
             <ID>522</ID>
 
             <CityFrom>
 
             <CityFrom>
               <ID>30</ID>
+
               <ID>1</ID>
 
             </CityFrom>
 
             </CityFrom>
 
             <CityTo>
 
             <CityTo>
               <ID>65</ID>
+
               <ID>275</ID>
 
             </CityTo>
 
             </CityTo>
 
           </Flight>
 
           </Flight>
Строка 101: Строка 101:
 
           </Tariff>
 
           </Tariff>
 
           <Flight>
 
           <Flight>
             <ID>17235</ID>
+
             <ID>523</ID>
 
             <CityFrom>
 
             <CityFrom>
               <ID>65</ID>
+
               <ID>275</ID>
 
             </CityFrom>
 
             </CityFrom>
 
             <CityTo>
 
             <CityTo>
               <ID>30</ID>
+
               <ID>1</ID>
 
             </CityTo>
 
             </CityTo>
 
           </Flight>
 
           </Flight>
 
         </Service>
 
         </Service>
 
       </services>
 
       </services>
       <tourDate>2010-07-04T00:00:00</tourDate>
+
       <tourDate>2016-08-04T00:00:00</tourDate>
 
       <tourDuration>8</tourDuration>
 
       <tourDuration>8</tourDuration>
 
       <currentUserKey>10764</currentUserKey>
 
       <currentUserKey>10764</currentUserKey>
Строка 117: Строка 117:
 
   </soap:Body>
 
   </soap:Body>
 
  </soap:Envelope>
 
  </soap:Envelope>
 +
 +
===Пример SOAP-ответа сервиса проверки квот по перелетам===
 +
<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>
 +
      <CheckQuotesResponse xmlns="http://megatec.ru/">
 +
          <CheckQuotesResult>No</CheckQuotesResult>
 +
      </CheckQuotesResponse>
 +
    </soap:Body>
 +
</soap:Envelope>
 +
 
===Пример SOAP-запроса к сервису на проверку квот по отелю===
 
===Пример SOAP-запроса к сервису на проверку квот по отелю===
 
  <?xml version="1.0" encoding="utf-8"?>
 
  <?xml version="1.0" encoding="utf-8"?>
Строка 157: Строка 167:
 
         </Service>
 
         </Service>
 
       </services>
 
       </services>
       <tourDate>2010-07-04T00:00:00</tourDate>
+
       <tourDate>2016-08-04T00:00:00</tourDate>
 
       <tourDuration>8</tourDuration>
 
       <tourDuration>8</tourDuration>
 
       <currentUserKey>10764</currentUserKey>
 
       <currentUserKey>10764</currentUserKey>
Строка 163: Строка 173:
 
   </soap:Body>
 
   </soap:Body>
 
  </soap:Envelope>
 
  </soap:Envelope>
===Пример SOAP-ответа сервиса===
+
 
<?xml version="1.0" encoding="utf-8"?>
+
===Пример SOAP-ответа сервиса проверки квот по отелю===
 
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
+
    <soap:Body>
    <CheckQuotesResponse xmlns="http://megatec.ru/">
+
      <CheckQuotesResponse xmlns="http://megatec.ru/">
      <CheckQuotesResult>Request</CheckQuotesResult>
+
          <CheckQuotesResult>Request</CheckQuotesResult>
    </CheckQuotesResponse>
+
      </CheckQuotesResponse>
  </soap:Body>
+
    </soap:Body>
 
  </soap:Envelope>
 
  </soap:Envelope>
 +
 
[[Category:Мастер-Тур_Веб-сервисы]]
 
[[Category:Мастер-Тур_Веб-сервисы]]

Версия 15:23, 7 июля 2016

Введение

Модуль «Сервис проверки наличия мест» предназначен как для проверки квот на одну конкретную услугу, так и на совокупность услуг.

Ссылка на тестовый сервис

С работой тестового сервиса по проверке наличия мест вы можете ознакомиться на нашем демо-сервере.

Установка

Для установки Сервиса проверки наличия мест нужно создать директорию CheckQuotes в каталоге c:/inetpub/wwwroot/ (корневом каталоге IIS) и выложить туда распакованные файлы из архива mw-ws-checkquotes-2007.2.XX.XXXX.zip. В управлении IIS необходимо создать виртуальный каталог для папки CheckQuotes.

Создание виртуального каталога

По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:

  • 1. Зайти в Пуск (Start) – Настройки (Settings) – Панель управления (Control Panel).


887.PNG

  • 2. В открывшемся окне выбрать Администрирование (Administrative Tools).


888.PNG

  • 3. Запустить Internet Information Services (IIS) Manager.


889.PNG

  • 4. В открывшемся дереве каталогов выбрать Web Sites – Default Web Site. В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и зайти в Свойства (Properties).


890.PNG

  • 5. В открывшемся окне, в закладке Directory нужно нажать кнопку «Create», а затем кнопку «ОК».


891.PNG

Подключение к базе данных ПК «Мастер-Тур»

В файле web.config, расположенном в папке DistributedSearch пропишите необходимые параметры подключения (курсивом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Тур»: <add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК Мастер-тур;Initial Catalog=название базы данных ПК Мастер-тур;User ID=логин пользователя ПК Мастер-тур;Password=пароль пользователя ПК Мастер-тур"/>

Настройка

После установки «Сервис проверки наличия мест» доступен по адресу:
http://ip- адрес сервера Мастер-Веб/CheckQuotes/CheckQuotesService.asmx

Подготовка данных

Сигнатура вызова

/// <summary>
/// Проверка квот на совокупность услуг
/// </summary>
/// <param name="services">Коллекция услуг, на которые необходимо проверить квоты</param>
/// <param name="tourDate">Дата начала тура</param>
/// <param name="tourDuration">Продолжительность тура</param>
/// <param name="currentUserKey">Ключ агентства в таблице партнеров</param>
/// <returns>Совокупная квота</returns>
public QuotaResult.Status CheckQuotes(List<Megatec.Travel.Entities.Service> 
services, DateTime tourDate, int tourDuration, int currentUserKey)

Работа в системе

Пример 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>
   <CheckQuotes xmlns="http://megatec.ru/">
     <services>
       <Service xsi:type="FlightService">
         <StartDay>1</StartDay>
         <Duration>0</Duration>
         <NMen>2</NMen>
         <Partner>
           <ID>27990</ID>
         </Partner>
         <Quota>NotChecked</Quota>
         <PacketID>19443</PacketID>
         <ServiceClass>
           <ID>1</ID>
         </ServiceClass>
         <Tariff>
           <ID>226</ID>
         </Tariff>
         <Flight>
           <ID>522</ID>
           <CityFrom>
             <ID>1</ID>
           </CityFrom>
           <CityTo>
             <ID>275</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>
         <Quota>NotChecked</Quota>
         <PacketID>18920</PacketID>
         <ServiceClass>
           <ID>1</ID>
         </ServiceClass>
         <Tariff>
           <ID>226</ID>
         </Tariff>
         <Flight>
           <ID>523</ID>
           <CityFrom>
             <ID>275</ID>
           </CityFrom>
           <CityTo>
             <ID>1</ID>
           </CityTo>
         </Flight>
       </Service>
     </services>
     <tourDate>2016-08-04T00:00:00</tourDate>
     <tourDuration>8</tourDuration>
     <currentUserKey>10764</currentUserKey>
   </CheckQuotes>
 </soap:Body>
</soap:Envelope>

Пример SOAP-ответа сервиса проверки квот по перелетам

<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>
      <CheckQuotesResponse xmlns="http://megatec.ru/">
         <CheckQuotesResult>No</CheckQuotesResult>
      </CheckQuotesResponse>
   </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>
   <CheckQuotes xmlns="http://megatec.ru/">
     <services>
       <Service xsi:type="HotelService">
         <StartDay>1</StartDay>
         <Duration>7</Duration>
         <NMen>2</NMen>
         <Partner>
           <ID>18411</ID>
         </Partner>
         <Quota>NotChecked</Quota>
         <PacketID>19443</PacketID>
         <City>
           <ID>233</ID>
         </City>
         <Country>
           <ID>520</ID>
         </Country>
         <ServiceClass>
           <ID>3</ID>
         </ServiceClass>
         <Hotel>
           <ID>3004</ID>
         </Hotel>
         <Room>
           <RoomType>
             <ID>2</ID>
           </RoomType>
           <RoomCategory>
             <ID>41</ID>
           </RoomCategory>
           <RoomAccomodation>
             <ID>633</ID>
           </RoomAccomodation>
         </Room>
       </Service>
     </services>
     <tourDate>2016-08-04T00:00:00</tourDate>
     <tourDuration>8</tourDuration>
     <currentUserKey>10764</currentUserKey>
   </CheckQuotes>
 </soap:Body>
</soap:Envelope>

Пример SOAP-ответа сервиса проверки квот по отелю

<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>
      <CheckQuotesResponse xmlns="http://megatec.ru/">
         <CheckQuotesResult>Request</CheckQuotesResult>
      </CheckQuotesResponse>
   </soap:Body>
</soap:Envelope>