《1》申请退款【商品还没有发货】,需要:
【1】重新给商品增加库存
【2】更改订单状态为“已经完成”
【3】减少你的积分
【4】收回你的优惠券和红包
【5】发送Push告诉你退款完成了
【6】通知仓储系统取消发货
流程太多,步骤太长,用户体验极差。
《2》申请退款,最大的问题
退款失败,有可能是第三方支付系统自己的问题导致退款失败,也可能是在调用第三方支付系统的时候,因为你自己的网络问题导致调用失败。
回滚各种操作。比如更改订单状态、增加库存、收回优惠券和红包、减少积分,通知取消发货等。
《3》确认订单,但是不支付如何处理
确认订单了,创建订单的时候已经调用库存系统锁定了商品的库存,已经跳转到支付界面了,你却放弃了支付。如果一直不支付,就会一直锁定着库存。
通常的处理方式:
订单系统启动一个后台线程,扫描待支付的订单,如果发现24小时没有付款,就关闭,释放库存。如果订单系统有几百万,甚至几千万,上亿呢?–》效率极其低下。
《4》系统耦合
订单系统可能会和仓库系统,第三方物流系统、第三方支付接口之间调用。跟第三方系统耦合的:
订单系统可能会和仓库系统,第三方物流系统、第三方支付接口之间调用。
跟第三方系统耦合的:
【1】第三方系统,是永远不能完全信任的。
【2】突然修改参数,导致代码重新开发
【3】性能差、接口失败。第三方一个接口可能需要几百毫秒,甚至几秒。
网友评论