From c38107509ab41692f30c014d7f7c785f2416f873 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 24 七月 2019 18:20:57 +0800
Subject: [PATCH] 添加人脸报警等级

---
 insertdata/insertDataToEs.go |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 651fd81..554645b 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -55,6 +55,7 @@
 	TaskName        string                 `json:"taskName"`
 	SdkName         string                 `json:"sdkName"`
 	Content         string                 `json:"content"`
+	AlarmRules      []AlarmRule 		   `json:"alarmRules"`
 	LikeDate        string                 `json:"likeDate"`
 	Sex             string                 `json:"sex"`
 	Age             int32                  `json:"age"`
@@ -135,12 +136,17 @@
 	if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]ruleserver.FaceResult)) > 0 {
 		logger.Info("寰�ES鎻掍汉鑴告暟鎹�")
 		for _, faceResult := range msg.RuleResult["face"].([]ruleserver.FaceResult) {
-			for _,face := range faceResult.Args  {
+			for _, face := range faceResult.Args {
 				// 涓婁紶澶у浘
 				// 瑙e帇缂╁苟涓婁紶鍥剧墖
 				bdata, err := util.UnCompress(msg.Data)
 				if err != nil {
 					panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒")
+				}
+				alarmRules := []AlarmRule{}
+				for _, faceResult := range msg.RuleResult["face"].([]ruleserver.FaceResult) {
+					alarm := ChangeToString(faceResult.AlarmLevel)
+					alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText})
 				}
 				i := protomsg.Image{}
 				err = proto.Unmarshal(bdata, &i)
@@ -183,6 +189,7 @@
 					msg.Tasklab.Taskname,
 					"浜鸿劯",
 					"",
+					alarmRules,
 					time.Now().Format("2006-01-02 15:04:05"), // 鍙娴嬶紝娌℃湁姣斿鏃堕棿
 					sex,
 					face.ThftRes.Age,
@@ -257,6 +264,7 @@
 		msg.Tasklab.Taskname,
 		"浜鸿劯",
 		"鐘舵�佽浆鎹㈡暟鎹紝闈炴姤璀︽暟鎹�",
+		[]AlarmRule{},
 		time.Now().Format("2006-01-02 15:04:05"), // 鍙娴嬶紝娌℃湁姣斿鏃堕棿
 		"",
 		0,
@@ -344,10 +352,26 @@
 			logger.Error("鏌ヨ鎽勫儚鏈轰俊鎭け璐�")
 		}
 		serverIp, err := GetLocalIP()
+		url := []string{}
+		url = append(url,strings.Split(resp["fileUrl"].(string), "/")[1])
 		if msg.RuleResult["cacheData"] != nil {
 			InsertYolo(msg.RuleResult["cacheData"].(ruleserver.ResultMsg))
 			// 鎶婄紦瀛樼殑鏁版嵁涓婁紶鍚庡緱鍒板湴鍧�瀛樿繘鍘�
-
+			// 瑙e帇缂╁苟涓婁紶鍥剧墖
+			msg1 := msg.RuleResult["cacheData"].(ruleserver.ResultMsg)
+			bdata, err := util.UnCompress(msg1.Data)
+			if err != nil {
+				panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒")
+			}
+			i := protomsg.Image{}
+			err = proto.Unmarshal(bdata, &i)
+			resp1, err1 := util.DrawPolygonOnImage(msg.Cid, i, msg.RuleResult["yolo"].([]ruleserver.Result), weedfsUrl)
+			if err1 != nil {
+				logger.Error("缂撳瓨鏁版嵁鐢绘鎴栦笂浼犲浘鐗囨湇鍔″櫒鍑洪敊", err)
+			} else {
+				logger.Info("涓婁紶鐨勫浘鐗囦俊鎭細", resp1)
+			}
+			url = append(url,strings.Split(resp1["fileUrl"].(string), "/")[1])
 		}
 		peraction := Personaction{
 			uuid.NewV4().String(),
@@ -363,7 +387,7 @@
 			localConfig.ServerName,
 			serverIp,
 			"",
-			[]string{strings.Split(resp["fileUrl"].(string), "/")[1]},
+			url,
 			i.Timestamp,
 			"",
 			isAlarm,

--
Gitblit v1.8.0