
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.11.2015, 13:01
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
Возникла потребность создать что-то вроде системы бронирования некоего объекта на часовые слоты. Пусть это будет бассейн. То есть, пользовать может забронировать бассейн на определенное кол-во часов и в это время другой пользовать не может этого сделать, то перекрытия во времени не допускаются. Как это лучше сделать? Я думаю так: 3 таблицы и будет еще job запускаемый раз в день, который будет вставлять данные в таблицу available_slots: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 1) Это допустимая схема? Мне не нравится то, что прийдется как-то "вычитать" из available_slots те значения, которые уже есть в users_bookings (то есть те временные слоты, которые уже забронированы), чтобы отобразить на UI в календаре 2) А что если пользовать отменит бронирование, как это лучше сделать? Удалять эти значения из available_slots или возвращать их available_slots или помечать флагом (is_canceled) в available_slots? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 13:22
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
MS SQL? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 13:25
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
Dimitry Sibiryakov, без разницы, мне нужно просто спроэктировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 13:26
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
может сделать вот так? Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 14:01
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
Daroomaбез разницы, мне нужно просто спроэктировать. Тогда всего одна таблица: список доступных часовых слотов на 10 лет вперёд: Код: sql 1. При резервации в поле заносится ссылка на клиента. Всё. Конфликты резервации разруливаются на уровне приложения через update conflict или блокировку таблицы. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 14:20
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
Darooma, Если разбиение на слоты у Вас не меняется постоянно - лучше сделать slot_template (slot_id, time) и user_booking (slot_id, date, user_id) - т.е. хранить информацию "на 31/10 клиент забронировал периоды 10:00-11:00, 11:00-12:00 и 12:00-13:00". Не нужно никакого job-а, запрос "свободные слоты на дату" - тривиален. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 14:26
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
Кот Матроскин, а при отмене бронирования просто удалять запись? Или помечать удаленной? Как лучше в общем случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2015, 14:48
|
|||
|---|---|---|---|
|
|||
База для бронирования доступности бассейна (или чего-то еще) |
|||
|
#18+
DaroomaКот Матроскин, а при отмене бронирования просто удалять запись? Или помечать удаленной? Как лучше в общем случае? От задач зависит. Если Вы хотите знать, что такой-то слот клиент бронировал, а потом отменил (например, для рейтинга надежности клиентов) - сохраняйте и помечайте, если это никому не нужно - какой смысл тратить место в базе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=32&mobile=1&tid=1540448]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
187ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 254ms |
| total: | 536ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...