Мастер-Тур(15):Поиск и бронирование авиабилетов — различия между версиями
[досмотренная версия] | [досмотренная версия] |
Parshina (обсуждение | вклад) (Новая страница: «Версия статьи от {{REVISIONDAY}}-{{REVISIONMONTH}}-{{REVISIONYEAR}}. <table style="background-color:#ffffcc;color:black" border="1" cellpadding="10…») |
Parshina (обсуждение | вклад) (→Таблица авиаперелетов) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 76: | Строка 76: | ||
* Откуда - город начала поездки; | * Откуда - город начала поездки; | ||
* Куда(Страна) - страна прибытия; | * Куда(Страна) - страна прибытия; | ||
+ | * Куда(Город) - город прибытия; | ||
* Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов; | * Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов; | ||
* Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета; | * Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета; | ||
* Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.<BR> | * Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.<BR> | ||
− | |||
− | |||
[[Файл:TP_99.png|Главные фильтры]]<br /> | [[Файл:TP_99.png|Главные фильтры]]<br /> | ||
Строка 127: | Строка 126: | ||
* Горизонтально – даты и дни недели возврата | * Горизонтально – даты и дни недели возврата | ||
− | Синим выделены даты, выбранные в фильтре, желтым – даты гибкого поиска, зеленым - есть места <BR> | + | Синим выделены даты, выбранные в фильтре, желтым – даты гибкого поиска, зеленым - есть места, красным - нет мест или стоит stop-sale на эти даты<BR> |
На стыке дат показывается кол-во вариантов имеющихся перелетов + минимальная цена.<BR> | На стыке дат показывается кол-во вариантов имеющихся перелетов + минимальная цена.<BR> | ||
Строка 135: | Строка 134: | ||
|- | |- | ||
|} | |} | ||
− | |||
===Результаты поиска=== | ===Результаты поиска=== | ||
Строка 153: | Строка 151: | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
==Параметры, передаваемые через URL страницы== | ==Параметры, передаваемые через URL страницы== | ||
Строка 164: | Строка 158: | ||
Пример URL-запроса:<br> | Пример URL-запроса:<br> | ||
− | <code>'''<nowiki>http://ip-адрес сервера/ | + | <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¤cy=EUR</nowiki>'''</code><br /> |
===Обязательные параметры URL-запроса=== | ===Обязательные параметры URL-запроса=== | ||
Строка 170: | Строка 164: | ||
Ниже перечисленные параметры являются обязательными: | Ниже перечисленные параметры являются обязательными: | ||
− | * ''' | + | * '''departureCity''' — код города вылета из таблицы ''CityDictionary''; |
− | * ''' | + | * '''destinationCountry''' — "1_" + код страны места назначения из таблицы ''Country''; |
− | * ''' | + | * '''destinationCity''' — код города места назначения из таблицы ''CityDictionary''; |
− | * ''' | + | * '''departureDate''' — дата вылета (дата задается в формате ''ДД.ММ.ГГГГ''); |
− | + | * '''returnDate''' — дата возврата (дата задается в формате ''ДД.ММ.ГГГГ''); | |
− | * ''' | ||
* '''adultCount''' — количество взрослых; | * '''adultCount''' — количество взрослых; | ||
− | * ''' | + | * '''aviaQuota''' — код варианта наличия мест на авиаперелеты (значения параметров: ''"1"'' — фильтр "Есть", ''"5"'' — фильтр "Есть+запрос", ''"7"'' — фильтр "Все"); |
* '''currency''' — ISO код валюты (задается в справочнике '''Список валют''').<br /> | * '''currency''' — ISO код валюты (задается в справочнике '''Список валют''').<br /> | ||
Строка 183: | Строка 176: | ||
* '''childAges''' — возраст ребенка (если детей более одного, то возраста перечисляется через запятую, если возраст ребенка "0" - то обрабатывается как "не указан");<br /> | * '''childAges''' — возраст ребенка (если детей более одного, то возраста перечисляется через запятую, если возраст ребенка "0" - то обрабатывается как "не указан");<br /> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | '''Параметры фильтров:'''<br /> | + | '''Параметры дополнительных фильтров:'''<br /> |
1. Цена | 1. Цена | ||
Строка 203: | Строка 186: | ||
Параметры фильтра Цена можно использовать как в совокупности, так и по отдельности. | Параметры фильтра Цена можно использовать как в совокупности, так и по отдельности. | ||
− | 2 | + | 2. Параметры авиаперелета |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* '''airlines''' — код авиакомпании из таблицы ''Airline''; | * '''airlines''' — код авиакомпании из таблицы ''Airline''; | ||
− | * ''' | + | * '''airportDeparture''' — код аэропорта вылета;<br /> |
− | + | * '''airportArrival''' — код аэропорта прилета;<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-адрес сервера/ | + | Пример 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¤cy=EUR&timeArrivalFrom=03:00&timeArrivalTo=23:59&timeDepartureFrom=01:00&timeDepartureTo=23:59 | |
− | + | </nowiki>'''</code><br /> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Category:Мастер-Тур(15)]] | [[Category:Мастер-Тур(15)]] |
Версия 10:25, 9 июля 2018
Версия статьи от 9-07-2018.
Поддерживаемые версии ПК «Мастер-Тур»: |
Введение
Данный экран предназначен для поиска актуальных цен с указанием наличия мест, отображения расширенной информации по авиаперелетам. Экран позволяет выдавать найденные цены с разной детализацией.
Авторизация
Для наличия возможности бронирования заявки в корзине необходимо авторизоваться в системе, введя Имя пользователя и Пароль. Авторизация может происходить как в экране поиска (тогда перейдя в корзину авторизационные данные пользователя будут сохранены), либо в самой корзине.
Восстановление пароля
Если пароль для входа в систему бронирования забыт, то можно воспользоваться функцией восстановления пароля. Для этого на форме Вход в систему нужно нажать Забыли пароль?, после чего откроется экран Восстановление пароля.
В одно из полей вводим известные данные:
- Логин — вводим логин для входа в систему (если регистрировались как частное лицо и не меняли логин, то им является e-mail)
- E-mail — адрес электронной почты, указанный при регистрации
Затем нажимаем кнопку Выслать пароль и на электронную почту придет письмо с логином и паролем для входа в систему бронирования.
Шаблон письма находится в MasterWeb → Templates → PasswordRecovery.xml.
Страница поиска авиабилетов
На данной странице есть несколько функциональных блоков:
- главные фильтры
- дополнительные фильтры
- таблица авиаперелетов
- результаты поиска
Пользователь может указать по какому варианту наличия мест необходимо искать авиаперелеты:
- Есть
- Есть+запрос
- Все
По умолчанию выбран вариант "Есть+запрос"
Также есть возможность выбора типа перелета:
- В один конец
- Туда и обратно
По умолчанию выбран вариант "Туда и обратно"
Для отображения таблицы с авиаперелетами необходимо включить чек-бокс +/- 1-3 дня
Валюта - валюта, в которой будет отображаться цены. Отображаются все валюты из справочника "Список валют", у который выбран признак "Отображать в поиске".
По умолчанию выбрана "национальная" валюта.
Также в поиске доступен переключатель языков (по умолчанию есть три варианта языка - русский украинский и английский). С настройкой отображаемых данных можно ознакомиться в разделе Настройка языка приложения
Главные фильтры
Для того чтобы просмотреть цены по турам необходимо задать поисковые параметры в главных фильтрах:
- Откуда - город начала поездки;
- Куда(Страна) - страна прибытия;
- Куда(Город) - город прибытия;
- Дата вылета - календарь, где актуальные даты вылета в выбранное направление подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов;
- Дата возврата- календарь, где актуальные даты возврата подсвечены зеленым цветом. Подсвечиваются только те даты, на которые есть возможность сформировать хотя бы один вариант результата поиска согласно заведенных авиаперелетов. Дата возврата не может быть больше даты вылета;
- Взрослые, дети (возраст детей). Если указано количество детей, то возраст детей обязателен для заполнения.
После выбора значений в главных фильтрах становится доступной кнопка "Найти", при нажатии на которую система отберет туры по заданным параметрам.
При изменении основных фильтров (откуда, страна, город) будут подобраны ранее выбранные даты вылета и возврата, если в них будет возможность найти туры.
Правила скрещивания, установленные в программе туров также учитываются при подборе авиаперелетов
Расчет стоимости тура
Расчет стоимости услуг в составе заказа (Цена тура):
Изначально расчет всегда ведется в валюте тура (например: если цены на услуги заведены в $, а валюта тура EU,
то в момент расчета происходит конвертация значения цены в валюте $ в валюту EU по курсу на дату расчета). Затем применяются настройки округления,
указанные в ПК Мастер-Тур (если указаны настройки округления стоимости услуг).
Стоимости этих услуг суммируются и общая сумма также округляется (по настройкам округления ПК Мастер-Тур). Полученная сумма отображается
в корзине как стоимость тура (всегда в валюте тура).
Расчет стоимости тура в валюте, выбранной в поиске:
Округленная (по настройкам, указанным в ПК Мастер-Тур) стоимость в валюте тура
конвертируется по текущему курсу в валюту поиска и итоговый результат также округляется (по настройкам, указанным в ПК Мастер-Тур).
Аналогичным способом рассчитывается стоимость в национальной валюте в корзине, только в качестве отображаемой валюты всегда выступает национальная валюта.
Расчет стоимости в экранах OrderInfo и OrderList:
При отображении стоимостей в экранах OrderInfo и OrderList, выводятся две цены: первая в валюте тура, полученная в п.1 (не важно в результате расчета или введенная руками),
и вторая в национальной валюте, которая получается путем конвертации по зафиксированному курсу, либо курсу на текущую дату из стоимости в валюте путевки. Результат округляется математически до сотых.
Аналогично происходит расчет в национальной валюте в экране Путевка (исходя из наличия зафиксированного курса).
Дополнительные фильтры
Для удобства поиска авиаперелетов по определенным параметрам можно воспользоваться дополнительными фильтрами.
Дополнительные фильтры применяются к уже отобранным по главным фильтрам вариантам туров. В программе представлены следующие дополнительные фильтры:
- Цена – отбор туров в заданном диапазоне цен;
- Параметры авиаперелета – отбор по параметрам авиаперелета (время вылета/прилета, аэропорт вылета/прилета, наличие пересадок вылета/прилета, авиакомпания и класс перелета);
Заданные дополнительные фильтры отображаются в виде "плашек".
Таблица авиаперелетов
- Вертикально – даты и дни недели вылета
- Горизонтально – даты и дни недели возврата
Синим выделены даты, выбранные в фильтре, желтым – даты гибкого поиска, зеленым - есть места, красным - нет мест или стоит stop-sale на эти даты
На стыке дат показывается кол-во вариантов имеющихся перелетов + минимальная цена.
Результаты поиска
По каждому найденному варианту туру будет представлена следующая информация:
- Авиакомпания
- Дата
- Рейс
- Тариф
- Цена от - минимальная возможная цена варианта тура по заданным в фильтрах дате и количеству людей.
Для просмотра информации о доступных вариантах необходимо кликнуть по слову "Варианты" в соответствующей строке тура. Откроется список доступных вариантов по данному туру.
Слева от рейса отображается наличие мест.
Параметры, передаваемые через 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¤cy=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¤cy=EUR&timeArrivalFrom=03:00&timeArrivalTo=23:59&timeDepartureFrom=01:00&timeDepartureTo=23:59