点餐小程序系统
这是一个完整的餐饮点餐系统,支持多端发布(微信小程序、H5、APP等8个平台),包含用户端小程序、商家管理后台、平台管理后台和收银台系统。系统支持外卖配送、店内就餐、打包带走等多种就餐方式,采用前后端分离架构,适合作为餐饮行业数字化解决方案或计算机设计参考。
项目说明
点餐小程序系统
项目简介
这是一个完整的餐饮点餐系统,支持多端发布(微信小程序、H5、APP等8个平台),包含用户端小程序、商家管理后台、平台管理后台和收银台系统。系统支持外卖配送、店内就餐、打包带走等多种就餐方式,采用前后端分离架构,适合作为餐饮行业数字化解决方案或计算机设计参考。
技术栈
后端技术
| 技术 | 版本/说明 |
|---|---|
| 运行环境 | Java 1.8+ |
| 开发框架 | Spring Boot 2.3.12.RELEASE |
| ORM框架 | MyBatis-Plus 3.4.1 |
| 数据库 | MySQL 5.7/8.0 |
| 缓存 | Redis |
| 安全框架 | Spring Security |
| 项目管理 | Maven |
| API文档 | Knife4j 2.0.2 / Swagger 2.9.2 |
| 工具库 | Hutool 5.2.4, Lombok, Guava |
管理后台技术
| 技术 | 版本/说明 |
|---|---|
| 前端框架 | Vue 3.x |
| UI组件库 | Element Plus |
| 构建工具 | Vite |
| HTTP请求 | Axios |
| 代码规范 | ESLint + Prettier |
小程序端技术
| 技术 | 版本/说明 |
|---|---|
| 开发框架 | uni-app |
| 开发语言 | Vue 3 + JavaScript |
| 跨平台支持 | 微信小程序、H5、APP等8个平台 |
第三方服务
| 服务 | 说明 |
|---|---|
| 微信支付 | 支持V2/V3版本 |
| 支付宝支付 | 支持在线支付 |
| 云存储 | 七牛云、阿里云OSS、腾讯云COS |
| 短信服务 | 阿里云短信、腾讯云短信 |
| 物流查询 | 快递100 |
项目特点
- 多端发布:一套代码发布到8个平台(微信小程序、H5、APP等)
- 前后端分离:后端提供RESTful API,前端独立开发部署
- 多种就餐方式:支持外卖配送、店内就餐、打包带走、上门自取
- 完整支付流程:支持微信支付、支付宝支付、余额支付
- 优惠营销:优惠券、满减活动、积分抵扣
- 订单管理:完整的订单状态流转和售后处理
- 商家管理:支持单店版和连锁店版
- 数据统计:订单统计、销售分析、商品分析
功能模块
用户端小程序功能
1. 首页模块
- 轮播图展示
- 商品分类导航
- 热门商品推荐
- 优惠活动展示
- 搜索功能
2. 商品模块
- 商品分类浏览
- 商品详情查看
- 商品规格选择(尺寸、温度、加料等)
- 商品属性选择
- 加入购物车
- 立即购买
3. 购物车模块
- 购物车商品列表
- 商品数量修改
- 商品删除
- 全选/取消全选
- 价格计算
- 去结算
4. 订单模块
- 订单确认
- 订单列表(全部/待付款/待收货/已完成)
- 订单详情
- 订单支付
- 订单取消
- 订单评价
- 售后申请
5. 就餐方式选择
- 外卖配送(选择收货地址)
- 店内就餐(选择桌号)
- 打包带走
- 上门自取(选择门店)
6. 优惠营销
- 优惠券领取和使用
- 满减活动
- 积分抵扣
- 会员折扣
7. 个人中心
- 用户信息管理
- 收货地址管理
- 我的订单
- 我的优惠券
- 我的积分
- 系统设置
商家管理后台功能
1. 首页仪表盘
- 数据统计概览
- 订单趋势图表
- 销售分析
- 商品排行
2. 商品管理
- 商品分类管理
- 商品列表
- 新增/编辑/删除商品
- 商品规格管理(SKU)
- 商品属性管理
- 商品加料管理
- 商品库存管理
- 商品上下架
3. 订单管理
- 订单列表
- 订单详情
- 订单状态管理
- 订单发货
- 订单打印
- 售后处理
4. 营销管理
- 优惠券管理
- 满减活动
- 积分规则
- 会员等级
5. 门店管理
- 门店信息
- 营业时间设置
- 配送范围设置
- 桌号管理
6. 财务管理
- 订单收入统计
- 提现管理
- 财务报表
7. 系统设置
- 基础设置
- 支付设置
- 配送设置
- 短信设置
- 云存储设置
平台管理后台功能(连锁版)
1. 应用管理
- 应用列表
- 应用配置
- 支付配置
- 小程序配置
2. 商家管理
- 商家列表
- 商家审核
- 商家信息管理
3. 订单管理
- 全平台订单查看
- 订单统计分析
4. 财务管理
- 平台收入统计
- 商家结算
- 提现审核
收银台系统功能
1. 点餐收银
- 快速点餐
- 商品搜索
- 购物车管理
- 订单结算
- 支付收款
2. 订单管理
- 当日订单
- 订单查询
- 订单打印
3. 会员管理
- 会员查询
- 会员充值
- 会员消费记录
项目结构
ordering-mini-program/
├── all/ # 项目主目录
│ ├── db/ # 数据库文件
│ │ └── init.sql # 数据库初始化脚本
│ │
│ ├── jjj_food_chain/ # 后端服务(Spring Boot)
│ │ ├── boot-admin/ # 管理模块
│ │ ├── bootstrap/ # 启动模块
│ │ ├── config/ # 配置模块
│ │ ├── generator/ # 代码生成器
│ │ ├── jjj-admin/ # 平台管理端
│ │ ├── jjj-common/ # 公共模块
│ │ ├── jjj-front/ # 用户端API
│ │ ├── jjj-job/ # 定时任务
│ │ ├── jjj-shop/ # 商家端API
│ │ └── pom.xml # Maven配置
│ │
│ ├── jjj_food_chain_admin/ # 平台管理后台(Vue3 + Element Plus)
│ │ ├── public/ # 静态资源
│ │ ├── src/
│ │ │ ├── api/ # API接口
│ │ │ ├── assets/ # 资源文件
│ │ │ ├── components/ # 公共组件
│ │ │ ├── router/ # 路由配置
│ │ │ ├── store/ # 状态管理
│ │ │ ├── utils/ # 工具函数
│ │ │ ├── views/ # 页面视图
│ │ │ ├── App.vue # 根组件
│ │ │ └── main.js # 入口文件
│ │ ├── package.json
│ │ └── vite.config.js # Vite配置
│ │
│ ├── jjj_food_chain_shop/ # 商家管理后台(Vue3 + Element Plus)
│ │ ├── public/ # 静态资源
│ │ ├── src/
│ │ │ ├── api/ # API接口
│ │ │ ├── assets/ # 资源文件
│ │ │ ├── components/ # 公共组件
│ │ │ ├── router/ # 路由配置
│ │ │ ├── store/ # 状态管理
│ │ │ ├── utils/ # 工具函数
│ │ │ ├── views/ # 页面视图
│ │ │ ├── App.vue # 根组件
│ │ │ └── main.js # 入口文件
│ │ ├── package.json
│ │ └── vite.config.js # Vite配置
│ │
│ └── jjj_food_chain_app/ # 用户端小程序(uni-app)
│ ├── common/ # 公共资源
│ ├── components/ # 自定义组件
│ ├── env/ # 环境配置
│ ├── pages/ # 页面目录
│ │ ├── index/ # 首页
│ │ ├── product/ # 商品页
│ │ ├── cart/ # 购物车
│ │ ├── order/ # 订单页
│ │ └── user/ # 个人中心
│ ├── static/ # 静态资源
│ ├── store/ # 状态管理
│ ├── utils/ # 工具函数
│ ├── App.vue # 应用入口
│ ├── main.js # 入口文件
│ ├── manifest.json # 应用配置
│ ├── pages.json # 页面配置
│ ├── package.json
│ └── vite.config.js # Vite配置
│
├── 图片/ # 项目截图
└── README.md # 项目说明
数据库设计
核心数据表
- jjjfood_admin_user - 超管用户表
- jjjfood_app - 应用配置表
- jjjfood_app_wx - 微信小程序配置表
- jjjfood_user - 用户表
- jjjfood_product - 商品表
- jjjfood_product_sku - 商品规格表
- jjjfood_product_attr - 商品属性表
- jjjfood_product_feed - 商品加料表
- jjjfood_category - 商品分类表
- jjjfood_cart - 购物车表
- jjjfood_order - 订单表
- jjjfood_order_product - 订单商品表
- jjjfood_order_address - 订单地址表
- jjjfood_coupon - 优惠券表
- jjjfood_coupon_user - 用户优惠券表
- jjjfood_shop_supplier - 门店表
- jjjfood_shop_table - 餐桌表
- jjjfood_message - 消息模板表
- jjjfood_message_settings - 消息设置表
运行环境要求
后端环境
- JDK 1.8+
- Maven 3.6+
- MySQL 5.7/8.0
- Redis 5.0+
管理后台
- Node.js 14.0+
- npm 或 pnpm
- 现代浏览器(Chrome、Firefox、Edge等)
小程序端
- HBuilderX(推荐)或微信开发者工具
- Node.js 14.0+
- 需要有效的微信小程序AppID
快速开始
1. 数据库配置
- 创建MySQL数据库
CREATE DATABASE jjj_food CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
- 导入数据库文件
mysql -u root -p jjj_food < all/db/init.sql
- 修改数据库配置
编辑
all/jjj_food_chain/bootstrap/src/main/resources/application-dev.yml:
spring:
datasource:
url: jdbc:mysql://localhost:3306/jjj_food?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: root
password: your_password # 修改为你的密码
2. 启动后端服务
# 进入后端目录
cd all/jjj_food_chain
# 编译打包
mvn clean package -DskipTests
# 运行
java -jar bootstrap/target/jjj-food-1.0.jar
后端服务默认运行在 http://localhost:8080
3. 启动平台管理后台
# 进入平台管理后台目录
cd all/jjj_food_chain_admin
# 安装依赖
npm install
# 或使用pnpm
pnpm install
# 启动开发服务器
npm run dev
平台管理后台默认运行在 http://localhost:5173
4. 启动商家管理后台
# 进入商家管理后台目录
cd all/jjj_food_chain_shop
# 安装依赖
npm install
# 或使用pnpm
pnpm install
# 启动开发服务器
npm run dev
商家管理后台默认运行在 http://localhost:5174
5. 运行小程序
方式一:使用HBuilderX(推荐)
- 打开HBuilderX
- 文件 → 导入 → 从本地目录导入
- 选择
all/jjj_food_chain_app目录 - 运行 → 运行到小程序模拟器 → 微信开发者工具
方式二:使用微信开发者工具
- 打开微信开发者工具
- 选择"导入项目"
- 选择
all/jjj_food_chain_app目录 - 填入AppID
- 点击"导入"
6. 配置小程序API地址
编辑 all/jjj_food_chain_app/env/env.js:
// 开发环境
const dev = {
baseUrl: 'http://localhost:8080', // 修改为你的后端地址
imgUrl: 'http://localhost:8080',
};
// 生产环境
const prod = {
baseUrl: 'https://your-domain.com',
imgUrl: 'https://your-domain.com',
};
默认账号
平台管理后台
- 用户名:admin
- 密码:admin123
商家管理后台
- 用户名:shop
- 密码:shop123
小程序端
- 支持微信授权登录
- 或使用手机号登录
版本说明
开源版(单店版)
- ✅ 完整的点餐功能
- ✅ 商品管理
- ✅ 订单管理
- ✅ 优惠券系统
- ✅ 会员管理
- ✅ 基础统计
商业版(连锁版)
- ✅ 开源版所有功能
- ✅ 多门店管理
- ✅ SAAS平台
- ✅ 收银台系统
- ✅ 供应商管理
- ✅ 高级统计分析
- ✅ 营销工具
- ✅ 技术支持
部署建议
服务器配置
- CPU: 2核+
- 内存: 4GB+
- 硬盘: 50GB+
- 带宽: 5Mbps+
- 操作系统: Linux(推荐CentOS 7+/Ubuntu 18.04+)
部署环境
- 推荐使用宝塔面板进行部署
- Nginx作为反向代理
- 配置HTTPS证书
- 配置域名解析
性能优化
- 开启Redis缓存
- 配置CDN加速
- 数据库索引优化
- 图片压缩和懒加载
扩展建议
如需进一步完善项目,可考虑以下扩展:
- 外卖配送:接入第三方配送平台(美团、饿了么)
- 排队叫号:店内排队叫号系统
- 会员卡:实体会员卡和电子会员卡
- 预约订餐:提前预约就餐时间
- 多语言支持:国际化多语言
- 数据分析:更详细的数据分析和报表
- 营销工具:拼团、秒杀、砍价等
- 供应链管理:进销存管理
- 员工管理:员工排班、绩效考核
- 客户关系管理:CRM系统
注意事项
- 本项目为学习演示项目,部分数据为模拟数据
- 生产环境部署需要配置HTTPS
- 小程序上线需要完成微信认证和相关资质审核
- 涉及支付功能需要申请支付接口
- 建议定期备份数据库数据
- 商业使用请购买商业版授权
常见问题
Q: 数据库连接失败?
A: 检查MySQL服务是否启动,数据库配置是否正确,防火墙是否开放3306端口
Q: 后端启动失败?
A: 检查JDK版本是否正确,Maven依赖是否下载完整,端口是否被占用
Q: 前端无法访问后端?
A: 检查后端服务是否启动,API地址配置是否正确,跨域配置是否正确
Q: 小程序无法请求后端?
A: 检查env.js中的baseUrl配置,开发时需在微信开发者工具中关闭"不校验合法域名"
Q: 支付功能无法使用?
A: 需要配置微信支付商户号和密钥,测试环境可以使用模拟支付
Q: 图片无法显示?
A: 检查图片路径是否正确,云存储配置是否正确
技术支持
许可证
本项目开源版遵循MIT License,商业使用请购买商业版授权。
祝您使用愉快! 🍔🍕🍜
技术分类
包含内容
适用人群
学习参考与二次开发
关于 AI源码
AI源码 专注优质项目源码分享,提供完整源码、详细文档与技术支持,助力源码设计与课程作业。
相关推荐
查看全部 →
冰淇淋小程序
这是一款以唐朝文化为主题的冰淇淋电商微信小程序,采用纯原生微信小程序开发,无需后端服务,所有数据存储在本地。小程序融合了中国传统文化元素,将冰淇淋产品与唐朝名胜、诗词意境相结合,打造独特的文化消费体验。

小程序点餐系统(单店版)
这是一个完整的微信小程序点餐系统(单店版),包含用户端小程序、商家端小程序和后端服务。系统实现了在线点餐、购物车、订单管理、优惠券、微信支付、实时通知等核心功能,采用前后端分离架构,适合作为餐饮类小程序全栈开发学习项目或计算机设计参考。

奶茶点餐小程序
这是一个仿奶茶品牌的微信小程序,采用 UniApp 框架开发,使用本地Mock数据模拟后端接口。项目完整实现了奶茶点餐、取餐、会员系统、积分商城、订单管理、地址管理等核心功能,适合作为微信小程序开发学习项目或计算机设计参考。

凤梨系列奶茶点餐小程序
这是一个完整的前后端分离奶茶点餐系统,包含微信小程序(用户端)、商家后台管理系统(Admin端)和后端服务(Express)。项目实现了完整的奶茶点餐业务流程,支持到店取餐和外卖配送,适合作为全栈开发学习项目或计算机设计参考。