咖啡培训师:高峰出杯排序训练工具——随机发三张杯单,学员排出制作顺序,工具按本店规则打分
请为我编写一个单文件 HTML 的咖啡店高峰出杯排序
训练工具,浏览器直接打开就能用,不联网、不装依赖。
背景写进工具说明:新咖啡师的瓶颈不是单品制作,是
多单并行时的排序决策——手里三张单、一台意式机、
一个手冲位,先做哪个、什么时刻切换,决定出杯节奏
差多少。工具随机发单,学员排序,工具模拟出结果。
核心玩法(循环):
1. 点「发单」:随机生成【2-4】张单,共【6-12】杯,
每杯带类别(意式热饮 / 意式冰饮 / 手冲 /
预制冷萃 / 热茶)和制作参数(见规则区)
2. 学员把杯拖进「制作序列」,可分组(同组视为
一段连续动作,如双杯同款一次萃取)
3. 点「模拟」:工具按规则逐杯推演时间,输出——
每单的完成时刻、最后一杯完工总时长、先来单的
平均等待、违规点列表
4. 工具自算一个参考排序(贪心模拟即可),和学员
的结果并列显示总时长差;两套结果都可逐杯回放
5. 连做【5】轮,给一页小结:平均超时百分比、
最常犯的违规类型
规则区(学员排序的判分依据,全部可编辑):
- 每杯制作时长(分钟):意式【3】、手冲【6】、
预制冷萃【1】、热茶【2】——按本店实测改
- 并行规则:意式机同时可做【2】杯;手冲等待期间
人可离开去做别的杯;预制冷萃开盖即出
- 排序判分规则(违规各扣分并点名):
a. 长等待工序(手冲)未在其他工序之前启动
b. 同单同款杯未合并萃取
c. 冰饮基底未在热饮奶泡之前备好
d. 后单先完工而先来单未完整交付(顺序颠倒)
- 单据到达设定:可开「陆续发单」模式,模拟中途
新单插进来的重排判断
限制(写给编码代理):
- 规则区的时长与并行参数全部是可编辑默认值,
界面上明确标注「按本店实测修改」,不冒充
标准答案
- 参考排序只是工具按规则贪心算出来的一种解,
界面用语是「参考」,不得写成「最优解/正确
答案」——学员可能排出总时长相同的不同顺序,
这算平局,不算错
- 单文件、中文界面、无需保存账号,练习记录只存
localStorage,打印友好
为什么这样写
这个工具练的技能在真实门店里只能用高峰时段的真订单练,代价是客人——每一单排错序,埋单的都是排在后面的顾客。模拟器的价值是把决策从营业时间里摘出来:学员在工具里犯的错,一次点击就能重放看到后果,而在吧台上同样的教训要用一单客诉来教。判分规则全部指向真实的排序原理(长工序先启动、可并行不空等),而不是「先来后到」的道德直觉——后者恰恰是新手默认会做错的地方。
参考排序被严格降格为「参考」而不是「正确答案」,是这个工具最要紧的一条设计:调度问题里常有多个总时长相同的顺序,如果工具宣称唯一最优,培训师就会把「背出工具的顺序」当成达标,学员学到的是模仿而不是判断。允许平局、并列显示两种排序的推演过程,把教学焦点留在「为什么这样排也行」的讨论上。
制作时长全部做成可编辑默认值,理由和订货节奏工具一脉相承:意式三分钟还是两分钟、手冲占不占人,各店机型和动线差得很远。工具自带一套「合理的初始值」让打开就能练,但界面上明写「按本店实测修改」——培训师改完数字,工具模拟出的就是这个店自己的高峰。
变量
| 变量 | 说明 |
|---|---|
| 各类杯制作时长 | 按本店实测填写的分钟数,模拟与判分的基准 |
| 并行参数 | 意式机同时可做的杯数、手冲等待是否脱手 |
| 发单规模 | 每轮单数与总杯数的随机范围,难度旋钮 |
| 判分规则 | 四条排序判分规则的启用与扣分权重,可按本店动线增删 |