# 苍穹外卖 **Repository Path**: kongming061228/sky-delivery ## Basic Information - **Project Name**: 苍穹外卖 - **Description**: 苍穹外卖项目 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2025-08-15 - **Last Updated**: 2025-12-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: 黑马程序员-苍穹外卖项目 ## README # Sky-Delivery 项目 README ## 项目简介 `Sky-Delivery` 是一个功能完备的外卖配送系统,适用于餐饮行业的数字化运营。项目采用模块化设计,分为 `common`、`pojo` 和 `server` 三个模块,分别处理通用工具、数据模型和业务逻辑。系统支持管理员和用户双端操作,涵盖订单管理、菜品管理、套餐管理、用户管理、数据统计等核心功能。 该项目适用于希望快速搭建外卖平台的开发者或企业,同时也适合作为学习 Spring Boot 和微服务架构的实践案例。 ## 功能特性 - **管理员端功能** - 员工管理:登录、新增、编辑、启用/禁用员工账号、修改密码 - 分类管理:新增、删除、修改、启用/禁用菜品和套餐分类 - 菜品管理:新增、删除、修改、起售/停售菜品,支持口味管理 - 套餐管理:新增、删除、修改、起售/停售套餐,支持关联菜品 - 订单管理:订单状态管理(接单、派送、完成、拒单、取消等)、订单统计 - 数据统计:营业额统计、用户统计、订单统计、销量Top10统计 - 店铺管理:控制店铺营业状态 - 工作台:查看运营数据概览 - **用户端功能** - 用户管理:微信登录、退出 - 地址簿管理:新增、编辑、删除地址,设置默认地址 - 分类浏览:查看菜品和套餐分类 - 菜品浏览:根据分类查看菜品 - 套餐浏览:根据分类查看套餐,查看套餐包含的菜品 - 购物车管理:添加、删除、清空购物车 - 订单管理:下单、支付、查看历史订单、取消订单、催单、再来一单 - 店铺状态:查看店铺是否营业 ## 技术栈 - **后端框架**:Spring Boot + MyBatis Plus - **数据库**:MySQL - **缓存**:Redis - **接口文档**:Swagger UI - **安全认证**:JWT - **文件存储**:阿里云 OSS - **支付集成**:微信支付 - **WebSocket**:用于订单状态实时推送 - **定时任务**:Spring Task ## 项目结构 - **sky-common**:通用工具类、常量、异常处理、配置类 - **sky-pojo**:实体类、数据传输对象(DTO)、视图对象(VO) - **sky-server**:核心业务逻辑,包含 Controller、Service、Mapper、WebSocket 等组件 ## 安装与部署 ### 环境要求 - JDK 1.8+ - Maven 3.5+ - MySQL 5.7+ - Redis 3.0+ - 微信支付商户账号(可选) - 阿里云 OSS 账号(可选) ### 部署步骤 1. **克隆项目** ```bash git clone https://gitee.com/kongming061228/sky-delivery.git ``` 2. **导入数据库** - 创建数据库 `sky_delivery` - 导入 `sky-server/src/main/resources` 下的 SQL 文件 3. **配置文件** - 修改 `sky-server/src/main/resources/application.yml` 和 `application-dev.yml` 中的数据库、Redis、微信支付、OSS 等配置 4. **构建项目** ```bash cd sky-delivery mvn clean install ``` 5. **启动项目** ```bash cd sky-server mvn spring-boot:run ``` 6. **访问接口文档** - 打开浏览器访问:`http://localhost:8080/doc.html` ## 使用说明 ### 管理员端接口 - **登录**:`POST /admin/employee/login` - **新增员工**:`POST /admin/employee` - **分页查询员工**:`GET /admin/employee/page` - **启用/禁用员工**:`POST /admin/employee/status/{status}` - **新增分类**:`POST /admin/category` - **分页查询分类**:`GET /admin/category/page` - **删除分类**:`DELETE /admin/category` - **新增菜品**:`POST /admin/dish` - **分页查询菜品**:`GET /admin/dish/page` - **批量删除菜品**:`DELETE /admin/dish` - **新增套餐**:`POST /admin/setmeal` - **分页查询套餐**:`GET /admin/setmeal/page` - **批量删除套餐**:`DELETE /admin/setmeal` - **订单管理**:`GET /admin/order/conditionSearch` - **数据统计**:`GET /admin/report/turnoverStatistics` ### 用户端接口 - **微信登录**:`POST /user/user/login` - **查看地址簿**:`GET /user/addressBook/list` - **新增地址**:`POST /user/addressBook` - **查看菜品列表**:`GET /user/dish/list` - **查看套餐列表**:`GET /user/setmeal/list` - **添加购物车**:`POST /user/shoppingCart/add` - **下单**:`POST /user/order/submit` - **支付**:`PUT /user/order/payment` - **查看订单**:`GET /user/order/historyOrders` ## 贡献指南 欢迎贡献代码和文档,帮助完善 `Sky-Delivery` 项目。请遵循以下指南: 1. Fork 项目并创建新分支 2. 提交代码并编写清晰的提交信息 3. 确保代码风格与项目一致 4. 提交 Pull Request 并描述修改内容 ## 许可证 本项目采用 MIT 许可证,详情请参见 [LICENSE](LICENSE) 文件。 ## 联系方式 如有问题或建议,请联系作者或提交 Issue。 --- 感谢您使用 `Sky-Delivery`!希望它能帮助您快速构建外卖平台。