基于Django+vue的零食商城
# 零食商城系统
## 系统概述
零食商城系统是一个基于前后端分离架构的电商平台,专注于零食和饮品的在线销售。系统采用Vue 3作为前端框架,Django作为后端框架,实现了完整的电商业务流程,包括商品浏览、购物车管理、订单处理、用户管理等核心功能。
## 技术架构
### 前端技术栈
- Vue 3 + Vue Router
- Axios(网络请求)
- Font Awesome(图标库)
- CSS3(样式设计)
### 后端技术栈
- Django + Django REST Framework
- MySQL(数据库)
- CORS Headers(跨域处理)
## 系统功能模块
### 1. 用户模块
#### 功能
- 用户注册和登录
- 个人信息管理
- 收货地址管理
#### 业务逻辑
- 用户注册时需要提供用户名、密码等基本信息
- 登录采用JWT令牌认证机制
- 用户可以在个人中心查看和修改个人信息
- 用户可以添加、编辑和删除收货地址,并设置默认地址
### 2. 商品模块
#### 功能
- 商品分类浏览
- 新品展示
- 热门商品展示
- 限时优惠商品展示
- 商品详情查看
- 商品搜索
#### 业务逻辑
- 商品按分类组织,支持多级分类
- 商品包含基本信息、价格、库存、图片等属性
- 限时优惠商品具有特殊的价格和有效期
- 商品详情页展示商品详细信息、评价和问答
### 3. 购物车模块
#### 功能
- 添加商品到购物车
- 修改购物车商品数量
- 删除购物车商品
- 选择商品结算
#### 业务逻辑
- 购物车与用户关联,每个用户有自己的购物车
- 购物车商品数量有限制,不能超过商品库存
- 结算时可以选择部分商品进行结算
- 购物车商品价格实时更新,反映商品当前价格
### 4. 订单模块
#### 功能
- 创建订单
- 订单状态管理
- 订单历史查看
- 订单详情查看
#### 业务逻辑
- 订单创建时需要提供收货地址、联系电话等信息
- 订单状态包括待支付、已支付、已发货、已完成、已取消
- 订单创建时会扣减对应商品的库存
- 取消订单时会恢复商品库存
- 订单支付后状态更新为已支付
### 5. 管理员模块
#### 功能
- 商品管理(添加、编辑、删除商品)
- 分类管理(添加、编辑、删除分类)
- 订单管理(查看、修改订单状态)
- 库存提醒(查看库存不足商品)
- 过期商品提醒
#### 业务逻辑
- 管理员具有系统的全部权限
- 管理员可以批量管理商品和分类
- 库存提醒功能会显示库存低于阈值的商品
- 过期商品提醒会显示即将过期的商品
## 核心业务流程
### 1. 商品购买流程
1. 用户浏览商品列表或搜索商品
2. 点击商品进入详情页查看详细信息
3. 选择商品数量,点击"加入购物车"或"立即购买"
4. 如果选择"加入购物车",商品会添加到购物车,用户可以继续购物
5. 如果选择"立即购买",系统会检查用户是否登录和是否有收货地址
6. 用户进入购物车页面,选择要结算的商品
7. 点击"去结算",进入结算页面
8. 选择收货地址和支付方式
9. 点击"提交订单",系统创建订单并扣减库存
10. 订单创建成功后,跳转到订单详情页
### 2. 订单处理流程
1. 用户创建订单后,订单状态为"待支付"
2. 用户可以在个人中心查看订单状态
3. 支付成功后,订单状态更新为"已支付"
4. 管理员确认发货后,订单状态更新为"已发货"
5. 用户确认收货后,订单状态更新为"已完成"
6. 用户可以在订单完成后对商品进行评价
### 3. 库存管理流程
1. 商品创建时设置初始库存
2. 用户下单时扣减对应商品的库存
3. 用户取消订单时恢复商品库存
4. 管理员可以在后台修改商品库存
5. 库存提醒功能会实时显示库存不足的商品

















