# Koala takeout applet **Repository Path**: Endurancer_Program/koala-takeout-applet ## Basic Information - **Project Name**: Koala takeout applet - **Description**: 考拉外卖小程序+后台管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2024-06-22 - **Last Updated**: 2025-04-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 一、项目概述 1. **项目名称**:基于Springboot+Vue+Uniapp的考拉外卖点餐小程序 2. **项目类型**:外卖点餐平台 3. **目标用户**: - 消费者:使用平台进行点餐和下单的用户。 - 商家:提供餐品和服务的商家,可以在平台上管理自己的店铺。 - 管理员:负责平台整体运营和管理的人员。 4. **功能模块**: - 注册登录 - 首页展示 - 商家详情 - 购物车 - 下单 - 订单管理 - 个人中心等 ### 二、环境搭建 #### 1. 开发工具 - **后端**:IntelliJ IDEA 或其他支持Java开发的IDE - **前端**:Visual Studio Code - **小程序**:HBuilder X #### 2. 开发环境 - **JDK**:1.8+ - **Node.js**:16.0+ - **Maven**:3.8+ #### 3. 数据库环境 - **MySQL**:5.7/8.0+ - **Navicat Premium**:数据库可视化工具 #### 4. 环境变量配置 - **JAVA_HOME**:配置Java开发环境变量 - **MAVEN_HOME**:配置Maven环境变量 - **NODE_PATH**:配置Node.js环境变量 #### 5. 第三方中间件及工具 - **Redis**:用于缓存数据,如验证码、用户会话信息等。 - **Nginx**:作为反向代理服务器,分发请求至不同的后端服务。 ###三、项目结构 #### 1. 后端项目结构 - `src/main/java`:存放后端代码,分为controller、service、mapper、entity、dto、vo、exception、utils等包。 - `src/main/resources`:存放配置文件如application.properties、mapper.xml等。 - `src/test/java`:存放测试代码。 #### 2. 前端项目结构 - `src/assets`:存放静态资源如图片、样式等。 - `src/components`:存放公共组件。 - `src/router`:存放路由配置。 - `src/store`:存放Vuex状态管理。 - `src/views`:存放页面组件。 - `src/api`:存放接口请求相关代码。 - `src/utils`:存放工具类代码。 - `src/App.vue`:入口组件。 - `src/main.js`:入口文件。 #### 3. 小程序项目结构 - `pages`:存放页面。 - `static`:存放静态资源。 - `unpackage`:打包后的文件。 - `app.js`:小程序入口文件。 - `app.json`:小程序全局配置。 - `app.wxss`:小程序全局样式。 - `components`:存放自定义组件。 - `utils`:存放工具类代码。 ###四、项目创新 #### 1. 多商户数据独立管理 - **创新描述**:采用多租户架构,允许不同商户拥有独立的数据空间和管理权限。 - **技术实现**: - 设计独立的数据库模式,确保商户数据隔离。 - 提供商户后台管理系统,支持自主操作。 - 实现细粒度权限控制,限制数据访问范围。 #### 2. 基于uni-app框架的小程序开发 - **创新描述**:使用uni-app框架进行跨平台小程序开发,支持微信、支付宝、百度等多个平台。 - **技术实现**: - 利用uni-app组件和API,确保跨平台一致性。 - 使用HBuilderX提高开发效率。 - 通过条件编译优化平台特定代码。 #### 3. 完整外卖流程模拟与功能闭环 - **创新描述**:模拟完整的外卖流程,形成从用户下单到评价的功能闭环。 - **技术实现**: - 设计多角色互动流程(用户、商家、配送员)。 - 引入订单状态机管理订单状态转换。 - 集成地图和定位服务,提供实时订单跟踪。 ### 五、功能模块实现 #### 1. 注册、登录模块 - **用户注册、登录** - **JWT认证**:使用JWT进行用户身份验证。 - **密码加密存储**:使用BCryptPasswordEncoder对密码进行加密。 - **验证码功能**:实现图形验证码和短信验证码功能。 - **登录日志**:记录用户登录时间、IP等信息。 #### 2. 首页模块 - **搜索商家**:实现商家搜索功能。 - **广告轮播**:使用Vue的swiper组件实现广告轮播效果。 - **商家分类切换**:使用ElementUI的Tabs组件实现分类切换。 #### 3. 商家详情页模块 - **查看商家信息**:展示商家详情。 - **分类餐品展示**:展示餐品列表。 - **购物车功能**:实现加入购物车功能。 - **收藏商家**:实现商家收藏功能。 #### 4. 购物车模块 - **查看购物车商品列表** - **修改商品数量**:实现商品数量增减。 - **计算购物车总金额** - **清空购物车**:实现购物车清空功能。 #### 5. 确认订单页模块 - **设置送货地址**:实现地址选择功能。 - **确认餐品信息**:展示餐品详情。 - **确认金额信息**:展示订单金额。 - **订单备注**:实现订单备注功能。 - **提交订单**:点击下单,提交订单。 #### 6. 订单模块 - **查看所有订单**:展示订单列表。 - **删除订单**:实现订单删除功能。 - **订单收货**:实现订单收货功能。 - **订单评价**:实现订单评价功能。 - **申请退款**:实现订单退款功能。 #### 7. 个人中心模块 - **展示用户信息**:包括头像、姓名、用户名。 - **个人信息修改**:实现个人信息修改功能。 - **收货地址管理**:实现地址新增、修改、删除功能。 - **我的收藏管理**:实现收藏商家管理功能。 - **我的评价管理**:实现评价管理功能。 - **关于我们**:展示项目相关信息。 - **用户协议**:展示用户协议内容。 - **退出登录**:实现退出登录功能。 ### 六、管理员和商家管理功能 #### 1. 管理员功能 - **商家管理**:审核、查看、添加、修改、删除商家信息。 - **用户管理**:查看用户信息,禁用或启用用户账户。 - **订单管理**:查看订单,处理退款订单。 - **广告管理**:添加、修改、删除广告。 - **餐品分类管理**:添加、修改、删除餐品分类。 - **餐品管理**:审核商家上传的餐品。 - **评论管理**:查看并删除不合适评论。 - **个人中心**:查看和修改管理员个人信息和密码。 #### 2. 商家功能 - **餐品分类管理**:添加、修改、删除餐品分类。 - **餐品管理**:添加、修改、删除餐品。 - **订单管理**:查看订单,接单,完成订单。 - **评论管理**:查看并回复用户评论。 - **个人中心**:查看和修改商家个人信息和密码。 ![输入图片说明](imgs/1c7899a384b43464d24fb1951b037f6.jpg) ![输入图片说明](imgs/4a2058de4aee4f35ab98ad84b7276a1.jpg) ![输入图片说明](imgs/85418d2a313e2205340f66b64559b47.jpg) ![输入图片说明](imgs/d0d0fa4f1cfcf988b91f189ff1e851e.jpg) ![输入图片说明](imgs/d7c916310568aba71d9053d275c09d4.jpg) ![输入图片说明](imgs/dea0a8fd19589a10bc1e521933fc12d.jpg)