From ed50fd820fa8299f328e85400a08db997e86b349 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期五, 09 八月 2019 18:04:54 +0800
Subject: [PATCH] 加个取联动数据的判断以防偶尔的nil导致宕机

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

diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 2d39911..1c2f8e2 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -110,6 +110,7 @@
 	AlarmLevel   string `json:"alarmLevel"`
 	RuleText     string `json:"ruleText"`
 	DefenceState bool   `json:"defenceState"`
+	IsLink		 bool	`json:"isLink"`
 }
 
 // 涓�涓猣ace瀵瑰涓鍒欑粍鐨勫綊缃汉鑴哥殑缁撴瀯浣�
@@ -180,7 +181,7 @@
 				//os.Exit(1)
 				for _,faceResult := range face.rules {
 					alarm := ChangeToString(faceResult.DefenceState, faceResult.AlarmLevel)
-					alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText, faceResult.DefenceState})
+					alarmRules = append(alarmRules, AlarmRule{faceResult.RuleGroupId, alarm, faceResult.RuleText, faceResult.DefenceState,faceResult.IsLink})
 				}
 				i := protomsg.Image{}
 				err = proto.Unmarshal(bdata, &i)
@@ -292,7 +293,19 @@
 			if arg.Id == face.Id {
 				flag = true
 				face.rules = append(face.rules,faceResult.Result)
-				face.Liker = append(face.Liker,arg.Liker...)
+				// 鐩镐技鑰呭幓閲嶅綊骞�
+				for _,liker := range arg.Liker {
+					flag1 := true
+					for _,liker1 := range face.Liker {
+						if liker.PersonId == liker1.PersonId {
+							flag1 = false
+						}
+					}
+					if flag1 {
+						face.Liker = append(face.Liker,liker)
+					}
+				}
+				//face.Liker = append(face.Liker,arg.Liker...)
 			}
 		}
 		if !flag {
@@ -324,7 +337,7 @@
 					//logger.Info("搴旇杩涙潵鎵嶅鐨�")
 					sdkNames = sdkNames + yoloResult.SdkName
 					alarm := ChangeToString(yoloResult.DefenceState, yoloResult.AlarmLevel)
-					alarmRules = append(alarmRules, AlarmRule{yoloResult.RuleGroupId, alarm, yoloResult.RuleText, yoloResult.DefenceState})
+					alarmRules = append(alarmRules, AlarmRule{yoloResult.RuleGroupId, alarm, yoloResult.RuleText, yoloResult.DefenceState,yoloResult.IsLink})
 					// 涓婁紶缂撳瓨鏁版嵁鐨勫浘鐗囨嬁鍒皍rl
 					if yoloResult.Others.CacheData != nil {
 						//InsertYolo(msg.RuleResult["cacheData"].(ruleserver.ResultMsg))

--
Gitblit v1.8.0