在一个点餐系统中,有着外卖单,堂食单等。对应不同的订单与不同的动作和设置会有不同的状态变化,在代码中if elseif要写30-40多行,对于这种情况是否有更好的处理方法?
举例如下:
判断项:商家开启先食后付 是否自动接单 是否有打印机 打印是否成功 是否自动清台
动作: 下单 接单 拒单 顾客取消单 顾客支付 清台 结账
状态: 待确认 待处理 拒绝 完成 取消 进行中 超时 申请退款
如上由5种判断项 组合出多种变化 在每种变化中 不同的动作 改变订单不同的状态,像这种状态模型,除了无数的 if elseif 是否有更好的方法实现?
想要实现:输入动作 输出状态
想要一个思路,非常感谢!
给一个大概思路吧。java实现。可以稍微参考下。