fix: 当无满足条件时选择默认路线
This commit is contained in:
@@ -720,7 +720,7 @@ public class BpmnModelUtils {
|
|||||||
&& evalConditionExpress(variables, flow.getConditionExpression()));
|
&& evalConditionExpress(variables, flow.getConditionExpression()));
|
||||||
if (matchSequenceFlow == null) {
|
if (matchSequenceFlow == null) {
|
||||||
matchSequenceFlow = CollUtil.findOne(gateway.getOutgoingFlows(),
|
matchSequenceFlow = CollUtil.findOne(gateway.getOutgoingFlows(),
|
||||||
flow -> ObjUtil.notEqual(gateway.getDefaultFlow(), flow.getId()));
|
flow -> ObjUtil.equal(gateway.getDefaultFlow(), flow.getId()));
|
||||||
// 特殊:没有默认的情况下,并且只有 1 个条件,则认为它是默认的
|
// 特殊:没有默认的情况下,并且只有 1 个条件,则认为它是默认的
|
||||||
if (matchSequenceFlow == null && gateway.getOutgoingFlows().size() == 1) {
|
if (matchSequenceFlow == null && gateway.getOutgoingFlows().size() == 1) {
|
||||||
matchSequenceFlow = gateway.getOutgoingFlows().get(0);
|
matchSequenceFlow = gateway.getOutgoingFlows().get(0);
|
||||||
@@ -742,7 +742,7 @@ public class BpmnModelUtils {
|
|||||||
&& evalConditionExpress(variables, flow.getConditionExpression()));
|
&& evalConditionExpress(variables, flow.getConditionExpression()));
|
||||||
if (CollUtil.isEmpty(matchSequenceFlows)) {
|
if (CollUtil.isEmpty(matchSequenceFlows)) {
|
||||||
matchSequenceFlows = CollUtil.filterNew(gateway.getOutgoingFlows(),
|
matchSequenceFlows = CollUtil.filterNew(gateway.getOutgoingFlows(),
|
||||||
flow -> ObjUtil.notEqual(gateway.getDefaultFlow(), flow.getId()));
|
flow -> ObjUtil.equal(gateway.getDefaultFlow(), flow.getId()));
|
||||||
// 特殊:没有默认的情况下,并且只有 1 个条件,则认为它是默认的
|
// 特殊:没有默认的情况下,并且只有 1 个条件,则认为它是默认的
|
||||||
if (CollUtil.isEmpty(matchSequenceFlows) && gateway.getOutgoingFlows().size() == 1) {
|
if (CollUtil.isEmpty(matchSequenceFlows) && gateway.getOutgoingFlows().size() == 1) {
|
||||||
matchSequenceFlows = gateway.getOutgoingFlows();
|
matchSequenceFlows = gateway.getOutgoingFlows();
|
||||||
|
Reference in New Issue
Block a user