2010-05-07 2 views
1

Я делаю механизм бронирования по назначению врача, где в кабинетах для врачей назначаются интервалы в 30 минут каждый ... я достиг всего рабочего кода .. 1 проблема, с которой я столкнулся, заключается в том, что .. это резервирование производится в 2-х местах, т. е. 2 приема. Также, когда 1 выбирает слот (радиокнопка), еще не подтвержденный и сохраненный в DB.другой прием не может быть выбран. Как я могу это сделать. .. как я ухожу.проблема с выбором слота

ответ

0

В сущности,

  • Я просто попросить слот тайминги первоначальными, а остальные детали позже.

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

  • В случае, если он недоступен, он получит небольшое уведомление о том, что этот слот недоступен, нажмите, чтобы увидеть доступные слоты.

Я бы поехал с AJAX (если это веб-приложение). Это проблема распределенных систем, которая напоминает проблему Blue Army - White Army.

1

Я хотел бы использовать некоторые функции AJAX/AJAJ периодически обновлять данные о наличии свободных слотов, или я бы сделать это гораздо проще - при сохранении назначения, просто проверить его, если слот будет ваше приложение перенаправляет пользователя обратно в форму, чтобы выбрать другой слот.

0

Добавить поле «Заблокировано» на стол. При бронировании слота, сделать что-то вроде:

UPDATE tablename 
SET LockedBy = userid, ... 
WHERE LockedBy IS NULL 

После обновления, вы можете выбрать, чтобы увидеть, если LockedBy установлен на ваш идентификатор пользователя. Если нет, то кто-то другой должен был избить вас до удара, и вам нужно сказать пользователю, чтобы выбрать другой слот.

+0

не может быть асинхронным с обновлением или вставкой столбца в таблицу ... при щелчке на кнопках переключателя высылают некоторые сообщения на сервер и делают это. – Hacker

+0

Вы можете использовать AJAX для отправки запроса от пользователя на сервер. Однако вам нужен какой-то централизованный механизм, который поддерживает потокобезопасные, атомные операции для блокировки. БД - это простое место для этого, потому что оно построено для поддержки атомных операций в потокобезопасном режиме. – mbeckish

Смежные вопросы