Приложение для бронирования: как сохранить доступность?

Я создаю приложение для бронирования, где люди могут записать некоторые встречи в другом календаре. бизнес-потребности следующие:

  • кто-то должен быть в состоянии настроить некоторые повторяющиеся возможности в своем календаре: каждый понедельник с 10:00 до 12:00 и с 15:00 до 18:00.
  • кто-то должен иметь возможность настроить доступность по времени: понедельник, 24 декабря, с 10:00 до 12:00 и с 15:00 до 16:00, и это должно полностью перезаписать периодическую доступность для данного дня.
  • кто-то должен иметь возможность настроить некоторые временные недоступности: понедельник, 24 декабря, с 10 до 11, и это должно быть приоритетным по доступности (повторяющимся или синхронизированным).

Принимая во внимание 3 следующих примера, в попытке бронирования в понедельник, 24 декабря, с 10 до 10:30 утра должно быть отказано.

Я борюсь с тем, как спроектировать эту систему для базы данных.

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

Будем весьма благодарны за любые советы по поводу модели календаря.

0 ответов

Другие вопросы по тегам