From f85585b1a6260678fe5912dc0048944b309d949e Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 04 七月 2019 13:58:22 +0800
Subject: [PATCH] 联动任务的非第一条规则去掉连接符

---
 ruleserver/ruleToformula.go |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index ef89737..6bc1fde 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -217,7 +217,7 @@
 					if len(temp) > 0 {
 						if ruleList[i].SetType == "linkTask" {
 							// groupId涓惈鏈塴ink鍒欎负鑱斿姩浠诲姟
-							//LinkTask(args, ruleList[i], taskId)
+							LinkTask(args, ruleList[i], taskId)
 						} else {
 							// 鐙珛浠诲姟鐨勫鐞�
 							RunRule(args, ruleList[i], taskId)
@@ -288,6 +288,21 @@
 	for _, va := range resultSplice {
 		completeFormula = completeFormula + va.Result
 	}
+	if strings.HasPrefix(completeFormula,"&&") || strings.HasPrefix(completeFormula,"||") || strings.HasPrefix(completeFormula,">=") || strings.HasPrefix(completeFormula,"<=") || strings.HasPrefix(completeFormula,"==") || strings.HasPrefix(completeFormula,"!=") ||strings.HasPrefix(completeFormula,">") || strings.HasPrefix(completeFormula,"<") {
+		// 浠ヨ繖浜涘紑澶寸殑鍩烘湰鏄仈鍔ㄤ换鍔�
+		if strings.HasPrefix(completeFormula,"&&") || strings.HasPrefix(completeFormula,"||") || strings.HasPrefix(completeFormula,">=") || strings.HasPrefix(completeFormula,"<=") || strings.HasPrefix(completeFormula,"==") || strings.HasPrefix(completeFormula,"!=") {
+			completeFormula = completeFormula[2:len(completeFormula)-1]
+		}
+		if strings.HasPrefix(completeFormula,">") || strings.HasPrefix(completeFormula,"<") {
+			completeFormula = completeFormula[1:len(completeFormula)-1]
+		}
+		expression, _ := govaluate.NewEvaluableExpression(completeFormula)
+		if strings.HasPrefix(completeFormula, "&&") || strings.HasPrefix(completeFormula, "||") {
+			panic("瑙勫垯鏈夎锛屽緱鍒扮殑鏁板鍏紡涓嶅彲瑙f瀽")
+		}
+		result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋�
+		return result.(bool)
+	}
 	if completeFormula != "" {
 		log.Println("缁撴灉鍏紡-----------锛�", completeFormula)
 		expression, _ := govaluate.NewEvaluableExpression(completeFormula)
@@ -303,6 +318,7 @@
 					timeEle.N = timeEle.InitN // 閲嶇疆瀹氭椂鍣�
 				}
 			}
+			log.Println("--------------------璧拌繖閲屼簡鍚�---------------")
 			return false
 		} else {
 			// 鏈�鍚庢垚鍔熸姤璀︽墠鎶婄鍚堟潯浠剁殑浜鸿劯鏁版嵁濉炶繘缁撴灉鏍囩閲�

--
Gitblit v1.8.0