---
panlei
2019-08-05 05d0f62ad1526aa136875ddb282c500d01107982
insertdata/insertDataToEs.go
@@ -148,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 {
@@ -160,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 {
            // 上传大图
@@ -170,6 +176,8 @@
               panic("解压缩图片时出现错误")
            }
            alarmRules := []AlarmRule{}
            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})
@@ -262,18 +270,18 @@
}
// 归置人脸
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 {
      // 拿到每一张人脸
      flag := false
@@ -283,10 +291,12 @@
            face.rules = append(face.rules,faceResult.Result)
         }
      }
      if flag {
         faces = append(faces, FaceAndRules{arg, []ruleserver.Result{faceResult.Result}})
      if !flag {
         faces = append(faces, &FaceAndRules{arg, []ruleserver.Result{faceResult.Result}})
      }
   }
   logger.Info("整理中的数据",faces)
   return faces
}
// 往es中插入yolo数据