如何根據工單狀態判斷訂單狀態

訂單狀態包含:新建,排序,下發,運行,暫停,完成spa

工單狀態包含:新建,下發,取消,運行,報廢,完成code

訂單爲下發或運行狀態時,能夠暫停訂單,此時工單中可能存在的狀態有下發,取消,運行,報廢,完成。blog

當繼續訂單時,如何根據工單的狀態判斷訂單的狀態?排序

1.訂單什麼時候爲下發?class

  除了取消了的工單,所有爲下發狀態的工單,此時訂單爲下發di

2.訂單什麼時候爲運行?co

  只要工單中存在運行狀態的工單,訂單就爲運行。

  或者,除了取消狀態的工單,部分工單已經完成或報廢,依然存在下發狀態的工單,此時繼續訂單則爲運行

3.訂單什麼時候爲完成?

  除了取消了的工單,其餘工單所有完成或報廢,即沒有下發狀態的工單

 

綜上:

  

if 存在運行工單{
    訂單狀態=運行;
}else{
    if 非取消狀態工單個數==下發狀態工單個數{
         訂單狀態=下發;
    }else if 非取消狀態工單個數==完成狀態工單個數+報廢狀態工單個數{
         訂單狀態=完成;
    }else if 非取消狀態工單個數==下發狀態工單個數+完成狀態工單個數+報廢狀態工單個數{
         訂單狀態=運行;
    }
}
    
相關文章
相關標籤/搜索