# sky-take-out **Repository Path**: enough-words/sky-take-out ## Basic Information - **Project Name**: sky-take-out - **Description**: 苍穹外卖前后端项目源码 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-04 - **Last Updated**: 2026-07-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Sky Take Out - 智能点餐与餐饮管理系统 ## 📖 项目简介 Sky Take Out 是一套完整的餐饮业务管理系统,采用前后端分离架构设计。系统分为**运营后台(Admin)**和**用户端(C端)**两大模块,为餐饮商家提供从菜品管理、订单处理到数据分析的全流程解决方案,同时为顾客提供流畅的在线点餐体验。 本项目基于主流的 **Spring Boot + MyBatis Plus** 技术栈构建,支持分布式缓存、微信支付、实时通讯等高级特性,适用于外卖平台、连锁餐厅等多种餐饮场景。 ## ✨ 核心功能模块 ### 🛠 运营管理端 (Admin) * **员工管理**:账号注册、登录、权限控制(启/禁用账号)。 * **分类管理**:灵活管理菜品的分类(如:主食、饮料、小吃)。 * **菜品管理**:支持菜品信息录入、图片上传、口味自定义、启停售状态控制。 * **套餐管理**:自由组合菜品形成套餐,设置套餐价格与图片。 * **订单管理**: * 实时接收新订单,支持接单、拒单、派送、完成等状态流转。 * 订单条件搜索与详情查看。 * 订单支付状态同步。 * **数据统计与报表**: * 营业额、订单量、复购率等核心运营指标。 * 销量排行 TOP10 分析。 * 支持导出 Excel 数据报表。 ### 🍔 用户端 (C-End) * **微信授权登录**:基于微信开放平台,实现一键登录。 * **商品浏览**:按分类查看菜品、套餐及详情(含图片、描述、口味)。 * **购物车**:自由添加、修改、清空购物车商品。 * **下单支付**:选择地址、确认下单,支持微信支付。 * **订单中心**:查看历史订单、订单详情、催单操作。 * **地址管理**:新增、修改、删除收货地址,设置默认地址。 ### 🧩 通用功能 * **文件存储**:集成阿里云 OSS,实现图片/文件上传。 * **安全认证**:基于 JWT (JSON Web Token) 的前后端分离身份验证方案。 * **数据缓存**:利用 Redis 提升高频接口响应速度(如菜品列表)。 * **消息推送**:WebSocket 实时推送订单状态变化(如新订单提醒)。 * **自动化任务**:定时处理超时未支付订单、自动清理过期数据。 ## 🏗 技术架构 * **核心框架**:Spring Boot 2.7.x * **持久层**:MyBatis Plus * **数据库**:MySQL 8.0 * **缓存**:Redis * **对象存储**:阿里云 OSS * **支付**:微信支付 API * **文档生成**:Apache POI (Excel 导出) * **API 文档**:Swagger (Knife4j) ## 🚀 快速上手 ### 环境准备 * JDK 1.8+ * MySQL 8.0 * Redis * Maven 3.6+ ### 项目构建 1. **克隆项目**: ```bash git clone https://gitee.com/enough-words/sky-take-out.git ``` 2. **数据库初始化**: * 在 MySQL 中创建数据库(默认 `sky_take_out`)。 * 执行项目根目录或 SQL 文件夹下的 `*.sql` 脚本,初始化表结构和基础数据。 * **初始管理员账号**:`admin` / `123456` 3. **配置修改**: * 打开 `sky-server/src/main/resources/application.yml` 或 `application-dev.yml`。 * 配置数据库连接信息 (`spring.datasource`)。 * 配置 Redis 连接 (`spring.redis`)。 * **重要**:配置阿里云 OSS Key/Secret、微信支付商户号、密钥等。 4. **启动项目**: ```bash mvn clean package -DskipTests java -jar sky-server/target/sky-server.jar ``` ### 访问应用 * **后台管理界面**:`http://localhost:8080/backend/index.html` * **用户端界面**:`http://localhost:8080/front/index.html` ## 📂 项目结构概览 * `sky-common` : 公共模块(常量、异常、工具类、配置类、实体类基类)。 * `sky-pojo` : 数据传输对象 (DTO) 与实体类 (Entity) 模块,不依赖任何框架。 * `sky-server` : 服务端主模块,包含 Controller、Service、Mapper、配置及启动类。 ## 📄 开源协议 本项目基于 [Apache License 2.0](LICENSE) 开源协议。