panlei
2019-11-29 087bf92d707de1a838451719da505f69b6934087
labelFilter/readyDataForLabel.go
@@ -1,7 +1,7 @@
package labelFilter
import (
   "ruleprocess/logger"
   logger "github.com/jeanphorn/log4go"
   "ruleprocess/cache"
   "ruleprocess/structure"
   "time"
@@ -13,14 +13,22 @@
   CameraAddr    string
   TaskId        string
   Time        string
   Persons       []structure.FaceResult
   Persons       []structure.Result
   DefenceLevel  []int32
}
// 把数据装配到label
func (label *Label)DataFormatToLabel(result structure.ResultMsg) {
   logger.Debug("face结果:",result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0)
   logger.Debug("yolo结果:",result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0)
   if (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.FaceResult)) > 0) || (result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0) {
   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" {
               flag1 = true
            }
         }
      }
   }
   if flag1{ // 有可推送的数据
      logger.Info("---------------标签过滤器赋值")
      label.CameraId = result.Cid
      camera, err := cache.GetCameraById(result.Cid)
@@ -31,19 +39,19 @@
      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.FaceResult)) > 0 {
         for _,faceGroup := range result.RuleResult["face"].([]structure.FaceResult) {
            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) {
               if res.Others.TimeLabel == "01" || res.Others.TimeLabel == "10" {
                  label.DefenceLevel = append(label.DefenceLevel,res.AlarmLevel)
                  if key == "face" {
                     label.Persons = append(label.Persons,res)
                  }
               }
            }
         }
      }
      logger.Info("------------标签过滤器赋值完毕")
   }
}
// 从缓存中查出所有的规则数据
}