Skip to content
功能特色定价方案合作伙伴博客帮助关于我们联系我们
免费开始登录
返回博客
guides2026-09-256 分钟阅读

多模式下单:QR、服务员与电话同桌共存

埃斯基谢希尔:5 人聚餐,2 人 QR,2 人服务员 POS,1 人电话。月 2300 单汇入同一 session。原子写与竞态控制。

th

thMenu Team

thmenu.com

埃斯基谢希尔某周五晚:五人围坐,两人扫 QR 下单,两人通过服务员 POS,第五位电话加单外带。三条通道,一张桌,一张账——并且每月 2300 单干净地落入同一个 table_session

单 session、多源

每桌开启 1 小时 TTL 的 table_session。QR、POS、电话共享同一个 session_token;order_source 字段记录来源。

收银对账时间从 40–50 分钟降到 3 分钟

原子写入

并发 POST 由 crypto.randomUUID() 生成的 Idempotency-Key 与 D1 原子 db.batch() 解决。

  • QR、POS 同步写不冲突。
  • 服务端强制权威价格。
  • Shadowban 按来源独立校验。

"统一订单"的工程答案

具体落地:order_source 枚举、共享 table_session_id 外键、按来源着色的 KDS 卡片。电话蓝色,QR 绿色。

长者偏好让服务员代下,捕获了 QR 单独会丢失的 18% 使用率。

FAQ

电话单怎样并入正确的 session? 服务员选桌号;已有开放 session 则复用,否则新建。

两个 QR 同时加同一道菜? 生成两行 order_item、两张 KDS 卡——刻意如此。

1 小时 TTL 到期会怎样? 仍开账单的 session 保留;04:00 UTC cron 只清理已关闭 session。

觉得有用?分享给朋友。