Интерактивный календарь для бронирования для сайта на Tilda

Бюджет: 1 000 — 2 000 ₽/час
Заказчик выбрал исполнителя:
NETWORK PRO  
Краткое описание проблемы:
Есть сайт фотостудии manhattanstudio.pl. Сайт сделан на платформе Tilda и администрируется через Tilda. На сайте нету опции непосредственного бронирования залов. Есть кнопки со ссылкой на сторонний сервис бронирования — Booksy. Мы отслеживаем конверсии гугл рекламы — клики на кнопку перенаправления на Booksy. Но неизвестно забронировал ли пользователь время или просто перешёл на Booksy и вышел оттуда без брони. Невозможно посчитать реальную стоимость конверсии. Мы хотим сделать интерактивный календарь с бронированием залов непосредственно на сайте, чтобы правильно отслеживать конверсии и улучшить пользовательский опыт.

1. Функциональные требования и пользовательский опыт:
Добавить календарь для бронирования на страницы каждого из залов: WHITE, BEIGE, GREY, NOIR.
Предусмотреть возможность добавления в будущем ещё одного календаря для ещё одного зала, который сейчас на бессрочном ремонте.
Предусмотреть возможность добавления календаря на главную страницу или на отдельную страницу — не решено ещё.
Использовать визуальную структуру календаря, аналогичную гугл-календарю. Залы должны переключаться переключатем залов сверху календаря: пользователь должен иметь возможность забронировать сразу несколько залов за раз, не прыгая по страницам. На страницах залов календари загружаются на соответствующих залах (переключатель сверху соответствует залу, которому посвещена страница).
Тайм-зона — Варшава.
Реализовать временные интервалы для бронирования в один час (пользователь может забронировать интервал (или несколько интервалов) кратный одному часу).
Ячейки календаря разбиты по полчаса (примеры доступных интервалов для бронирования: 8.00-11.00, 18.30-19.30 — время начала интервала кратно получасу, но продолжительность всего интервала кратна часу).
Доступное время для бронирования определяется часами работы, задаваемыми администратором, уже забронированным другими клиентами временем, а также временем заблокированным для бронирования (определяется администратором).
Доступное и недоступное время должны отображаться визуально.
Выбор времени осуществляется кликами по доступным ячейкам (кликнутая ячейка закрашивается либо становится свободной, если до клика уже была закрашена пользователем) и/или кликом и растягиванием интервала времени (как в гугл календаре). При выборе времени пользователь видит стоимость бронирования (цена за час определяется администратором) и кнопку забронировать. При нажатии на кнопку он видит форму, где вводит имя, емейл, телефон и, опционально, промокод и ноутс (возможно, стоит сделать регистрацию?). После бронирования на почту пользователя отправляется письмо с подтверждением, пользователь попадает на страницу/всплывающее окно, которые будут засчитываться как конверсия.
У пользователя должна быть возможность отменить бронирование.

2. Администрирование:
Создать интерфейс администратора для:
    а) Управление бронированием: просмотр, редактирование и отмена бронирований; отметка неявки (информация о неявке должна записаться в карточку пользователя). Управление бронированием должно быть интерактивным, в виде календаря. Желательно сводно: на одном календаре для всех залов.
    б) Управление доступным временем: задание часов работы, блокирование временых отрезков.
    в) Управление ценами: установка цен за час для каждого зала.
    г) Управление промокодами: создание, редактирование и удаление промокодов.
    д) Статистика: просмотр сводной информации по бронированиям — отчёты по месяцам (кол-во броней, общее забронированное время, средняя продолжительность брони, кол-во неявившихся броней/времени).
    е) Управление пользователями: просмотр списка пользователей; просмотр и редактирование карточек с пользователями (контактная информация; история бронирований и неявок; ноутсы).
    ж) Управление уведомлениями: напоминание пользователю о предстоящем забронированном визите.
Администратор должен получать уведомления о бронировании и отмене бронирования.
Ведение журнала изменений (логов) для отслеживания действий администраторов.

3. Адаптивность:
Сделать календарь адаптивным к разным устройствам, сохраняя удобство использования.

4. Локализация:
Реализовать календарь для обеих языковых версий сайта — польской и английской, администрирование — на английском.

5. Дизайн:
Соответствие визуальному стилю существующего сайта.

6.Безопасность:
Реализация мер безопасности для защиты данных администратора и пользователей.
Создание механизма резервного копирования данных для предотвращения потери информации.

7.Платёжные системы:
Бронирование осуществляется бесплатно и без предоплат. Однако, должна оставаться техническая возможность в дальнейшем прикрутить предоплату при бронировании, если это понадобится.

8.Разработка:
Подробно закомментировать код для облегчения понимания функций и структуры кода.
Разработка должна вестись итеративно: с регулярным просмотром и обсуждением промежуточных результатов.

9.Документация:
Предоставить документацию по использованию и администрированию.
Опубликован 27.11.2023 в 18:58

Выберите способ верификации:

Обновите страницу после прохождения верификации.