From 870cdf6b042a3a8848afac02fc47181b23d13094 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期二, 06 八月 2019 19:41:57 +0800
Subject: [PATCH] ---

---
 insertdata/insertDataToEs.go |   34 ++++++++++++++++++++++------------
 1 files changed, 22 insertions(+), 12 deletions(-)

diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 52b8dfa..2d39911 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -7,7 +7,6 @@
 	"fmt"
 	"io/ioutil"
 	"net"
-	"os"
 	"ruleprocess/cache"
 	"ruleprocess/logger"
 	"strings"
@@ -149,6 +148,10 @@
 	fk := ruleserver.TrackOrNot(msg.RuleResult)
 	if fk {
 		InsertYolo(msg, "")
+		//if msg.Cid == "61de081a-7ed9-4970-8432-41d642c35456" {
+		//	logger.Warn("鎹曟崏188鎽勫儚鏈虹殑鎸佺画鏃堕棿浠诲姟.....")
+		//	os.Exit(1)
+		//}
 	} else {
 		flag := ruleserver.BodyIsSame(msg.SdkMessage)
 		if !flag {
@@ -161,7 +164,9 @@
 func InsertFace(msg ruleserver.ResultMsg, linkId string) {
 	if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]ruleserver.FaceResult)) > 0 {
 		logger.Info("寰�ES鎻掍汉鑴告暟鎹�")
-		faces := PutFace(msg)
+		faces := []*FaceAndRules{}
+		faces = PutFace(faces,msg)
+		//logger.Info("鏁寸悊鍚庣殑鏁版嵁锛�",faces)
 		if faces != nil {
 			for _,face := range faces {
 				// 涓婁紶澶у浘
@@ -171,8 +176,8 @@
 					panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒")
 				}
 				alarmRules := []AlarmRule{}
-				logger.Warn("浜鸿劯鐨勮鍒欓暱搴︿负锛�",len(face.rules))
-				os.Exit(1)
+				logger.Warn("浜鸿劯id涓猴細",face.Id,"浜鸿劯鐨勮鍒欓暱搴︿负锛�",len(face.rules))
+				//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})
@@ -265,31 +270,36 @@
 }
 
 // 褰掔疆浜鸿劯
-func PutFace(msg ruleserver.ResultMsg) []FaceAndRules{
+func PutFace(faces []*FaceAndRules,msg ruleserver.ResultMsg)[]*FaceAndRules{
 	if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]ruleserver.FaceResult)) > 0 {
-		logger.Info("鏁寸悊浜鸿劯鏁版嵁")
-		faces := []FaceAndRules{}
 		for _, faceResult := range msg.RuleResult["face"].([]ruleserver.FaceResult) {
-			hebingFace(faces, faceResult)
+			faces = hebingFace(faces, faceResult)
 		}
 		return faces
+	} else {
+		return nil
 	}
-	return nil
 }
-func hebingFace(faces []FaceAndRules, faceResult ruleserver.FaceResult) {
+func hebingFace(faces []*FaceAndRules, faceResult ruleserver.FaceResult) []*FaceAndRules{
 	for _, arg := range faceResult.Args {
 		// 鎷垮埌姣忎竴寮犱汉鑴�
+		logger.Info("褰掔疆浜鸿劯鏃剁浉浼艰�呯殑鏁伴噺锛�",len(arg.Liker))
 		flag := false
 		for _, face := range faces {
+			for _,lik := range face.Liker {
+				logger.Warn("--------鍚堝苟浜鸿劯鏃剁浉浼艰�咃細",lik.PersonId,lik.TableName)
+			}
 			if arg.Id == face.Id {
 				flag = true
 				face.rules = append(face.rules,faceResult.Result)
+				face.Liker = append(face.Liker,arg.Liker...)
 			}
 		}
-		if flag {
-			faces = append(faces, FaceAndRules{arg, []ruleserver.Result{faceResult.Result}})
+		if !flag {
+			faces = append(faces, &FaceAndRules{arg, []ruleserver.Result{faceResult.Result}})
 		}
 	}
+	return faces
 }
 
 // 寰�es涓彃鍏olo鏁版嵁

--
Gitblit v1.8.0