Управление очередями и прогнозы с Ruby on Rails - PullRequest
1 голос
/ 12 декабря 2011

Я создаю приложение для управления рестораном с помощью Rails, и я немного застрял, когда дело доходит до предсказания, когда столы могут открыться для гостей в списке ожидания.

Типичный пример: , если мы упростим и предположим, что в ресторане 10 столов на одного человека, и что они все заняты прямо сейчас, и в списке ожидания есть 10 отдельных посетителей сколько еще одиннадцатому человеку придется ждать своего стола, если предположить, что каждый посетитель останется на 30 минут?

Я не ищу фактический код для такого рода проблем, * но я был бы признателен за советы о том, на что посмотреть / рассмотреть.

Это какая-то очередь FIFO? Должен ли я смотреть на теорию множеств? Теория сетей? Существуют ли какие-либо stdlibs, которые могут помочь в создании такой системы?

Заранее спасибо за помощь!

* но если там есть соответствующий код, я, конечно, буду рад его увидеть!

1 Ответ

1 голос
/ 12 декабря 2011

Вы можете создать модель таблицы. Эта модель имеет флаг (логическое значение) - занят и свободен. Каждый раз, когда клиент занимает и освобождает стол, система должна соответствующим образом изменить этот флаг. Эта функция автоматически изменит время updated_at в базе данных. Таким образом, в случае, если таблица занята, тогда время выпуска будет updated_at + 30 минут. Далее вы можете попросить все таблицы рассчитать ближайшее время освобождения таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...