Результаты поиска
Содержание
Информация о багаже
Включить отображение информации о багаже на результатах поиска для компонента «Авиабилеты» можно одноименной настройкой, которая находится в разделе «Авиабилеты» — «Стандартный поиск» — «Настройка группировки и фильтров».
Группировка результатов поиска
Возможно несколько вариантов вывода результатов поиска.
Чтобы установить желаемую группировку, необходимо зайти на страницу «Авиабилеты» — «Поиск» — «Настройка группировки и фильтров».
На указанной странице доступен ряд настроек группировки и фильтрации:
- «Без группировки» — при включении этой настройки на результатах поиска выводятся все варианты перелетов. При поиске перелетов туда-обратно отображаются все варианты комбинаций, без какой-либо фильтрации и группировки.
- «По сегментам» — если включена данная настройка, то пользователю предлагается список сегментов для выбора наиболее подходящего. Достаточно в левой части страницы отметить радиокнопкой желаемый перелет и нажать кнопку «Выбрать».
- «По времени» — при такой группировке пользователь выбирает наиболее удобное для него время. В данном случае на отображение результатов так же влияет настройка «Отображать все результаты в группировке по времени». Если она не активна, то выводятся только самые дешевые варианты (прямой и с пересадками). Чтобы отобразить остальные варианты, необходимо кликнуть на соответствующих ссылках «Другие прямые рейсы» и «Другие рейсы с пересадками».
Чтобы пользователь сам мог выбирать оптимальный для него вариант группировки результатов, необходимо включить опцию «Предоставлять выбор типа группировки на странице результатов поиска».
Информация о полном времени перелета и пересадках
При выборе типа группировки По времени возможно отображение информации об общем времени в пути и длительности пересадок в предпросмотре информации о перелете.
- «Время прилета разгруппировано по времени вылета» - обязательная настройка, обеспечивающая корректное отображение информации о длительности пересадок при наличии на странице поисковой выдачи нескольких рейсов, сгруппированных по времени.
- «Предпросмотр информации о полном времени перелета и пересадках(группировка по времени):»
- Нет - информация о полном времени в пути и длительности пересадок в предпросмотре перелета не отображается
- В всплывающем окне - информация о полном времени в пути и длительности пересадок отображается во всплывающем окне, которое появляется при наведении курсора мыши на временной промежуток
- В блоке под временем перелета - информация о полном времени в пути отображается во всплывающем окне аналогично предыдущему варианту, а информация длительности пересадок располагается снизу от временного промежутка.
Внимание! Время в пути считается на основе справочника в путеводителе (зоны аэропортов).
Самый дешевый вариант перелета
При группировке по По сегментам или По времени указывается надпись:
- Самый дешевый вариант перелета без пересадок для прямых перелетов,
- Самый дешевый вариант перелета с пересадками для перелетов с пересадками.
Фильтры на странице «Результаты поиска»
При использовании группировок «По времени» и «По сегментам» можно так же включить фильтрацию на результатах поиска. Форма с фильтрацией отображается в верхней части страницы — непосредственно над результатами поиска. Вид данной формы настраивается следующими опциями:
- «Тип фильтра (для сгруппированных результатов)» — фильтрация по одному критерию может быть как с множеством вариантов (например, время вылета: днем и вечером — в данном случае для выбора используются чекбоксы), так и с одним конкретным вариантом (время вылета: ночью — для выбора используется радиокнопки). При использовании фильтров учитывается несочетаемость полетов. В данном случае недоступные варианты подсвечиваются серым светом — их можно выбрать, но влиять на выдачу при остальных условиях они не будут.
- «Сортировка фильтров» — фильтрация возможна по ряду параметров, среди которых: направление, класс, время вылета, время вылета обратно, аэропорт вылета, аэропорт вылета обратно, компания, тип судна. Вывод данных параметров на форме фильтрации настраивается указанной опцией. Порядок вывода фильтров определяется числовыми коэффициентами. Чем меньше число, тем выше фильтр будет на форме результатов. Если коэффициент задается равным 0, то фильтр будет первым в списке. При отсутствие коэффициента фильтр выведен не будет.
! Фильтр будет выведен в том случае, если в поиске будет присутствовать результат, к которому данный фильтр можно применить.
Постфильтры на странице «Результаты поиска»
Включить либо выключить постфильтры можно в разделе «Авиабилеты» — «Поиск» — «Настройка группировки и фильтров» — «Показывать постфильтры».
Типы постфильтров:
- По длительности перелёта — Можно установить желаемый диапазон и отсеить рейсы, несоответствующие заданным параметрам.
Для настройки фильтра — «Длительность перелёта» в индивидуальном порядке разработан специальный интерфейс. Путь настроек: «Авиабилеты» — «Стандартный поиск» — «Настройка группировки и фильтров»
Настройки фильтра — «Длительность перелёта»:
- Логика работы ПФ «Время перелета», дает возможность выбрать необходимое значение время перелета:
Минимальное время «в воздухе» - минимальное из времен всех перелетов Максимальное время «в воздухе» - максимальное из времен всех перелетов Сумма времен «в воздухе» - сумма времен всех перелетов Сумма времен «в воздухе» + время пересадок - сумма времен всех перелетов + сумма пересадок
- Разбивать ПФ «время перелета» на отдельные фильтры по плечам маршрута. Если выбрать данную настройку вы можете разбить фильтр на все плечи перелета или выбрать определенное плечо (настройка №3).
- Определяя настройку "Отображать фильтр для плеча №", вы определяете, для какого плеча/плечей отображать ПФ: для всех, первого, второго и т.д.
Примечание: Если фильтр не разбивается, он использует сумму времен "в воздухе" перелетов по каждому из плечей.
- Рейсы с пересадками — Выбрать рейсы с одной пересадкой. В скобках указано количество вариантов с данным числом пересадок.
- Стоимость перелета — Можно, передвинув ползунок, выбрать наиболее приемлемые варианты стоимости перелёта. Перелёты, не подходящие заданным параметрам, будут отсеяны.
- Постфильтр «Авиакомпании» — Есть возможность дополнительно отфильтровать рейсы определённых авиакомпаний (в скобках указана наименьшая цена данного перевозчика), которые сортируются по алфавиту (по названиям), что делает поиск интересующей авиакомпании в постфильтрах удобным не только для пользователей B2B ресурсов, но и для конечных B2C клиентов.
- Время вылета и время прилёта — Есть возможность отсеять рейсы по времени вылета и прилета, а также по параметру «день, утро, ночь, вечер». Дополнительно в скобках указывается период времени, количество рейсов в указанный период и наименьшая цена.
- Длительность пересадок — Передвигая ползунок, есть возможность установить наиболее приемлемое время пересадок, исключив варианты, не удовлетворяющие заданным параметрам. Например, оставить варианты перелета с длительностью пересадок не более часа.
Шаблоны результатов поиска
В системе Nemo есть возможность менять шаблоны вывода группировки и фильтров. Для изменения добавьте необходимый шаблон в административной части в соответствующее поле: «Авиабилеты» — «Поиск» — «Шаблоны результатов поиска».
Группировка по сегментам
Для группировки по сегментам используется один шаблон, который берется из панели управления или загружается шаблон по умолчанию.
Каждый перелет имеет ряд свойств, по которым и происходит последующая их фильтрация.
- aircraft{$iter} = «{if $getonesegment→getAirRusProd()}rus{else}imp{/if}»
Тип воздушного судна (Иностранное, отечественное). Если перелеты с пересадками, то может быть несколько типов судов.
- transplantation = «{$gsegment→getAllSegments()|@count}»
Количество пересадок. Могут быть значения: Без пересадки, 1 пересадка, 2 и более пересадок.
- airportDep='{$gsegment→get_departureAirport()}'
Аэропорт вылета.
- airportArr='{$gsegment→last()→get_arrivalAirport()}'
Аэропорт прилета.
- timetype=«{$gsegment→getTimeType()}»
Время вылета.
- class=«{if $smarty.foreach.segmentgr.iteration == 1}chbx_first{else}chbx_first_back{/if}»
Класс данного перелета.
Группировка по времени
Для группировки по времени используется два шаблона, которые берутся из панели управления, или загружаются Стандартные шаблоны группировки по времени.
Каждый перелет имеет ряд свойств, по которым и происходит фильтрация.
- timetype=«{$gsegment→getTimeType()}»
Время вылета.
- class=«{if $gnumber == 0}chbx_first{else}chbx_first_back{/if}»
Класс перелета.
- aircraft{$iter} = «{if $getonesegment→getAirRusProd()}rus{else}imp{/if}»
Тип воздушного судна (Иностранное, отечественное). Если перелеты с пересадками, то может быть несколько типов судов.
- airportDep=«{$gsegment→get_departureAirport()}»
Аэропорт вылета.
- airportArr=«{$gsegment→last()→get_arrivalAirport()}»
Аэропорт прилета.
- transplantation=«{$gsegment→getAllSegments()|@count}»
Количество пересадок. Могут быть значения: Без пересадки, 1 пересадка, 2 и более пересадок.
Наличие данных свойств необходимо на шаблонах, иначе фильтрация перелетов внутри сгруппированных результатов производиться не будет.
Без группировки
Шаблон «Без группировки» берется из панели управления или загружается Стандартный шаблон без группировки.
Проверка на доступность
После того, как пользователь на результатах поиска нажимает ссылку «Забронировать» перед подтверждением бронирования система отправляет запрос на доступность, необходимый для повторной проверки перелета на доступность и исключения максимально возможного количества заказов, которые нельзя будет забронировать из-за сервисных ошибок, либо изменения условий (например, снятия мест).
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=AirAvail
Пример запроса и ответа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:AirAvail> <RequestBin> <Request> <AirAvail> <!--Запрос, обязательный--> <!--FlightId ид перелёта в системе Немо, обязательный--> <FlightId>534733</FlightId> </AirAvail> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:AirAvail> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:AirAvail> <ResponseBin> <Response> <!--Запрос, обязательный--> <!--@FlightId ид перелёта в системе Немо, обязательный--> <!--@IsAvail доступность перелёта, true или false, обязательный--> <AirAvail FlightId="534733" IsAvail="true"/> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:AirAvail> </soapenv:Body> </soapenv:Envelope>