From 1af27cee5a419bcd445375693f9bc437e6483b6f Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 03 七月 2019 13:35:16 +0800
Subject: [PATCH] 人脸过滤

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

diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 8fc77d2..cb8295b 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -4,7 +4,6 @@
 	"encoding/json"
 	"fmt"
 	"log"
-	"os"
 	"ruleprocess/cache"
 	"sort"
 	"strconv"
@@ -253,11 +252,20 @@
 	for _, sdkData := range args.Sdkdata {
 		for _, areaMap := range sdkData.AreaMapList {
 			for j := 0; j < len(groupRule.Rules); j++ {
-				putFaceToResult(groupRule.Rules[j], &areaMap, faces)
+				faces = append(faces,putFaceToResult(groupRule.Rules[j], &areaMap)...)
 			}
 		}
 	}
-	args.RuleResult["face"] = faces
+	// 閰嶄簡浜鸿劯鐨勭畻娉曟墠鎶婁汉鑴哥殑鏁版嵁鐢╁嚭鏉ユ墦鏍囩
+	flag := false
+	for j := 0; j < len(groupRule.Rules); j++ {
+		if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a971" {
+			flag = true
+		}
+	}
+	if flag {
+		args.RuleResult["face"] = faces
+	}
 	// 鍐嶈繃鍏朵粬鏁版嵁 杩欐鐩存帴寰楀埌缁撴灉锛堢湡鎴栧亣锛� 杩囩洰鏍囨暟閲�
 	for j := 0; j < len(groupRule.Rules); j++ {
 		for _, sdkData := range args.Sdkdata {
@@ -331,15 +339,16 @@
 				for j := 0; j < len(groupRule.Rules); j++ {
 					for _, sdkData := range args.Sdkdata {
 						if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo && !strings.Contains(sdkName,sdkData.SdkName) { // 鍙褰晊olo绗﹀悎瑙勫垯鐨剆dk 鍚屾椂瑕侀伩鍏嶉噸澶嶆嫾鎺�
-							sdkName = sdkName + "," + sdkData.SdkName
+							sdkName = sdkData.SdkName + " "
 						}
 					}
 				}
-				args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText})
-				log.Println("-------------------yolo缁撴灉鏍囩",args.RuleResult["yolo"].([]Result))
-				if args.RuleResult["faces"] != nil {
-					log.Println("-------------------face缁撴灉鏍囩",args.RuleResult["faces"].([]Arg))
-					os.Exit(1)
+				if sdkName != "" {
+					args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText})
+					log.Println("-------------------yolo缁撴灉鏍囩",args.RuleResult["yolo"].([]Result))
+				}
+				if args.RuleResult["face"] != nil {
+					log.Println("-------------------face缁撴灉鏍囩",args.RuleResult["face"].([]Arg))
 				}
 				return true
 			} else {
@@ -351,14 +360,17 @@
 	}
 }
 
-func putFaceToResult(rule *protomsg.Rule, am *AreaMap, faces []Arg) {
-	if rule.SdkId == am.sdkId {
+func putFaceToResult(rule *protomsg.Rule, am *AreaMap) []Arg {
+	faces := []Arg{}
+	if rule.SdkId == am.sdkId && rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971"{
 		if len(am.filterData) > 0 {
 			for _, data := range am.filterData {
 				faces = append(faces, data)
 			}
 		}
 	}
+	//log.Println("-----------------------------------------------鍚浣犳槸绌虹殑锛�",faces)
+	return faces
 }
 
 // 璁$畻鍖哄煙鍐呯殑鐩爣鏁伴噺浠ュ強灏嗙浉浼煎害銆佸崰姣斻�佸昂瀵哥瓑鎵撳寘

--
Gitblit v1.8.0