【发布时间】:2017-01-22 12:57:45
【问题描述】:
我正在使用平台 - MarketPlace 进行预订。 有专业人士创造可用性。可用性是通过时间段创建的,例如上午 8:00 到下午 5:00。它是保存在 mongodb 中的时间段。 客户选择 1 小时的时间段。 (客户的日历是动态生成的,周期为 1Hour)例如: 上午 8:00 至下午 5:00 期间有:上午 8:00-9:00、上午 9:00-上午 10:00 等......
因此不可能有 2 个客户同时预订同一时间段。
当客户选择一个时期并点击«预订按钮“时,预订对象被保存在会话中。客户购买此预订并在预订对象保存在预订集合后。
如何“锁定”第一个客户选择的期间,防止第二个客户想要保留相同的期间?
以及如何将计时器固定为 10 分钟,如果“可用性”期间没有付款,则在日历中解锁该期间?如何创建与服务器同步的计时器并在超时到期时重定向到主页? 我必须创建一个正在进行预订的临时集合吗?或者将对象预订保存在我的收藏预订中,状态为“进行中”?
我使用 symfony 3 和 mongodb 与学说。
谢谢。
【问题讨论】:
标签: php mongodb concurrency doctrine-orm symfony