V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lvhuiqi
V2EX  ›  问与答

微信/支付宝,预下单遇到的问题

  •  
  •   lvhuiqi · 2019-05-30 10:58:23 +08:00 · 1943 次点击
    这是一个创建于 2029 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大佬们,请教一个支付的问题: 如下单: 买课程 限购人数 20 人 /已购人数 19 人的时,我下单进行购买,我做的处理是,在支付回调的时候,成功了把已购人数+1,现在出现个问题就是,如果我下单时,没有支付,其他人也下单了,支付成功了,在回调的时候已购人数都+1,课程已经满了,我在支付也可以支付成功,已购人数也会+1  就变成了限购人数 20 人 / 已购人数 21 人了。这种情况应该怎么处理呢?

    9 条回复    2019-05-30 19:50:02 +08:00
    kimiler
        1
    kimiler  
       2019-05-30 12:08:14 +08:00
    已实现付款为准,后者作退款处理
    kimiler
        2
    kimiler  
       2019-05-30 12:10:14 +08:00   ❤️ 1
    或者以下单为准,减库存,规定时间内未成功付款,库存还原,供下一个用户抢购。
    rbe
        3
    rbe  
       2019-05-30 12:30:36 +08:00
    楼上+1。以下单为标准减库存比较好。在淘宝买东西也是,有时候会遇到提示『还有用户未付款,还有机会,15 分钟内未付款会释放订单』这样的状态
    lvhuiqi
        4
    lvhuiqi  
    OP
       2019-05-30 14:00:57 +08:00
    @rbe 这个释放订单是怎么做的? 微信文档有提供嘛? 还是需要我服务器自己去做这个处理?
    lvhuiqi
        5
    lvhuiqi  
    OP
       2019-05-30 14:01:13 +08:00
    @kimiler 这个释放订单是怎么做的? 微信文档有提供嘛? 还是需要我服务器自己去做这个处理?
    IceBay
        6
    IceBay  
       2019-05-30 14:04:38 +08:00
    @lvhuiqi #5 自己实现,创建的支付订单如果指定时间内没有支付,自动取消这张订单。放入其他用户进来支付订单。
    IceBay
        7
    IceBay  
       2019-05-30 14:05:50 +08:00
    看了下文档,微信支持指定订单交易失效时间
    Light3
        8
    Light3  
       2019-05-30 14:15:51 +08:00
    感觉你自己逻辑有问题
    一般都是先查库存 只要进入支付页面下单了跳到支付页面 就会扣除库存 难道你都是一秒几百的数据吗 会出现这种情况
    释放订单可以考虑队列 自己设置个时间 来查这个单是否完成 取消订单并归还库存
    NerverLibis
        9
    NerverLibis  
       2019-05-30 19:50:02 +08:00 via iPhone
    @lvhuiqi 网易支付是同时下单,谁先支付成功算谁的,其他退款。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3584 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:08 · PVG 08:08 · LAX 16:08 · JFK 19:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.