В учебных целях проектирую - сервис для бронирования услуг. БД Mongo (moongose)
Например есть парикмахерская, у нее есть Admin и есть сотрудники Specilalist
1) Admin создает компанию
2) Создает сотрудников (Specialist) в этой компании
3) У компании есть список услуг (Services) их можно привязывать к сотрудникам Specialist
4) тут провал не знаю как организовать хранение расписания (Table)
Понимаю, что расписание надо привязать к сотруднику и компании (так как компании несколько может быть и сотрудник может в нескольких работать)
Сотрудник или админ могут выставлять себе (открывать расписание) на определенные дни и устанавливать время перерыва на обед.
Также надо хранить свободные номерки (время на которое может записаться клиент, время плавающие, так как услуги с разной длительностью)
Надо хранить занятые номерки (занятый день и время)
Еще надо как то продумать чтобы фиксировать год, месяц, время бронирования клиентом.
Как должна сущность расписания выглядеть? То ли это все в одной коллекции, толи Создавать коллекцию на месяц, коллекцию день...
Ссылка на схему