From 4243a710f702b601b1d5a7dc2c765191c191201d Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 11 十二月 2019 17:59:48 +0800
Subject: [PATCH] 把插入es的so放进中间件

---
 insertdata/insertDataToEs.go           |   16 ++++++++--------
 algorithm/middleware/readyData.go      |    2 +-
 ruleserver/ruleToformula.go            |   14 ++++++++------
 structure/rule.go                      |    5 ++---
 algorithm/middleware/insertDataToEs.go |    9 +++++++++
 5 files changed, 28 insertions(+), 18 deletions(-)

diff --git a/algorithm/insertEs/insertDataToEs.go b/algorithm/middleware/insertDataToEs.go
similarity index 98%
rename from algorithm/insertEs/insertDataToEs.go
rename to algorithm/middleware/insertDataToEs.go
index f49407a..af27a79 100644
--- a/algorithm/insertEs/insertDataToEs.go
+++ b/algorithm/middleware/insertDataToEs.go
@@ -899,3 +899,12 @@
 		return nil
 	}
 }
+
+
+//func Insert2Es(msg structure.ResultMsg,weedfsUrl1,videoPersonUrl1,serverIp1,serverPort1 string) {
+//	if msg.RuleResult["label"] != nil && len(msg.RuleResult["label"].([]structure.Result)) > 0 {
+//		for msg.RuleResult["label"].([]structure.Result) {
+//
+//		}
+//	}
+//}
\ No newline at end of file
diff --git a/algorithm/middleware/readyData.go b/algorithm/middleware/readyData.go
index bdcc857..5ea0c97 100644
--- a/algorithm/middleware/readyData.go
+++ b/algorithm/middleware/readyData.go
@@ -222,7 +222,7 @@
 		for _, info := range Track.Result {
 			logger.Info("鎺ユ敹璺熻釜鏁版嵁锛�",info.Id,info.Confidence)
 			photoMap := structure.PhotoMap{structure.SourcePhoto{Id: strconv.Itoa(int(info.Id)),Score: float64(info.Confidence)*100,Rects: rectFormat(info.RcHuman), Type: "track"},structure.SourcePhoto{}}
-			FacePush2Body(&photoMap,m.Tasklab.Sdkinfos)
+			//FacePush2Body(&photoMap,m.Tasklab.Sdkinfos)
 			logger.Info("缁勮鍚庣殑璺熻釜鏁版嵁锛�",photoMap)
 			arg.Photo = append(arg.Photo, photoMap)
 		}
diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 7349d79..05a014e 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -8,9 +8,9 @@
 	"strconv"
 )
 
-var weedfsUrl, videoPersonUrl, personAction string
-var serverIp string
-var serverPort string
+//var weedfsUrl, videoPersonUrl, personAction string
+//var serverIp string
+//var serverPort string
 func InsertToEs(msg structure.ResultMsg) {
 	defer func() {
 		if err := recover(); err != nil {
@@ -21,15 +21,15 @@
 	if err != nil {
 		panic("閰嶇疆鏂囦欢涓嶅悎娉�")
 	}
-	weedfsUrl = "http://" + localConfig1.WebPicIp + ":" + strconv.Itoa(int(localConfig1.WebPicPort)) + "/submit"
-	videoPersonUrl = "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + structure.EsInfo.EsIndex.AIOcean.IndexName + "/" + structure.EsInfo.EsIndex.AIOcean.IndexType+"?refresh=true"
-	serverIp = localConfig1.AlarmIp
-	serverPort = strconv.Itoa(int(localConfig1.AlarmPort))
+	weedfsUrl := "http://" + localConfig1.WebPicIp + ":" + strconv.Itoa(int(localConfig1.WebPicPort)) + "/submit"
+	videoPersonUrl := "http://" + localConfig1.AlarmIp + ":" + strconv.Itoa(int(localConfig1.AlarmPort)) + "/" + structure.EsInfo.EsIndex.AIOcean.IndexName + "/" + structure.EsInfo.EsIndex.AIOcean.IndexType+"?refresh=true"
+	serverIp := localConfig1.AlarmIp
+	serverPort := strconv.Itoa(int(localConfig1.AlarmPort))
 	handle(msg,weedfsUrl,videoPersonUrl,serverIp,serverPort)
 }
 
 func handle (msg structure.ResultMsg,weedfsUrl,videoPersonUrl,serverIp,serverPort string) {
-	p,err :=  plugin.Open("./algorithm/insertEs.so")
+	p,err :=  plugin.Open("./algorithm/middleware.so")
 	if err != nil {
 		panic(err)
 	}
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 64a3641..7f3a959 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -119,6 +119,7 @@
 	result,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
 
 	if result {
+
 		// 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢   鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹�         锛侊紒锛侊紒锛乸s: 瀵圭敾闈腑鍗曚釜鐩爣鍋氬畾鏃跺櫒鐨勪笉鐢ㄥ啀杩囩敾闈㈠畾鏃跺櫒
 		for j := 0; j < len(groupRule.Rules); j++ {
 			for _, sdkData := range args.Sdkdata {
@@ -355,7 +356,7 @@
 			if flag {
 				m := make(map[string]interface{})
 				m["yolo"] = []structure.Result{}
-				m["yolo"] = append(m["yolo"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, am.AreaJson, false,label})
+				m["yolo"] = append(m["yolo"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, true,am.AreaJson, false,label})
 				timeLength, _ := strconv.Atoi(rule.SdkArgValue)
 				timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false, BufferFlag: 10, CacheSdkData: structure.ResultMsg{message, m}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級
 				//TimeEleList = make(map[string]timeElement)
@@ -370,6 +371,7 @@
 }
 
 func AssembResultLabel(args *structure.SdkDatas, groupRule *protomsg.GroupRule,sdkNames string,taskId string,polygonId string,label structure.Others) []int{
+
 	faces := []*structure.Arg{}
 	yolos := []*structure.Arg{}
 	targets := []*structure.Arg{}
@@ -427,27 +429,27 @@
 	//logger.Info("瑙﹀彂鐨勫尯鍩焛d锛�",polygonId)
 	var labelTypes []int // 0涓簓olo鏍囩锛�1涓篺ace鏍囩 2涓轰袱鑰呮爣绛�
 	if sdkNames != "" && len(targets) == 0 {
-		args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, yolos, polygonId, islink,label})
+		args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, yolos, true,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.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, faces, polygonId, islink,label})
+		args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, faces, false,polygonId, islink,label})
 		//logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]structure.Result)))
 		labelTypes = append(labelTypes,1)
 	}
 	if len(targets) > 0 {
-		args.RuleResult["target"] = append(args.RuleResult["target"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, targets, polygonId, islink,label})
+		args.RuleResult["target"] = append(args.RuleResult["target"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, targets, false,polygonId, islink,label})
 		//logger.Info("-------------------鐩爣鎸佺画缁撴灉鏍囩", len(args.RuleResult["target"].([]structure.Result)))
 		labelTypes = append(labelTypes,2)
 	}
 	if len(cars) > 0 {
-		args.RuleResult["plate"] = append(args.RuleResult["plate"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, cars, polygonId, islink,label})
+		args.RuleResult["plate"] = append(args.RuleResult["plate"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, cars, false,polygonId, islink,label})
 		//logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result)))
 		labelTypes = append(labelTypes,3)
 	}
 	if len(personTrack) > 0 {
-		args.RuleResult["track"] = append(args.RuleResult["track"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, personTrack, polygonId, islink,label})
+		args.RuleResult["track"] = append(args.RuleResult["track"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, personTrack, false,polygonId, islink,label})
 		//logger.Info("-------------------杞︾墝缁撴灉鏍囩", len(args.RuleResult["plate"].([]structure.Result)))
 		labelTypes = append(labelTypes,4)
 	}
diff --git a/structure/rule.go b/structure/rule.go
index 2389cca..a6fe8d5 100644
--- a/structure/rule.go
+++ b/structure/rule.go
@@ -87,13 +87,12 @@
 // 杩囪鍒欏簱鎵撲笂鐨勬爣绛�
 type Result struct {
 	TaskId       string // 浠诲姟id
-	SdkName      string
+	SdkName      string // 绠楁硶鍚嶇О
 	RuleGroupId  string // 瑙勫垯缁刬d
 	DefenceState bool   // 鏄惁甯冮槻
 	AlarmLevel   int32  // 鎶ヨ绛夌骇
 	RuleText     string // 鏂囧瓧鐗堣鍒欑粍
-	//Location     []TargetInfo // 鐩爣鐨勫潗鏍�
-	AlarmObj     []*Arg // 鎶ヨ鐨勭洰鏍囨暟鎹�  鎵撶畻搴熸帀涓婇潰鐨凩ocation
+	AlarmObj     []*Arg // 鎶ヨ鐨勭洰鏍囨暟鎹�
 	AlarmPolygon string // 瑙﹀彂鐨勬姤璀︽
 	IsLink       bool   // 鏄惁鏄仈鍔ㄤ换鍔�
 	Others

--
Gitblit v1.8.0