说明
一般在流程中都会有驳回流程的需求,比如用户申请了一些事项,但后来审核驳回了这个请求,用户又需要重新提交表单。例如下图:
快速开始
首先既然需要驳回,就需要设置驳回的条件,我们需要在流程图里设置流转的变量。
上图的bpmn文件如下,主要是设置了conditionExpression为${status!=1}和${status!=1}两种情况(假设status==0表示驳回,1表示同意):
<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1s02y2y" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.2.3">
<bpmn:process id="Process_0tajzix" name="父节点记录" isExecutable="true">
<bpmn:startEvent id="StartEvent_1">
<bpmn:outgoing>SequenceFlow_1rxb402</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:userTask id="Task_19w2jd9" name="aaa">
<bpmn:incoming>SequenceFlow_1rxb402</bpmn:incoming>
<bpmn:incoming>SequenceFlow_04dtipr</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_00lk1ru</bpmn:outgoing>
</bpmn:userTask>
<bpmn:sequenceFlow id="SequenceFlow_1rxb402" sourceRef="StartEvent_1" targetRef="Task_19w2jd9" />
<bpmn:sequenceFlow id="SequenceFlow_00lk1ru" sourceRef="Task_19w2jd9" targetRef="Task_0kgfcfc" />
<bpmn:sequenceFlow id="SequenceFlow_09wn81a" sourceRef="Task_0kgfcfc" targetRef="ExclusiveGateway_07h1yjx" />
<bpmn:exclusiveGateway id="ExclusiveGateway_07h1yjx">
<bpmn:incoming>SequenceFlow_09wn81a</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0510pod</bpmn:outgoing>
<bpmn:outgoing>SequenceFlow_04dtipr</bpmn:outgoing>
</bpmn:exclusiveGateway>
<b