package labelFilter import ( "basic.com/valib/logger.git" "ruleprocess/cache" "ruleprocess/structure" "time" ) type Label struct { CameraId string CameraName string CameraAddr string TaskId string Time string Persons []structure.Result DefenceLevel []int32 } // 把数据装配到label func (label *Label)DataFormatToLabel(result structure.ResultMsg) { 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) if err != nil { logger.Error("查询摄像机信息出错") } label.CameraName = camera.Name label.CameraAddr = camera.Addr label.TaskId = result.Tasklab.Taskid label.Time = time.Now().Format("2006-01-02 15:04:05") 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("------------标签过滤器赋值完毕") } }