From 33804d4591d5021b4dec1da5f5152422282409c6 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 13 十一月 2019 11:23:55 +0800
Subject: [PATCH] --暂存

---
 algorithm/middleware/middleware.go |    6 +++---
 ruleserver/ruleToformula.go        |   17 +++++++++--------
 2 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/algorithm/middleware/middleware.go b/algorithm/middleware/middleware.go
index 57b1c07..266ceea 100644
--- a/algorithm/middleware/middleware.go
+++ b/algorithm/middleware/middleware.go
@@ -14,7 +14,7 @@
 	"time"
 )
 
-func Entrance (args *structure.SdkDatas,groupRule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool,string,string){
+func Entrance (args *structure.SdkDatas,groupRule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool,[]*structure.Arg,string,string){
 	resultSplice := []*structure.LittleRuleResult{}
 	sdkNames := ""
 	polygonId := ""
@@ -214,9 +214,9 @@
 			panic("瑙勫垯鏈夎锛屽緱鍒扮殑鏁板鍏紡涓嶅彲瑙f瀽")
 		}
 		result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋�
-		return result.(bool),sdkNames,polygonId
+		return result.(bool),nil,sdkNames,polygonId
 	} else {
-		return false,sdkNames,polygonId
+		return false,nil,sdkNames,polygonId
 	}
 }
 
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 7838d53..e54a5d4 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -77,7 +77,7 @@
 	}
 }
 
-func CallMiddleware(args *structure.SdkDatas,rule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool, string, string){
+func CallMiddleware(args *structure.SdkDatas,rule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool, []*structure.Arg, string, string){
 	p,err :=  plugin.Open("./algorithm/middleware.so")
 	if err != nil {
 		panic(err)
@@ -86,8 +86,8 @@
 	if err1 != nil {
 		panic("娌℃湁鎵惧埌涓棿浠跺叆鍙e嚱鏁�")
 	}
-	a,b,c := f.(func(args *structure.SdkDatas,rule protomsg.GroupRule,label *structure.Others,message *protomsg.SdkMessage)(bool, string, string))(args,rule,lable,message)
-	return a,b,c
+	a,b,c,d := f.(func(args *structure.SdkDatas,rule protomsg.GroupRule,label *structure.Others,message *protomsg.SdkMessage)(bool,[]*structure.Arg, string, string))(args,rule,lable,message)
+	return a,b,c,d
 }
 
 func RunRule(args *structure.SdkDatas, groupRule *protomsg.GroupRule, taskId string, message *protomsg.SdkMessage, label structure.Others) (bool,[]int) {
@@ -102,11 +102,12 @@
 	result := false
 	sdkNames := ""
 	polygonId := ""
+	targets := []*structure.Arg{} // 绗﹀悎鏉′欢鐨勭洰鏍�
 	// 鎶婁竴甯ф暟鎹拰涓�缁勮鍒欏彂缁欑畻娉曢儴鍒嗭紝寰楀嚭鍒ゆ柇缁撴灉
-	result,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
-
+	result,targets,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
+	logger.Info("绗﹀悎鏉′欢鐨勭洰鏍囨暟鎹細",targets)
 	if result {
-		// 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢   鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹�
+		// 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢   鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹�         锛侊紒锛侊紒锛乸s: 瀵圭敾闈腑鍗曚釜鐩爣鍋氬畾鏃跺櫒鐨勪笉鐢ㄥ啀杩囩敾闈㈠畾鏃跺櫒
 		cacheId := ""
 		for j := 0; j < len(groupRule.Rules); j++ {
 			for _, sdkData := range args.Sdkdata {
@@ -173,12 +174,12 @@
 			}
 			var labelTypes []int // 0涓簓olo鏍囩锛�1涓篺ace鏍囩 2涓轰袱鑰呮爣绛�
 			if sdkNames != "" {
-				args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, islink,label,})
+				args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, islink,label})
 				labelTypes = append(labelTypes,0)
 				//logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result)))
 			}
 			if faceFlag {
-				args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.TargetResult), structure.TargetResult{structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []structure.TargetInfo{}, polygonId, islink,label,}, faces})
+				args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.TargetResult), structure.TargetResult{structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []structure.TargetInfo{}, polygonId, islink,label}, faces})
 				//logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]FaceResult)))
 				labelTypes = append(labelTypes,1)
 			}

--
Gitblit v1.8.0