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

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
Строка 2: Строка 2:
  
 
==Введение==
 
==Введение==
Модуль «Распределенный поиск» предназначен для отображения в собственном поисковом модуле предложений сторонних туроператоров.
+
Модуль «Распределенный поиск» предназначен для отображения в едином поисковом модуле как своих, так и сторонних предложений. Модуль позволяет осуществлять поиск и бронирование туров от различных туроператоров в одном приложении ПК Мастер-Web.
 
==Установка==
 
==Установка==
Для установки надстройки "Распределенный поиск" нужно выложить распакованные файлы из архива mw-distributedsearch-2009.2.XX.XXXX.zip в каталог, где лежит ПК "Мастер-Web".<br>
+
Для установки «Распределенного поиска» нужно распаковать архив надстройки mw-distributedsearch-2007.2.XX.XXXX.zip в корень каталога, где установлено приложение ПК Мастер-Web.
Для развертывания распределенного поиска необходимо на web-сервере каждого туроператора, включая собственный web-сервер, установить Сервис по загрузке поисковых фильтров (FilterBinding) и Поисковый сервис (SearchService). Описание процесса установки сервиса приведено в руководстве пользователя соответствующего сервиса.
 
  
 +
Для развертывания распределенного поиска необходимо на web-сервере каждого туроператора, цены которого необходимо отображать в собственном приложении, установить Сервис по загрузке поисковых фильтров (FilterBinding), Поисковый сервис (SearchService), Сервис проверки наличия мест (CheckQuotes) и Сервис бронирования (Reservation). Описание процесса установки сервисов приведено в руководстве пользователя соответствующего сервиса.
 +
 +
Если собственные предложения также должны загружаться через web-сервис, то такие же web-сервисы необходимо установить и на своем web-сервере.
 
==Настройка==
 
==Настройка==
 
===Настройки в файле web.config===
 
===Настройки в файле web.config===
 
====Добавление секций====
 
====Добавление секций====
В конфигурационном файле web.config основного приложения ПК "Мастер-Web" необходимо добавить следующее:
+
Добавление секций в конфигурационный файл web.config производится только в случае, если локальные предложения туроператора подключаются через сервис.
 
*1. В секции <ConfigSections> добавить подсекцию:
 
*1. В секции <ConfigSections> добавить подсекцию:
 
  <sectionGroup name="Megatec.Web.Services">
 
  <sectionGroup name="Megatec.Web.Services">
Строка 19: Строка 21:
 
  <Megatec.Web.Services>
 
  <Megatec.Web.Services>
 
   <servicesAccessibility Enabled="true">
 
   <servicesAccessibility Enabled="true">
<Services>
+
    <Services>
<add name="FilterBinding" enabled="true" url="http: //website.ru/ws-filter-binding/FilterBindingService.asmx"/>
+
    <add name="FilterBinding" enabled="true" url="http://somesite/ws-filter-binding/FilterBindingService.asmx"/>
<add name="DoSearch" enabled="true" url="http: //website.ru/ws-search/Search.asmx"/>
+
    <add name="DoSearch" enabled="true" url="http://somesite/ws-search/Search.asmx"/>
</Services>
+
    <add name="Reservation" enabled="true" url="http://somesite/ws-reservation/ReservationService.asmx"/>
</servicesAccessibility>
+
    <add name="ServiceProvider" enabled="true" url="http://somesite/ws-reservation/ServiceProvider.asmx"/>
 +
    <add name="CheckQuotes" enabled="true" url="http://somesite/ws-checkquotes/CheckQuotesService.asmx"/>
 +
    </Services>
 +
  </servicesAccessibility>
 
  </Megatec.Web.Services>
 
  </Megatec.Web.Services>
В данной секции необходимо указать адреса собственного сервиса загрузки фильтра и поискового сервиса.
+
 
 +
В данной секции необходимо указать адреса собственных сервисов загрузки фильтра, поискового сервиса, сервиса проверки наличия мест, сервиса бронирования.
  
 
====Дополнительные настройки====
 
====Дополнительные настройки====

Версия 18:06, 4 декабря 2012

Статья находится на стадии разработки.

Введение

Модуль «Распределенный поиск» предназначен для отображения в едином поисковом модуле как своих, так и сторонних предложений. Модуль позволяет осуществлять поиск и бронирование туров от различных туроператоров в одном приложении ПК Мастер-Web.

Установка

Для установки «Распределенного поиска» нужно распаковать архив надстройки mw-distributedsearch-2007.2.XX.XXXX.zip в корень каталога, где установлено приложение ПК Мастер-Web.

Для развертывания распределенного поиска необходимо на web-сервере каждого туроператора, цены которого необходимо отображать в собственном приложении, установить Сервис по загрузке поисковых фильтров (FilterBinding), Поисковый сервис (SearchService), Сервис проверки наличия мест (CheckQuotes) и Сервис бронирования (Reservation). Описание процесса установки сервисов приведено в руководстве пользователя соответствующего сервиса.

Если собственные предложения также должны загружаться через web-сервис, то такие же web-сервисы необходимо установить и на своем web-сервере.

Настройка

Настройки в файле web.config

Добавление секций

Добавление секций в конфигурационный файл web.config производится только в случае, если локальные предложения туроператора подключаются через сервис.

  • 1. В секции <ConfigSections> добавить подсекцию:
<sectionGroup name="Megatec.Web.Services">
<section name="servicesAccessibility" 
type="Megatec.Configuration.WebServicesSection, Megatec.Configuration"/>
</sectionGroup>
  • 2. На одном уровне с секцией <ConfigSections> добавить секцию:
<Megatec.Web.Services>
 <servicesAccessibility Enabled="true">
   <Services>
   <add name="FilterBinding" enabled="true" url="http://somesite/ws-filter-binding/FilterBindingService.asmx"/>
   <add name="DoSearch" enabled="true" url="http://somesite/ws-search/Search.asmx"/>
   <add name="Reservation" enabled="true" url="http://somesite/ws-reservation/ReservationService.asmx"/>
   <add name="ServiceProvider" enabled="true" url="http://somesite/ws-reservation/ServiceProvider.asmx"/>
   <add name="CheckQuotes" enabled="true" url="http://somesite/ws-checkquotes/CheckQuotesService.asmx"/>
   </Services>
 </servicesAccessibility>
</Megatec.Web.Services>

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

Дополнительные настройки

Дополнительные настройки, задаваемые в секции <Megatec.Web.Services/> файла web.config основного приложения ПК "Мастер-Web".

Описание

Значение

Настройка

1

Настройка, определяющая расположение сервиса по загрузке поисковых фильтров.

 

<add name="FilterBinding" enabled="true" url="http: //Сайт/filterbinding/FilterBindingService.asmx"/>

2

Настройка, определяющая расположение поискового сервиса.

 

<add name="DoSearch" enabled="true" url="http: //Сайт/search/Search.asmx"/>

3

Настройка, определяющая расположение сервиса бронирования.

 

<add name="Reservation" enabled="true" url="http: //Сайт/reservation/ReservationService.asmx"/>

4

Настройка, определяющая расположение сервиса формирования списка услуг.

 

<add name="ServiceProvider" enabled="true" url="http: //Сайт/reservation/ServiceProvider.asmx"/>

5

Настройка, определяющая расположение сервиса проверки квот.

 

<add name="CheckQuotes" enabled="true" url="http: //Сайт/checkquotes/CheckQuotesService.asmx"/>

Настройки файла distributedSearchSettings.xml

Файл distributedSearchSettings.xml содержит информацию о внешних источниках данных. Элемент <Enabled>true</Enabled> элемента <DistributedSearchSettings> указывает на необходимость проведения поиска во внешних источниках данных.
Для того, чтобы добавить нового партнера, у которого будут браться данные, нужно создать новую секцию <DistributedSearchSource Id="src">. Каждый из элементов <DistributedSearchSource Id="src"> элемента <SearchSources> представляет собой описание источника данных. Атрибут id может быть произвольным, но уникальным в рамках документа.
Чтобы настроить работу с внешним источником данных, в соответствующей секции DistributedSearchSource нужно задать следующие теги:

<FilterBindingServiceUrl>

- адрес сервиса загрузки поискового фильтра для данного источника

<SearchServiceUrl>

- адрес поискового сервиса для данного источника

<FlightGroups>

- перечисление ключей классов перелетов разделенных на группы знаком «|»; порядок групп должен соответствовать порядку указанному в секции MasterWeb/ dynamicCharterClasses файла web.config; если какая либо группа из файла web.config несвойственна данному источнику, то в ней указывается ключ ”-1”     

<ReplcamentSearchItems

- правила подстановки данных из поискового фильтра данного источника в локальный фильтр

Для того, чтобы получать предложения по какой либо стране из внешнего источника данных, необходимо добавить новый набор элементов <ReplcamentSubItem>, который задает правило подстановки данных из поискового фильтра данного источника в локальный фильтр, где:

Type

- тип условия подстановки; возможные значения: departFrom, country, city

LocalValue

- ключ сущности в локальной базе

RemoteValue

- ключ сущности во внешнем источнике

Пример:

  • 1. Добавить предложения по Хорватии (в локальном источнике отсутствует, ключ во внешнем источнике - 123) при вылете из Москвы (ключ 30 в локальном источнике и 1 во внешнем источнике)
<ReplcamentSearchItem>
<SubItems>
<ReplcamentSubItem Type="departFrom" LocalValue="30" RemoteValue="1" />
<ReplcamentSubItem Type="country" LocalValue="0" RemoteValue="123" Name="Хорватия" />
</SubItems>
</ReplcamentSearchItem>
  • 2. Добавить предложения по Греции (ключ 520 в локальном источнике и 29 во внешнем источнике) при вылете из Москвы (ключ 30 в локальном источнике и 1 во внешнем источнике)
<ReplcamentSearchItem>
<SubItems>
<ReplcamentSubItem Type="departFrom" LocalValue="30" RemoteValue="1" />
<ReplcamentSubItem Type="country" LocalValue="520" RemoteValue="29" Name="Греция" />
</SubItems>
</ReplcamentSearchItem>
  • 3. Включить в предложения по Греции (ключ 520 в локальном источнике и 29 во внешнем источнике) при вылете из Екатеринбурга (ключ 648 в локальном источнике и 266 во внешнем источнике) город Салоники (в локальном источнике отсутствует ; ключ во внешнем источнике - 615)
<ReplcamentSearchItem>
<SubItems>
<ReplcamentSubItem Type="departFrom" LocalValue="648" RemoteValue="266" />
<ReplcamentSubItem Type="country" LocalValue="520" RemoteValue="29" Name="Греция" />
<ReplcamentSubItem Type="city" LocalValue="0" RemoteValue="615" Name="Салоники" />
</SubItems>
</ReplcamentSearchItem>

Ограничение вариантов, доступных из внешнего источника

Чтобы ограничить предложения из внешнего источника данных, например, по типу тура или по городу, необходимо в базе данных стороннего туроператора создать соответствующее представление (view) для пользователя, который указан в настройках соединения конфигурационного файла web.config сервиса по загрузке поисковых фильтров и поискового сервиса.

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

Схема распределенного поиска


818.PNG