Activiti6.0流程引擎學習-使用Eclipse繪製activiti流程圖


這篇我們將使用Eclipse來創建activiti流程文件,並且在上面嘗試繪製請假的流程圖。繪製好以後對流程圖進行完善,在具體對應的事件中添加表單。後面我們將針對這個請假流程進行相應的編碼實現一個簡單的流程來深度瞭解流程引擎。

首先這邊我們定義請假的流程圖如下:
在這裏插入圖片描述

接下來我們開始繪製我們的請假流程圖。

1、在Eclipse中創建一個Activiti文件:

選擇對應的目錄,New->Other->Activiti->Activiti Diagram 即可創建一個activiti流程圖。操作如下:

在這裏插入圖片描述
在這裏插入圖片描述

這裏我將這個流程圖的名字命名爲:LeaveProcess.bpmn,這裏流程圖bpmn格式的文件。其實我們在圖形化的界面中操作,其實它是添加一段一段的字段,類似一個XML文件格式。

2、創建請假流程圖的主要流程:

創建成功後我們進入流程圖的繪製界面,如下:
在這裏插入圖片描述

我們從右邊托出一個StartEvent的開始節點:

在這裏插入圖片描述

然後我們鼠標點擊這個開始節點後可以看到如下圖,這裏我們創建一個new user task,然後裏面我們寫入填寫請假申請的事件名:
在這裏插入圖片描述

我們再創建一個排他性網網關,用於後面我們的流程圖的分支:

在這裏插入圖片描述

按照流程圖一直類似操作到最後畫出我們的結束節點:

在這裏插入圖片描述然後我們就可以看到一個主要的流程:

在這裏插入圖片描述

3、對排他性網關創建分支:

我們先對第一個排他性網關創建一個分支,連向結束節點。一旦用戶填寫了請假申請但是不想提交可以直接選擇不提交,將流程結束。我們選擇這個網關點擊 new end event創建結束節點即可。
在這裏插入圖片描述

對於第二個網關分支指向 填寫請假申請 事件,點擊Create connection,然後連向該事件:

在這裏插入圖片描述

第三個排他性網關也進行同樣操作,最後可以得到完整的流程圖:
在這裏插入圖片描述

4、填寫各個控件的控件名:

對這些空間我們逐個命名,爲了後面我們更好的理解這個流程圖,避免控件的ID與控件內容不符。

首先如果沒有Properties窗口的話,我們需要先打開它,操作如下:

在這裏插入圖片描述
在這裏插入圖片描述

然後我們先點擊流程圖的空白處,將這個流程圖命名爲LeaveProcess。
在這裏插入圖片描述

開始節點我命名爲startevent:

在這裏插入圖片描述

填寫請假申請 事件命名爲submitform:
在這裏插入圖片描述

第一個網關我命名爲decideSubmit:
在這裏插入圖片描述

部門主管審批 事件命名爲ZG_approve:

在這裏插入圖片描述

第二個網關我命名爲decideZGapprove:
在這裏插入圖片描述

總經理審批 事件命名爲ZJL_approve:

在這裏插入圖片描述

第三個網關我命名爲decideZJLapprove:
在這裏插入圖片描述

結束節點命名爲endevent:
在這裏插入圖片描述

千萬別忘了分支中的結束節點:
在這裏插入圖片描述

5、對三個事件添加相對應的表單:

因爲分支我們要通過表單的某一項數據來判斷流程往哪邊走,並且正常請假流程需要一些填寫的內容,我們都寫在對應事件的表單Form中。

我們點擊 填寫請假申請 事件,在Properties中點擊Form,然後再點擊右邊的New創建一個屬性。
在這裏插入圖片描述

這裏我們添加一個message,裏面關於請假的申請信息。注意Required改爲true,說明是必填選項。

在這裏插入圖片描述

這個表單中我們還是需要一個提交時間的,這裏創建一個submitTime屬性,Type是date,然後我們輸入一個時間格式如下,我設定的是 yyyy-MM-dd 時間格式:
在這裏插入圖片描述

最後創建好的表單如下圖:
在這裏插入圖片描述

部門主管審批的表單如下:
在這裏插入圖片描述

總經理審批事件的表單如下:
在這裏插入圖片描述

6、填寫分支的判定條件:

這裏我們點擊分支的線,然後選擇Main config,在Condition中輸入 ${submitType==“y” || submitType==“Y”} ,注意這裏的是 {} 花括號,之前我打成了(),編譯會一直報錯!!這裏的 submitType 是填寫請假申請事件中的Form表單中的一條屬性,這裏我們將用它來判斷流程是否走向部門主管審批。
在這裏插入圖片描述

這根線的Condition中輸入 ${submitType==“n” || submitType==“N”} ,如果用戶輸入n或者N則直接結束這個流程:
在這裏插入圖片描述

第二個排他性網關操作的表單數據是前面 部門主管審批 事件中的ZGapprove屬性:

同樣也是將兩條線的Condition中輸入語句,這裏就演示了同意的情況。
在這裏插入圖片描述

第三個排他性網關操作的表單數據是前面 總經理審批 事件中的ZJLapprove屬性:

輸入Y或y則結束進程,若是輸入n或N則返回到員工重新填寫請假信息事件中。
在這裏插入圖片描述

以上一個比較完善的請假流程圖就被我們繪製好了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章