參考了網上的一些東西,以前做的一些東西,然後加上了自己的一些想法,便有了下面的東西。
第一步:
流程配置表:這裡用xml表示,有人會用if ... else ...,switch... case,表示,但是狀態少了還可以,要是一堆的狀態,可讀性會大大降低,所以我用xml表示,直觀,
可讀性強。
xml如下:
第二步:
資料庫設計:
column filed
state_name char(10)
step_name char(10)
pass_result char(10)
next_step char(10)
user_id tinyint
第三步:
程式實現
首先讀取資料審核表,如果記錄數為0,則從xml檔案開始讀取第一步的審核種類,然後使用者開始審批,最後記錄。如果記錄數不為0,則取相應審核種類的最大記錄。
不管是審核通過,還是不通過,都必須增加一條新的記錄,不能更新原先的記錄,以保證出現問題時,有劇可查。當開始第二步審核時,如果xml利用資料庫中記錄的
next_step先去獲取上一步狀態,如果沒有上一步,則獲取第一步的狀態,看是否,以被結束,如沒有則允許審核。
xml讀取的資料應該用鍊錶做記錄:
這只是乙個最簡單的實現,沒有涉及到許可權判斷
我的工作流元素
一 工作流系統的組成部分 1 流程定製軟體 定製工作流程模板的流程圖的工具軟體,簡稱workflowconfig 2 工作流引擎 工作流的中心服務軟體,工作流引擎監聽接受佇列,將獲得的資料處理後傳送到對應的下乙個節點的接受佇列中就算乙個工作任務完成,簡稱workflowengine 3 工作流監控軟...
工作流設計 1
工作流講解 1 工作流基礎 合同申報流程 科員 科長 法律科 處 專業處室 領導 法律處 合同起草 合同初審 合同分發 合同審批 合同審批 100w 合同簽訂 流程和簡化為 a b c d e 除過線性關係外還包括 a b1 b2 b3 c 這樣流程中包括分解和匯集的情況,在分解和匯集時會出現條件轉...
工作流引擎設計
工作流引擎設計 entworkflow 工作流主表 name code type isnull 主鍵entworkflowid intnot null 工作流名稱 workflowname varchar 50 not null 說明entworkflowobjectname varchar 255...