订单状态包含:新建,排序,下发,运行,暂停,完成spa
工单状态包含:新建,下发,取消,运行,报废,完成code
订单为下发或运行状态时,能够暂停订单,此时工单中可能存在的状态有下发,取消,运行,报废,完成。blog
当继续订单时,如何根据工单的状态判断订单的状态?排序
1.订单什么时候为下发?class
除了取消了的工单,所有为下发状态的工单,此时订单为下发di
2.订单什么时候为运行?co
只要工单中存在运行状态的工单,订单就为运行。
或者,除了取消状态的工单,部分工单已经完成或报废,依然存在下发状态的工单,此时继续订单则为运行
3.订单什么时候为完成?
除了取消了的工单,其余工单所有完成或报废,即没有下发状态的工单
综上:
if 存在运行工单{ 订单状态=运行; }else{ if 非取消状态工单个数==下发状态工单个数{ 订单状态=下发; }else if 非取消状态工单个数==完成状态工单个数+报废状态工单个数{ 订单状态=完成; }else if 非取消状态工单个数==下发状态工单个数+完成状态工单个数+报废状态工单个数{ 订单状态=运行; } }