You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
DazedVexer 57055ca75b
项目-前端文件提交
2 months ago
backend 项目——后端文件提交 2 months ago
frontend 项目-前端文件提交 2 months ago
LICENSE Initial commit 2 months ago
README.md README文档内容修改 2 months ago

README.md

智能餐饮管理系统

项目简介

这是一个功能完整的智能餐饮管理系统,支持餐厅管理员、服务员和顾客三种角色,实现了从点餐、库存管理到数据分析的全流程管理。

技术栈

后端

  • 框架: Node.js + Express 4.18+
  • 数据库: MySQL 8.0+
  • 身份认证: JWT (jsonwebtoken)
  • 密码加密: bcryptjs
  • 文件上传: multer
  • 跨域处理: cors

前端

  • 框架: Vue.js 3
  • UI组件库: Element Plus
  • 状态管理: Pinia
  • HTTP客户端: Axios
  • 路由: Vue Router
  • 构建工具: Vite

项目结构

restaurant_system/
├── backend/                 # 后端代码
│   ├── config/             # 配置文件
│   ├── models/             # 数据库模型
│   ├── routes/             # API路由
│   ├── controllers/        # 控制器
│   ├── middleware/         # 中间件
│   ├── utils/              # 工具函数
│   ├── uploads/            # 上传文件目录
│   ├── server.js           # 应用入口
│   ├── package.json        # 后端依赖
│   └── .env                # 环境变量配置
├── frontend/               # 前端代码
│   ├── src/
│   │   ├── components/    # Vue组件
│   │   ├── views/         # 页面视图
│   │   ├── router/        # 路由配置
│   │   ├── store/         # 状态管理
│   │   ├── api/           # API接口
│   │   └── utils/         # 工具函数
│   ├── public/            # 公共资源
│   └── package.json       # 前端依赖
└── docs/                  # 项目文档
    ├── database_design.md # 数据库设计文档
    └── api_docs.md        # API接口文档

功能模块

1. 用户管理

  • 用户注册(管理员/服务员/顾客)
  • 用户登录JWT令牌认证
  • 角色权限控制

2. 菜品管理

  • 添加/修改/删除菜品
  • 菜品信息(名称、价格、图片、口味、原材料)
  • 菜品分类

3. 菜单管理

  • 按时段设置菜单(午餐/晚餐)
  • 特殊节日菜单
  • 电子菜单展示

4. 订单管理

  • 接收点餐请求
  • 订单详情记录
  • 订单状态跟踪

5. 库存管理

  • 食材进货记录
  • 食材消耗追踪
  • 库存不足提醒
  • 过期食材警告

6. 预订管理

  • 在线预订座位
  • 外卖预订
  • 查看/修改/取消预订

7. 会员管理

  • 会员信息管理
  • 积分累积
  • 优惠券发放
  • 会员专享优惠

8. 数据分析

  • 销售统计报表
  • 顾客行为分析
  • 菜品受欢迎度排行

9. 支付结算

  • 多种支付方式(模拟)
  • 订单结算
  • 电子发票生成

环境要求

  • Node.js >= 16.0.0
  • MySQL >= 8.0
  • npm >= 8.0.0

快速开始

1. 安装依赖

后端

cd backend
npm install

前端

cd frontend
npm install

2. 配置环境变量

编辑 backend/.env 文件,配置数据库连接信息:

PORT=5000
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=你的数据库密码
DB_NAME=restaurant_db
JWT_SECRET=your_super_secret_key

3. 初始化数据库

# 登录MySQL
mysql -u root -p

# 创建数据库
CREATE DATABASE restaurant_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

4. 启动项目

后端

cd backend
npm run dev

后端将运行在: http://localhost:5000

前端

cd frontend
npm run dev

前端将运行在: http://localhost:3000

5. 访问系统

打开浏览器访问: http://localhost:3000

开发进度

  • 步骤1项目初始化与环境配置
  • 步骤2数据库设计
  • 步骤3基础架构搭建
  • 步骤4用户认证系统
  • 步骤5菜品管理功能
  • 步骤6菜单管理功能
  • 步骤7订单管理功能
  • 步骤8库存管理功能
  • 步骤9预订管理功能
  • 步骤10会员管理功能
  • 步骤11支付结算功能
  • 步骤12数据分析与报表
  • 步骤13前端界面开发
  • 步骤14测试与优化

默认账户

系统初始化后会创建以下测试账户:

  • 管理员: admin / admin123
  • 服务员: waiter / waiter123
  • 顾客: customer / customer123

作者

李俊烨 冯昊 李鸿越 孙亮

许可证

MIT License