决策自动化
在本章中,我们将使用DMN为流程添加一个业务规则
将业务规则添加到流程中
打开 Camunda Modeler,点击 “批准付款”,在右面的扳手菜单中,将类型改为“Business Rule Task ”(业务规则任务)
下一步,将属性面板中的 Implementation
选择为DMN
输入 Decision Ref
为 approve-payment
为了将决策的结果存入流程变量,我们还需要编辑结果变量Result Variable
为approved
结果类型 Map Decision Result
选择为 singleEntry
,最后结果如下:
最后保存并部署到流程引擎
使用 amunda Modeler 创建DMN表
点击 File > New File > DMN Diagram 创建一个新的DMN
现在画布上已经存在一个决策元素了,选择它,然后在右侧属性面板中更改Id和Name,这里的Id需要和流程中的Decision Ref
属性一致,这次我们输入Id为approve-payment
接下来,点击决策元素左上角的表格按钮,创建新的DMN表
编辑DMN表
首先编辑输入参数,在本例中,为了简单,我们依据项目名进行判断,规则可以使用 FEEL 表达式、JUEL 或者 Script 书写,详情可以阅读DMN引擎中的表达式
双击表格中的Input,编辑第一个输入参数
Label : 项目
Expression : item
下面,设置输入参数,双击Output编辑
Label : 是否同意
Name: approved
Type : boolean
下面,我们点击左侧的蓝色加号,添加一些规则,最后类似这样:
部署DMN表
点击顶部的部署按钮,将DMN部署到流程引擎中
测试一下
现在打开 http://localhost:8080/camunda/app/cockpit/ ,使用demo/demo登录,可以看到决策定义增加了一个,点击进去可以看到刚才编辑的DMN
接下来,打开 http://localhost:8080/camunda/app/tasklist/ ,使用demo/demo登录,点击 Start process 按钮,使用以下参数启动:
再点击一次 Start process 按钮,使用如下参数启动:
这里,我们改变了输入的 item,下面我们打开 http://localhost:8080/camunda/app/cockpit/ 点击 Decision Definitions ,可以看到刚才创建的两个流程实例,点击查看“批准付款”的决策情况
到此第五部分结束,如果想直接获取到现在为止的进度,可以使用如下命令
git checkout -f Step-5
恭喜:你已经完成了快速入门部分
接下来进入 Spring Boot集成与进阶内容 的学习