Входными параметрами для поискового механизма модуля являются данные, вводимые клиентом:
- Дата заезда
- Дата выезда
- Количество взрослых
- Количество детей
- Если настроена интеграция с внешней системой, модуль выполняет запрос http-сервиса списка номеров и получает актуальный остаток по каждой категории. Номера с нулевым остатком исключаются из выборки.
- Модуль проверяет ёмкость номеров. Если количество гостей превышает ёмкость номера, номер исключается из выборки.
-
Модуль проверяет тарифы и цены.
- Если для номера не задано ни одного тарифа, номер исключается из выборки.
- Если по тарифу требуется предоплата и не установлена платёжная система, тариф исключается из выборки.
- Если период бронирования меньше или больше указанного для тарифа, тариф исключается из выборки.
- Если не найден календарь цен тарифа для периода бронирования, тариф исключается из выборки.
- Если не найден прайслист, либо в прайслисте не указана цена для заданного количества гостей, тариф исключается из выборки.
- Если для номера не остаётся ни одного актуального тарифа, номер исключается из выборки.
- Если настроен учет квот, модуль рассчитывает количество существующих броней на заданный период и определяет доступный остаток номеров каждого типа. Номера с нулевым остатком исключаются из выборки.
- Для оставшихся категорий номеров производится расчет стоимости бронирования по каждому тарифу, результаты отображаются в виде карточек на страницах мастера бронирования.
