camunda快速入門(四):如何設計一個帶條件分支的流程

大龄码农有梦想發表於2024-07-09

在本節中,您將學習如何使用 BPMN 2.0 排他閘道器(Exclusive Gateways)使流程更加動態。

1、新增兩個閘道器

我們想修改我們的流程,使其更具動態性。

為此,請在 Camunda Modeler 中開啟該過程。

接下來,從 Modeler 的左側選單中,選擇閘道器形狀(菱形)並將其拖動到“開始事件”和“服務任務”之間的位置。根據需要再次使用建立空間工具。向下移動使用者任務,並在其後新增另一個閘道器。最後,調整序列流,使模型如下所示:

IMG_257

現在也相應地命名新元素:

2-向程序新增閘道器 (1)

2、配置閘道器路由條件

接下來,開啟屬性皮膚,在畫布上選擇select the <1000 € 閘道器之後的序列流。這將更新屬性皮膚中的選擇。滾動到名為Condition的屬性,並將其更改為Expression。然後輸入 ${amount<1000}作為表示式。我們正在使用 Java 統一表示式語言Java Unified Expression Language)來評估閘道器。

IMG_259

接下來,也更改其他序列流的表示式。

對於 >=1000 € 序列流,請使用表示式: ${amount>=1000}

4-向程序新增閘道器 (1)

對於Yes序列流,請使用表示式: ${approved}

IMG_261

對於No序列流,請使用表示式: ${!approved}

6-向程序新增閘道器 (1)

3、部署閘道器流程

流程設計完成後,使用 Camunda Modeler 中的Deploy按鈕將更新的流程部署到 Camunda,記得要附加表單模型一起釋出。

7-釋出流程

4、處理任務,驗證閘道器

轉到任務列表 (http://localhost:8080/camunda/app/tasklist/) 並使用憑據“demo / demo”登入。點選 啟動過程按鈕啟動付款檢索流程的流程例項。接下來,使用表單為流程例項設定變數,正如我們在“使用者任務”部分中所瞭解的那樣。

8-啟動流程

填寫螢幕截圖中所示的表單,並確保使用大於或等於 1000 的金額,以便檢視使用者任務批准付款。完成後,單擊“開始”。

單擊“所有任務”時,您應該會看到“Approve Payment(批准付款)”任務。

8-流程例項

在本快速入門中,我們以管理員使用者身份登入 Tasklist,因此我們可以看到與流程關聯的所有任務。但是,可以在任務列表中建立篩選器,以確定哪些使用者可以根據使用者授權以及其他條件檢視哪些任務。

要處理該任務,請選擇“表單”選項卡並選中“已批准”核取方塊,以便我們的付款檢索獲得批准。我們應該看到我們的工作執行緒將某些內容列印到控制檯。

9-流程表單

您可以重複相同的步驟,建立一個數量小於 1000 的例項,以確認第一個閘道器是否正常工作。

5、原始碼和文件

線上體驗系統:http://www.yunchengxc.com

原始碼下載:https://github.com/camunda/camunda-get-started-quickstart/archive/Step-4.zip

官方文件地址:https://docs.camunda.org/get-started/quick-start/gateway/

接下來,讓我們看一下如何將業務規則新增到流程中,使用決策自動化執行流程,初步瞭解camunda規則引擎的使用,DMN決策表的基本配置。

相關文章