Мастер-Web:Дополнительный модуль Распределенный поиск — различия между версиями
Tarasov (обсуждение | вклад) (→Дополнительные настройки) |
Tarasov (обсуждение | вклад) (→Настройки файла distributedSearchSettings.xml) |
||
Строка 171: | Строка 171: | ||
Файл distributedSearchSettings.xml содержит информацию о внешних источниках данных. | Файл distributedSearchSettings.xml содержит информацию о внешних источниках данных. | ||
Элемент <Enabled>true</Enabled> элемента <DistributedSearchSettings> указывает на необходимость проведения поиска во внешних источниках данных.<BR> | Элемент <Enabled>true</Enabled> элемента <DistributedSearchSettings> указывает на необходимость проведения поиска во внешних источниках данных.<BR> | ||
− | Каждый из элементов <DistributedSearchSource Id="src"> элемента <SearchSources> представляет собой описание источника данных. Атрибут id может быть произвольным, но уникальным в рамках документа. | + | Для того, чтобы добавить нового партнера, у которого будут браться данные, нужно создать новую секцию <DistributedSearchSource Id="src">. |
+ | Каждый из элементов <DistributedSearchSource Id="src"> элемента <SearchSources> представляет собой описание источника данных. Атрибут id может быть произвольным, но уникальным в рамках документа.<br> | ||
+ | Чтобы настроить работу с внешним источником данных, в соответствующей секции DistributedSearchSource нужно задать следующие теги: | ||
<table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 | <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 | ||
style='border-collapse:collapse;border:none'> | style='border-collapse:collapse;border:none'> | ||
Строка 226: | Строка 228: | ||
</tr> | </tr> | ||
</table> | </table> | ||
− | + | Для того, чтобы получать предложения по какой либо стране из внешнего источника данных, необходимо добавить новый набор элементов <ReplcamentSubItem>, который задает правило подстановки данных из поискового фильтра данного источника в локальный фильтр, где: | |
<table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 | <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 | ||
style='border-collapse:collapse;border:none'> | style='border-collapse:collapse;border:none'> | ||
Строка 288: | Строка 290: | ||
</SubItems> | </SubItems> | ||
</ReplcamentSearchItem> | </ReplcamentSearchItem> | ||
+ | ====Ограничение вариантов, доступных из внешнего источника==== | ||
+ | Чтобы ограничить предложения из внешнего источника данных, например, по типу тура или по городу, необходимо в базе данных стороннего туроператора создать соответствующее представление (view) для пользователя, который указан в настройках соединения конфигурационного файла web.config сервиса по загрузке поисковых фильтров и поискового сервиса. | ||
+ | |||
==Работа в системе== | ==Работа в системе== | ||
===Схема распределенного поиска=== | ===Схема распределенного поиска=== |
Версия 15:34, 16 января 2012
Содержание
Введение
Модуль «Распределенный поиск» предназначен для отображения в собственном поисковом модуле предложений сторонних туроператоров.
Установка
Для установки надстройки "Распределенный поиск" нужно выложить распакованные файлы из архива mw-distributedsearch-2009.2.XX.XXXX.zip в каталог, где лежит ПК "Мастер-Web".
Для развертывания распределенного поиска необходимо на web-сервере каждого туроператора, включая собственный web-сервер, установить Сервис по загрузке поисковых фильтров (FilterBinding) и Поисковый сервис (SearchService). Описание процесса установки сервиса приведено в руководстве пользователя соответствующего сервиса.
Настройка
Настройки в файле web.config
Добавление секций
В конфигурационном файле web.config основного приложения ПК "Мастер-Web" необходимо добавить следующее:
- 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: //website.ru/ws-filter-binding/FilterBindingService.asmx"/> <add name="DoSearch" enabled="true" url="http: //website.ru/ws-search/Search.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 сервиса по загрузке поисковых фильтров и поискового сервиса.