大佬们,请教一个支付的问题: 如下单:买课程限购人数 20 人 /已购人数 19 人的时,我下单进行购买,我做的处理是,在支付回调的时候,成功了把已购人数+1,现在出现个问题就是,如果我下单时,没有支付,其他人也下单了,支付成功了,在回调的时候已购人数都+1,课程已经满了,我在支付也可以支付成功,已购人数也会+1就变成了限购人数20 人 /已购人数 21 人了。这种情况应该怎么处理呢?
![]() | 1 kimiler 2019-05-30 12:08:14 +08:00 已实现付款为准,后者作退款处理 |
![]() | 2 kimiler 2019-05-30 12:10:14 +08:00 ![]() 或者以下单为准,减库存,规定时间内未成功付款,库存还原,供下一个用户抢购。 |
![]() | 3 rbe 2019-05-30 12:30:36 +08:00 楼上+1。以下单为标准减库存比较好。在淘宝买东西也是,有时候会遇到提示『还有用户未付款,还有机会,15 分钟内未付款会释放订单』这样的状态 |
7 icebay 2019-05-30 14:05:50 +08:00 看了下文档,微信支持指定订单交易失效时间 |
![]() | 8 Light3 2019-05-30 14:15:51 +08:00 感觉你自己逻辑有问题 一般都是先查库存 只要进入支付页面下单了跳到支付页面 就会扣除库存 难道你都是一秒几百的数据吗 会出现这种情况 释放订单可以考虑队列 自己设置个时间 来查这个单是否完成 取消订单并归还库存 |
![]() | 9 NerverLibis 2019-05-30 19:50:02 +08:00 via iPhone @lvhuiqi 网易支付是同时下单,谁先支付成功算谁的,其他退款。 |