Web-сервисы: Сервис для получения информации по турам — различия между версиями
[досмотренная версия] | [досмотренная версия] |
(→Настройка) |
Biryukov (обсуждение | вклад) |
||
Строка 242: | Строка 242: | ||
− | + | [[Category:Web-сервисы]] | |
− | [[Category: | ||
− |
Версия 10:27, 21 июля 2016
Более ранние версии: |
Содержание
- 1 Введение
- 2 Установка
- 3 Настройка
- 4 Подготовка данных
- 5 Работа в системе
Введение
Данный модуль предназначен для получения информации по списку рассчитанных туров, их типам, а также детализации рассчитанных цен.
Установка
Для установки Сервиса для вывода информации по туру нужно создать отдельную директорию, например, TourInfo (далее в примерах будет использоваться данное название каталога) в корневом каталоге IIS (по умолчанию c:/inetpub/wwwroot) и выложить туда распакованные файлы из архива mw-ws-tourinfo-2007.2.XX.XXXX.zip. В управлении IIS необходимо создать виртуальный каталог для папки TourInfo.
Создание виртуального каталога
По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:
- 1. Зайти в Пуск (Start) – Панель управления (Control Panel) – Администрирование (Administrative Tools)
- 2. Запустить Internet Information Services (IIS) Manager
- 3. В открывшемся дереве каталогов выбрать сайты (Web Sites) – Default Web Site (либо другой сайт, на который планируется установить приложение). В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать пункт «Преобразовать в приложение».
Подключение к базе данных ПК «Мастер-Тур»
В файле web.config, расположенном в папке TourInfo, в которую установлен web-сервис «Сервис для получения информации по турам», пропишите необходимые параметры подключения (курсивом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Тур»: <add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК Мастер-тур;Initial Catalog=название базы данных ПК Мастер-тур;User ID=логин пользователя ПК Мастер-тур;Password=пароль пользователя ПК Мастер-тур"/>
Настройка
После установки «Сервис для получения информации по турам» доступен по адресу: http://ip-адрес сервера Мастер-Веб/TourInfo/FullTourInfoService.asmx
Настройка web.config
Дополнительные настройки, задаваемые в файле web.config, позволяют задать дополнительные условия для отображения и проверки данных.
Для того, что бы в методе GetTourInfo помимо услуг, включенных в тур, отобразить услуги, прикрепленные к одному ценовому пакету, необходимо добавить настройку IncludedServiceClasses, где указать через запятые ключи классов услуг.
<add key="includedServiceClasses" value="1,4"/>
Необходимо, чтобы секция dynamicCharterClasses была одинаково настроена и в web.config самого сервиса, и в web.config основного приложения ПК Мастер-Web, если они настроены на одну базу.
Настройка кэширования
Для ускоренного получения информации по турам используется механизм кэширования.
Кэшируются туры, даты заездов, услуги, курсы валют, цены.
Для включения механизма необходимо добавить внутрь секции <sectionGroup name="megatec.web"> следующие теги:
<sectionGroup name="cache"> <section name="cachingDurations" type="System.Configuration.NameValueSectionHandler" /> </sectionGroup>
А также добавить внутрь контейнера <megatec.web> следующие теги:
<cache> <cachingDurations> <add key="extendedTourInfoCacheInterval" value="600"/> </cachingDurations> </cache>
В настройке extendedTourInfoCacheInterval задается время обновление кэша информации по турам (в секундах);
ВАЖНО! Указывать временной интервал кэширования не менее часа.
Подготовка данных
Описание формата данных
GetCountries
Параметр:token Значение:пустая строка
Результат
- ArrayOfCountry
- Country
- CountryID – идентификационный номер страны
- Name – название страны
- Country
GetTourTypes
Параметр:token Значение:пустая строка
Результат
- ArrayOfTourType
- TourType
- TourTypeID – идентификационный номер типа тура
- Name – название типа тура
- TourType
GetTours
Параметр:token Значение:пустая строка
Параметр:beginDate Значение:дата, начиная с которой выбирать туры (дата создания тура) в формате «yyyy-MM-dd»
Результат
- ArrayOfTourInfo
- TourInfo
- TourID – идентификационный номер тура
- TourPriceID - идентификационный номер стоимости тура
- Name – название тура
- TypeID – идентификационный номер типа тура
- URL – url страницы с описанием тура
- CreatedDate – дата создания тура (формат «yyyy-MM-ddThh:mm:ss»)
- ValidFrom – действителен с
- ValidTo – дейстивтелен по
- Code – код тура
- CountryID – идентификационный номер страны
- TourInfo
GetTourInfo
Параметр:token Значение:пустая строка
Параметр:tourKey Значение:идентификационный номер тура
Параметр:beginDate Значение:дата начиная с которой выдавать информацию в формате «yyyy-MM-dd»
Результат
- ExtendedTourInfo
- TourID – идентификационный номер тура
- TourPriceID - идентификационный номер стоимости тура
- Name – название тура
- TypeID – идентификационный номер типа тура
- URL – url страницы с описанием тура
- CreatedDate – дата создания тура (формат «yyyy-MM-ddThh:mm:ss»)
- ValidFrom – действителен с
- ValidTo – дейстивтелен по
- Code – код тура
- CountryID – идентификационный номер страны
- TourByDateInfos
- TourByDateInfo
- Date – дата заезда
- TourCosts
- TourCosts
- TourCost
- TourCosts
- AccomodationType – тип размещения
- Cost – стоимость
- Currency – валюта
- ServicesCosts
- ServiceCost
- ServiceName – назавние услуги
- Cost – стоимость услуги
- Currency – валюта
- TransportKey – ключ транспорта (-1, если услуга не подразвумевает схему размещения в транспорте)
- ServiceID – идентификационный номер услуги
- ServiceCost
GetBusyBusPlan
Параметр:token Значение:пустая строка
Параметр:tourKey Значение:идентификационный номер тура
Параметр:tourDate Значение:дата начиная с которой выдавать информацию в формате «yyyy-MM-dd»
Результат
- BusPlan
- TransportKey – идентификационный номер траспортного средства
- Title – название транспортного средства
- AreasCount – количество зон (автобусов)
- RowsCount – количество рядов
- ColumnsCount – количество мест в ряду
- Cells
- BusPlanCell
- Row – горизонтальная составляющая координаты места
- Column – вертикальная составляющая координаты места
- Area – зона (номер автобуса)
- BusPlanCellType – тип места (None, Comment - комментарий, Gangway – проход, Seat – пассажирское место)
- IsUsed – true – место занято, иначе - false
- BusPlanCell
Работа в системе
Метод получения списка стран (GetCountries)
Пример SOAP-запроса к сервису:
POST /tourinfo/FullTourInfoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://megatec.ru/GetCountries" <?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> <GetCountries xmlns="http://megatec.ru/"> <token>string</token> </GetCountries> </soap:Body> </soap:Envelope>
Метод получения списка типов тура (GetTourTypes)
Пример SOAP-запроса к сервису
POST /tourinfo/FullTourInfoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://megatec.ru/GetTourTypes" <?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> <GetTourTypes xmlns="http://megatec.ru/"> <token>string</token> </GetTourTypes> </soap:Body> </soap:Envelope>
Метод получения списка туров (GetTours)
Пример SOAP-запроса к сервису
POST /tourinfo/FullTourInfoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://megatec.ru/GetTours" <?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> <GetTours xmlns="http://megatec.ru/"> <token>string</token> <beginDate>string</beginDate> </GetTours> </soap:Body> </soap:Envelope>
Метод получения детализации по туру (GetTourInfo)
Пример SOAP-запроса к сервису
POST /tourinfo/FullTourInfoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://megatec.ru/GetTourInfo" <?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> <GetTourInfo xmlns="http://megatec.ru/"> <token>string</token> <tourKey>int</tourKey> <beginDate>string</beginDate> </GetTourInfo> </soap:Body> </soap:Envelope>
Метод получения детализации по плану рассадки (GetBusyBusPlan)
Пример SOAP-запроса к сервису
POST /tourinfo/FullTourInfoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://megatec.ru/GetTourInfo" <?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> <GetTourInfo xmlns="http://megatec.ru/"> <token>string</token> <tourKey>int</tourKey> <tourDate>string</tourDate > </GetTourInfo> </soap:Body> </soap:Envelope>