Мастер-Тур(15):Поиск и бронирование авиабилетов — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][непроверенная версия]
(Новая страница: «Версия статьи от {{REVISIONDAY}}-{{REVISIONMONTH}}-{{REVISIONYEAR}}. <table style="background-color:#ffffcc;color:black" border="1" cellpadding="10…»)
 
Строка 76: Строка 76:
 
* Откуда - город начала поездки;  
 
* Откуда - город начала поездки;  
 
* Куда(Страна) - страна прибытия;
 
* Куда(Страна) - страна прибытия;
 +
* Куда(Город) - город прибытия;
 
* Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов;
 
* Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов;
 
* Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета;
 
* Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета;
 
* Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.<BR>
 
* Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.<BR>
  
Существует возможность добавить '''Город''' в главные фильтры. Для этого необходимо
 
воспользоваться настройкой [[Мастер-Тур(15):Программа туров. Панель администрирования#Общие настройки|Отображать фильтр по городам на главной странице поиска]].
 
  
 
[[Файл:TP_99.png|Главные фильтры]]<br />
 
[[Файл:TP_99.png|Главные фильтры]]<br />
Строка 153: Строка 152:
 
|}
 
|}
  
 
===Примечание по стране===
 
Блок '''Примечание по стране''' появляется в том случае, если в системе администрирования ПК "Мастер-Web" в поле '''Примечание''' подраздела '''Страны -> Страна''' задано описание страны.<br />
 
<br />[[Файл:mb_247.png|1060px|Примечания по стране]]<br />
 
  
 
==Параметры, передаваемые через URL страницы==
 
==Параметры, передаваемые через URL страницы==
Строка 164: Строка 159:
 
Пример URL-запроса:<br>
 
Пример URL-запроса:<br>
  
<code>'''<nowiki>http://ip-адрес сервера/TourSearchClient?departureCities=1&destination=1_30&tourType=5,2&dates=23.06.2016,24.06.2016,25.06.2016&durations=2,3,4,5,6,7,8,9&adultCount=2&hotelQuota=7&aviaQuota=7&currency=USD</nowiki>'''</code><br />  
+
<code>'''<nowiki>http://ip-адрес сервера/TourSearchClient_15.3/Individuals/Avia?departureCity=1&destinationCountry=64&destinationCity=410&departureDate=20180719&returnDate=20180727&flexible=2&adultCount=2&childAges=6&aviaQuota=7&currency=EUR</nowiki>'''</code><br />  
  
 
===Обязательные параметры URL-запроса===
 
===Обязательные параметры URL-запроса===
Строка 170: Строка 165:
 
Ниже перечисленные параметры являются обязательными:
 
Ниже перечисленные параметры являются обязательными:
  
* '''departureCities''' — код города вылета из таблицы ''CityDictionary'';
+
* '''departureCity''' — код города вылета из таблицы ''CityDictionary'';
* '''destination''' — "1_" + код страны места назначения из таблицы ''Country'';
+
* '''destinationCountry''' — "1_" + код страны места назначения из таблицы ''Country'';
* '''destCities''' — код города места назначения из таблицы ''CityDictionary'' (только при включенной настройке [[Мастер-Тур(15):Программа туров. Панель администрирования#Общие настройки|Отображать фильтр по городам на главной странице поиска]]);
+
* '''destinationCity''' — код города места назначения из таблицы ''CityDictionary'';
* '''tourType''' — код типа тура;
+
* '''departureDate''' — дата вылета (дата задается в формате ''ДД.ММ.ГГГГ'');
* '''dates''' — даты начала тура (даты задаются в формате ''ДД.ММ.ГГГГ'', более одной даты указываются через запятую);
+
* '''returnDate''' — дата возврата (дата задается в формате ''ДД.ММ.ГГГГ'');
* '''durations''' — продолжительности (задаются через запятую);
 
 
* '''adultCount''' — количество взрослых;
 
* '''adultCount''' — количество взрослых;
* '''hotelQuota/aviaQuota''' — код варианта наличия мест на отели/авиаперелеты (значения параметров: ''"1"'' — фильтр "Есть", ''"5"'' — фильтр "Есть+запрос", ''"7"'' — фильтр "Все");
+
* '''aviaQuota''' — код варианта наличия мест на авиаперелеты (значения параметров: ''"1"'' — фильтр "Есть", ''"5"'' — фильтр "Есть+запрос", ''"7"'' — фильтр "Все");
 
* '''currency''' — ISO код валюты (задается в справочнике '''Список валют''').<br />
 
* '''currency''' — ISO код валюты (задается в справочнике '''Список валют''').<br />
  
Строка 183: Строка 177:
  
 
* '''childAges''' — возраст ребенка (если детей более одного, то возраста перечисляется через запятую, если возраст ребенка "0" - то обрабатывается как "не указан");<br />
 
* '''childAges''' — возраст ребенка (если детей более одного, то возраста перечисляется через запятую, если возраст ребенка "0" - то обрабатывается как "не указан");<br />
* '''groupingKeys''' — группировка результатов поиска по:
 
** Названию тура;
 
** Дате тура;
 
** Продолжительности;
 
** Городу начала поездки;
 
** Отелю;
 
** Городу;
 
** Курорту;
 
** Категории отеля.
 
Пример: <code>'''<nowiki>http://ip-адрес сервера/TourSearchClient?departureCities=1&destination=1_30&tourType=5,2&dates=27.06.2016&durations=5&adultCount=2& childAges=1,3&hotelQuota=5&aviaQuota=7&currency=USD&groupingKeys=2,4,8</nowiki>'''</code><br />
 
 
 
 
 
'''Параметры фильтров:'''<br />
+
'''Параметры дополнительных фильтров:'''<br />
 
 
 
 
 
1. Цена
 
1. Цена
Строка 203: Строка 187:
 
Параметры фильтра Цена можно использовать как в совокупности, так и по отдельности.
 
Параметры фильтра Цена можно использовать как в совокупности, так и по отдельности.
 
 
 
 
2. Программа тура
+
2. Параметры авиаперелета
 
* '''tours''' — ключ программы тура из таблицы ''TourPrograms'';<br />
 
 
3. Параметры проживания
 
 
* '''cities''' — код города из таблицы ''CityDictionary'';<br />
 
* '''resorts''' — код курорта из таблицы ''Resorts'';<br />
 
* '''cats''' — код категории отеля из таблицы ''CategoriesofHotel'';<br />
 
* '''hotelTypes''' — код признака отеля из таблицы ''HotelTypes'';<br />
 
* '''pansions''' — код типа питания из таблицы ''Pansion'';<br />
 
* '''hotels''' — код отеля из таблицы ''HotelDictionary'';<br />
 
 
4. Параметры авиаперелета
 
 
* '''depTimeFrom/depTimeTo''' — временной интервал вылета (задается в формате ЧЧ:ММ);<br />
 
* '''arrTimeFrom/arrTimeTo''' — временной интервал прилета (задается в формате ЧЧ:ММ);<br />
 
 
 
Пример URL-запроса с использованием временных интервалов вылета и прилета:<br />
 
<code>'''<nowiki>http://ip-адрес сервера/TourSearchClient?departureCities=232&destination=1_10&tourType=5,2&dates=27.06.2016&durations=5&adultCount=2&hotelQuota=5&aviaQuota=7&currency=USD&depTimeFrom=01:00
 
&depTimeTo=01:59&arrTimeFrom=02:00& arrTimeTo=03:59
 
</nowiki>'''</code><br />
 
  
* '''dep_airports/arr_airports''' — коды аэропортов вылета/прилета;<br />
 
* '''flightCityDeparture''' — код города вылета;
 
 
* '''airlines''' — код авиакомпании из таблицы ''Airline'';
 
* '''airlines''' — код авиакомпании из таблицы ''Airline'';
* '''flightTariffs''' — код класса перелета;
+
* '''airportDeparture''' — код аэропорта вылета;<br />
 
+
* '''airportArrival''' — код аэропорта прилета;<br />
Ниже перечисленные параметры подразумевают установку признака активности, поэтому принимают только значение '''true''':<br />
+
* '''tariff''' — код класса перелета;<br />
 +
* '''departureFlightNumberTransfer''' — количество пересадок вылета;<br />
 +
* '''arrivalFlightNumberTransfer''' — количество пересадок прилета;<br />
 
* '''dTransfer=true''' — запрет на пересадку для прилета (без пересадок в прямом направлении);<br />
 
* '''dTransfer=true''' — запрет на пересадку для прилета (без пересадок в прямом направлении);<br />
 
* '''aTransfer=true''' — запрет на пересадку для вылета (без пересадок в обратном направлении);<br />
 
* '''aTransfer=true''' — запрет на пересадку для вылета (без пересадок в обратном направлении);<br />
 +
* '''timeDepartureFrom/timeDepartureTo''' — временной интервал вылета (задается в формате ЧЧ:ММ);<br />
 +
* '''timeArrivalFrom/timeArrivalTo''' — временной интервал прилета (задается в формате ЧЧ:ММ);<br />
  
Пример: <code>'''<nowiki>http://ip-адрес сервера/TourSearchClient?departureCities=1&destination=1_30 &tourType=5,2&dates=27.06.2016&durations=5&adultCount=2&hotelQuota=5&aviaQuota=7&currency=USD&dTransfer=true&aTransfer=true</nowiki>'''</code><br />
+
Пример URL-запроса с использованием временных интервалов вылета и прилета:<br />
 
+
<code>'''<nowiki>http://ip-адрес сервера/TourSearchClient_15.3/Individuals/Avia?departureCity=1&destinationCountry=64&destinationCity=410&departureDate=20180719&returnDate=20180727&flexible=2&adultCount=2&aviaQuota=7&currency=EUR&timeArrivalFrom=03:00&timeArrivalTo=23:59&timeDepartureFrom=01:00&timeDepartureTo=23:59
* '''departureFlightNumberTransfer''' – наличие пересадок в прямом направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более). Обрабатывается начиная с релиза 15.3.
+
</nowiki>'''</code><br />
* '''arrivalFlightNumberTransfer''' – наличие пересадок в обратном направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более). Обрабатывается начиная с релиза 15.3.
 
  
 
==Быстрый поиск==
 
==Быстрый поиск==

Версия 10:20, 9 июля 2018

Версия статьи от 9-07-2018.

Поддерживаемые версии ПК «Мастер-Тур»:
Начиная с 15.3 версии


Введение

Данный экран предназначен для поиска актуальных цен с указанием наличия мест, отображения расширенной информации по авиаперелетам. Экран позволяет выдавать найденные цены с разной детализацией.

Авторизация

Для наличия возможности бронирования заявки в корзине необходимо авторизоваться в системе, введя Имя пользователя и Пароль. Авторизация может происходить как в экране поиска (тогда перейдя в корзину авторизационные данные пользователя будут сохранены), либо в самой корзине.

Авторизация


Восстановление пароля

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

Восстановление пароля

В одно из полей вводим известные данные:

  • Логин — вводим логин для входа в систему (если регистрировались как частное лицо и не меняли логин, то им является e-mail)
  • E-mail — адрес электронной почты, указанный при регистрации

Затем нажимаем кнопку Выслать пароль и на электронную почту придет письмо с логином и паролем для входа в систему бронирования.
Шаблон письма находится в MasterWeb → Templates → PasswordRecovery.xml.

Страница поиска авиабилетов

На данной странице есть несколько функциональных блоков:

  • главные фильтры
  • дополнительные фильтры
  • таблица авиаперелетов
  • результаты поиска


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

Пользователь может указать по какому варианту наличия мест необходимо искать авиаперелеты:

  • Есть
  • Есть+запрос
  • Все

По умолчанию выбран вариант "Есть+запрос"


Также есть возможность выбора типа перелета:

  • В один конец
  • Туда и обратно

По умолчанию выбран вариант "Туда и обратно"


Для отображения таблицы с авиаперелетами необходимо включить чек-бокс +/- 1-3 дня


Валюта - валюта, в которой будет отображаться цены. Отображаются все валюты из справочника "Список валют", у который выбран признак "Отображать в поиске".
По умолчанию выбрана "национальная" валюта.

Также в поиске доступен переключатель языков (по умолчанию есть три варианта языка - русский украинский и английский). С настройкой отображаемых данных можно ознакомиться в разделе Настройка языка приложения

Главные фильтры

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

  • Откуда - город начала поездки;
  • Куда(Страна) - страна прибытия;
  • Куда(Город) - город прибытия;
  • Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов;
  • Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета;
  • Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.


Главные фильтры


После выбора значений в главных фильтрах становится доступной кнопка "Найти", при нажатии на которую система отберет туры по заданным параметрам.
При изменении основных фильтров (откуда, страна, город) будут подобраны ранее выбранные даты вылета и возврата, если в них будет возможность найти туры.

Правила скрещивания, установленные в программе туров также учитываются при подборе авиаперелетов

Расчет стоимости тура

Расчет стоимости услуг в составе заказа (Цена тура):
Изначально расчет всегда ведется в валюте тура (например: если цены на услуги заведены в $, а валюта тура EU, то в момент расчета происходит конвертация значения цены в валюте $ в валюту EU по курсу на дату расчета). Затем применяются настройки округления, указанные в ПК Мастер-Тур (если указаны настройки округления стоимости услуг). Стоимости этих услуг суммируются и общая сумма также округляется (по настройкам округления ПК Мастер-Тур). Полученная сумма отображается в корзине как стоимость тура (всегда в валюте тура).

Расчет стоимости тура в валюте, выбранной в поиске:
Округленная (по настройкам, указанным в ПК Мастер-Тур) стоимость в валюте тура конвертируется по текущему курсу в валюту поиска и итоговый результат также округляется (по настройкам, указанным в ПК Мастер-Тур). Аналогичным способом рассчитывается стоимость в национальной валюте в корзине, только в качестве отображаемой валюты всегда выступает национальная валюта.
Расчет стоимости в экранах OrderInfo и OrderList:
При отображении стоимостей в экранах OrderInfo и OrderList, выводятся две цены: первая в валюте тура, полученная в п.1 (не важно в результате расчета или введенная руками), и вторая в национальной валюте, которая получается путем конвертации по зафиксированному курсу, либо курсу на текущую дату из стоимости в валюте путевки. Результат округляется математически до сотых. Аналогично происходит расчет в национальной валюте в экране Путевка (исходя из наличия зафиксированного курса).

Дополнительные фильтры

Для удобства поиска авиаперелетов по определенным параметрам можно воспользоваться дополнительными фильтрами.
Дополнительные фильтры применяются к уже отобранным по главным фильтрам вариантам туров. В программе представлены следующие дополнительные фильтры:

  • Цена – отбор туров в заданном диапазоне цен;
  • Параметры авиаперелета – отбор по параметрам авиаперелета (время вылета/прилета, аэропорт вылета/прилета, наличие пересадок вылета/прилета, авиакомпания и класс перелета);

Заданные дополнительные фильтры отображаются в виде "плашек".

Дополнительные фильтры


Таблица авиаперелетов

  • Вертикально – даты и дни недели вылета
  • Горизонтально – даты и дни недели возврата

Синим выделены даты, выбранные в фильтре, желтым – даты гибкого поиска, зеленым - есть места
На стыке дат показывается кол-во вариантов имеющихся перелетов + минимальная цена.

Таблица авиаперелетов


Результаты поиска

По каждому найденному варианту туру будет представлена следующая информация:

  • Авиакомпания
  • Дата
  • Рейс
  • Тариф
  • Цена от - минимальная возможная цена варианта тура по заданным в фильтрах дате и количеству людей.

Для просмотра информации о доступных вариантах необходимо кликнуть по слову "Варианты" в соответствующей строке тура. Откроется список доступных вариантов по данному туру.
Слева от рейса отображается наличие мест.

Результаты поиска


Параметры, передаваемые через URL страницы

Предусмотрена возможность поиска тура по параметрам, указанным в URL-запросе страницы.

Пример URL-запроса:

http://ip-адрес сервера/TourSearchClient_15.3/Individuals/Avia?departureCity=1&destinationCountry=64&destinationCity=410&departureDate=20180719&returnDate=20180727&flexible=2&adultCount=2&childAges=6&aviaQuota=7&currency=EUR

Обязательные параметры URL-запроса

Ниже перечисленные параметры являются обязательными:

  • departureCity — код города вылета из таблицы CityDictionary;
  • destinationCountry — "1_" + код страны места назначения из таблицы Country;
  • destinationCity — код города места назначения из таблицы CityDictionary;
  • departureDate — дата вылета (дата задается в формате ДД.ММ.ГГГГ);
  • returnDate — дата возврата (дата задается в формате ДД.ММ.ГГГГ);
  • adultCount — количество взрослых;
  • aviaQuota — код варианта наличия мест на авиаперелеты (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все");
  • currency — ISO код валюты (задается в справочнике Список валют).

Необязательные параметры URL-запроса

  • childAges — возраст ребенка (если детей более одного, то возраста перечисляется через запятую, если возраст ребенка "0" - то обрабатывается как "не указан");

Параметры дополнительных фильтров:

1. Цена

  • minPrice — минимальная цена;
  • maxPrice — максимальная цена;

Параметры фильтра Цена можно использовать как в совокупности, так и по отдельности.

2. Параметры авиаперелета

  • airlines — код авиакомпании из таблицы Airline;
  • airportDeparture — код аэропорта вылета;
  • airportArrival — код аэропорта прилета;
  • tariff — код класса перелета;
  • departureFlightNumberTransfer — количество пересадок вылета;
  • arrivalFlightNumberTransfer — количество пересадок прилета;
  • dTransfer=true — запрет на пересадку для прилета (без пересадок в прямом направлении);
  • aTransfer=true — запрет на пересадку для вылета (без пересадок в обратном направлении);
  • timeDepartureFrom/timeDepartureTo — временной интервал вылета (задается в формате ЧЧ:ММ);
  • timeArrivalFrom/timeArrivalTo — временной интервал прилета (задается в формате ЧЧ:ММ);

Пример URL-запроса с использованием временных интервалов вылета и прилета:
http://ip-адрес сервера/TourSearchClient_15.3/Individuals/Avia?departureCity=1&destinationCountry=64&destinationCity=410&departureDate=20180719&returnDate=20180727&flexible=2&adultCount=2&aviaQuota=7&currency=EUR&timeArrivalFrom=03:00&timeArrivalTo=23:59&timeDepartureFrom=01:00&timeDepartureTo=23:59

Быстрый поиск

Также можно осуществить поиск, воспользовавшись формой Быстрый поиск. Данная форма вставляется в любую страницу сайта (для этого используются фреймы).
Mb 237.png
Для того, чтобы вставить эту форму на страницу, нужно добавить следующий текст:

<IFRAME SRC="HTTP://ip-сервера/TourSearchClient/DemoSearch" scrolling="no" width="280" height="450" FRAMEBORDER="0">

Дизайн настраивается в файле \TourSearchClient\Views\DemoSearch\Index.cshtml. Стили прописываются в файле \TourSearchClient\Content\Shared\Common.css.
На форме отображены фильтры, аналогичные основным фильтрам поиска: Откуда, Куда, Тип тура, Даты заезда, Количество ночей от... до..., Взрослые, Дети. После их заполнения и нажатия кнопки Найти происходит переход на основной поиск, куда передаются все параметры, выбранные в фильтрах быстрого поиска.