1. 不要状态回溯
一旦出现状态回环就进入关闭状态. 新建一个实体. 获取实体列表里不出现这个.
2. 状态机多个状态进入到一个状态
例子: 取消状态.
背景:
订单状态: 新建 - 开始计费 - 结束行程 - 已完成(支付成功)每个状态都可以进入取消状态.
解决方案: 设置一个取消状态.
新需求, 产品需求:
1. 客服:查看取消的渠道,原因. 2. 乘客端: 开始计费后取消后无法查看相关距离,金额.
新的解决方案:
1. 多个状态法
1. 新建后的取消 2.有费用后的取消 取分别的名字. 这个会导致状态太多.
2.增加字段:
增加 preStatus 分别记录当前字段. 增加关闭来源: 客服,乘客,超时.