📅 daily_dishes 表 - 每日菜品表

记录每日餐段(早中晚)的菜品安排

📋 表结构信息

💡 重要业务规则

未存库菜品验证:在保存数据到daily_dishes表时,系统会检查是否存在未存库菜品(即dish_id为空的菜品)。

保存限制:如果存在未存库菜品,系统将禁止保存操作,确保保存到daily_dishes表的数据都是已存在于dishes表中的有效菜品。

前端标识:未存库菜品在前端界面中会以绿色边框标识,已存库菜品以黄色边框标识。

字段名 数据类型 作用 默认值 注释
id int PRIMARY KEY, AUTO_INCREMENT - 主键ID
meal_type varchar(100) 早,中,晚餐 - 餐次类型
dish_name varchar(100) 菜品名,和dishes库表关联 - 菜品名称
dish_id int 和dishes.id关联 - 菜品ID
menu_date int 出品日期 - 菜单日期
created_at datetime NULL CURRENT_TIMESTAMP 创建时间
updated_at datetime NULL CURRENT_TIMESTAMP ON UPDATE 更新时间

🔗 表关系

关联关系

dish_id 字段关联到 dishes 表的 id 字段,用于获取菜品详细信息

业务逻辑

此表用于记录每日菜单的菜品安排,通过 menu_date 字段区分不同日期的菜单

💾 建表SQL

CREATE TABLE `daily_dishes` ( `id` int NOT NULL AUTO_INCREMENT, `meal_type` varchar(100) COLLATE utf8mb4_general_ci NOT NULL, `dish_name` varchar(100) COLLATE utf8mb4_general_ci NOT NULL, `dish_id` int NOT NULL, `menu_date` int NOT NULL, `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci

📝 业务说明

daily_dishes 表用于管理每日菜单的菜品安排:

  • 记录不同餐次(早餐、午餐、晚餐)的菜品安排
  • 通过 dish_id 关联到 dishes 表获取菜品详细信息
  • menu_date 字段用于区分不同日期的菜单
  • 支持菜品名称的冗余存储,便于快速查询
  • 自动维护创建和更新时间