From 2a7709d4ed9161f145631e2e49ffbde2ce44463f Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期五, 12 七月 2019 14:51:30 +0800
Subject: [PATCH] 过滤时忽略底库条件

---
 ruleserver/ruleToformula.go |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index ccd7f3b..3b7ece3 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -238,10 +238,19 @@
 		if err1 != nil {
 			logger.Error("鏌ヨ搴曞簱浜哄憳淇℃伅鍑洪敊", err1)
 		}
-		baseinfo.CompareScore = val
+		baseinfo.CompareScore = Retain(val)
 		arg.Liker = append(arg.Liker, &baseinfo)
 	}
 	//logger.Info("------------------绗竴娆$湅args:",*arg)
+}
+// 淇濈暀鍥涗綅灏忔暟
+func Retain(f float32)(float32) {
+	s:= strconv.FormatFloat(float64(f), 'f', 4, 64)
+	v, err := strconv.ParseFloat(s, 32)
+	if err != nil {
+		logger.Error("淇濈暀鍥涗綅灏忔暟杞崲閿欒")
+	}
+	return float32(v)
 }
 func Compare(args *SdkDatas, groupRule *protomsg.GroupRule) {
 	compareFlag := 0
@@ -259,7 +268,7 @@
 		}
 	}
 	// 涓轰簡娴嬭瘯浣滀笅寮婏紝鐩存帴璁╁叾姣斿鍏ㄩ儴搴曞簱
-	compareFlag = 1
+	//compareFlag = 1
 	if compareFlag == 0 {
 		logger.Info("娌℃湁閰嶇疆瀵规瘮搴曞簱鍙傛暟")
 		return
@@ -273,12 +282,14 @@
 						logger.Info("-------------浜鸿劯姣斿涔嬪墠鐩爣鏁伴噺",len(areaMap.args))
 						// 鎷垮尯鍩熶腑姣忎釜浜鸿劯鐗瑰緛鍊煎幓瀵规瘮锛屽~鍏呭叾liker
 						if groupRule.Rules[j].PolygonId == areaMap.areaId {
+							logger.Info("--------------鐪嬬湅compareFlag鐨勫�硷細",compareFlag)
 							for _, arg := range areaMap.args {
 								if compareFlag == 1 {
 									arg.fillLiker()
 								}
 								if compareFlag == 2 {
 									array := strings.Split(tableIds, ",")
+									logger.Info("--------------------------鐪嬬湅瀵规瘮搴曞簱鐨勫��;",array)
 									for i := 0; i < len(array)-1; i++ {
 										arg.fillLiker()
 									}
@@ -320,6 +331,9 @@
 			if ipcId == sdkData.IpcId {
 				logger.Info("褰撳墠璧扮殑瑙勫垯鐨勭畻娉曟槸--锛�", sdkName, "---")
 				logger.Info("========================鏈夊嚑涓尯鍩燂細",len(sdkData.AreaMapList))
+				for _,areaMap := range sdkData.AreaMapList{
+					logger.Info("妫�鏌ヤ竴涓嬪尯鍩熺殑鍏蜂綋鏁版嵁锛�",areaMap.areaJson)
+				}
 				for _, areaMap := range sdkData.AreaMapList {
 					ruleResult := filterRule(groupRule.Rules[j], areaMap)
 					if ruleResult.Result != "" {
@@ -459,7 +473,6 @@
 			if flag {
 				// 鏈�鍚庢垚鍔熸姤璀︽墠鎶婄鍚堟潯浠剁殑浜鸿劯鏁版嵁濉炶繘缁撴灉鏍囩閲�
 				// 閰嶄簡浜鸿劯鐨勭畻娉曟墠鎶婁汉鑴哥殑鏁版嵁鐢╁嚭鏉ユ墦鏍囩
-				logger.Info("------------------------------鏈�鍚庝竴鍏�")
 				faces := []Arg{}
 				faceFlag := false
 				for j := 0; j < len(groupRule.Rules); j++ {
@@ -489,10 +502,10 @@
 				}
 				if sdkNames != "" {
 					args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText, locations,polygonId})
-					logger.Info("-------------------yolo缁撴灉鏍囩", args.RuleResult["yolo"].([]Result))
+					logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result)))
 				}
 				if args.RuleResult["face"] != nil {
-					logger.Info("-------------------face缁撴灉鏍囩", args.RuleResult["face"].([]Arg))
+					logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]Arg)))
 				}
 				return true
 			} else {
@@ -690,8 +703,7 @@
 		//logger.Info("瑙勫垯鐨勭畻娉昳d鍜屽尯鍩熺殑绠楁硶id锛�", rule.SdkId, "===", am.sdkId)
 		if rule.PolygonId == am.areaId { // 绠楁硶鍜屽尯鍩熼兘寰楀鐨勪笂
 
-			if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a972" && rule.SdkArgAlias != "time_rule" {
-				// 鍙渶瑕佽繃婊ら槇鍊硷紝杩囨护瀹屽悗鏁扮粍闀垮害澶т簬0鍗充负鎶ヨ
+			if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a972" && rule.SdkArgAlias != "time_rule" && rule.SdkArgAlias != "compareBase"{
 				argValue, err := strconv.ParseFloat(rule.SdkArgValue, 64)
 				if err != nil {
 					logger.Error("瑙勫垯閰嶇疆鐨勯槇鍊奸潪娉�")

--
Gitblit v1.8.0