整體數據庫設計,可見這一篇:Gemini.Workflow 雙子工作流高級教程:數據庫-設計文檔
這里對各數據表進行介紹:
工作流里的設計表並不多,核心只有以下8個:
下面按照流程的順序來介紹一下表的作用,很簡單的就介紹完了:
1、流程定義表(WF_Definition)
流程定義,即畫流程圖,(點添加按鈕,即跳轉到畫流程圖界面)
流程定義:存檔的是一個流程圖的整體屬性描述和總體控制功能。
2、流程圖的圖形數據存儲(WF_Activity、WF_Transition)
先看一張流程圖:
一張流程圖,存檔在三個表:
1、流程定義表(即第一點說的,存整體定義屬性)
2、流程節點定義(WF_Activity,存每個節點的詳細定義信息)
3、遷移線定(WF_Transition,存節點與節點相連的定義信息)
3、流程應用表:(WF_App)
當流程圖畫好以后,即進入應用階段。
流程應用表的作用:
1、一個流程圖如果需要重復被多個應用場景使用(那么就是1個流程對應多個應用)。
2、如果一個流程圖只考慮一個應用場景(那么就是1個流程對應1個應用),有點那么流程即應用,合成一個表也沒多大影響。
這里流程應用表,可以記錄流程以外的擴展信息(包括起個別名,設置表單路徑,設置權限訪問限制等)。
已經交待了4個表的作用了,接下來還有4個表。
4、發起任務工單(WF_TaskInstance,任務實例表)
工單任務實例表:
就是記錄誰發起了任務、任務交給誰,以及任務的完成狀態。
通過任務實例表、可以看出任務的運轉狀態。
5、流程實例(狀態)表:(WF_Instance、WF_ActivityInstance、WF_TransitionInstance)
1個工單任務發起時,就伴隨着一個新的流程實例出來(用來記錄流程的運轉過程),看一張圖就知道了:
通過流程運轉實例表,就可以還原流程圖的運轉順序。
總結:
Gemini.Workflow 雙子工作流的核心表設計就這些了,至於用戶權限角色UI控制,屬於外部接入附屬,都接入了Aries控制,后續教程有涉及到會詳說。