From b18beafcaaa2e2086610f22079842b2e5af6e283 Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期四, 01 八月 2019 14:41:38 +0800 Subject: [PATCH] 联动规则稳定版 --- ruleserver/ruleToformula.go | 34 +++++++++++++++++++++------------- 1 files changed, 21 insertions(+), 13 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index e4f98c0..e8c0fbc 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -270,9 +270,9 @@ completeFormula = completeFormula[1:] } logger.Info("-------------------鐪嬬湅鎷旀瘺鍚庣殑琛ㄨ揪寮忥細", completeFormula) - expression, _ := govaluate.NewEvaluableExpression(completeFormula) - result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� - return result.(bool) + //expression, _ := govaluate.NewEvaluableExpression(completeFormula) + //result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� + //return result.(bool) } if completeFormula != "" { logger.Info("缁撴灉鍏紡-----------锛�", completeFormula) @@ -429,10 +429,18 @@ va.Result = strconv.FormatBool(isOk) tempMap := make(map[string]interface{}) for k,result := range args.RuleResult { - tempMap[k] = result - } - for _,result := range args.RuleResult["yolo"].([]Result) { - logger.Warn("鏀捐繘鑱斿姩缂撳瓨鐨勯暱搴︽槸",len(result.LinkCache)) + 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) + } + } } va.CacheData = ResultMsg{message,tempMap} logger.Info("杩欎釜鎽勫儚鏈�--", args.CameraId, "--琚祴浜堜簡result", va.Result) @@ -467,16 +475,16 @@ label.LinkCache = append(label.LinkCache,ruleRes.CacheData) } logger.Debug("鑱斿姩浠诲姟缂撳瓨浜嗗嚑涓暟鎹�",len(label.LinkCache)) - //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 { // 鎶婂師鏉ラ偅涓垹鎺夊啀瀛樹竴浠芥柊鐨� + if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂 args.RuleResult["yolo"].([]Result)[i].Others.LinkCache = label.LinkCache } } + for i := 0; i < len(args.RuleResult["face"].([]FaceResult)); i++ { + if args.RuleResult["face"].([]FaceResult)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂 + args.RuleResult["face"].([]FaceResult)[i].Others.LinkCache = label.LinkCache + } + } } } } else { -- Gitblit v1.8.0