Я пытаюсь построить систему бронирования, и мне нужна помощь со структурой данных. Цель состоит в том, чтобы выбрать bookingTimeStart и bookingTimeEnd, чтобы выполнить поиск, чтобы найти магазин, у которого есть этот доступный временной интервал.
Я вижу, что можно запросить firebase только по одному параметру, и я подумал, что я мог бы объединить времена уже BookedStart и уже BookedEnd в один параметр, который я буду хранить в дочернем магазине / бронированиях, и использовать его для сравнения, как предложено в этом посте:
Запрос на основе нескольких предложений where в Firebase .
Я не уверен, является ли это правильным подходом для достижения того, что я ищу, или есть лучший способ сделать это, и как применить предложенный метод № 2 к временному интервалу. Я мог бы просто создать параметр, который отражает запеченное время, например Booked Time: 1000_1100
, означающее с 10:00 до 11:00, и запросить совпадение с моим временем поиска. Проблема в том, что, если мой поиск с 10:00 до 10:30, я получу searchTimeSlot: 1000_1030
, который не будет видеть 1000_1100 как недоступный временной интервал, и не отфильтрует этот магазин из доступных магазинов для моего бронирования. , Буду признателен за любые предложения о том, как решить проблему.