我在使用子比的虚拟商品自动发卡的时候发现:子比原本存在一个比较实际的问题,就是商品库存和卡密库存并不是同一套逻辑。
商品能不能卖,主要看商品配置里的库存;卡密能不能发,则要等到自动发货时再去卡密池里取。这就会出现一种很典型的情况:商品页面看起来还有库存,用户也能正常下单付款,但真正发货时才发现卡池里的可用卡密已经不足,最后只能在支付后才暴露失败。针对这个问题,秉着需要什么就自己动手的原则,我补上了商品库存和卡密池之间的联动能力。系统会根据卡池真实可用数量、待支付订单占用数量以及商品本身的手工库存基线,计算出真正的有效库存,并把这套结果用于商品库存控制。这样商品是否还能继续售卖,就不再只是看手工填的库存数字,而是会同时受卡密池状态约束。
同时,后台也补上了对应的管理视图,可以直接看到某个商品绑定的是哪个卡池、当前可用卡密有多少、被待支付订单占用了多少、以及最终还能卖多少。这样不仅解决了前台“能卖但发不出”的问题,也把后台原本看不清库存真实状态的问题一起补齐了。


项目开源免费,希望大佬多多指导~


超级版主


