From 5729425c8552b08d80f3b4c3488d0436c42fd50e Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 01 八月 2019 09:41:43 +0800
Subject: [PATCH] label重大更新

---
 ruleserver/ruleToformula.go |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 1c09054..41ec675 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -328,13 +328,17 @@
 						}
 					}
 				}
+				nihao := make(map[string]interface{})
+				for k,v := range label{
+					nihao[k] = v
+				}
 				//logger.Debug("------locations鐨勫唴瀹癸細", locations)
 				if sdkNames != "" {
-					args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId,groupRule.DefenceState,groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId,label})
+					args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkNames, groupRule.GroupId,groupRule.DefenceState,groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId,nihao})
 					//logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result)))
 				}
 				if faceFlag {
-					args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId,groupRule.DefenceState,groupRule.AlarmLevel, groupRule.GroupText, []Rect{}, polygonId,label},faces})
+					args.RuleResult["face"] = append(args.RuleResult["face"].([]FaceResult), FaceResult{Result{taskId, sdkNames, groupRule.GroupId,groupRule.DefenceState,groupRule.AlarmLevel, groupRule.GroupText, []Rect{}, polygonId,nihao},faces})
 					//logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]FaceResult)))
 				}
 				return true
@@ -423,7 +427,11 @@
 		for _, va := range timeEle.RuleResults {
 			if va.CameraId == args.CameraId {
 				va.Result = strconv.FormatBool(isOk)
-				va.CacheData = ResultMsg{message,args.RuleResult}
+				tempMap := make(map[string]interface{})
+				for k,result := range args.RuleResult {
+					tempMap[k] = result
+				}
+				va.CacheData = ResultMsg{message,tempMap}
 				logger.Info("杩欎釜鎽勫儚鏈�--", args.CameraId, "--琚祴浜堜簡result", va.Result)
 			}
 		}
@@ -456,7 +464,19 @@
 						label["linkCache"] = append(label["linkCache"].([]ResultMsg),ruleRes.CacheData)
 					}
 					logger.Debug("鑱斿姩浠诲姟缂撳瓨浜嗗嚑涓暟鎹�",len(label["linkCache"].([]ResultMsg)))
-					//os.Exit(1)
+					//for _,result := range args.RuleResult["yolo"].([]Result) {
+					//	if result.RuleGroupId == groupRule.GroupId {
+					//		result.Others["linkCache"] = label
+					//	}
+					//}
+					for i := 0; i < len(args.RuleResult["yolo"].([]Result)); i++  {
+						if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 鎶婂師鏉ラ偅涓垹鎺夊啀瀛樹竴浠芥柊鐨�
+							res := args.RuleResult["yolo"].([]Result)[i]
+							res.Others["linkCache"] = label["linkCache"]
+							args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result)[:i],args.RuleResult["yolo"].([]Result)[i+1:]...)
+							args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result),res)
+						}
+					}
 				}
 			}
 		} else {

--
Gitblit v1.8.0