一、项目简介
家用电器销售系统是一套面向消费者和管理员的 B/S 电商平台。后端采用 Spring Boot、MyBatis、MySQL 与 PageHelper,前端采用 Vue;系统覆盖商品分类、商品展示、购物车、订单、商品评价、商品问答、文件上传与后台运营管理等实际业务。
项目后端包含购物车、分类、商品、订单、商品评论、商品问答、用户、上传及管理员问答控制器;前端包含用户商城、商品详情、订单列表、购物车、个人资料,以及后台首页、用户、商品、分类、订单与问答管理页面。
二、系统功能
1.1 用户端功能
注册登录与个人资料
用户可注册、登录并进入个人中心维护基础资料。登录后的用户可访问购物车、订单、商品互动等个人业务数据。
商品分类与详情浏览
用户可在首页或商品列表按分类浏览家用电器,也可进入商品详情查看商品价格、描述、图片及相关评价。ProductController 和 CategoryController 为前端列表、详情和分类筛选提供数据。
购物车与订单提交
用户可将多个商品加入购物车,调整购买数量或移除商品。确认商品后提交订单,订单模块保存订单与商品明细;用户可在订单列表中查询自己的历史订单和订单状态。
商品评价与问答
用户可针对商品发表评价,也可在商品详情中提出问题或查看相关问答内容。评论和问答模块分别由 ProductCommentController、ProductQuestionController 处理,补充了商品选购过程中的交流信息。
图片与文件展示
商品图片及相关文件通过上传接口维护,前端商品详情使用上传素材展示商品信息。
1.2 管理员端功能
后台数据概览
后台 Dashboard.vue 集中展示系统运营信息,帮助管理员快速了解商品、用户和订单等基础业务情况。
用户、分类与商品管理
管理员可在 UserManage.vue、CategoryManage.vue 和 ProductManage.vue 中维护用户、商品分类和商品资料。商品管理包含新增、编辑、删除、库存与图片等信息维护。
订单管理
管理员通过 OrderManage.vue 查询订单及订单详情,并处理订单的后续状态。订单模块与用户端订单列表相互对应,便于用户查询处理进度。
商品问答管理
管理员通过 AdminQA.vue 和 AdminQAController 查看、回复和维护商品问答内容,保证用户端商品咨询能够得到处理。
三、技术栈
| 层级 | 技术 | 说明 |
|---|---|---|
| 后端 | Java 8、Spring Boot 2.1.8 | Web 服务与业务接口 |
| 数据访问 | MyBatis 2.1.0、PageHelper 4.1.3 | 数据持久化与分页 |
| 数据库 | MySQL 8.0.17 | 用户、商品、订单、评论和问答数据存储 |
| 前端 | Vue、Vue Router、Axios | 商城与后台管理页面 |
| 其他 | Lombok、FastJSON、文件上传 | 实体简化、JSON 与素材处理 |
四、项目结构
c84/
├── src/main/
│ ├── java/com/appliance/
│ │ ├── controller/
│ │ │ ├── CartController.java
│ │ │ ├── CategoryController.java
│ │ │ ├── ProductController.java
│ │ │ ├── OrdersController.java
│ │ │ ├── ProductCommentController.java
│ │ │ ├── ProductQuestionController.java
│ │ │ ├── AdminQAController.java
│ │ │ ├── UserController.java
│ │ │ └── UploadController.java
│ │ └── resources/sql/
│ │ ├── appliance_sales.sql
│ │ ├── appliance_sales_init.sql
│ │ └── appliance_sales_2.sql
├── frontend/src/
│ ├── views/ # 商品、购物车、订单和个人中心页面
│ └── views/admin/ # 看板、用户、商品、分类、订单和问答页面
├── uploads/ # 运行时上传文件目录
├── pom.xml
└── README.md
五、环境要求
- JDK 8
- Maven 3.6+
- MySQL 8.0
- Node.js 12+
- npm
六、数据库初始化
数据库脚本位于 src/main/resources/sql/。请以项目实际使用的 appliance_sales 脚本为基础创建数据库并导入初始化数据,再按本机环境修改后端数据源配置。
mysql -u root -p --default-character-set=utf8mb4 < src/main/resources/sql/appliance_sales.sql
七、后端启动
mvn spring-boot:run
八、前端启动
cd frontend
npm install
npm run serve
九、默认账号
项目未提供可确认的默认账号,请以所导入的数据库初始化数据为准。
十、业务流程说明
9.1 商品购买流程
用户从分类或商品列表进入商品详情,查看价格、图片、评价和问答信息后将商品加入购物车。用户在购物车中确认数量并提交订单,系统生成订单和对应商品明细;用户可在订单列表持续查看订单状态。
管理员在后台维护商品库存与订单处理状态,状态更新后可反馈给用户端订单页面,形成从商品展示、下单到订单处理的完整流程。
9.2 商品内容与问答维护流程
管理员创建分类和商品,上传商品图片后使商品在前台分类列表中展示。用户针对商品发布评价或提问后,管理员可在后台问答模块处理咨询内容,商品详情页同步展示相关互动信息。
十一、交付内容
- 项目完整源码,包含 Spring Boot 后端与 Vue 前端代码。
src/main/resources/sql/下的数据库脚本文件。- 项目说明文档,包含功能说明、运行环境、初始化与启动步骤。
本项目为个人原创,结构清晰,功能完整,适合课程设计、毕业设计和个人学习使用。如需购买项目成品或定制化需求可以联系作者。