Перейти к основному содержимому

Мультискидки для детей

· 3 мин. чтения

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

Настройка тарифов и направлений

Управление скидками реализовано через административную панель и состоит из двух этапов:

Создание правил (Глобальные настройки): В новом разделе администратор может создавать различные категории детских скидок. Для каждого правила задается минимальный и максимальный возраст, а также размер самой скидки.

Защита данных: Если созданная скидка уже используется в активном маршруте, система блокирует ее удаление и выводит предупреждение, чтобы избежать сбоев в расчетах.

Привязка к маршрутам: При настройке конкретного направления (рейса) диспетчер может выбрать одну или сразу несколько созданных детских скидок из специального выпадающего списка.

Обратная совместимость: Если новые многоуровневые скидки для рейса не настроены, система автоматически применяет старый, единый формат детской скидки (если он был задан ранее).

Умный интерфейс бронирования

Интерфейс покупки билета — как со стороны диспетчера, так и на клиентском сайте — динамически адаптируется под настройки выбранного рейса.

Автоматический расчет: При выборе типа билета «Ребенок» система анализирует введенные данные и мгновенно пересчитывает итоговую стоимость.

Логика запроса данных: Если в настройках направления указано, что дата рождения обязательна для заполнения, система потребует ввести ее для детского билета.

Альтернативный ввод возраста: В случаях, когда дата рождения не является обязательным параметром рейса, интерфейс упрощается. Вместо полной даты система предложит удобный выпадающий список для выбора возраста ребенка (от 0 до 17 лет).

Скрытие лишних полей: Если на рейсе вообще не предусмотрены детские тарифы, система не будет перегружать интерфейс и не станет запрашивать ни возраст, ни дату рождения ребенка. Окно выбора возраста также скрывается, если пользователь уже ввел полную дату рождения.

Вычислительная логика и защита от ошибок

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

Границы возраста: При проверке тарифа начальный возраст учитывается «включительно», а конечный — «не включительно». Например, скидка для категории «от 3 до 5 лет» будет действовать для детей 3 и 4 лет, но перестанет применяться в день 5-летия.

Отсутствие тарифа: Если возраст ребенка не попадает ни в один из настроенных диапазонов, скидка не применяется, и билет оформляется по стандартной стоимости.

Валидация: Система не позволит завершить бронирование, если выбран детский билет, но не указан возраст или дата рождения (в зависимости от настроек).

Итоги

Внедрение данного модуля позволило транспортным компаниям выстраивать гибкую ценовую политику для семей с детьми, а процесс оформления билетов стал более предсказуемым и автоматизированным.

multiskidki-dlya-detej.png multiskidki-dlya-detej2.png