关于电商超卖问题
一般电商是不允许库存为负数的,但产品说允许库存为负数
产品是这样设计的:
1.典型B2B服装电商网站(用的人应该不多),A和B两个经销商 双11抢商品,AB同时付款,扣减库存时不做超卖处理,允许库存减为负数。
2.当库存减为负数时,告知B经销商 ,给B两个选项,B可以选择退款,也可以选择供应商补货。(这种方式也相当于预定,但供应商能很快补货的概率不高)
问题:
因为本人对电商订单这款不怎么熟,担心这样做有什么潜在的问题吗?现在项目刚开始,我怕如果有问题,到时得重新改很多代码
问题2:
场景:当库存为负数时,买家看到的库存数应该为0。
解决方法:后端如果发现库存为负数,返回给前端 为0。用户看到的库存为0.
这样应该没有额外的问题吧?
常规来说是不允许库存为负数,既然允许为负数,就不存在抢的问题,因为负数相当于库存是无限制的,只要下单就能成功,至于出现负数,该让哪些用户去选择退款或者补货,就需要标识一下哪些订单是在库存为负数时产生的,这些订单就通知用户,所以库存为负数,没有什么潜在问题,只要能区分出哪些订单是库存为负时产生的就行
1.当发生抢购导致库存为负数时 ,当时就会立马短信通知用户,所以这里不需要加字段
2.通过你的描述,我想到应该在order表里加一个字段【是否等待补货】。
这个字段在以下场景会用到:
在订单列表页面,供应商想查看哪些是需要补货的订单时,就可以通过这个标识把需要补货的订单查出来。
@无需要太多: 是的,一个是下单时候为负数,立即发短信通知,一个是order表字段,用来后台统计筛选哪些订单需要补货或者退款
没有什么问题
虽然不懂电商,但是同意楼上的,
这么做可以,但是好像不太符合实际场景
爽11抢货可以理解
但是平常实际没货的话会允许你一直下单吗?
当然不会允许啊。我说的这种情况只存在高并发抢购时,才可能出现超卖问题。没有高并发,不会出现超卖问题的呀。
产品这样说可能是怕用户体验不好
超卖问题并不是高并发导致的,这个需要根据具体业务来实现,业务如果可以接受超卖那就超卖,只是超卖后需要有相关处理流程;否则,即使在高并发的情况下,也需要在程序上做好并发控制,禁止超卖