项目地址:https://gitee.com/lwj/flowable.git 分支flowable-base
背景:在实际场景中,我们往往会有这样的需求,当流程到达某一个节点的时候,我们让其自动的跳过去,不做任何操作。
如:
1、当当前任务审批的人是空或者空串的时候,如果你不设置跳过,这个任务就会出现无法认领的状态。
2、第一个节点是提交人,本来就是他提交的流程,这个节点我们就没有必要让他还审批一下了,直接跳过。
3、相邻节点如果是相同的审批人的话,我们也可以设置自动跳过。
等等
第一、首先我们在启动流程的时候必须要设置流程实例可以使用掉过的这个属性
Map<String, Object> varMap = new HashMap<>();varMap.put("skip", false);varMap.put("_FLOWABLE_SKIP_EXPRESSION_ENABLED", true);String procId = runtimeService.startProcessInstanceByKey("simpleTextOnly", varMap).getId();
_FLOWABLE_SKIP_EXPRESSION_ENABLED 这个变量一定要设置
skip这个跳过的条件 你可以设置的比较复杂
第二、配置跳过表达式
注意 :就这么简单我们就能实现跳过的功能了。如果你驳回或者撤回的时候,你又不想这个节点自动跳过,你可以把skip设置成false即可