牛 牛逼WIKI English

烧烤周排班表生成工具——晚市分段班、炉前技能约束、打烊组,让编码代理做个单文件排班器

适用模型:Claude / GPT-4 级别分类:烧烤店难度:高级 更新

你是一个编码代理。请为我做一个烧烤店排班主管用的单文件网页排班器
(HTML、CSS、JS 全部内联,无外部依赖、无后端、无网络请求),双击
打开就能用。烧烤排班的班次结构和约束写在下面,工具必须按这个结构做,
不要做成通用餐饮排班表。

录入三块:

一、员工档案
- 姓名、技能标签(多选:开荤炉 / 开素炉 / 穿串 / 划单 / 传菜 /
  收银 / 保洁——标签由我自定增删)、每周可用时段、每周工时上限【】、
  连续上班天数上限【】
- 每人可以标「不排深夜」或「只排深夜」这类限制

二、时段需求
- 班段由我自定义,烧烤典型是四段:备档(开档前到晚市前)、主峰
  (晚市)、深夜(收台后到打烊前)、打烊组——时段边界我填
- 每个班段设两类需求:人数下限;技能约束(如「主峰段至少 1 人会开
  荤炉、1 人会开素炉」,打烊组人数下限单设)
- 每周各天的需求可以不同(周五周六深一段、周中早收)

三、规则
- 两班之间最少休息间隔【】——打烊班的人第二天不许排早班,这条要
  作为硬约束
- 深夜时段最少安全在岗数【】,低于它整个时段标红

生成与检查:
- 一键生成周表:按技能约束优先、工时均衡其次排;生成后每个班段
  显示覆盖状态——人数够不够、荤炉素炉有没有人会开,缺什么标什么
- 我可以手动拖人换班,任何手动改动后覆盖状态即时重算——排班器的
  核心价值是「改一处、全表重查」,不是我排完再自己肉眼查一遍
- 每人汇总:本周工时、连续上班天数、深夜班次数——超上限的整行标红

导出:
- 排班表导出成一段纯文本(按天分组:日期 / 班段 / 人名),复制就能
  发到员工群
- 员工档案与需求存 localStorage,支持导出 / 导入 JSON

硬性要求:
- 零预置数据:技能标签、时段、上限、间隔全部留空由我填
- 手动改动后所有检查即时刷新,不需要点「重新检查」
- 交付单个 .html 文件,文件开头附三行使用说明

你不许做的:
- 不做自动「优化排班」的智能算法——按规则生成、按检查暴露问题,
  决定权在我
- 不加账号、云同步、外部库
- 不预置示例员工或示例时段——空表就是正确状态

为什么这样写

班段结构定为「备档—主峰—深夜—打烊」四段自定义,而不是通用的早晚班,是因为烧烤的用工曲线没法用两段近似:备档要穿串的人、主峰要炉前和传菜、深夜要能独当一面的多面手、打烊组是独立的小队。用早晚班的模板做烧烤排班,结果是每个真实需求都骑在两段的边界上,改不完的特例。时段边界留给用户填,结构焊死——工具懂烧烤的形状,但不知道这家店几点开门。

「技能约束优先于工时均衡」和「打烊次日不排早班是硬约束」,是生成规则里最关键的两条排序。人数够而技能断档是深夜事故的第一成因,所以荤炉素炉的覆盖检查优先级最高;而「改一处、全表重查」把排班器从生成工具升级成检查工具——真实的排班过程是生成、手调、再手调,每次手调都可能把某小时唯一的开炉人调走,自动重算保证主管每次改完看到的都是真实覆盖状态,这是 Excel 表永远做不到的。

每人汇总里放「深夜班次数」这个维度,是因为它最容易在工时合规之外被忽略:工时总数不超、但连排五个深夜的员工,第六天一定出状况。排班的隐性成本藏在分布里而不是总量里,工具把分布摆出来,主管才看得到。

禁止「智能优化算法」与禁止预置数据同源:排班是店里人情、通勤、体力、偏好的综合体,任何声称最优的算法都在这些不可量化的约束上瞎猜。这个工具的定位是「按硬规则生成、把违规即时标红」,决定权始终在主管——排班器越界替人做主的那天,就是员工开始拿着排班表来找算法说理的那天。

变量

变量 说明
工时与连班上限 每周工时【】、连续天数【】——与薪酬结算周期一起定
休息间隔 打烊到次日早班的最少间隔【】——按通勤距离宽严自定,定了就硬执行
深夜安全数 与预警器同口径——两个工具用同一个数,别各说各话

排班表单文件工具技能约束