顾客订单
一. 销售输入(小订单模式):
1. 校验代理商或者店主商品库存, 校验输入的商品总数不能为负数
2. 减去代理商或者店主的库存
3. 添加一条订单记录(小订单)
4.
更新顾客消费总额(每添加一个小订单,消费总额更新一次)
5. 更新顾客最近消费记录(最近消费商品,最近购买时间, 购买次数
购买次数(添加一个大单sales加1,销售取消时不做减操作)
)
二. 销售取消(小订单)
1. 校验顾客购买的产品数量,取消的数量不能大于顾客购买商品剩余的数量, 校验输入的商品总数不能为负数。
2. 将所退的商品增加到代理商或者店主库存
3. 销售取消单价重置为负数,总价格也为负数
4. 增加一条销售取消记录
5. 更新用户消费总额(每取消一个小订单,消费总额更新一次)
代理商订单(走大订单流程)
订单状态:
1. 待确认(没有任何代理商确认过的)
2. 已确认(有一个代理商确认过但还有代理商没确认的)
3.配送准备中(已确认)(所有代理商都确认过了)
4.确认收款(总部已经收款的)
5. 配送中(总部已经发货的,
确认收款之后的5天后自动在前端显示配送中的状态
)
6. 订单完成(总部发货后已经10天自动完成订单)
7.订单取消(相当于将订单作废)
一. 下单流程:
1. 查询商品列表
2. 勾选商品,添加到购物车,购物车中商品数量加减(购物车中有这个商品,则累计数据,购物车中没有则新增一条记录)注意:这个时候不校验库存
3. 提交订单,勾选地址(没有的话就创建一个新的地址)。
4. 订单确认提交
5. 商品库存校验,商品是否被删除校验
6. 生成大订单(返回大订单id,将但订单id加入到小订单中)
7. 遍历添加小订单
8. 商品减库存,加销量
9. 将购物车中的订单转化为订单状态
二. 订单定时器
1. 确认收款之后的5天后自动在前端显示配送中的状态
2.
确认收款后的10天后自动在前端显示订单结束
3. 订单结束后增加代理商或者店主商品库存
4. 更新代理商或者店主的最近购买记录。
所涉及的表
用户表,代理商表,顾客表,商品表,商品分类表,商品优惠规则表,代理商商品库存表,代理商订单表(大订单,小订单),购物车表,顾客订单表