From 317d6f3ebb2437f7f30ef657fafe41a7207ae98e Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 01 八月 2019 11:22:39 +0800
Subject: [PATCH] ---

---
 ruleserver/ruleToformula.go |   43 ++++++++++++++++++++++++++++++++-----------
 1 files changed, 32 insertions(+), 11 deletions(-)

diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 186c097..39568f0 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -297,7 +297,7 @@
 			}
 			// 杩涜瀹氭椂鍣ㄧ殑澶勭悊鍜屽垽鏂�
 			timeFlag := TimerAlarm(label, groupRule.GroupId, result.(bool))
-			if timeFlag == "01" || timeFlag == "10" || timeFlag == "11" { // 婊¤冻瀹氭椂鍣ㄦ潯浠�
+			if timeFlag == "01" || timeFlag == "10" || timeFlag == "11" { // 娌℃湁瀹氭椂鍣ㄦ垨鑰呮弧瓒冲畾鏃跺櫒鏉′欢
 				// 鎵撲汉鑴告爣绛惧拰yolo鏍囩
 				// 鏈�鍚庢垚鍔熸姤璀︽墠鎶婄鍚堟潯浠剁殑浜鸿劯鏁版嵁濉炶繘缁撴灉鏍囩閲�
 				// 閰嶄簡浜鸿劯鐨勭畻娉曟墠鎶婁汉鑴哥殑鏁版嵁鐢╁嚭鏉ユ墦鏍囩
@@ -427,7 +427,27 @@
 		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 {
+					if k == "yolo" {
+						tempMap[k] = []Result{}
+						for _,res := range result.([]Result)  {
+							tempMap[k] = append(tempMap[k].([]Result),res)
+						}
+					}
+					if k == "face" {
+						tempMap[k] = []FaceResult{}
+						for _,res := range result.([]FaceResult)  {
+							tempMap[k] = append(tempMap[k].([]FaceResult),res)
+						}
+					}
+				}
+				for _,result := range args.RuleResult["yolo"].([]Result)  {
+					for k,_ := range result.Others  {
+						logger.Warn("鏀捐繘鑱斿姩缂撳瓨鐨勯敭鏄�",k)
+					}
+				}
+				va.CacheData = ResultMsg{message,tempMap}
 				logger.Info("杩欎釜鎽勫儚鏈�--", args.CameraId, "--琚祴浜堜簡result", va.Result)
 			}
 		}
@@ -460,17 +480,18 @@
 						label["linkCache"] = append(label["linkCache"].([]ResultMsg),ruleRes.CacheData)
 					}
 					logger.Debug("鑱斿姩浠诲姟缂撳瓨浜嗗嚑涓暟鎹�",len(label["linkCache"].([]ResultMsg)))
-					for _,result := range args.RuleResult["yolo"].([]Result) {
-						if result.RuleGroupId == groupRule.GroupId {
-							result.Others["linkCache"] = label
-						}
-					}
+					//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)
+							args.RuleResult["yolo"].([]Result)[i].Others["linkCache"] = label["linkCache"]
+							//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)
 						}
 					}
 				}

--
Gitblit v1.8.0