From aadd9096f633c3f1a9c1fc895a68d2ada586de85 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 31 三月 2022 10:15:48 +0800
Subject: [PATCH] 优化删除业主为 cmd 模式

---
 service-common/src/main/java/com/java110/common/smo/impl/WorkflowV1InnerServiceSMOImpl.java |   39 ++-------------------------------------
 1 files changed, 2 insertions(+), 37 deletions(-)

diff --git a/service-common/src/main/java/com/java110/common/smo/impl/WorkflowV1InnerServiceSMOImpl.java b/service-common/src/main/java/com/java110/common/smo/impl/WorkflowV1InnerServiceSMOImpl.java
index eaa1672..5ece02d 100644
--- a/service-common/src/main/java/com/java110/common/smo/impl/WorkflowV1InnerServiceSMOImpl.java
+++ b/service-common/src/main/java/com/java110/common/smo/impl/WorkflowV1InnerServiceSMOImpl.java
@@ -24,6 +24,7 @@
 import com.java110.intf.common.IWorkflowV1InnerServiceSMO;
 import com.java110.po.workflow.WorkflowPo;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.FlowUtil;
 import com.java110.utils.util.StringUtil;
 import org.activiti.bpmn.model.*;
 import org.activiti.engine.ProcessEngine;
@@ -136,7 +137,7 @@
                 //鍒ゆ柇杈撳嚭鑺傜偣鐨別l琛ㄨ揪寮�
                 Map vars = new HashMap();
                 vars.put("flag", "false"); // 1100
-                if (isCondition(outgoingFlow.getConditionExpression(), vars)) {
+                if (FlowUtil.isCondition(outgoingFlow.getConditionExpression(), vars)) {
                     isReturn = true;
                 }
                 if (!isReturn) {
@@ -162,42 +163,6 @@
         return tasks;
     }
 
-    /**
-     * el琛ㄨ揪寮忓垽鏂�
-     *
-     * @param expression
-     * @param vars
-     * @return
-     */
-    private static boolean isCondition(String expression, Map<String, Object> vars) {
-        if (expression == null || expression == "") {
-            return false;
-        }
 
-        //鍒嗗壊琛ㄨ揪寮�
-        String[] exprArr = expression.split("[{}$&]");
-        for (String expr : exprArr) {
-            //鏄惁鍖呭惈閿甿essage
-            if (expr.contains("flag")) {
-                if (!vars.containsKey("flag")) {
-                    continue;
-                }
-                if (expr.contains("==")) {
-                    String[] primes = expr.split("==");
-                    String valExpr = primes[1].trim();
-                    if (valExpr.startsWith("'")) {
-                        valExpr = valExpr.substring(1);
-                    }
-                    if (valExpr.endsWith("'")) {
-                        valExpr = valExpr.substring(0, valExpr.length() - 1);
-                    }
-                    if (primes.length == 2 && valExpr.equals(vars.get("flag"))) {
-                        return true;
-                    }
-                }
-            }
-        }
-        return false;
-    }
 
 }

--
Gitblit v1.8.0