无论采取模式一还是模式二,进行预支付ID获取的时候应当确保订单号的唯一性,否则就会造成第二次扫码后的重复提醒.
解决方案:
以预支付ID处理为例:
商城:
1.创建log_id数据表如:out_trade_no,time
2.发起预支付时,对表中对应的out_trade_no进行关闭订单操作,避免无效的空订单.
3.发起时对out_trade_no进行随机处理,如order_id.rand(1,99999).time();
通过这三个步骤即可避免订单号重复的问题又可以有效删除无效订单.