食堂AB餐管理系统是一个在上海学校AB餐政策出台后为更好管理AB餐的选择和领取而开发的系统。支持学生选餐、食堂管理、钉钉集成等功能。该系统针对AB餐管理的实际需求设计,提供了完整的餐食管理、用户管理以及选餐订单管理功能。
请注意,本项目仅可用于校园教育免费使用,不可商用。
- 用户管理:支持管理员、食堂工作人员、学生等多种角色
- 餐食管理:创建、更新、删除餐食,设置选餐时间和生效时间
- 选餐系统:学生可以选择A餐或B餐,支持批量选餐
- 钉钉集成:支持接入钉钉工作台与钉钉登录
- 消息通知:自动发送选餐提醒和选餐结果通知
- 取餐扫码:食堂工作人员通过扫码确认学生取餐
- 统计功能:统计全校AB餐/班级AB餐人数(在学生管理中筛选对应班级并全选可见)
- 数据导出:支持将数据导出为Excel表格
- 后端:https://github.com/itsHenry35/canteen-management-system
- 前端(管理+学生选餐):https://github.com/itsHenry35/canteen-management-system-frontend
- 食堂阿姨安卓端:https://github.com/itsHenry35/CanteenClient
- Go 1.16或更高版本
- Node.js 14.0或更高版本
- Android Studio 4.0或更高版本(用于编译安卓客户端)
- Nginx(用于反向代理配置)
- 钉钉组织管理员账号(用于钉钉集成)
# 克隆前端仓库
git clone https://github.com/itsHenry35/canteen-management-system-frontend.git
# 进入项目目录
cd canteen-management-system-frontend
# 安装依赖
npm install
# 构建项目
npm run build
编译后的文件将位于 build
文件夹中。重要:请将 static
文件夹中的 js
和 css
文件夹复制到 build
文件夹中。
# 克隆后端仓库
git clone https://github.com/itsHenry35/canteen-management-system.git
# 进入项目目录
cd canteen-management-system
# 编译后端
go build
# 在服务器上创建必要的目录结构
mkdir -p /path/to/deployment/database/migrations
# 复制编译后的后端可执行文件到部署目录
cp canteen-management-system /path/to/deployment/
# 复制前端构建文件到部署目录
cp -r canteen-management-system-frontend/build/* /path/to/deployment/frontend/
# 运行系统(初始管理员账号和密码将在终端中显示)
cd /path/to/deployment
./canteen-management-system
- 配置Nginx反向代理,将域名映射到系统默认的8080端口
- 使用初始管理员账号登录系统
- 在用户管理中添加食堂工作人员账号
- 在学生管理中批量导入学生数据
- 建议基于钉钉生成的家校通讯录表格进行修改
- 使用Excel预先准备好学生数据
- 批量生成学生二维码并打印
- 按照页面指引配置菜单管理
- 使用组织管理员账号登录钉钉开放平台
- 选择"应用开发"-"创建应用"
- 在权限管理中授予以下权限:
- 【敏感】钉钉教育家校通讯录读权限
- 通讯录个人信息读权限
- 在安全设置中配置:
- 重定向URL(回调域名):
你的域名/dingtalk_auth
- 端内免登地址:
你的域名/dingtalk_auth
- 重定向URL(回调域名):
- 在"添加应用能力"中添加"网页应用"能力,并点击配置:
- 应用首页地址:
你的域名/dingtalk_auth
- PC端首页地址:
你的域名/dingtalk_auth
- 应用首页地址:
- 在"凭证与基础信息"中:
- 开启鸿蒙系统适配选项
- 复制AgentId、AppKey、AppSecret
- 点击右上角头像,复制CorpId
- 在版本管理与发布中创建新版本
- 在食堂选餐管理系统设置中:
- 填写上述复制的四个值,并填写网站域名
- 先点击"保存设置",再点击"重建映射管理"
# 克隆安卓客户端仓库
git clone https://github.com/itsHenry35/CanteenClient
# 使用Android Studio打开项目进行编译
# 将编译好的APK文件分发给食堂工作人员使用的设备
成功部署后,管理员可以登录系统进行以下操作:
- 管理用户和学生信息
- 设置每日菜单
- 查看选餐统计和取餐记录
学生可以通过钉钉进行选餐(学生仅能看见正在进行的选餐与他们参与过的选餐),食堂工作人员可以使用安卓端APP扫描学生二维码确认取餐。
如遇到技术问题,请通过以下方式联系开发者:
- QQ: 2671230065
- 微信: itshenryz
- 邮箱:[email protected]
本项目仅可用于校园教育免费使用,严禁商业用途。