如果按照正常的订单状态走下去,当然是ok的。但并不符合实际情况,在实际场景中,每一笔订单都有可能因为外界原因导致订单异常。一般异常的主要情况包括 商家因为某些原因无法发货 买家因为某些原因要求退款/货 买家因为某些原因取消订单 … 在产品层面上,需要对这类异常订单进行处理。因为异常会发生在任何订单状态下,所以需要在对应订单状态下考虑异常的可能性,然后根据可能性分别提供给不同用户角色对应订单操作按钮。对异常处理的结果有分两种: 一种是取消异常回归到正常状态下 一种是处理异常交易结束 异常订单需要添加两种状态,一种是处理中状态,一种是处理结束状态。比如“申请退款中”是处理中状态,“交易关闭”是处理结束状态。在淘宝中,给用户看到的状态只有两类,一是正常交易状态,一是异常处理结束状态,其产品系统后台将所有异常处理中的状态都封装了。 最后我们再来看下淘宝所有的订单状态和买家对应的订单操作。
最后,我们再来复盘下如何基于场景来构建订单体系结构。首先我们要分析用户场景,找到需要订单系统满足的需求和提供的能力。其次我们需要定义订单流程的最小闭环满足这个需求,在最小闭环中又要借助 定义状态、设置操作的设计思路来搭建最小闭环。然后我们需要在最小闭环的基础上,基于业务需求,同样采用状态到操作的设计流程补充完善订单流程。最后,我们要考虑异常处理的状态和操作,最终完善订单流程完整闭环。 (责任编辑:admin) |