Skip to content

jncdke/menu_generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍽️ 智能食堂菜单生成系统 (Smart Cafeteria Menu Generator)

Version Python Flask PostgreSQL

🌟 项目简介

本项目是一款专为大型机构/公司食堂设计的智能排餐系统。它将传统的、极其琐碎的“排菜单”工作,从手工 Excel 录入进化为“一键生成、智能平衡、自动导出”的数字化流程。

系统通过算法自动规避菜品连续重复,智能搭配大荤、小荤与素菜,并深入分析 1700+ 道菜品的口味属性,确保菜单的丰富性与科学性。


✨ 核心功能

1. 🚀 蓝图驱动生成引擎 (v3.0 Blueprint Engine)

  • 模组化规划:支持 MENU_BLUEPRINT 配置,精准控制每日各坑位的菜品属性(如:周一 7元大荤必须是海鲜)。
  • 智能权重分配:基于历史使用频率(Frequency)进行加权算法选菜,确保“热门菜”与“冷门菜”的科学配比。
  • 自动对齐逻辑:全自动处理周一至周日的日期对齐,支持快捷键选择“下周”或“隔周”。

2. 🍱 极致 UI/UX 菜库管理 (Modern Interface)

  • Horizontal Stream (水平流):子分类采用左右横向滚动,极大地节省了垂直空间,移动端单手操作体验极佳。
  • Compact View (紧凑模式):默认隐藏详细标签,点击即点亮,实现高信息密度的交互体验。
  • 分类折叠:支持各大类的一键收起/展开,快速定位所需分类。

3. 🛠️ 智能操作中心 (Smart Control Hub)

  • 秒级替换:在菜单预览页点击任意菜品,即可在 1700+ 菜库中进行模糊提示搜索并一键替换。
  • 无感新增:支持在搜索不到时“原地创建”新菜品,系统会自动判断荤素及肉类并存入库。
  • 防重复机制:严格的重名检查,确保数据纯正。

4. 📊 数据监控面板 & 备份

  • 全景展示菜品总数、可用状态及历史方案分布。
  • 离线安全:页面底部集成“菜库全量备份”功能,一键导出 .xlsx 文件进行离线核对。

🧠 核心算法逻辑 (Core Logic v3.0)

本系统的生成引擎遵循“模组为基、约束为王、概率加权”的原则:

1. 蓝图引导下的三级回退算法

为了保证菜单的平衡性且 100% 生成成功,系统采用逐级降级策略:

  • Level 1 (严格匹配):符合蓝图定义的子类 (如: 海鲜) + 21天避重限制 + 同日食材规避。
  • Level 2 (降级匹配):如果 Level 1 选不到菜,则撤销“同日食材规避”,保留子类一致。
  • Level 3 (兜底逻辑):如果该子类无可用菜,则撤销子类限制,在所属价格大类下随机选取(确保方案不报错)。

2. 热门菜权重系统

  • 公式选取概率 ∝ (历史使用频率 + 1)
  • 效果:系统会自动学习用户的偏好。历史菜单中出现次数越多的“热门高频菜”,在生成新菜单时被选中的几率越大,越贴近真实厨房运作。

3. 活性筛选与避重

  • 21天隔离期:同一道菜在三周内不会重复出现。
  • 食材互斥:当日午餐若有“牛腩”,则午晚餐全天的选菜池将自动剔除所有以“牛”为主料的菜品。

📱 移动端深度优化

  • Segmented Toggle:针对手机端设计的餐次切换器,单手滑动即可切换早餐/正餐。
  • Interactive Cards:生成页面的日期选择器进化为“一站式交互卡片”,点击预览框即可调出中文日历,布局极简。
  • Glassmorphism Header:半透明毛玻璃效果的导航头,提升视觉档次感。

🛠️ 技术栈

  • 后端: Python 3.8+ / Flask (轻量级 Web 框架)
  • 数据库: PostgreSQL (已完成从 SQLite 的平滑迁移,支持高并发查询)
  • 前端: 原生 JS + Vanilla CSS (极致响应速度) / Flatpickr (已完成周一首发及全面汉化)
  • 数据处理: Pandas / Openpyxl (处理 Excel 复杂逻辑)

📂 项目结构

menu_generator/
├── app.py              # Web 应用 API 与路由控制
├── database.py         # PostgreSQL 连接池与 DB 抽象层
├── menu_generator.py   # v3.0 蓝图驱动生成算法
├── templates/          # HTML 模板 (极简主义设计)
├── utils/              # 生产力工具 (包含 10 轮数据整理脚本)
├── assets/             # 系统资产
├── data/               # 业务配置与映射字典
├── output/             # 每日 Excel 导出暂存
└── archive/            # 历史历史版本备份

📈 愿景说明

我们致力于打造一个**“不仅是工具,更是一个懂厨师长、懂员工胃口的智能主厨”**。未来的版本将引入更深层级的口味动力学(Flavor Dynamics),实现自动屏蔽“过咸”、“过辣”的一天,让食堂管理彻底进入智能数字化时代。


空管食堂菜单生成系统
让排菜更简单,让饮食更健康

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published