江苏国信 · 自定义菜品分类方案
V1.2 评审版 · 2026-07-29 · 当前只形成方案,尚未修改代码或数据库
目标
新增运营分类
在“菜品管理”前增加“菜品分类”Tab,并贯通列表内联维护、菜品新增、查看、编辑。
关键边界
不碰营养分类
不复用 category 等现有字段,不改变菜谱、营养计算和消费策略。
推荐模型
独立表 + 单选关联
分类独立管理,菜品保存一个 custom_category_id。
推荐决策
- 新建
ydy_dishes_custom_category,按store_id隔离。 ydy_dishes新增custom_category_id,0 表示未分类。- 新建菜品必选;编辑未分类存量菜品时必须补选;历史查看允许未分类。
- 已关联分类不能删除,只能停用;停用后历史名称仍显示。
- 菜单只给国信开放,其他项目默认不展示。
页面闭环
| 页面 | 变化 | 验收重点 |
|---|---|---|
| 餐厅管理导航 | 菜谱管理 → 菜品分类 → 菜品管理 | 顺序正确、权限隔离 |
| 菜品分类 | 名称、排序、关联数、状态、修改信息;新建/编辑/启停/删除 | 重名拦截、占用不删 |
| 菜品列表 | 在现有“菜品分类”后增加“自定义分类”下拉列 | 运营可逐行修改;失败恢复原值 |
| 新增/编辑/查看 | 增加“自定义菜品分类” | 保存校验、正确回显 |
列表内联维护规则
- 列顺序固定为:菜品名称 → 菜品分类 → 自定义分类 → 菜品属性。
- 下拉只展示当前商户启用中的自定义分类,存量未分类菜品显示“请选择”。
- 选择后只更新当前菜品的分类字段;保存中禁用本行下拉。
- 成功后保留当前分页和筛选;失败时恢复原值并显示原因。
- 已停用分类保留历史回显,但不再提供给其他菜品选择。
- 无编辑权限的账号只显示分类名称,不显示操作下拉。
实施顺序
Phase 1:SQL、分类 CRUD、菜品接口契约。
Phase 2:分类管理页、列表筛选、新增/编辑/查看/复制。
Phase 3:营养与菜谱回归、权限隔离、Docker 实页验收、手册更新。
后续方案维护规则
本文档是该功能的唯一主方案。后续所有相关需求、页面、数据、接口、权限、测试、实现差异和验收结果,都持续并入同一份方案并递增版本,不能只留在聊天、代码或零散说明中。
用户最新明确口径覆盖旧口径;已确认事项不重复询问。方案更新后列出文件变更,未经用户明确要求不自动提交。
请确认的 4 项
- 同一商户分类名称是否禁止重复?
- 普通导入和 AI 导入是否本期同步增加分类?
- 除逐行下拉外,是否需要批量设置存量菜品分类?
- 是否本期同步给 H5 点餐使用?默认不包含。
确认以上范围后再进入开发,避免分类模型和导入/H5边界返工。