关于在最后一秒支付的业务逻辑问题
我有一个需求, 比如说有一个商品, 用户下单后(还未支付), 我先锁定改商品, 10分钟未支付就还原状态, 但是用户在9分59秒的时候支付了, 此时商品还原队列优先执行了, 把商品设置为了正常状态并把订单设置为过期, 然后支付回调检测到订单过期了, 肯定不能正常下单了, 这种业务逻辑改如何优化?
补充: 其实还有种情况, 就是用户在输入支付密码的界面等待
一般这样处理就已经 可以了,系统自动发起售后,退款给用户。
如果 产品一定要刁难你,那你可以提供一个方案,就是不管剩下还剩多少秒,统一给用户有3~5分钟的拖延时间。
定时任务检查一下最近一次payment 的数据。
如果时间要结束了&& 最近有吊起支付记录,不停止该单状态,重新计算再次进队列