背景
电商平台一般具有扣减库存的业务逻辑,该如何设计保证扣减库存的正确性
使用预占库存
下单成功和预占库存在同一事务中,下单成功,product修改预占库存字段
商家商品发货,发货核销
商品真实库存字段减去对应的发货商品数目
用户端收到商品
用户收到商品,确认收货,订单状态闭合,归并为历史数据;用户退货,商家收到退货商品,预占库存增加退货商品数目,订单状态闭合。
页面展示库存
等于商品的真实库存减去预占库存
预占库存真实作用
- 为了发货商品数据审计
- 隔离两种业务场景库存,商品上架库存,商家审计填写的,预占库存,实际售卖商品数量,不同维度的数据