晚上跟前台同学在扯【安全库存】设计方案,前台同学认为安全库存是不能作为销售库存售卖的,菜鸟同步给前台的库存不应该包含这部分,而我给出的方案是当菜鸟侧可售库存小于【安全库存】时,同步前台0库存,即商品下架。
从正常逻辑看,如果菜鸟可售库存=安全库存时,两种方案前台的可售库存都为0,没有区别。但由于并非前台下单时直接占用菜鸟库存,而是菜鸟同步库存前先调用前台提供的接口来查询已下单但未同步给菜鸟的订单占用的库存,然后再返回前台一个可售库存。
假设菜鸟侧安全库存为10,可售库存为15,考拉侧占用库存为1,则菜鸟侧计算得到的销售库存为15-1=14,并在1秒后同步给考拉。而这1秒钟如果又下单了5个,由于菜鸟是定时同步库存给考拉,假定下一次同步前考拉又销售了10个,则意味着考拉订单16个,但实物库存只有15个。
如果按照安全库存不同步给考拉的方案,菜鸟侧同步给考拉的库存为4,如果1秒钟内考拉下单了5个,则考拉后台最大可售数量为4,则10个安全库存可以兜底,不会超卖。但如果1秒钟内销售数量大于安全库存,始终还是有超卖风险。
网友评论