Задача

Необходимо внедрить функционал интерактивной схемы зала в существующую систему бронирования ресторанов.

Используемые технологии

  • Backend: Python, FastAPI, PostgreSQL
  • Frontend: Vue, TypeScript

Что уже реализовано

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

Что нужно сделать

  1. Интерактивная схема зала на клиенте - разработать и встроить в интерфейс бронирования визуальных редактор/виджет, на котором пользователь видит расположение столов, отмечает их занятость (по дате/времени) и может забронировать конкретный стол.
  2. Админка схемы - создать панель управления (доступную администраторам для каждого заведения), где можно настраивать:
    • чертеж зала (экранные координаты, размеры и поворот каждого стола);
    • количество мест за столом;
    • связь столов с реальными объектами базы данных.

Требования к выводу

  • Обе части (схема на карте бронирования и админка) должны работать согласованно на стороне пользователя и администратора
  • Поддерживать сохранение и загрузку схем в админке для разных ресторанов
  • Не требуется реализовывать сложный рендединг - достаточно позиционирования на сетке или SVG