panlei
2019-11-20 fe090f3f0d4d135622d631f1798b9414d6bd81cf
labelFilter/readyDataForLabel.go
@@ -18,19 +18,17 @@
}
// 把数据装配到label
func (label *Label)DataFormatToLabel(result structure.ResultMsg) {
   if (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.Result)) > 0) ||
      (result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0) ||
      (result.RuleResult["target"] != nil && len(result.RuleResult["target"].([]structure.Result)) > 0){ // 得有人脸或者yolo规则才可以
      // 先判断一下数据带的规则标签是否有报警的可以推送的
      flag := false
      for _, res := range result.RuleResult["yolo"].([]structure.Result) {
         //logger.Info("定时器打的数字标签:",res.Others.TimeLabel)
   flag1 := false
   for _,value := range result.RuleResult {
      if value != nil && len(value.([]structure.Result)) > 0{
         for _,res := range value.([]structure.Result) {
         if res.Others.TimeLabel == "01" || res.Others.TimeLabel == "10" {
            flag = true
               flag1 = true
         }
      }
      if flag || (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.Result)) > 0){
      }
   }
   if flag1{
         logger.Info("---------------标签过滤器赋值")
         label.CameraId = result.Cid
         camera, err := cache.GetCameraById(result.Cid)
@@ -41,20 +39,18 @@
         label.CameraAddr = camera.Addr
         label.TaskId = result.Tasklab.Taskid
         label.Time = time.Now().Format("2006-01-02 15:04:05")
         if result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.Result)) > 0 {
            for _,faceGroup := range result.RuleResult["face"].([]structure.Result) {
               label.Persons = append(label.Persons,faceGroup)
               label.DefenceLevel = append(label.DefenceLevel,faceGroup.AlarmLevel)
            }
         }
         if result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0 {
            for _,yoloGroup := range result.RuleResult["yolo"].([]structure.Result) {
               label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel)
      for key,value := range result.RuleResult {
         if value != nil && len(value.([]structure.Result)) > 0{
            for _,res := range value.([]structure.Result) {
               label.DefenceLevel = append(label.DefenceLevel,res.AlarmLevel)
               if key == "face" {
                  label.Persons = append(label.Persons,res)
               }
            }
            }
         }
         logger.Info("------------标签过滤器赋值完毕")
      }
   }
}