Workspace Digital Awards 2025 — успейте номинировать кейсы по льготной цене до 1 декабря. Принять участие!
MediaTen
Сервис бронирования мест для загородного отдыха
MediaTen
#Поддержка и развитие сайта#Программирование сайта

Сервис бронирования мест для загородного отдыха

112 
MediaTen
MediaTen Россия, Екатеринбург
Поделиться:
Клиент

ЗнайМеста

Бюджет

5 000 000

Сфера

Туризм и отдых

Регион

Россия, Краснодар

Сдано

Март 2023

Задача

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

- Обновить верстку сервиса с доработкой функционала.

- Сделать рефакторинг кода и оптимизировать скорость работы сайта.

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

Решение

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

За год сотрудничества мы обновили внешний вид сервиса бронирования и переписали большое количество кода. Привели его к стандартам PSR и построили архитектуру так, чтоб он был минимально привязан к текущему фреймворку для безболезненного перехода на более свежую версию. Внедрили систему кейсов, в которой один класс равен одному действию.

Нашей основной разработкой стал виджет бронирования номеров. 

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

Алгоритм распределения номеров создан на основе задачи о рюкзаках: уложили как можно больше главных критериев в ограниченное пространство. Приоритетность расположения в комнатах по спальным местам отталкивается от соотношения количества взрослых и детей. Например, 2 взрослых и 2 ребенка – это 1 двуспальная и 2 односпальные кровати. В некоторых отелях есть возможность для пользователей сервиса внести дополнительную койку. Расчет стоимости сделан не только исходя от общего количества людей, но и с учетом возраста гостей. Настройка цены на детей и установка ограничений по годам осуществляются в административной части. После выбора самого отеля и номеров идет предложение о дополнительных услугах на территории отдыха: баня, сауна, питание, экскурсии, прокат инвентаря и прочее. Они размещаются партнерами самостоятельно через личные кабинеты.

В системе реализован функционал приема онлайн платежей. После подбора номера пользователю дается 60 минут на внесение депозита в размере 50% от стоимости проживания. При успешном переводе средств придет подтверждение брони на указанные данные для связи.

Сам виджет бронирования реализован на Vue как отдельное приложение. Для него был создан современный API в соответствии со спецификацией REST. Мы разработали его так, чтобы можно было не только внедрять в любой интернет-ресурс, но и кастомизировать ее оформление. Например, если партнер хочет добавить виджет на свой сайт, то он:

- заходит в личный кабинет,

- выбирает цвет и компоненты модуля,

- копирует получившийся HTML-код и встраивает в свою платформу. 

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

Результат

- Интуитивно понятный интерфейс сайта с обновленным дизайном.

- Улучшенный функционал для гибкой и автоматизированной работы с партнерами и посетителями.

- Рефакторинг предлагаемых отелем услуг, а также перевод других страниц ресурса на новый технологический стек.

- Виджет бронирования. 


Стек технологий

  • JavaScript JavaScript Язык программирования
  • PHP PHP Язык программирования
  • Yii2 Yii2 Фреймворк/библиотека
  • Vue.js Vue.js Фреймворк/библиотека
  • MongoDB MongoDB База данных
  • MySql MySql База данных
  • Docker Docker Среда разработки

Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

MediaTen с удовольствием обсудит вашу задачу

Оставить заявку