Мастер-Web:Дополнительный модуль Подбор туров с наличием мест — различия между версиями
[досмотренная версия] | [досмотренная версия] |
Porunova (обсуждение | вклад) |
|||
(не показано 115 промежуточных версий 8 участников) | |||
Строка 1: | Строка 1: | ||
+ | Версия статьи от {{REVISIONDAY}}.{{REVISIONMONTH}}.{{REVISIONYEAR}}. Для перехода на версию статьи, соответствующую используемой Вами версии программы, нажмите ссылку в таблице: | ||
+ | |||
+ | <table style="background-color:#ffffcc;color:#000000" border="1" cellpadding="10" cellspacing="0"><tr><td> | ||
+ | Более ранние версии:<br> | ||
+ | [http://wiki.megatec.ru/index.php?title=%D0%9C%D0%B0%D1%81%D1%82%D0%B5%D1%80-Web:%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C_%D0%9F%D0%BE%D0%B4%D0%B1%D0%BE%D1%80_%D1%82%D1%83%D1%80%D0%BE%D0%B2_%D1%81_%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B5%D0%BC_%D0%BC%D0%B5%D1%81%D1%82&oldid=7677 До версии ПК «Мастер-Тур» 2009.2.12 включительно]<br> | ||
+ | [http://wiki.megatec.ru/index.php?title=%D0%9C%D0%B0%D1%81%D1%82%D0%B5%D1%80-Web:%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C_%D0%9F%D0%BE%D0%B4%D0%B1%D0%BE%D1%80_%D1%82%D1%83%D1%80%D0%BE%D0%B2_%D1%81_%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B5%D0%BC_%D0%BC%D0%B5%D1%81%D1%82&oldid=8172 До версии ПК «Мастер-Тур» 2009.2.15 включительно]<br> | ||
+ | [http://wiki.megatec.ru/index.php?title=Мастер-Web:Дополнительный_модуль_Подбор_туров_с_наличием_мест&stableid=9104 До версии ПК «Мастер-Тур» 2009.2.17 включительно]<BR> | ||
+ | </td></tr></table><br> | ||
+ | |||
==Введение== | ==Введение== | ||
− | Данный модуль предназначен для поиска и подбора туров, а также для сравнения цен в разных гостиницах на определенное размещение. | + | Данный модуль предназначен для поиска и подбора туров, а также для сравнения цен в разных гостиницах на определенное размещение.<br> |
+ | В релизе 9220SP32 разработан [[Мастер-Web:Дополнительный_модуль_Подбор_туров_с_наличием_мест_(новый_дизайн)|новый дизайн]] данного экрана. | ||
==Установка== | ==Установка== | ||
Для установки надстройки «Динамический лист с наличием мест» нужно выложить распакованные файлы из архива mw-quoteddynamic-2007.2.XX.XXXX.zip в каталог, где лежит ПК Мастер-Web. | Для установки надстройки «Динамический лист с наличием мест» нужно выложить распакованные файлы из архива mw-quoteddynamic-2007.2.XX.XXXX.zip в каталог, где лежит ПК Мастер-Web. | ||
Строка 8: | Строка 18: | ||
Дополнительные настройки, задаваемые в файле web.config, находящемся в папке MasterWeb позволяют задать дополнительные условия для отображения и проверки данных. | Дополнительные настройки, задаваемые в файле web.config, находящемся в папке MasterWeb позволяют задать дополнительные условия для отображения и проверки данных. | ||
− | + | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" | |
− | + | ||
− | + | |- style="background-color:#F2F2F2" | |
− | + | ||
− | + | ! width="2%" | № | |
− | + | ! width="28%" | Описание | |
− | + | ! width="35%" | Значение | |
− | + | ! width="35%" | Настройка | |
− | + | ||
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | 1 | |
− | + | | Включение возможности поиска по актуальным местам в экране «Динамический лист с наличием мест» | |
− | + | | | |
− | + | {| | |
− | + | |- style="vertical-align:text-top" | |
− | + | | '''''2''''' || — включить возможность поиска по актуальным местам | |
− | + | |} | |
− | + | | <syntaxhighlight lang="xml" enclose="div"> | |
− | + | <add key="pagingType" value="2" /> | |
− | + | </syntaxhighlight> | |
− | + | ||
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | 2 | |
− | + | | Производить поиск перелетов, если на один из них закончились места и стоит настройка ''noPlacesQuoteResult = request'' | |
− | + | | | |
− | + | * '''true''' — подбирать перелет, если места на текущий перелет закончились, по запросу или отсутствует расписание | |
− | + | * '''false''' или '''отсутствие настройки''' — не подбирать перелет, если места на текущий перелет закончились или отсутствует расписание | |
− | + | | <syntaxhighlight lang="xml" enclose="div"> | |
− | + | <add key="searchFlightsOnRequest" value="true" /> | |
− | + | </syntaxhighlight> | |
− | + | ||
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | 3 | |
− | + | | Отключение ссылок в экранах «Ценовой лист» и «Динамический лист предложений» для перехода в экран «Корзина» (у пользователей сайта не будет возможности перейти к оформлению заявки). | |
− | + | | | |
− | + | * '''true''' или '''отсутствие настройки''' — ссылки есть | |
− | + | * '''false''' — ссылок нет | |
− | + | | <syntaxhighlight lang="xml" enclose="div"> | |
− | + | <add key="priceLinksEnabled" value="false" /> | |
− | + | </syntaxhighlight> | |
− | + | ||
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | 4 | |
− | + | | Обработка стоп-сейлов на авиаперелет | |
− | + | | | |
− | + | * '''true''' — обрабатывать стоп-сейлы на авиаперелет | |
− | + | * '''false''' или '''отсутствие настройки''' — не обрабатывать | |
− | + | | <syntaxhighlight lang="xml" enclose="div"> | |
− | + | <add key="checkStopAvia" value="true" /> | |
− | + | </syntaxhighlight> | |
− | + | ||
− | + | |- style="vertical-align:text-top" | |
− | + | ||
− | + | | 5 | |
− | + | | Определяет справочник, по которому будет проверяться '''количество основных мест''' при поиске в [[Мастер-Web:Руководство пользователя. Работа в системе online бронирования#Экран «Динамический лист предложений»|экране «Динамический лист предложений»]] и при бронировании в [[Мастер-Web:Руководство пользователя. Работа в системе online бронирования#Экран «Стандартная корзина» («Basket.aspx»)|корзинах бронирования ПК «Мастер-Web»]]. | |
− | + | | | |
− | + | * '''true''' — количество основных мест берется из [[Мастер-Тур:Справочники#Типы размещения|справочника «Типы размещений»]]. | |
− | + | Если соответствующее поле там '''не заполнено''', то из [[Мастер-Тур:Справочники#Типы номеров|справочника «Типы номеров»]]. | |
+ | * '''false''' или ' | ||
====Настройки отображения==== | ====Настройки отображения==== | ||
Отображение тех или иных элементов поискового фильтра, а так же их вид, размер местоположение и т.д. настраивается через файл стилей styles.css. | Отображение тех или иных элементов поискового фильтра, а так же их вид, размер местоположение и т.д. настраивается через файл стилей styles.css. | ||
За настройки отображения отвечают следующие стили: | За настройки отображения отвечают следующие стили: | ||
− | * #dof_DepartureCityDiv – фильтр «Город вылета»; | + | * #dof_DepartureCityDiv – фильтр «Город вылета»; |
− | * #dof_CountryDiv – фильтр «Страна»; | + | * #dof_CountryDiv – фильтр «Страна»; |
− | * #dof_TourTypeDiv – фильтр «Тип тура»; | + | * #dof_TourTypeDiv – фильтр «Тип тура»; |
− | * #dof_ResortDiv – название фильтра «Курорт»; | + | * #dof_TourContentDiv – фильтр «Состав тура» (доступен с релиза 9220SP31); |
− | * #dof_ResortDiv_InnerDiv – фильтр «Курорт»; | + | * #dof_ResortDiv – название фильтра «Курорт»; |
− | * #dof_RegionDiv – название фильтра «Город»; | + | * #dof_ResortDiv_InnerDiv – фильтр «Курорт»; |
− | * #dof_RegionDiv_InnerDiv – фильтр «Город»; | + | * #dof_RegionDiv – название фильтра «Город»; |
− | * #dof_SpoDiv – фильтр «СПО»; | + | * #dof_RegionDiv_InnerDiv – фильтр «Город»; |
− | * #dof_HotelDiv – название фильтра «Отель» + быстрый поиск отеля; | + | * #dof_SpoDiv – фильтр «СПО»; |
− | * #hotelDivScroll – фильтр «Отель»; | + | * #dof_HotelDiv – название фильтра «Отель» + быстрый поиск отеля; |
− | * #dof_TourDates – фильтр «Даты заезда»; | + | * #hotelDivScroll – фильтр «Отель»; |
− | * #dof_RoomTypeDiv – фильтр «Тип номера»; | + | * #dof_TourDates – фильтр «Даты заезда»; |
− | * #dof_ChildrenMainDiv – фильтр «Количество взрослых/детей на основном месте»; | + | * #dof_RoomTypeDiv – фильтр «Тип номера»; |
− | * #dof_ChildrenExtraDiv – фильтр «Количество взрослых/детей на доп. месте»; | + | * #dof_ChildrenMainDiv – фильтр «Количество взрослых/детей на основном месте»; |
− | * #dof_NightsDiv – фильтр «Ночи»; | + | * #dof_ChildrenExtraDiv – фильтр «Количество взрослых/детей на доп. месте»; |
− | * #dof_RoomCategoryDiv – фильтр «Категория» (гостиниц); | + | * #dof_NightsDiv – фильтр «Ночи»; |
− | * #dof_PansionDiv – фильтр «Питание»; | + | * #dof_RoomCategoryDiv – фильтр «Категория» (гостиниц); |
− | * #dof_KindOfTourDiv – фильтр «Виды туров»; | + | * #dof_PansionDiv – фильтр «Питание»; |
− | * #dof_PriceMaximumDiv – фильтр «Цена не более указанной величины»; | + | * #dof_KindOfTourDiv – фильтр «Виды туров»; |
− | * #dof_CurrencyDiv – контрол переключения валют; | + | * #dof_PriceMaximumDiv – фильтр «Цена не более указанной величины»; |
− | * #dof_QuotasDiv – контрол «Наличие мест»; | + | * #dof_CurrencyDiv – контрол переключения валют; |
− | * #dof_PageSizeDiv – | + | * #dof_QuotasDiv – контрол «Наличие мест»; |
− | * #dof_SearchDiv – кнопка «Подобрать тур»; | + | * #dof_PageSizeDiv – выпадающий список с отображением строк на странице, отображаемых в результатах поиска; |
− | * #dof_UpdateProgressForLeftDiv – прогрессбар 1 ( ); | + | * #dof_SearchDiv – кнопка «Подобрать тур»; |
− | * #dof_UpdateProgressForMiddleDiv – прогрессбар 2 ( ); | + | * #dof_UpdateProgressForLeftDiv – прогрессбар 1 ( ); |
− | * #dof_CountryDescriptionDiv – описание страны; | + | * #dof_UpdateProgressForMiddleDiv – прогрессбар 2 ( ); |
− | * .qd_Div – нижний колонтитул. | + | * #dof_CountryDescriptionDiv – описание страны ''(с 9220SP31 описание включается по настройке showCountryDescriptionInQD)''. Необходимо выполнить следующие действия: |
+ | ** В файле '''DynamicOffersFilter.ascx''' в секции '''lblCountryDescription''' необходимо прописать '''True''' вместо '''False'''; | ||
+ | ** В файле '''Style.css''' настроить отображение стиля '''dof_CountryDescriptionDiv''' (также убедиться, что настройка '''Display''' для этого стиля не указана); | ||
+ | ** В системе администрирования ПК "Мастер-Web" в поле '''Примечание''' подраздела '''Страны -> Страна''' задать описание страны, которое должно отображаться. | ||
+ | * .qd_Div – нижний колонтитул. | ||
Каждый элемент стилей может содержать настройки: | Каждый элемент стилей может содержать настройки: | ||
− | * | + | * Width – ширина элемента; |
− | * | + | * Height – высота элемента; |
− | * | + | * Overflow – отображение содержания блочного элемента, если оно целиком не помещается и выходит за область заданных размеров; |
− | * | + | * background-color – цвет фона; |
− | * | + | * background-image - фоновое изображение для элемента (например, <code>background-image: url(images/back.jpg)</code> можно задать для фона страницы); |
− | * Display – определение того как элемент должен быть показан; | + | * Border – толщина, стиль и цвет границы вокруг элемента; |
− | * Position – способ позиционирования элемента относительно окна браузера или других объектов на веб-странице; | + | * Display – определение того как элемент должен быть показан; |
− | * Top – для позиционированного элемента определяет расстояние от верхнего края родительского элемента, не включая отступ, поле и ширину рамки, до верхнего края дочернего элемента; | + | * Position – способ позиционирования элемента относительно окна браузера или других объектов на веб-странице; |
− | * И т.д. (подробнее можно посмотреть на http://www.htmlbook.ru/css/). | + | * Top – для позиционированного элемента определяет расстояние от верхнего края родительского элемента, не включая отступ, поле и ширину рамки, до верхнего края дочернего элемента; |
+ | * И т.д. (подробнее можно посмотреть на http://www.htmlbook.ru/css/). | ||
=====Скрытие элементов фильтра===== | =====Скрытие элементов фильтра===== | ||
− | Для того чтобы скрыть тот или иной элемент, необходимо для соответствующего стиля прописать настройку: | + | Для того чтобы скрыть тот или иной элемент, необходимо для соответствующего стиля прописать настройку: |
− | Display:none; | + | Display:none; |
− | Если какой-либо элемент поискового фильтра скрывается, то очень важно учесть, что при этом необходимо заново отпозиционировать все последующие элементы, либо изменить их размеры. | + | |
+ | Для того, чтобы отобразить элемент, настройку '''Display''' нужно убрать. | ||
+ | Если какой-либо элемент поискового фильтра скрывается, то очень важно учесть, | ||
+ | что при этом необходимо заново отпозиционировать все последующие элементы, либо изменить их размеры. | ||
Рассмотрим пример. Допустим, мы хотим скрыть фильтр «Курорт». Для этого мы добавляем настройку Display:none; для стилей #dof_ResortDiv и #dof_ResortDiv_InnerDiv: | Рассмотрим пример. Допустим, мы хотим скрыть фильтр «Курорт». Для этого мы добавляем настройку Display:none; для стилей #dof_ResortDiv и #dof_ResortDiv_InnerDiv: | ||
#dof_ResortDiv | #dof_ResortDiv | ||
Строка 1280: | Строка 834: | ||
Данное изменение без позиционирования остальных элементов, либо без изменения их размера приводит к тому, что поисковый фильтр разъезжается: | Данное изменение без позиционирования остальных элементов, либо без изменения их размера приводит к тому, что поисковый фильтр разъезжается: | ||
<BR> | <BR> | ||
− | [[Файл: | + | [[Файл:ST56.png|x500px]]<BR> |
Для того, чтобы фильтр выровнялся достаточно просто изменить значение настройки height для стиля #dof_RegionDiv_InnerDiv: | Для того, чтобы фильтр выровнялся достаточно просто изменить значение настройки height для стиля #dof_RegionDiv_InnerDiv: | ||
#dof_RegionDiv_InnerDiv | #dof_RegionDiv_InnerDiv | ||
Строка 1293: | Строка 847: | ||
Т.е. мы увеличиваем высоту фильтра «Регион»: | Т.е. мы увеличиваем высоту фильтра «Регион»: | ||
<BR> | <BR> | ||
− | [[Файл: | + | [[Файл:ST57.png|x500px]]<BR> |
+ | |||
====Настройки дизайна через header.ascx и footer.ascx==== | ====Настройки дизайна через header.ascx и footer.ascx==== | ||
Для корректного отображения элементов дизайна header.ascx и footer.ascx необходимо проверить следующее: | Для корректного отображения элементов дизайна header.ascx и footer.ascx необходимо проверить следующее: | ||
* При использовании файлов MasterPage, отличных от стандартного, необходимо заключить строку <!--#include virtual="~/Controls/Footer.ascx" --> в тег <div/> с указанием id="FooterDiv" class="qd_Div": | * При использовании файлов MasterPage, отличных от стандартного, необходимо заключить строку <!--#include virtual="~/Controls/Footer.ascx" --> в тег <div/> с указанием id="FooterDiv" class="qd_Div": | ||
+ | <nowiki> | ||
<div id="FooterDiv" class="qd_Div"> | <div id="FooterDiv" class="qd_Div"> | ||
<!-- #include virtual="~/Controls/Footer.ascx" --> | <!-- #include virtual="~/Controls/Footer.ascx" --> | ||
− | </div> | + | </div> </nowiki> |
* Содержание файла footer.ascx не должно начинаться с закрывающих тегов. | * Содержание файла footer.ascx не должно начинаться с закрывающих тегов. | ||
Строка 1306: | Строка 862: | ||
- второй файл должен содержать в себе html, который корректно будет обрабатываться внутри тега <div/>; | - второй файл должен содержать в себе html, который корректно будет обрабатываться внутри тега <div/>; | ||
Пример: | Пример: | ||
+ | <nowiki> | ||
</table> | </table> | ||
<!-- #include virtual="~/Controls/Footer1.ascx" --> | <!-- #include virtual="~/Controls/Footer1.ascx" --> | ||
<div id="FooterDiv" class="qd_Div"> | <div id="FooterDiv" class="qd_Div"> | ||
− | <!-- #include virtual="~/Controls/Footer2.ascx" --> | + | <!-- #include virtual="~/Controls/Footer2.ascx" --> |
− | </div> | + | </div></nowiki> |
− | + | ||
===Настройки экрана «Динамический лист предложений с наличием мест»=== | ===Настройки экрана «Динамический лист предложений с наличием мест»=== | ||
Настройки для данного экрана задаются в файле web.config, находящемся в папке MasterWebStandard. Данные настройки регулируют отображение тарифов на авиаперелеты, питания и категорий гостиниц. Для этого в конфигурационном файле добавляется секция <MasterWeb>. | Настройки для данного экрана задаются в файле web.config, находящемся в папке MasterWebStandard. Данные настройки регулируют отображение тарифов на авиаперелеты, питания и категорий гостиниц. Для этого в конфигурационном файле добавляется секция <MasterWeb>. | ||
+ | <BR> | ||
+ | [[Файл:781.PNG]]<BR> | ||
+ | Данная секция содержит 3 подсекции настроек: | ||
+ | # dynamicCharterClasses – список тарифов на авиаперелет | ||
+ | # dynamicBoard – список типов питания | ||
+ | # dynamicHotelCategories – список категорий гостиниц. | ||
+ | ====Настройка секции dynamicCharterClasses==== | ||
+ | Данная секция определяет какие колонки тарифов на авиаперелет будут отображаться в результатах поиска в экране «Подбор туров с наличием мест». | ||
+ | Секция dynamicCharterClasses должна содержать как минимум одно значение. | ||
+ | Для добавления нового значения необходимо добавить строчку вида: | ||
+ | <add name="Название тарифа на авиаперелет" keys="ключи тарифов, задаются через запятую без пробелов"/> | ||
+ | В значениях параметра name указывается название колонки, которое будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются ключи тарифов на авиаперелет. Ключи тарифов на авиаперелет хранятся в таблице AirService. | ||
+ | ====Настройка секции dynamicBoard==== | ||
+ | Данная секция определяет, как будут отображаться типы питания в поисковом фильтре экрана «Подбор туров с наличием мест». | ||
+ | Параметр mode= в настройках секции <dynamicBoard /> определяет вид группировки типов питания: | ||
+ | * simple – не группировать типы питания, отображать все варианты из рассчитанных цен; | ||
+ | * complex – группировать типы питания в соответствии с настройками в секции dynamicBoard; | ||
+ | * global – группировать типы питания по глобальному коду, указанному в справочнике «Типы питания». | ||
+ | =====Вариант simple===== | ||
+ | При выборе варианта simple дополнительных настроек не требуется. | ||
+ | =====Вариант complex===== | ||
+ | Если выбран вариант complex, то необходимо: | ||
+ | # Определить вид группировки типов питания. Для этого в секции dynamicBoard необходимо добавить нужные значения типов питания. Для добавления нового значения необходимо добавить строчку вида: | ||
+ | <add name="Название типа питания" keys="ключи типов питания, задаются через запятую без пробелов"/> | ||
+ | В значениях параметра name указывается название типа питания, которое будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются ключи типов питания. Ключи типов питания хранятся в таблице Pansion. | ||
+ | # Закомментировать или удалить в файле MasterWebStandard/templates/bindSchemeQuotedDynamic.xml секцию: | ||
+ | |||
+ | <nowiki><control name="chklBoard" priority="9" type="Pansion" itemType="System.Int32" alwaysSelected="false"> | ||
+ | <dependency control="ddlDepartFrom" /> | ||
+ | <dependency control="ddlCountry" /> | ||
+ | <dependency control="chklRegion" /> | ||
+ | <dependency control="ddlTour" /> | ||
+ | </control></nowiki> | ||
+ | =====Вариант global===== | ||
+ | Если выбран вариант global, то необходимо заполнить поле «Глобальный код» в справочнике «Типы питания». | ||
+ | Например, в справочнике есть типы питания All Inclusive, Ultra All Inclusive, Max All Inclusive, по сути обозначающие тип питания «Всё включено». Для того, чтобы сгруппировать эти типы питания, нужно в поле «Глобальный код» справочника «Типы питания» для этих типов прописать одно и то же значение, например ALL. В этом случае в поисковом фильтре экрана «Подбор туров с наличием мест» отобразится значение ALL, но при поиске будут отбираться данные по всем трем типам питания. | ||
+ | ====Настройка секции dynamicHotelCategories==== | ||
+ | Данная секция определяет, как будут отображаться категории отелей в поисковом фильтре экрана «Подбор туров с наличием мест». | ||
+ | Параметр mode= в настройках секции <dynamicHotelCategories /> определяет вид группировки категорий гостиниц: | ||
+ | * simple – не группировать категории отелей, отображать все варианты из рассчитанных цен; | ||
+ | * complex – группировать категории отелей в соответствии с настройками в секции dynamicHotelCategories; | ||
+ | * global – группировать категории отелей по глобальному коду, указанному в справочнике «Категории отелей». | ||
+ | =====Вариант simple===== | ||
+ | При выборе варианта simple дополнительных настроек не требуется. | ||
+ | =====Вариант complex===== | ||
+ | Если выбран вариант complex, то необходимо: | ||
+ | # Определить вид группировки категорий отелей. Для этого в секции dynamicHotelCategories необходимо добавить нужные значения категорий гостиниц. Для добавления нового значения необходимо добавить строчку вида: | ||
+ | <add name="Категория отеля" keys="варианты категорий гостиниц, задаются через запятую без пробелов"/> | ||
+ | В значениях параметра name указывается категория гостиницы, которая будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются варианты категорий гостиниц, которые соответствуют значению в поле name. | ||
+ | # Закомментировать или удалить в файле MasterWebStandard/templates/bindSchemeQuotedDynamic.xml секцию: | ||
+ | |||
+ | <nowiki><control name="chklCategory" priority="8" type="HotelStars" itemType="System.Int32" alwaysSelected="false"> | ||
+ | <dependency control="ddlDepartFrom" /> | ||
+ | <dependency control="ddlCountry" /> | ||
+ | <dependency control="chklRegion" /> | ||
+ | <dependency control="ddlTour" /> | ||
+ | </control></nowiki> | ||
+ | =====Вариант global===== | ||
+ | Если выбран вариант global, то необходимо заполнить поле «Глобальный код» в справочнике «Категории отелей». | ||
+ | Например, в справочнике есть категории 5*, 5*+, 5*****, по сути обозначающие категорию отеля «5*». Для того, чтобы сгруппировать эти категории, нужно в поле «Глобальный код» справочника «Категории отелей» для этих категорий прописать одно и то же значение, например 5*. В этом случае в поисковом фильтре экрана «Подбор туров с наличием мест» отобразится значение 5*, но при поиске будут отбираться данные по всем трем категория отелей. | ||
+ | |||
+ | ===Передача параметров в экран «Динамический лист с наличием мест»=== | ||
+ | Данная настройка предусматривает возможность передачи различных параметров через URL страницы. При этом, если существуют рассчитанные прайсы по данной стране, то при загрузке страницы в фильтре данная страна автоматически будет выбрана в списке стран, и будут загружены значения в других поисковых полях. | ||
+ | Пример строки подключения:<BR> | ||
+ | http:// ip-адрес сервера ПК Мастер-Web/MasterWebStandard/Extra/QuotedDynamic.aspx?country=90&departFrom=1&resort=1&city=275&tourtype=0&tour=267&hotel=3234&room=2&dateFrom=2008-08-15&dateTo=2008-08-25<BR> | ||
+ | (здесь параметры country=90&departFrom=1&resort=1&city=275&tourtype=0&tour=267&hotel=3234&room=2&dateFrom=2008-08-15&dateTo=2008-08-25, где «90», «1», «1», «275», «0», «267», «3234», «2», «2008-08-15» и «2008-08-25» их значения)<BR> | ||
+ | Возможные варианты: | ||
+ | * '''сountry'''= ключ страны (обязательный параметр) | ||
+ | * '''departFrom'''= ключ города вылета (обязательный параметр) | ||
+ | * '''resort'''= ключи курортов через запятую | ||
+ | * '''city'''= ключи городов через запятую | ||
+ | * '''tourtype'''= ключ типа тура | ||
+ | * '''tourcontent'''= ключ состава тура (работает начиная с релиза 9220SP32) | ||
+ | * '''tour'''= ключ тура в таблице TP_Tours | ||
+ | * '''tourlistkey'''= ключ тура в таблице tbl_TurList | ||
+ | * '''hotel'''= ключи отелей через запятую | ||
+ | * '''stars'''= категории гостиниц через запятую. <br><font style="color:red">Внимание!</font> Начиная с релиза 9220SP32, при включенной настройке '''"ShowByPriorityHotelCategory"''' в web.config данный параметр используется в следующем формате: '''stars'''= категория гостиницы_признак "и лучше". Признак "и лучше": 0 - выключен, 1 - включен. Если настройка '''"ShowByPriorityHotelCategory"''' будет включена в web.config, и параметр '''stars''' будет содержать список категорий гостиниц ''через запятую'', тогда для фильтра категорий будет использоваться первый ключ из списка, а признак "и лучше" будет выключен. | ||
+ | * '''hotelOptions'''= ключи услуг в отелях через запятую | ||
+ | * '''pansion'''= ключи типов питания через запятую. <br><font style="color:red">Внимание!</font> Начиная с релиза 9220SP32, при включенной настройке '''"ShowByPriorityPansionType"''' в web.config данный параметр используется в следующем формате: '''pansion'''= ключ типа питания_признак "и лучше". Признак "и лучше": 0 - выключен, 1 - включен. Если настройка '''"ShowByPriorityPansionType"''' будет включена в web.config, и параметр '''pansion''' будет содержать список ключей питания ''через запятую'', тогда для фильтра питания будет использоваться первый ключ из списка, а признак "и лучше" будет выключен. | ||
+ | * '''room'''= ключ типа номера | ||
+ | * '''roomCategory'''= ключ категории номеров | ||
+ | * '''adults'''= количество взрослых | ||
+ | * '''childs'''= количество детей | ||
+ | * '''firstChildAge'''= возраст первого ребенка | ||
+ | * '''secondChildAge'''= возраст второго ребенка | ||
+ | * '''dateFrom'''= дата заезда с | ||
+ | * '''dateTo'''= дата заезда по | ||
+ | * '''pricelink_target'''= открытие ссылки на корзину (_top – в текущем окне, _blank – в отдельном) | ||
+ | * '''target'''= открытие результатов поиска в отдельном окне (blank – открытие страницы с результатами поиска в отдельном окне) | ||
+ | * '''pkey'''= ключ партнера, которому должна отправляться копия письма о новом бронировании при оформлении путевок в экранах «Корзина», «Упрощенная корзина» и «Упрощенная корзина 2» (данный параметр удобно использовать, например, если экран «Динамический лист с наличием мест» встроен в сайт агентства с использованием фреймов) | ||
+ | * '''aviaQuotaMask'''= отметки наличия мест на авиаперелеты (1 – наличие мест «Есть»; 2 – наличие мест «Нет»; 3 – наличие мест «Есть» и «Нет»; 4 – наличие мест «Запрос»; 5 – наличие мест «Есть» и «Запрос»; 6 – наличие мест «Запрос» и «Нет»; 7 – наличие мест «Есть», «Нет» и «Запрос») | ||
+ | * '''hotelQuotaMask'''= отметки наличия мест в отеле (1 – наличие мест «Есть»; 2 – наличие мест «Нет»; 3 – наличие мест «Есть» и «Нет»; 4 – наличие мест «Запрос»; 5 – наличие мест «Есть» и «Запрос»; 6 – наличие мест «Запрос» и «Нет»; 7 – наличие мест «Есть», «Нет» и «Запрос») | ||
+ | * '''showResults'''= необходимость автоматического отбора данных при переходе в экран по ссылке с параметрами (0 – данные автоматически не отбираются) | ||
+ | * '''priceLimit'''= цена до | ||
+ | * '''mainOnly'''= поиск только по основным размещениям (обрабатывается только значение 1) | ||
+ | * '''kindOfTours'''= виды тура (0 – все; 1 – пакетные туры; 2 – наземное обслуживание) | ||
+ | * '''pageSize'''= количество записей на странице | ||
+ | * '''nights'''= продолжительность в ночах | ||
+ | * '''currency'''= валюта (cu – у.е.; national – национальная валюта; ISO-код валют через запятую) | ||
+ | * '''additionalinfo'''= отображение дополнительного описания тура (отображается в самом верху экрана над фильтрами); доступные значения: 0- не отображать, 1 – отображать | ||
+ | * '''autoShiftDays'''= количество дней, отсчитываемых от начальной даты в интервале дат заездов. Интервал ограничивается значением, указанным в настройке TourDatesIntervalLimit в web.config | ||
+ | |||
+ | ===Настройки на странице «Динамический лист с наличием мест»=== | ||
+ | |||
+ | ====Установка страны по умолчанию==== | ||
+ | Для того, чтобы установить страну, отображаемую по умолчанию, необходимо в файле templates\bindSchemeQuotedDynamic.xml в теге <control name="ddlCountry" priority="1" type="CountryReloaded" itemType="System.Int32"> добавить параметр default="ключ страны по умолчанию". | ||
+ | Пример:<br> | ||
+ | <control name="ddlCountry" priority="1" type="CountryReloaded" itemType="System.Int32" default="53"> | ||
+ | |||
+ | ====Сортировка туров в фильтре==== | ||
+ | Данная настройка прописывается в файле templates\bindSchemeQuotedDynamic.xml в теге | ||
+ | <control name="ddlTour" priority="5" type="Tour" itemType="System.Int32" firstItem="mwBinderOptionalItem" sort="sd_tourname asc"> | ||
+ | <dependency control="ddlDepartFrom" /> | ||
+ | <dependency control="ddlCountry" /> | ||
+ | <dependency control="ddlTourType" /> | ||
+ | <dependency control="chklResort" /> | ||
+ | <dependency control="chklRegion" /> | ||
+ | </control> | ||
+ | Параметр sort указывает, по какой колонке из таблицы mwSpoData необходимо отсортировать туры.<BR> | ||
+ | |||
+ | ====Поиск туров по городу посадки==== | ||
+ | В web.config основного приложения должна быть включена настройка '''ShowTransferCityFilterInQD''', а также необходимо осуществить настройку в файле templates\bindSchemeQuotedDynamic.xml<br> | ||
+ | Необходимо добавить тег:<br> | ||
+ | <control name="ddlTransferCity" priority="1" type="TransferCity" itemType="System.Int32" alwaysSelected="false" firstItem="mwBinderOptionalItem" firstItemValue="-1"> | ||
+ | <dependency control="ddlDepartFrom" /> | ||
+ | <dependency control="chkSpoGroups" /> | ||
+ | </control> | ||
+ | |||
+ | А также, в тегах '''ddlCountry''', '''ddlTourType''', '''chklTourTypes''', '''ddlTourContent''', '''chklTourContent''', '''chklResort''', '''chklRegion''', '''ddlTour''', '''treeViewHotelCategories''', '''chklHotel''', '''ddlRoom''', '''chklDuration''', '''ddlDurationFrom''', '''chklCategory''', '''chklBoard''', '''ddlCategoryPriority''', '''ddlPansionPriority''', '''ctrlCalendar''', '''ddlDurationTo''' дописать зависимость <code><dependency control="ddlTransferCity" /></code> сразу после <code><dependency control="ddlDepartFrom" /></code>. | ||
+ | |||
+ | ====Отображение названия курорта в фильтре «Отели»==== | ||
+ | Для того, чтобы в фильтре «Отели» отображалось название курорта, нужно открыть в текстовом редакторе файл \MasterWebStandard\templates\ bindSchemeQuotedDynamic.xml и в теге <control name="chklHotel" priority="5" type="HotelLink" itemType="System.Int32" alwaysSelected="false"> изменить значение параметра type="HotelLink" на type="HotelResortLink". | ||
+ | Пример:<BR> | ||
+ | <control name="chklHotel" priority="5" type="HotelResortLink" itemType="System.Int32" alwaysSelected="false"> | ||
+ | |||
+ | ====Изменение фильтра «Город» на фильтр «Курорт»==== | ||
+ | Для того, чтобы в фильтре «Регион» вместо городов отображались курорты, нужно открыть в текстовом редакторе файл \MasterWebStandard\templates\ bindSchemeQuotedDynamic.xml и в теге <control name="chklRegion" priority="2" type="City" itemType="System.String" alwaysSelected="false"> изменить значение параметра type="City" на type="Resort". | ||
+ | Пример: | ||
+ | <control name="chklRegion" priority="2" type="Resort" itemType="System.String" alwaysSelected="false"> | ||
+ | |||
+ | ====Отображение поля «Цена за»==== | ||
+ | Для того чтобы отобразить поле «Цена за» в экране «Динамический лист с наличием мест» нужно открыть в текстовом редакторе файл \MasterWebStandard\Controls\DynamicOffersTable.ascx и в теге <asp:TemplateColumn HeaderText="Цена<br>за" SortExpression="priceFor" Visible="false"> изменить значение параметра Visible="false" на Visible="true" | ||
+ | Пример:<BR> | ||
+ | <asp:TemplateColumn HeaderText="Цена<br>за" SortExpression="priceFor" Visible="true" > | ||
+ | |||
+ | ====Отображение иконки рядом с названием отелей==== | ||
+ | Для того чтобы отобразить иконку рядом с названием отелей в экране «Подбор туров с наличием мест» нужно открыть в текстовом редакторе файл <code>\MasterWebStandard\Controls\DynamicOffersTable.ascx </code> и в теге | ||
+ | <%--<asp:Literal ID="htt_img" runat="server" Text='<%# Megatec.Common.DataAccess.Manager.DbObj.ExecuteScalar(string.Format <BR>("exec mwGetHotelTypeImageHtml {0}, \"..\\images\\\"", DataBinder.Eval (Container, "DataItem.HotelKey"))).ToString() %>' />--%> | ||
+ | убрать теги комментария <%-- --%>. | ||
+ | Пример:<BR> | ||
+ | <asp:Literal ID="htt_img" runat="server" Text='<%# Megatec.Common.DataAccess.Manager.DbObj.ExecuteScalar(string.Format <BR>("exec mwGetHotelTypeImageHtml {0}, \"..\\images\\\"", DataBinder.Eval (Container, "DataItem.HotelKey"))).ToString() %>' /> | ||
+ | <BR> | ||
+ | Для работы необходимо заполнить поле [[Мастер-Тур:Справочники#Справочник признаков отелей|<code>HTT_ImageName</code> таблицы <code>HotelTypes</code>]]. | ||
+ | |||
+ | ====Отображение колонок наличия мест на перелеты в таблице результатов==== | ||
+ | Для того, чтобы полностью скрыть колонки с наличием мест на перелете в таблице с результатами экрана «Подбор туров с наличием мест» нужно открыть в текстовом редакторе файл \MasterWeb\Controls\QuotedDynamicControl.ascx и в теге <uc2:DynamicOffersTable id="DynamicOffersTable" runat="server" > добавить настройку HideCharterColumns="True". | ||
+ | Пример:<BR> | ||
+ | <uc2:DynamicOffersTable id="DynamicOffersTable" runat="server" HideCharterColumns="True"> | ||
+ | |||
+ | ===Кэширование=== | ||
+ | Для ускорения процесса поиска применяется внутренний [http://wiki.megatec.ru/%D0%9C%D0%B0%D1%81%D1%82%D0%B5%D1%80-Web:%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B8_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.BA.D1.8D.D1.88.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D1.8F механизм кэширования]. | ||
+ | |||
+ | ====Наличие мест==== | ||
+ | Интервал обновления кэша квот - 10 минут. Для включения механизма никаких дополнительных настроек указывать не нужно. | ||
+ | |||
+ | ===Подмешивание отелей в результаты поиска (Smart Search)=== | ||
+ | |||
+ | '''Внимание! Данная функциональность не входит в стандартную версию. Поставляется отдельно.''' | ||
+ | |||
+ | Данная настройка позволяет определять очередность вывода отелей в результатах подбора по странам, курортам и городам. | ||
+ | |||
+ | ====Настройка таблицы HotelPriorities==== | ||
+ | |||
+ | В базе данных ПК «Мастер-Тур» в таблицу HotelPriorities необходимо занести коды отелей с соответствующими приоритетами по странам, курортам и городам. На данный момент информацию необходимо заносить напрямую в базу данных. Позже будет разработан экран для ввода приоритетов из интерфейса программы. | ||
+ | Вводимые данные: | ||
+ | *HP_HDkey – код отеля (колонка HD_Key из таблицы HotelDictionary); | ||
+ | *HP_CountryPriority – приоритет для страны; | ||
+ | *HP_ResortPriority – приоритет для курорта; | ||
+ | *HP_CityPriority – приоритет для города. | ||
+ | |||
+ | ====Обработка подбора отелей по приоритетам==== | ||
+ | При подборе тура отели будут выводится в зависимости от заданных данных в фильтрах '''Страна''', '''Курорт''', '''Город''': | ||
+ | |||
+ | ''Пример'':<BR> | ||
+ | Заполнены приоритеты для отелей: | ||
+ | <BR>Hotel1 (Анталия/курорт X) – Приоритет 1 для страны, приоритет 2 для курорта, приоритет 1 для города | ||
+ | <BR>Hotel2 (Анталия/курорт X) - Приоритет 2 для страны, приоритет 1 для курорта, приоритет 2 для города | ||
+ | <BR>Hotel3 (Белек/курорт X) - Приоритет 3 для страны, приоритет 4 для курорта, приоритет 2 для города | ||
+ | <BR>Hotel4 (Белек/курорт X) - Приоритет страны не задан, приоритет 3 для курорта, приоритет 1 для города | ||
+ | <BR>Hotel5 (Алания/курорт Y) - Приоритет страны не задан, приоритет 2 для курорта, приоритет 1 для города | ||
+ | <BR>Hotel6 (Алания/курорт Y) - Приоритет страны не задан, приоритет 1 для курорта, приоритет 2 для города | ||
+ | |||
+ | [[Файл:mb_116.png|Таблица HotelPriorities]]<BR> | ||
+ | |||
+ | Вывод отелей будет осуществляться следующим образом: | ||
+ | |||
+ | Если выбран только фильтр по '''Страна''': | ||
+ | *Hotel1 | ||
+ | *Hotel2 | ||
+ | *Hotel3 | ||
+ | *Далее все отели по стандартной схеме | ||
+ | <BR> | ||
+ | |||
+ | Если выбран фильтр '''Страна''' и фильтр '''Курорт X''': | ||
+ | *Hotel2 | ||
+ | *Hotel1 | ||
+ | *Hotel4 | ||
+ | *Далее все отели по стандартной схеме | ||
+ | <BR> | ||
+ | |||
+ | Если выбран фильтр '''Страна''' и фильтр '''Курорт X и Y''': | ||
+ | *Hotel2 | ||
+ | *Hotel6 | ||
+ | *Hotel1 или Hotel5 | ||
+ | *Далее все отели по стандартной схеме | ||
+ | <BR> | ||
+ | |||
+ | Если выбран фильтр '''Страна''', фильтр '''Курорт X''' и '''Город Анталия''': | ||
+ | *Hotel1 | ||
+ | *Hotel2 | ||
+ | *Hotel4 | ||
+ | *Далее все отели по стандартной схеме | ||
+ | <BR> | ||
+ | |||
+ | Если выбран фильтр '''Страна''', '''Город Анталия и Алания''': | ||
+ | *Hotel1 | ||
+ | *Hotel5 | ||
+ | *Hotel2 или Hotel6 | ||
+ | *Далее все отели по стандартной схеме | ||
+ | <BR> | ||
+ | |||
+ | Данные отели будут отображены только в том случае, если по данным отелям есть свободные места по заведенным квотам. Если мест нет или стоит StopSale, то отели подмешиваться в результаты поиска не будут.<BR> | ||
+ | В результат поиска может быть подмешено максимум 3 отеля.<BR> | ||
+ | Если при поиске не найдены значения в колонке города, будут подмешиваться курорты. Если не найдены регионы, будет подмешиваться страна.<BR> | ||
+ | При сортировке по любой колонке в экране QuotedDynamic подмешивание результатов сбрасывается.<BR> | ||
+ | Все отели, для которых не проставлен приоритет, но они попадают под заданные фильтры - будут отображаться согласно существующим правилам (сортировка по цене).<BR> | ||
+ | Осуществляется вывод только наиболее дешевого размещения для заданных фильтров «количество основных и дополнительных мест». Из отображения исключаются размещения, где присутствует инфант.<BR> | ||
+ | |||
+ | ===Фильтрация по числу основных/дополнительных или взрослых/детских мест=== | ||
+ | По умолчанию туры в экране «Подбор туров с наличием мест» фильтруются по количеству '''основных/дополнительных мест'''. Но альтернативно можно осуществлять фильтрацию по числу '''взрослых/детских мест'''. <br /> | ||
+ | Данные заполняются в справочнике [[Мастер-Тур:Справочники#Типы размещения|типов размещения]]. <br /> | ||
+ | Для этого необходимо в таблице SystemSettings в основной базе данных создать параметр '''OnlineFindByAdultChild''' и установить его равным '''1''', а также убедиться, что в ней присутствует параметр '''MWAccomodationPlaces''' со значением '''1'''.<br /> | ||
+ | |||
+ | [[Файл:ls0260.png|left|Полезная информация]]<br /> | ||
+ | Следует отметить, что этот параметр обрабатывается при выставлении тура в онлайн, т.е. чтобы изменить способ | ||
+ | фильтрации, нужно сначала изменить настройку в базе данных, а потом перевыставить нужные туры, без перерасчёта. | ||
+ | Необходимо использовать только один вариант фильтрации для всех туров, чтобы избежать некорректной обработки при поиске. | ||
+ | <br /> | ||
+ | |||
+ | Необходимо сделать некоторые изменения в файлах:<br /><br /> | ||
+ | '''DynamicOffersFilter.ascx''' | ||
+ | |||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <asp:Label runat="server" ID="lbChildrenMain" Text="Количество взрослых/детей на осн. месте" meta:resourcekey="lbChildrenMainResource1" ></asp:Label> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | изменить на | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <asp:Label runat="server" ID="lbChildrenMain" Text="Количество взрослых" meta:resourcekey="lbChildrenMainResource1" ></asp:Label> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | <br /><br /> | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <asp:Label runat="server" ID="lbChildrenExtra" Text="Количество взрослых/детей на доп. месте" meta:resourcekey="lbChildrenExtraResource1" ></asp:Label> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | изменить на | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <asp:Label runat="server" ID="lbChildrenExtra" Text="Количество детей" meta:resourcekey="lbChildrenExtraResource1" ></asp:Label> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | <br /> | ||
+ | '''DynamicOffersFilter.ascx.resx''' или '''DynamicOffersFilter.ascx.en.resx''' | ||
+ | <br /> | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <data name="lbChildrenMainResource1.Text" xml:space="preserve"> <value>Количество взрослых/детей на осн. месте</value> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | изменить на | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <data name="lbChildrenMainResource1.Text" xml:space="preserve"> <value>Количество взрослых</value> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | <br /><br /> | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <data name="lbChildrenExtraResource1.Text" xml:space="preserve"> <value>Количество взрослых/детей на доп. месте</value> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | изменить на | ||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <data name="lbChildrenExtraResource1.Text" xml:space="preserve"> <value>Количество детей</value> | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | |||
+ | ==Подготовка данных== | ||
+ | Экран «Динамический лист с наличием мест» осуществляет поиск и подбор цен по рассчитанным и выставленным в интернет турам. Для корректного отображения наличия мест по отелю и перелету необходимо заполнить справочник «Квоты» для услуг «Проживание» и «Авиаперелет». | ||
+ | |||
+ | ==Работа в системе== | ||
+ | ===Экран «Динамический лист предложений с наличием мест» (форма 1)=== | ||
+ | Для сравнения цен в разных гостиницах на определенное размещение удобно использовать экран «Динамический лист предложений с наличием мест». | ||
+ | <BR> | ||
+ | [[Файл:782.PNG]]<BR> | ||
+ | Для просмотра цен через динамический лист необходимо выбрать город вылета, страну и период дат заездов. Можно наложить дополнительные фильтры на отбор туров по следующим параметрам: | ||
+ | * Региону | ||
+ | * Названию тура | ||
+ | * Названию отеля | ||
+ | * Типу номера | ||
+ | * Стоимости | ||
+ | * Продолжительности | ||
+ | * Классу гостиницы | ||
+ | * Питанию | ||
+ | По нажатию кнопки «Подобрать тур», системой будут отобраны туры, отвечающие заданным условиям. | ||
+ | <BR> | ||
+ | [[Файл:783.PNG]]<BR> | ||
+ | Для того, чтобы при поиске в многоотельном туре были найдены свободные места (отметка о наличии мест была в состоянии «Есть»), необходимо, чтобы у каждого отеля в туре были свободные места.<BR> | ||
+ | Отображение многоотельных туров регулируется настройкой '''SYSAlwaysShowMultiHotels''' в таблице '''SystemSettings'''. Если ''SYSAlwaysShowMultiHotels=1'', то в экране «Подбор туров с наличием мест» | ||
+ | отображаются сразу названия нескольких отелей включенных в тур, один под другим. Если ''SYSAlwaysShowMultiHotels=0'', то отображается только главный отель в туре. Для вступления настройки | ||
+ | в силу необходимо перезапустить пул приложения. | ||
+ | Информация в результатах поиска представлена в виде таблицы: | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" width=800px | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |||
+ | ! width="40%" | Название поля в таблице | ||
+ | ! width="60%" | Выводимые данные | ||
+ | |||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Заезд | ||
+ | | Дата заезда. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Отель | ||
+ | | Название гостиницы. По ссылке с названия гостиницы в новом окне откроется описание гостиницы, если URL страницы заведен в системе. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | *** | ||
+ | | Категория гостиницы. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Регион | ||
+ | | Город, к которому привязан отель. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Номер | ||
+ | | Тип номера, на который указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Категория номера | ||
+ | | Категория номера, на которую указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Размещение | ||
+ | | Тип размещения, на которое указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Питание | ||
+ | | Питание представлено значением типа питания, заведенным в соответствующем справочнике ПК Мастер-Тур. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Ночи | ||
+ | | Продолжительность тура в ночах. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Цена | ||
+ | | Стоимость тура. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Вал | ||
+ | | Валюта, в которой указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Источник цены | ||
+ | | Название тура. По ссылке с названия тура в новом окне откроется описание тура, если URL страницы заведен в системе. Цены указаны за человека или за номер меняется в зависимости от настройки в конфигурационном файле ''web.config''. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Крайний срок подачи документов на визу | ||
+ | | Максимальная дата подачи документов на визу для выбранной даты заезда. Данное информационное поле отображается только для визовых стран. Данные для отображения в этом поле берутся из поля «Крайний срок (агентство)» плагина Мастер-Тура [[Мастер-Тур:Дополнительный_модуль_График_работы_консульств | "График работы консульств"]]. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Наличие мест | ||
+ | | Наличие мест в гостинице. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Эконом, Бизнес | ||
+ | | Наличие мест на авиаперелеты. Колонки и их названия формируются динамически. Их отображение регулируется настройкой в конфигурационном файле ''web.config''. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |} | ||
+ | |||
+ | По ссылке с цены, представленной в таблице, можно перейти в экран «Корзина услуг» по данной продолжительности и размещению с возможностью отправки запроса на бронирование. | ||
+ | |||
+ | ===Экран «Динамический лист предложений с наличием мест» (форма 2)=== | ||
+ | <BR> | ||
+ | [[Файл:KE_061.png]]<BR> | ||
+ | Для просмотра цен через динамический лист необходимо выбрать город вылета, страну и период дат заездов. Можно наложить дополнительные фильтры на отбор туров по следующим параметрам: | ||
+ | * Региону | ||
+ | * Названию тура | ||
+ | * Названию отеля | ||
+ | * Типу номера | ||
+ | * Стоимости | ||
+ | * Продолжительности | ||
+ | * Классу гостиницы | ||
+ | * Питанию | ||
+ | * Наличию мест в отеле и на рейсе | ||
+ | * Списку услуг в отеле (включается настройкой [[Мастер-Web:Дополнительный модуль Подбор туров с наличием мест#Настройки в файле WEB.CONFIG|''useHotelServiceFilter'']]) | ||
+ | По нажатию кнопки «Подобрать тур», системой будут отобраны туры, отвечающие заданным условиям. | ||
+ | <BR> | ||
+ | [[Файл:KE_060.png]]<BR> | ||
+ | Для того, чтобы при поиске в многоотельном туре были найдены свободные места (отметка о наличии мест была в состоянии «Есть»), необходимо, чтобы у каждого отеля в туре были свободные места.<BR> | ||
+ | Отображение многоотельных туров регулируется настройкой '''SYSAlwaysShowMultiHotels''' в таблице '''SystemSettings'''. | ||
+ | Информация в результатах поиска представлена в виде таблицы: | ||
+ | {| border="1" cellpadding="8" style="background-color:#F9F9F9; border:#AAAAAA; border-collapse:collapse" width=800px | ||
+ | |||
+ | |- style="background-color:#F2F2F2" | ||
+ | |||
+ | ! width="40%" | Название поля в таблице | ||
+ | ! width="60%" | Выводимые данные | ||
+ | |||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Заезд | ||
+ | | Дата заезда. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Отель | ||
+ | | Название гостиницы. По ссылке с названия гостиницы в новом окне откроется описание гостиницы, если URL страницы заведен в системе. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | *** | ||
+ | | Категория гостиницы. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Регион | ||
+ | | Город, к которому привязан отель. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Номер | ||
+ | | Тип номера, на который указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Категория номера | ||
+ | | Категория номера, на которую указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Размещение | ||
+ | | Тип размещения, на которое указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Питание | ||
+ | | Питание представлено значением типа питания, заведенным в соответствующем справочнике ПК Мастер-Тур. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Ночи | ||
+ | | Продолжительность тура в ночах. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Цена | ||
+ | | Стоимость тура. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Вал | ||
+ | | Валюта, в которой указана цена. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Источник цены | ||
+ | | Название тура. По ссылке с названия тура в новом окне откроется описание тура, если URL страницы заведен в системе. Цены указаны за человека или за номер меняется в зависимости от настройки в конфигурационном файле ''web.config''. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Крайний срок подачи документов на визу | ||
+ | | Максимальная дата подачи документов на визу для выбранной даты заезда. Данное информационное поле отображается только для визовых стран. Данные для отображения в этом поле берутся из поля «Крайний срок (агентство)» плагина Мастер-Тура [[Мастер-Тур:Дополнительный_модуль_График_работы_консульств | "График работы консульств"]]. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Наличие мест | ||
+ | | Наличие мест в гостинице. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |||
+ | | Эконом, Бизнес | ||
+ | | Наличие мест на авиаперелеты. Колонки и их названия формируются динамически. Их отображение регулируется настройкой в конфигурационном файле ''web.config''. | ||
+ | |- style="vertical-align:text-top" | ||
+ | |} | ||
+ | По ссылке с цены, представленной в таблице, можно перейти в экран «Корзина услуг» по данной продолжительности и размещению с возможностью отправки запроса на бронирование. | ||
[[Category:Мастер-Web_Дополнительные_модули]] | [[Category:Мастер-Web_Дополнительные_модули]] |
Текущая версия на 10:06, 2 февраля 2018
Версия статьи от 2.02.2018. Для перехода на версию статьи, соответствующую используемой Вами версии программы, нажмите ссылку в таблице:
Более ранние версии: |
Содержание
- 1 Введение
- 2 Установка
- 3 Настройка
- 3.1 Настройки в файле WEB.CONFIG
- 3.2 Настройки экрана «Динамический лист предложений с наличием мест»
- 3.3 Передача параметров в экран «Динамический лист с наличием мест»
- 3.4 Настройки на странице «Динамический лист с наличием мест»
- 3.4.1 Установка страны по умолчанию
- 3.4.2 Сортировка туров в фильтре
- 3.4.3 Поиск туров по городу посадки
- 3.4.4 Отображение названия курорта в фильтре «Отели»
- 3.4.5 Изменение фильтра «Город» на фильтр «Курорт»
- 3.4.6 Отображение поля «Цена за»
- 3.4.7 Отображение иконки рядом с названием отелей
- 3.4.8 Отображение колонок наличия мест на перелеты в таблице результатов
- 3.5 Кэширование
- 3.6 Подмешивание отелей в результаты поиска (Smart Search)
- 3.7 Фильтрация по числу основных/дополнительных или взрослых/детских мест
- 4 Подготовка данных
- 5 Работа в системе
Введение
Данный модуль предназначен для поиска и подбора туров, а также для сравнения цен в разных гостиницах на определенное размещение.
В релизе 9220SP32 разработан новый дизайн данного экрана.
Установка
Для установки надстройки «Динамический лист с наличием мест» нужно выложить распакованные файлы из архива mw-quoteddynamic-2007.2.XX.XXXX.zip в каталог, где лежит ПК Мастер-Web.
Настройка
После установки Надстройка «Динамический лист с наличием мест» доступна по адресу http: //ip-адрес сервера/MasterWeb/Extra/QuotedDynamic.aspx.
Настройки в файле WEB.CONFIG
Дополнительные настройки, задаваемые в файле web.config, находящемся в папке MasterWeb позволяют задать дополнительные условия для отображения и проверки данных.
№ | Описание | Значение | Настройка | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Включение возможности поиска по актуальным местам в экране «Динамический лист с наличием мест» |
|
<add key="pagingType" value="2" />
| ||||||||||||||||||||||||||||||||||||
2 | Производить поиск перелетов, если на один из них закончились места и стоит настройка noPlacesQuoteResult = request |
|
<add key="searchFlightsOnRequest" value="true" />
| ||||||||||||||||||||||||||||||||||||
3 | Отключение ссылок в экранах «Ценовой лист» и «Динамический лист предложений» для перехода в экран «Корзина» (у пользователей сайта не будет возможности перейти к оформлению заявки). |
|
<add key="priceLinksEnabled" value="false" />
| ||||||||||||||||||||||||||||||||||||
4 | Обработка стоп-сейлов на авиаперелет |
|
<add key="checkStopAvia" value="true" />
| ||||||||||||||||||||||||||||||||||||
5 | Определяет справочник, по которому будет проверяться количество основных мест при поиске в экране «Динамический лист предложений» и при бронировании в корзинах бронирования ПК «Мастер-Web». |
Если соответствующее поле там не заполнено, то из справочника «Типы номеров».
|
<add key="useAccomodationPlaces" value="false" />
| ||||||||||||||||||||||||||||||||||||
6 | Настройка, определяющая страны, в которых цены заводятся за номер. | Ключи стран через запятую (Ключи стран — это значения колонки cn_key в таблице tbl_country.) | <add key="costForRoomCountries" value="9,86,461" />
| ||||||||||||||||||||||||||||||||||||
7 | Определяет справочник, по которому будет проверяться количество дополнительных мест при поиске в экране «Динамический лист предложений» и при бронировании в коризинах бронирования ПК «Мастер-Web». |
Если соответствующее поле там не заполнено, то из справочника «Типы размещений».
|
<add key="useRoomsExtraPlaces" value="false" />
| ||||||||||||||||||||||||||||||||||||
8 | Формат вывода названий питания |
|
<add key="pansionNames" value="full" />
| ||||||||||||||||||||||||||||||||||||
9 | Формат вывода названий размещений |
|
<add key="roomNames" value="full" />
| ||||||||||||||||||||||||||||||||||||
10 | Настройка округления суммы в национальной валюте. |
|
<add key="exchangeRoundType" value="ceil" />
| ||||||||||||||||||||||||||||||||||||
11 | Настройка, управляющая отображением ссылки на дополнительное описание. При включенной настройке, если для тура заполнено дополнительное описание, то автоматически генерируется ссылка на страницу TourDescription.aspx, в которую вставляется дополнительное описание. |
|
<add key="EnableTourDescriptionUrl" value="true" />
| ||||||||||||||||||||||||||||||||||||
12 | Настройка, включающая в экране «Динамический лист с наличием мест» возможность поиска цен по услугам в отелях |
|
<add key="useHotelServiceFilter" value="true" />
| ||||||||||||||||||||||||||||||||||||
13 | Настройка, определяющая максимальный период для отбора данных в экранах: | Максимальное количество дней, на которое можно производить отбор данных | <add key="tourDatesIntervalLimit" value="7" />
| ||||||||||||||||||||||||||||||||||||
14 | Настройка, определяющая таблицу, из которой должен браться внутренний курс валют компании для пересчета стоимости туров в национальную валюту. |
|
<add key="realCoursesSource" value="RealCoursesFix" />
| ||||||||||||||||||||||||||||||||||||
15 | Настройка, включающая в экране «Динамический лист с наличием мест» дополнительный фильтр по виду тура. Возможными вариантами фильтрации являются:
|
|
<add key="showKindOfTours" value="true" />
| ||||||||||||||||||||||||||||||||||||
16 | Настройка, позволяющая осуществлять проверку наличия мест в квотах от любого партнера вне зависимости от того, какой партнер предоставляет цену.
При проверке наличия мест у услуги Авиаперелет данная настройка взаимодействует с настройкой checkFlightPacket. |
|
<add key="checkAllPartnersQuota" value="true" />
| ||||||||||||||||||||||||||||||||||||
17 | Отображение наличия мест (на квотируемые услуги) в экранах в случае, если закончились свободные места в квоте. |
|
<add key="noPlacesQuoteResult" value="request" />
| ||||||||||||||||||||||||||||||||||||
18 | Отображение наличия мест в экранах, если релиз-период = 0. |
|
<add key="setRequestIfReleaseIsZero" value="true" />
| ||||||||||||||||||||||||||||||||||||
19 | Проверка агентской квоты |
|
<add key="checkAgentQuotesEnabled" value="true" />
| ||||||||||||||||||||||||||||||||||||
20 | Проверка общей квоты, если закончились места в агентской |
|
<add key="checkAgentAndCommonQuote" value="true" />
| ||||||||||||||||||||||||||||||||||||
21 | Проверка квот без продолжительности после того, как заканчиваются квоты на продолжительность |
|
<add key="checkNoLongQuota" value="true" />
| ||||||||||||||||||||||||||||||||||||
22 | Наличие мест, отображаемое при наступлении релиз-периода |
|
<add key="expiredReleaseQuoteResult" value="request" />
| ||||||||||||||||||||||||||||||||||||
23 | Значение, определяющее наличие мест «Есть» | Текстовое или символьное значение, например, Есть или + | <add key="quotaYesText" value="Есть" />
| ||||||||||||||||||||||||||||||||||||
24 | Значение, определяющее наличие мест «Нет» | Текстовое или символьное значение, например, Нет или - | <add key="quotaNoText" value="Нет" />
| ||||||||||||||||||||||||||||||||||||
25 | Значение, определяющее наличие мест «Запрос» | Текстовое или символьное значение, например, Запрос или ? | <add key="quotaRequestText" value="Запрос" />
| ||||||||||||||||||||||||||||||||||||
26 | Значение, определяющее наличие мест «Мало» | Текстовое или символьное значение, например, Мало или + | <add key="quotaFewText" value="Мало" />
| ||||||||||||||||||||||||||||||||||||
27 | Настройка, реализующая возможность вывода числового значения оставшихся мест в случае, когда достигнуто значение «Мало» в экране «Подбор туров с наличием мест» |
|
<add key="showFewCountInQD" value="true" />
| ||||||||||||||||||||||||||||||||||||
28 | Настройка, реализующая возможность просмотра условий бронирования тура в экране «Динамический лист с наличием мест» |
|
<add key="displayTourDescription" value="link" />
| ||||||||||||||||||||||||||||||||||||
29 | Настройка, позволяющая вывести ссылку на результат поиска в экране «Динамический лист с наличием мест». Ссылка отобразится в поле «Ссылка на результат» |
|
<add key="showSearchUrl" value="true" />
| ||||||||||||||||||||||||||||||||||||
30 | Настройка, регулирующая формат отображения даты в экранах «Ценовой лист» и «Подбор туров с наличием мест» |
|
<add key="priceListShowBothDates" value="true" />
| ||||||||||||||||||||||||||||||||||||
31 | Настройка, определяющая необходимость отображения стоимости туров в национальной валюте по умолчанию в экранах «Ценовой лист» и «Подбор туров с наличием мест» |
|
<add key="showCostInNationalRate" value="true" />
| ||||||||||||||||||||||||||||||||||||
32 | Настройка, определяющая порядок сортировки результатов поиска в экране «Подбор туров с наличием мест». Значение данной настройки заменяет сортировку по цене (поле pt_price в таблице mwPriceDataTable) в сортировочном выражении | Поля таблицы mwPriceDataTable, по которым необходимо сортировать данные в результирующей таблице. Пример основных полей:
Для сортировки данных по порядку (прямая сортировка) после названия поля нужно либо не указывать ничего, либо указать значение asc. |
<add key="priceSortReplacement" value="pt_tourdate desc, pt_hdname asc, pt_price" />
| ||||||||||||||||||||||||||||||||||||
33 | Настройка, включающая возможность перехода в экран «Наличие мест на рейсы» или «Полетные программы» из экрана «Подбор туров с наличием мест» при наличии мест «Есть» или «Мало» |
|
<add key="quotedDynamicAviaQuotesLinkTarget" value="aviatimelist" />
| ||||||||||||||||||||||||||||||||||||
34 | Настройка, определяющая необходимость поиска данных не по точному совпадению количества основных и дополнительных мест, указанных в соответствующих фильтрах экрана «Подбор туров с наличием мест», а по сумме основных и дополнительных мест (если не указаны возраста детей в фильтрах). |
|
<add key="useTotalPlaceAmount" value="true" />
| ||||||||||||||||||||||||||||||||||||
35 | Настройка, включающая отображения списка услуг, входящих в стоимость, при наведении курсора на цену в экране «Подбор туров с наличием мест» |
|
<add key="showQDPricePopup" value="true" />
| ||||||||||||||||||||||||||||||||||||
36 | Настройка, при включении которой выбор валюты осуществляется в экране «Подбор туров с наличием мест». Данная настройка влияет только на отображение стоимости тура в корзине. |
Внимание! |
<add key="UseSearchDefinedCurrency" value="true" />
| ||||||||||||||||||||||||||||||||||||
37 | Настройка, включающая отображение доплат по отелю в поле «Условия бронирования» экрана «Подбор туров с наличием мест». Доплаты отображаются из описания отеля в ПК «Мастер-Тур» |
|
<add key="ShowHotelSurcharge" value="true" />
| ||||||||||||||||||||||||||||||||||||
38 | Настройка, которая позволяет указать, по какому курсу будет рассчитываться цена тура |
|
<add key="courseType" value="plan" />
| ||||||||||||||||||||||||||||||||||||
39 | Настройка, включающая отображение колонки «Крайний срок подачи документов на визу». Настройка работает в экране «Подбор туров с наличием мест». Крайний срок подачи документов задается в дополнительном модуле «График работы консульств». |
|
<add key="showVisaDeadlineColumn" value="true" />
| ||||||||||||||||||||||||||||||||||||
40 | Настройка, определяющая проставление чекбоксов наличия мест у отелей. |
(значения настроек регистрозависимые) |
<add key="hotelQuotaMask" value="Yes" />
| ||||||||||||||||||||||||||||||||||||
41 | Настройка, определяющая проставление чекбоксов наличия мест у авиаперелетов. |
(значения настроек регистрозависимые) |
<add key="aviaQuotaMask" value="Yes" />
| ||||||||||||||||||||||||||||||||||||
42 | Настройка, включающая запись состояния фильтров «Подбор туров с наличием мест» (QuotedDynamic) в таблицу [SystemLog]. |
|
<add key="quotedDynamicFilterLog" value="true" />
| ||||||||||||||||||||||||||||||||||||
43 | Настройка, позволяющая переключать вид фильтра продолжительностей: чекбоксы или диапазон в экране «Подбор туров с наличием мест» (QuotedDynamic) |
|
<add key="ShowNightsFilterInQDAsRange" value="true" />
| ||||||||||||||||||||||||||||||||||||
44 | Настройка, определяющая режим отображения фильтра по СПО в экране «Подбор туров с наличием мест» (QuotedDynamic) |
|
<add key="SpoFilterDisplayMode" value="ShowAll" />
| ||||||||||||||||||||||||||||||||||||
45 | Настройка, позволяющая переключать вид фильтра «Тип тура»: выпадающий список или чекбоксы — в экране «Подбор туров с наличием мест» (QuotedDynamic) |
|
<add key="ShowByTourTypesFilterInQDAsRange" value="true" />
| ||||||||||||||||||||||||||||||||||||
46 | Настройка, позволяющая производить запись истории запросов в экране «Подбор туров с наличием мест» (QuotedDynamic). Используется в дополнительном модуле «Сервис по работе с историей поисковых запросов». |
|
<add key="EnableWriteToSearchHistory" value="true" />
| ||||||||||||||||||||||||||||||||||||
47 | Задание статуса заявки в ПК «Мастер-Тур», забронированной через систему бронирования ПК «Мастер-Web». |
Подробнее см. Механизм изменения статуса путевки. |
<add key="orderStatus" value="web" />
| ||||||||||||||||||||||||||||||||||||
48 | Настройка, определяющая список валют, доступных для выбора в экранах:
|
Коды валют, доступных для выбора, через запятую | <add key="selectableCurrencies" value="$,Eu" />
| ||||||||||||||||||||||||||||||||||||
49 | Настройка, включающая фильтр «Состав тура» в экране «Подбор туров с наличием мест» (QuotedDynamic). |
|
<add key="ShowByTourContentFilter" value="dropdown" />
| ||||||||||||||||||||||||||||||||||||
50 | Настройка, включающая фильтр «Категория» в виде выпадающего списка вместо стандартного вида в экране «Подбор туров с наличием мест» (QuotedDynamic). Для корректного отображения фильтра необходимо заполнить в справочнике Категории отелей поля Порядок при печати в порядке приоритетности. При не заполненных полях Порядок при печати признак и лучше в фильтре «Категория» обрабатываться не будет. |
|
<add key="ShowByPriorityHotelCategory" value="true"/>
| ||||||||||||||||||||||||||||||||||||
51 | Настройка, включающая фильтр «Питание» в виде выпадающего списка вместо стандартного вида в экране «Подбор туров с наличием мест» (QuotedDynamic). Для корректного отображения фильтра необходимо заполнить в справочнике Типы питания поля Порядок при печати в порядке приоритетности. При не заполненных полях Порядок при печати признак и лучше в фильтре «Питание» обрабатываться не будет. |
|
<add key="ShowByPriorityPansionType" value="true"/>
| ||||||||||||||||||||||||||||||||||||
52 | Настройка, включающая отображение описания страны.
Внимание! Настройка работает с релиза 9220SP31. |
|
<add key="showCountryDescriptionInQD" value="false"/>
| ||||||||||||||||||||||||||||||||||||
53 | Настройка, определяющая необходимость проверки пакета перелетов в туре при подборе рейсов в корзинах
При проверке наличия мест у услуги Авиаперелет данная настройка взаимодействует с настройкой checkAllPartnersQuota. |
|
<add key="checkFlightPacket" value="true" />
| ||||||||||||||||||||||||||||||||||||
54 | Настройка, осуществляющая переход к результатам поиска |
|
<add key="QDAutoScrollToResult" value="true" />
| ||||||||||||||||||||||||||||||||||||
55 | Настройка, исключающая национальную валюту из выбора валют при заполненной настройке selectableCurrencies в экранах:
Если настройка selectableCurrencies не задана, то вне зависимости от значения настройки ExcludeNationalCurrencyFromSelection на экране отображается национальная валюта и валюта у. е. |
|
<add key="ExcludeNationalCurrencyFromSelection" value="true" />
| ||||||||||||||||||||||||||||||||||||
56 | Настройка, позволяющая разделять цену по разрядам. |
|
<add key="EnableDecimalSeparator" value="true" />
| ||||||||||||||||||||||||||||||||||||
57 | В экране «Динамический лист предложений» указание в поиске количества основных и дополнительных мест вместо типа номера и размещения, в случае, если цены указаны за номер. Используется для более удобного поиска подходящих номеров. Обрабатывается в экранах:
|
|
<add key="costForRoom" value="true" />
| ||||||||||||||||||||||||||||||||||||
58 | Настройка, позволяющая выключить проверку того, что тур выставлен в интернет, т.е. дает возможность забронировать рассчитанный, но не выставленный в интернет тур. |
|
<add key="IsOfflineCalculatedToursBookingAllowed" value="false" />
| ||||||||||||||||||||||||||||||||||||
59 | Настройка, позволяющая осуществлять поиск туров с учётом городов посадки. Внимание! Настройка работает начиная с релиза 9222SP1 и для правильной работы фильтра требуется дополнительная настройка. |
|
<add key="ShowTransferCityFilterInQD" value="true"/>
| ||||||||||||||||||||||||||||||||||||
60 | Настройка, включающая мультивалютное отображение цен в экране «QuotedDynamic.aspx» в результатах поиска и в расширенной корзине. Отображение цен в результатах поиска:
Отображение цен в расширенной корзине:
|
Внимание! |
<add key="UseMultiCurrencies" value="true"/>
|
Настройки отображения
Отображение тех или иных элементов поискового фильтра, а так же их вид, размер местоположение и т.д. настраивается через файл стилей styles.css. За настройки отображения отвечают следующие стили:
- #dof_DepartureCityDiv – фильтр «Город вылета»;
- #dof_CountryDiv – фильтр «Страна»;
- #dof_TourTypeDiv – фильтр «Тип тура»;
- #dof_TourContentDiv – фильтр «Состав тура» (доступен с релиза 9220SP31);
- #dof_ResortDiv – название фильтра «Курорт»;
- #dof_ResortDiv_InnerDiv – фильтр «Курорт»;
- #dof_RegionDiv – название фильтра «Город»;
- #dof_RegionDiv_InnerDiv – фильтр «Город»;
- #dof_SpoDiv – фильтр «СПО»;
- #dof_HotelDiv – название фильтра «Отель» + быстрый поиск отеля;
- #hotelDivScroll – фильтр «Отель»;
- #dof_TourDates – фильтр «Даты заезда»;
- #dof_RoomTypeDiv – фильтр «Тип номера»;
- #dof_ChildrenMainDiv – фильтр «Количество взрослых/детей на основном месте»;
- #dof_ChildrenExtraDiv – фильтр «Количество взрослых/детей на доп. месте»;
- #dof_NightsDiv – фильтр «Ночи»;
- #dof_RoomCategoryDiv – фильтр «Категория» (гостиниц);
- #dof_PansionDiv – фильтр «Питание»;
- #dof_KindOfTourDiv – фильтр «Виды туров»;
- #dof_PriceMaximumDiv – фильтр «Цена не более указанной величины»;
- #dof_CurrencyDiv – контрол переключения валют;
- #dof_QuotasDiv – контрол «Наличие мест»;
- #dof_PageSizeDiv – выпадающий список с отображением строк на странице, отображаемых в результатах поиска;
- #dof_SearchDiv – кнопка «Подобрать тур»;
- #dof_UpdateProgressForLeftDiv – прогрессбар 1 ( );
- #dof_UpdateProgressForMiddleDiv – прогрессбар 2 ( );
- #dof_CountryDescriptionDiv – описание страны (с 9220SP31 описание включается по настройке showCountryDescriptionInQD). Необходимо выполнить следующие действия:
- В файле DynamicOffersFilter.ascx в секции lblCountryDescription необходимо прописать True вместо False;
- В файле Style.css настроить отображение стиля dof_CountryDescriptionDiv (также убедиться, что настройка Display для этого стиля не указана);
- В системе администрирования ПК "Мастер-Web" в поле Примечание подраздела Страны -> Страна задать описание страны, которое должно отображаться.
- .qd_Div – нижний колонтитул.
Каждый элемент стилей может содержать настройки:
- Width – ширина элемента;
- Height – высота элемента;
- Overflow – отображение содержания блочного элемента, если оно целиком не помещается и выходит за область заданных размеров;
- background-color – цвет фона;
- background-image - фоновое изображение для элемента (например,
background-image: url(images/back.jpg)
можно задать для фона страницы); - Border – толщина, стиль и цвет границы вокруг элемента;
- Display – определение того как элемент должен быть показан;
- Position – способ позиционирования элемента относительно окна браузера или других объектов на веб-странице;
- Top – для позиционированного элемента определяет расстояние от верхнего края родительского элемента, не включая отступ, поле и ширину рамки, до верхнего края дочернего элемента;
- И т.д. (подробнее можно посмотреть на http://www.htmlbook.ru/css/).
Скрытие элементов фильтра
Для того чтобы скрыть тот или иной элемент, необходимо для соответствующего стиля прописать настройку:
Display:none;
Для того, чтобы отобразить элемент, настройку Display нужно убрать.
Если какой-либо элемент поискового фильтра скрывается, то очень важно учесть, что при этом необходимо заново отпозиционировать все последующие элементы, либо изменить их размеры.
Рассмотрим пример. Допустим, мы хотим скрыть фильтр «Курорт». Для этого мы добавляем настройку Display:none; для стилей #dof_ResortDiv и #dof_ResortDiv_InnerDiv:
#dof_ResortDiv { width:200px; display:none; } #dof_ResortDiv_InnerDiv { width: 100%; height: 74px; overflow: auto; background-color: LightGrey; border: solid 1px black; display:none; }
Данное изменение без позиционирования остальных элементов, либо без изменения их размера приводит к тому, что поисковый фильтр разъезжается:
Для того, чтобы фильтр выровнялся достаточно просто изменить значение настройки height для стиля #dof_RegionDiv_InnerDiv:
#dof_RegionDiv_InnerDiv { width: 100%; height: 193px; overflow: auto; background-color: LightGrey; border: solid 1px black; }
Т.е. мы увеличиваем высоту фильтра «Регион»:
Для корректного отображения элементов дизайна header.ascx и footer.ascx необходимо проверить следующее:
- При использовании файлов MasterPage, отличных от стандартного, необходимо заключить строку в тег с указанием id="FooterDiv" class="qd_Div":
<div id="FooterDiv" class="qd_Div"> <!-- #include virtual="~/Controls/Footer.ascx" --> </div>
- Содержание файла footer.ascx не должно начинаться с закрывающих тегов.
- При использовании табличной верстки (содержание файла начинается с закрывающих тегов) необходимо разбить футер на 2 файла:
- в первом из них будут закрываться теги, открытые в файле header.ascx и он должен быть вынесен из тега
в файле MasterPage; - второй файл должен содержать в себе html, который корректно будет обрабатываться внутри тега
;
Пример:
</table> <!-- #include virtual="~/Controls/Footer1.ascx" --> <div id="FooterDiv" class="qd_Div"> <!-- #include virtual="~/Controls/Footer2.ascx" --> </div>
Настройки экрана «Динамический лист предложений с наличием мест»
Настройки для данного экрана задаются в файле web.config, находящемся в папке MasterWebStandard. Данные настройки регулируют отображение тарифов на авиаперелеты, питания и категорий гостиниц. Для этого в конфигурационном файле добавляется секция <MasterWeb>.
Данная секция содержит 3 подсекции настроек:
- dynamicCharterClasses – список тарифов на авиаперелет
- dynamicBoard – список типов питания
- dynamicHotelCategories – список категорий гостиниц.
Настройка секции dynamicCharterClasses
Данная секция определяет какие колонки тарифов на авиаперелет будут отображаться в результатах поиска в экране «Подбор туров с наличием мест». Секция dynamicCharterClasses должна содержать как минимум одно значение. Для добавления нового значения необходимо добавить строчку вида: <add name="Название тарифа на авиаперелет" keys="ключи тарифов, задаются через запятую без пробелов"/> В значениях параметра name указывается название колонки, которое будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются ключи тарифов на авиаперелет. Ключи тарифов на авиаперелет хранятся в таблице AirService.
Настройка секции dynamicBoard
Данная секция определяет, как будут отображаться типы питания в поисковом фильтре экрана «Подбор туров с наличием мест». Параметр mode= в настройках секции <dynamicBoard /> определяет вид группировки типов питания:
- simple – не группировать типы питания, отображать все варианты из рассчитанных цен;
- complex – группировать типы питания в соответствии с настройками в секции dynamicBoard;
- global – группировать типы питания по глобальному коду, указанному в справочнике «Типы питания».
Вариант simple
При выборе варианта simple дополнительных настроек не требуется.
Вариант complex
Если выбран вариант complex, то необходимо:
- Определить вид группировки типов питания. Для этого в секции dynamicBoard необходимо добавить нужные значения типов питания. Для добавления нового значения необходимо добавить строчку вида:
<add name="Название типа питания" keys="ключи типов питания, задаются через запятую без пробелов"/> В значениях параметра name указывается название типа питания, которое будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются ключи типов питания. Ключи типов питания хранятся в таблице Pansion.
- Закомментировать или удалить в файле MasterWebStandard/templates/bindSchemeQuotedDynamic.xml секцию:
<control name="chklBoard" priority="9" type="Pansion" itemType="System.Int32" alwaysSelected="false"> <dependency control="ddlDepartFrom" /> <dependency control="ddlCountry" /> <dependency control="chklRegion" /> <dependency control="ddlTour" /> </control>
Вариант global
Если выбран вариант global, то необходимо заполнить поле «Глобальный код» в справочнике «Типы питания». Например, в справочнике есть типы питания All Inclusive, Ultra All Inclusive, Max All Inclusive, по сути обозначающие тип питания «Всё включено». Для того, чтобы сгруппировать эти типы питания, нужно в поле «Глобальный код» справочника «Типы питания» для этих типов прописать одно и то же значение, например ALL. В этом случае в поисковом фильтре экрана «Подбор туров с наличием мест» отобразится значение ALL, но при поиске будут отбираться данные по всем трем типам питания.
Настройка секции dynamicHotelCategories
Данная секция определяет, как будут отображаться категории отелей в поисковом фильтре экрана «Подбор туров с наличием мест». Параметр mode= в настройках секции <dynamicHotelCategories /> определяет вид группировки категорий гостиниц:
- simple – не группировать категории отелей, отображать все варианты из рассчитанных цен;
- complex – группировать категории отелей в соответствии с настройками в секции dynamicHotelCategories;
- global – группировать категории отелей по глобальному коду, указанному в справочнике «Категории отелей».
Вариант simple
При выборе варианта simple дополнительных настроек не требуется.
Вариант complex
Если выбран вариант complex, то необходимо:
- Определить вид группировки категорий отелей. Для этого в секции dynamicHotelCategories необходимо добавить нужные значения категорий гостиниц. Для добавления нового значения необходимо добавить строчку вида:
<add name="Категория отеля" keys="варианты категорий гостиниц, задаются через запятую без пробелов"/> В значениях параметра name указывается категория гостиницы, которая будет отображаться в экране «Подбор туров с наличием мест», а в значениях параметра keys перечисляются варианты категорий гостиниц, которые соответствуют значению в поле name.
- Закомментировать или удалить в файле MasterWebStandard/templates/bindSchemeQuotedDynamic.xml секцию:
<control name="chklCategory" priority="8" type="HotelStars" itemType="System.Int32" alwaysSelected="false"> <dependency control="ddlDepartFrom" /> <dependency control="ddlCountry" /> <dependency control="chklRegion" /> <dependency control="ddlTour" /> </control>
Вариант global
Если выбран вариант global, то необходимо заполнить поле «Глобальный код» в справочнике «Категории отелей». Например, в справочнике есть категории 5*, 5*+, 5*****, по сути обозначающие категорию отеля «5*». Для того, чтобы сгруппировать эти категории, нужно в поле «Глобальный код» справочника «Категории отелей» для этих категорий прописать одно и то же значение, например 5*. В этом случае в поисковом фильтре экрана «Подбор туров с наличием мест» отобразится значение 5*, но при поиске будут отбираться данные по всем трем категория отелей.
Передача параметров в экран «Динамический лист с наличием мест»
Данная настройка предусматривает возможность передачи различных параметров через URL страницы. При этом, если существуют рассчитанные прайсы по данной стране, то при загрузке страницы в фильтре данная страна автоматически будет выбрана в списке стран, и будут загружены значения в других поисковых полях.
Пример строки подключения:
http:// ip-адрес сервера ПК Мастер-Web/MasterWebStandard/Extra/QuotedDynamic.aspx?country=90&departFrom=1&resort=1&city=275&tourtype=0&tour=267&hotel=3234&room=2&dateFrom=2008-08-15&dateTo=2008-08-25
(здесь параметры country=90&departFrom=1&resort=1&city=275&tourtype=0&tour=267&hotel=3234&room=2&dateFrom=2008-08-15&dateTo=2008-08-25, где «90», «1», «1», «275», «0», «267», «3234», «2», «2008-08-15» и «2008-08-25» их значения)
Возможные варианты:
- сountry= ключ страны (обязательный параметр)
- departFrom= ключ города вылета (обязательный параметр)
- resort= ключи курортов через запятую
- city= ключи городов через запятую
- tourtype= ключ типа тура
- tourcontent= ключ состава тура (работает начиная с релиза 9220SP32)
- tour= ключ тура в таблице TP_Tours
- tourlistkey= ключ тура в таблице tbl_TurList
- hotel= ключи отелей через запятую
- stars= категории гостиниц через запятую.
Внимание! Начиная с релиза 9220SP32, при включенной настройке "ShowByPriorityHotelCategory" в web.config данный параметр используется в следующем формате: stars= категория гостиницы_признак "и лучше". Признак "и лучше": 0 - выключен, 1 - включен. Если настройка "ShowByPriorityHotelCategory" будет включена в web.config, и параметр stars будет содержать список категорий гостиниц через запятую, тогда для фильтра категорий будет использоваться первый ключ из списка, а признак "и лучше" будет выключен. - hotelOptions= ключи услуг в отелях через запятую
- pansion= ключи типов питания через запятую.
Внимание! Начиная с релиза 9220SP32, при включенной настройке "ShowByPriorityPansionType" в web.config данный параметр используется в следующем формате: pansion= ключ типа питания_признак "и лучше". Признак "и лучше": 0 - выключен, 1 - включен. Если настройка "ShowByPriorityPansionType" будет включена в web.config, и параметр pansion будет содержать список ключей питания через запятую, тогда для фильтра питания будет использоваться первый ключ из списка, а признак "и лучше" будет выключен. - room= ключ типа номера
- roomCategory= ключ категории номеров
- adults= количество взрослых
- childs= количество детей
- firstChildAge= возраст первого ребенка
- secondChildAge= возраст второго ребенка
- dateFrom= дата заезда с
- dateTo= дата заезда по
- pricelink_target= открытие ссылки на корзину (_top – в текущем окне, _blank – в отдельном)
- target= открытие результатов поиска в отдельном окне (blank – открытие страницы с результатами поиска в отдельном окне)
- pkey= ключ партнера, которому должна отправляться копия письма о новом бронировании при оформлении путевок в экранах «Корзина», «Упрощенная корзина» и «Упрощенная корзина 2» (данный параметр удобно использовать, например, если экран «Динамический лист с наличием мест» встроен в сайт агентства с использованием фреймов)
- aviaQuotaMask= отметки наличия мест на авиаперелеты (1 – наличие мест «Есть»; 2 – наличие мест «Нет»; 3 – наличие мест «Есть» и «Нет»; 4 – наличие мест «Запрос»; 5 – наличие мест «Есть» и «Запрос»; 6 – наличие мест «Запрос» и «Нет»; 7 – наличие мест «Есть», «Нет» и «Запрос»)
- hotelQuotaMask= отметки наличия мест в отеле (1 – наличие мест «Есть»; 2 – наличие мест «Нет»; 3 – наличие мест «Есть» и «Нет»; 4 – наличие мест «Запрос»; 5 – наличие мест «Есть» и «Запрос»; 6 – наличие мест «Запрос» и «Нет»; 7 – наличие мест «Есть», «Нет» и «Запрос»)
- showResults= необходимость автоматического отбора данных при переходе в экран по ссылке с параметрами (0 – данные автоматически не отбираются)
- priceLimit= цена до
- mainOnly= поиск только по основным размещениям (обрабатывается только значение 1)
- kindOfTours= виды тура (0 – все; 1 – пакетные туры; 2 – наземное обслуживание)
- pageSize= количество записей на странице
- nights= продолжительность в ночах
- currency= валюта (cu – у.е.; national – национальная валюта; ISO-код валют через запятую)
- additionalinfo= отображение дополнительного описания тура (отображается в самом верху экрана над фильтрами); доступные значения: 0- не отображать, 1 – отображать
- autoShiftDays= количество дней, отсчитываемых от начальной даты в интервале дат заездов. Интервал ограничивается значением, указанным в настройке TourDatesIntervalLimit в web.config
Настройки на странице «Динамический лист с наличием мест»
Установка страны по умолчанию
Для того, чтобы установить страну, отображаемую по умолчанию, необходимо в файле templates\bindSchemeQuotedDynamic.xml в теге <control name="ddlCountry" priority="1" type="CountryReloaded" itemType="System.Int32"> добавить параметр default="ключ страны по умолчанию".
Пример:
<control name="ddlCountry" priority="1" type="CountryReloaded" itemType="System.Int32" default="53">
Сортировка туров в фильтре
Данная настройка прописывается в файле templates\bindSchemeQuotedDynamic.xml в теге
<control name="ddlTour" priority="5" type="Tour" itemType="System.Int32" firstItem="mwBinderOptionalItem" sort="sd_tourname asc"> <dependency control="ddlDepartFrom" /> <dependency control="ddlCountry" /> <dependency control="ddlTourType" /> <dependency control="chklResort" /> <dependency control="chklRegion" /> </control>
Параметр sort указывает, по какой колонке из таблицы mwSpoData необходимо отсортировать туры.
Поиск туров по городу посадки
В web.config основного приложения должна быть включена настройка ShowTransferCityFilterInQD, а также необходимо осуществить настройку в файле templates\bindSchemeQuotedDynamic.xml
Необходимо добавить тег:
<control name="ddlTransferCity" priority="1" type="TransferCity" itemType="System.Int32" alwaysSelected="false" firstItem="mwBinderOptionalItem" firstItemValue="-1"> <dependency control="ddlDepartFrom" /> <dependency control="chkSpoGroups" /> </control>
А также, в тегах ddlCountry, ddlTourType, chklTourTypes, ddlTourContent, chklTourContent, chklResort, chklRegion, ddlTour, treeViewHotelCategories, chklHotel, ddlRoom, chklDuration, ddlDurationFrom, chklCategory, chklBoard, ddlCategoryPriority, ddlPansionPriority, ctrlCalendar, ddlDurationTo дописать зависимость <dependency control="ddlTransferCity" />
сразу после <dependency control="ddlDepartFrom" />
.
Отображение названия курорта в фильтре «Отели»
Для того, чтобы в фильтре «Отели» отображалось название курорта, нужно открыть в текстовом редакторе файл \MasterWebStandard\templates\ bindSchemeQuotedDynamic.xml и в теге <control name="chklHotel" priority="5" type="HotelLink" itemType="System.Int32" alwaysSelected="false"> изменить значение параметра type="HotelLink" на type="HotelResortLink".
Пример:
<control name="chklHotel" priority="5" type="HotelResortLink" itemType="System.Int32" alwaysSelected="false">
Изменение фильтра «Город» на фильтр «Курорт»
Для того, чтобы в фильтре «Регион» вместо городов отображались курорты, нужно открыть в текстовом редакторе файл \MasterWebStandard\templates\ bindSchemeQuotedDynamic.xml и в теге <control name="chklRegion" priority="2" type="City" itemType="System.String" alwaysSelected="false"> изменить значение параметра type="City" на type="Resort". Пример:
<control name="chklRegion" priority="2" type="Resort" itemType="System.String" alwaysSelected="false">
Отображение поля «Цена за»
Для того чтобы отобразить поле «Цена за» в экране «Динамический лист с наличием мест» нужно открыть в текстовом редакторе файл \MasterWebStandard\Controls\DynamicOffersTable.ascx и в теге <asp:TemplateColumn HeaderText="Цена<br>за" SortExpression="priceFor" Visible="false"> изменить значение параметра Visible="false" на Visible="true"
Пример:
<asp:TemplateColumn HeaderText="Цена<br>за" SortExpression="priceFor" Visible="true" >
Отображение иконки рядом с названием отелей
Для того чтобы отобразить иконку рядом с названием отелей в экране «Подбор туров с наличием мест» нужно открыть в текстовом редакторе файл \MasterWebStandard\Controls\DynamicOffersTable.ascx
и в теге
<%--<asp:Literal ID="htt_img" runat="server" Text='<%# Megatec.Common.DataAccess.Manager.DbObj.ExecuteScalar(string.Format
("exec mwGetHotelTypeImageHtml {0}, \"..\\images\\\"", DataBinder.Eval (Container, "DataItem.HotelKey"))).ToString() %>' />--%>
убрать теги комментария <%-- --%>.
Пример:
<asp:Literal ID="htt_img" runat="server" Text='<%# Megatec.Common.DataAccess.Manager.DbObj.ExecuteScalar(string.Format
("exec mwGetHotelTypeImageHtml {0}, \"..\\images\\\"", DataBinder.Eval (Container, "DataItem.HotelKey"))).ToString() %>' />
Для работы необходимо заполнить поле HTT_ImageName
таблицы HotelTypes
.
Отображение колонок наличия мест на перелеты в таблице результатов
Для того, чтобы полностью скрыть колонки с наличием мест на перелете в таблице с результатами экрана «Подбор туров с наличием мест» нужно открыть в текстовом редакторе файл \MasterWeb\Controls\QuotedDynamicControl.ascx и в теге <uc2:DynamicOffersTable id="DynamicOffersTable" runat="server" > добавить настройку HideCharterColumns="True".
Пример:
<uc2:DynamicOffersTable id="DynamicOffersTable" runat="server" HideCharterColumns="True">
Кэширование
Для ускорения процесса поиска применяется внутренний механизм кэширования.
Наличие мест
Интервал обновления кэша квот - 10 минут. Для включения механизма никаких дополнительных настроек указывать не нужно.
Подмешивание отелей в результаты поиска (Smart Search)
Внимание! Данная функциональность не входит в стандартную версию. Поставляется отдельно.
Данная настройка позволяет определять очередность вывода отелей в результатах подбора по странам, курортам и городам.
Настройка таблицы HotelPriorities
В базе данных ПК «Мастер-Тур» в таблицу HotelPriorities необходимо занести коды отелей с соответствующими приоритетами по странам, курортам и городам. На данный момент информацию необходимо заносить напрямую в базу данных. Позже будет разработан экран для ввода приоритетов из интерфейса программы. Вводимые данные:
- HP_HDkey – код отеля (колонка HD_Key из таблицы HotelDictionary);
- HP_CountryPriority – приоритет для страны;
- HP_ResortPriority – приоритет для курорта;
- HP_CityPriority – приоритет для города.
Обработка подбора отелей по приоритетам
При подборе тура отели будут выводится в зависимости от заданных данных в фильтрах Страна, Курорт, Город:
Пример:
Заполнены приоритеты для отелей:
Hotel1 (Анталия/курорт X) – Приоритет 1 для страны, приоритет 2 для курорта, приоритет 1 для города
Hotel2 (Анталия/курорт X) - Приоритет 2 для страны, приоритет 1 для курорта, приоритет 2 для города
Hotel3 (Белек/курорт X) - Приоритет 3 для страны, приоритет 4 для курорта, приоритет 2 для города
Hotel4 (Белек/курорт X) - Приоритет страны не задан, приоритет 3 для курорта, приоритет 1 для города
Hotel5 (Алания/курорт Y) - Приоритет страны не задан, приоритет 2 для курорта, приоритет 1 для города
Hotel6 (Алания/курорт Y) - Приоритет страны не задан, приоритет 1 для курорта, приоритет 2 для города
Вывод отелей будет осуществляться следующим образом:
Если выбран только фильтр по Страна:
- Hotel1
- Hotel2
- Hotel3
- Далее все отели по стандартной схеме
Если выбран фильтр Страна и фильтр Курорт X:
- Hotel2
- Hotel1
- Hotel4
- Далее все отели по стандартной схеме
Если выбран фильтр Страна и фильтр Курорт X и Y:
- Hotel2
- Hotel6
- Hotel1 или Hotel5
- Далее все отели по стандартной схеме
Если выбран фильтр Страна, фильтр Курорт X и Город Анталия:
- Hotel1
- Hotel2
- Hotel4
- Далее все отели по стандартной схеме
Если выбран фильтр Страна, Город Анталия и Алания:
- Hotel1
- Hotel5
- Hotel2 или Hotel6
- Далее все отели по стандартной схеме
Данные отели будут отображены только в том случае, если по данным отелям есть свободные места по заведенным квотам. Если мест нет или стоит StopSale, то отели подмешиваться в результаты поиска не будут.
В результат поиска может быть подмешено максимум 3 отеля.
Если при поиске не найдены значения в колонке города, будут подмешиваться курорты. Если не найдены регионы, будет подмешиваться страна.
При сортировке по любой колонке в экране QuotedDynamic подмешивание результатов сбрасывается.
Все отели, для которых не проставлен приоритет, но они попадают под заданные фильтры - будут отображаться согласно существующим правилам (сортировка по цене).
Осуществляется вывод только наиболее дешевого размещения для заданных фильтров «количество основных и дополнительных мест». Из отображения исключаются размещения, где присутствует инфант.
Фильтрация по числу основных/дополнительных или взрослых/детских мест
По умолчанию туры в экране «Подбор туров с наличием мест» фильтруются по количеству основных/дополнительных мест. Но альтернативно можно осуществлять фильтрацию по числу взрослых/детских мест.
Данные заполняются в справочнике типов размещения.
Для этого необходимо в таблице SystemSettings в основной базе данных создать параметр OnlineFindByAdultChild и установить его равным 1, а также убедиться, что в ней присутствует параметр MWAccomodationPlaces со значением 1.
Следует отметить, что этот параметр обрабатывается при выставлении тура в онлайн, т.е. чтобы изменить способ фильтрации, нужно сначала изменить настройку в базе данных, а потом перевыставить нужные туры, без перерасчёта. Необходимо использовать только один вариант фильтрации для всех туров, чтобы избежать некорректной обработки при поиске.
Необходимо сделать некоторые изменения в файлах:
DynamicOffersFilter.ascx
<asp:Label runat="server" ID="lbChildrenMain" Text="Количество взрослых/детей на осн. месте" meta:resourcekey="lbChildrenMainResource1" ></asp:Label>
|
изменить на
<asp:Label runat="server" ID="lbChildrenMain" Text="Количество взрослых" meta:resourcekey="lbChildrenMainResource1" ></asp:Label>
|
<asp:Label runat="server" ID="lbChildrenExtra" Text="Количество взрослых/детей на доп. месте" meta:resourcekey="lbChildrenExtraResource1" ></asp:Label>
|
изменить на
<asp:Label runat="server" ID="lbChildrenExtra" Text="Количество детей" meta:resourcekey="lbChildrenExtraResource1" ></asp:Label>
|
DynamicOffersFilter.ascx.resx или DynamicOffersFilter.ascx.en.resx
<data name="lbChildrenMainResource1.Text" xml:space="preserve"> <value>Количество взрослых/детей на осн. месте</value>
|
изменить на
<data name="lbChildrenMainResource1.Text" xml:space="preserve"> <value>Количество взрослых</value>
|
<data name="lbChildrenExtraResource1.Text" xml:space="preserve"> <value>Количество взрослых/детей на доп. месте</value>
|
изменить на
<data name="lbChildrenExtraResource1.Text" xml:space="preserve"> <value>Количество детей</value>
|
Подготовка данных
Экран «Динамический лист с наличием мест» осуществляет поиск и подбор цен по рассчитанным и выставленным в интернет турам. Для корректного отображения наличия мест по отелю и перелету необходимо заполнить справочник «Квоты» для услуг «Проживание» и «Авиаперелет».
Работа в системе
Экран «Динамический лист предложений с наличием мест» (форма 1)
Для сравнения цен в разных гостиницах на определенное размещение удобно использовать экран «Динамический лист предложений с наличием мест».
Для просмотра цен через динамический лист необходимо выбрать город вылета, страну и период дат заездов. Можно наложить дополнительные фильтры на отбор туров по следующим параметрам:
- Региону
- Названию тура
- Названию отеля
- Типу номера
- Стоимости
- Продолжительности
- Классу гостиницы
- Питанию
По нажатию кнопки «Подобрать тур», системой будут отобраны туры, отвечающие заданным условиям.
Для того, чтобы при поиске в многоотельном туре были найдены свободные места (отметка о наличии мест была в состоянии «Есть»), необходимо, чтобы у каждого отеля в туре были свободные места.
Отображение многоотельных туров регулируется настройкой SYSAlwaysShowMultiHotels в таблице SystemSettings. Если SYSAlwaysShowMultiHotels=1, то в экране «Подбор туров с наличием мест» отображаются сразу названия нескольких отелей включенных в тур, один под другим. Если SYSAlwaysShowMultiHotels=0, то отображается только главный отель в туре. Для вступления настройки в силу необходимо перезапустить пул приложения.
Информация в результатах поиска представлена в виде таблицы:
Название поля в таблице | Выводимые данные |
---|---|
Заезд | Дата заезда. |
Отель | Название гостиницы. По ссылке с названия гостиницы в новом окне откроется описание гостиницы, если URL страницы заведен в системе. |
*** | Категория гостиницы. |
Регион | Город, к которому привязан отель. |
Номер | Тип номера, на который указана цена. |
Категория номера | Категория номера, на которую указана цена. |
Размещение | Тип размещения, на которое указана цена. |
Питание | Питание представлено значением типа питания, заведенным в соответствующем справочнике ПК Мастер-Тур. |
Ночи | Продолжительность тура в ночах. |
Цена | Стоимость тура. |
Вал | Валюта, в которой указана цена. |
Источник цены | Название тура. По ссылке с названия тура в новом окне откроется описание тура, если URL страницы заведен в системе. Цены указаны за человека или за номер меняется в зависимости от настройки в конфигурационном файле web.config. |
Крайний срок подачи документов на визу | Максимальная дата подачи документов на визу для выбранной даты заезда. Данное информационное поле отображается только для визовых стран. Данные для отображения в этом поле берутся из поля «Крайний срок (агентство)» плагина Мастер-Тура "График работы консульств". |
Наличие мест | Наличие мест в гостинице. |
Эконом, Бизнес | Наличие мест на авиаперелеты. Колонки и их названия формируются динамически. Их отображение регулируется настройкой в конфигурационном файле web.config. |
По ссылке с цены, представленной в таблице, можно перейти в экран «Корзина услуг» по данной продолжительности и размещению с возможностью отправки запроса на бронирование.
Экран «Динамический лист предложений с наличием мест» (форма 2)
Для просмотра цен через динамический лист необходимо выбрать город вылета, страну и период дат заездов. Можно наложить дополнительные фильтры на отбор туров по следующим параметрам:
- Региону
- Названию тура
- Названию отеля
- Типу номера
- Стоимости
- Продолжительности
- Классу гостиницы
- Питанию
- Наличию мест в отеле и на рейсе
- Списку услуг в отеле (включается настройкой useHotelServiceFilter)
По нажатию кнопки «Подобрать тур», системой будут отобраны туры, отвечающие заданным условиям.
Для того, чтобы при поиске в многоотельном туре были найдены свободные места (отметка о наличии мест была в состоянии «Есть»), необходимо, чтобы у каждого отеля в туре были свободные места.
Отображение многоотельных туров регулируется настройкой SYSAlwaysShowMultiHotels в таблице SystemSettings.
Информация в результатах поиска представлена в виде таблицы:
Название поля в таблице | Выводимые данные |
---|---|
Заезд | Дата заезда. |
Отель | Название гостиницы. По ссылке с названия гостиницы в новом окне откроется описание гостиницы, если URL страницы заведен в системе. |
*** | Категория гостиницы. |
Регион | Город, к которому привязан отель. |
Номер | Тип номера, на который указана цена. |
Категория номера | Категория номера, на которую указана цена. |
Размещение | Тип размещения, на которое указана цена. |
Питание | Питание представлено значением типа питания, заведенным в соответствующем справочнике ПК Мастер-Тур. |
Ночи | Продолжительность тура в ночах. |
Цена | Стоимость тура. |
Вал | Валюта, в которой указана цена. |
Источник цены | Название тура. По ссылке с названия тура в новом окне откроется описание тура, если URL страницы заведен в системе. Цены указаны за человека или за номер меняется в зависимости от настройки в конфигурационном файле web.config. |
Крайний срок подачи документов на визу | Максимальная дата подачи документов на визу для выбранной даты заезда. Данное информационное поле отображается только для визовых стран. Данные для отображения в этом поле берутся из поля «Крайний срок (агентство)» плагина Мастер-Тура "График работы консульств". |
Наличие мест | Наличие мест в гостинице. |
Эконом, Бизнес | Наличие мест на авиаперелеты. Колонки и их названия формируются динамически. Их отображение регулируется настройкой в конфигурационном файле web.config. |
По ссылке с цены, представленной в таблице, можно перейти в экран «Корзина услуг» по данной продолжительности и размещению с возможностью отправки запроса на бронирование.