panlei
2019-11-20 fe090f3f0d4d135622d631f1798b9414d6bd81cf
事件推送改造
1个文件已修改
58 ■■■■ 已修改文件
labelFilter/readyDataForLabel.go 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
labelFilter/readyDataForLabel.go
@@ -18,43 +18,39 @@
}
// 把数据装配到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)
            if res.Others.TimeLabel == "01" || res.Others.TimeLabel == "10" {
                flag = true
            }
        }
        if flag || (result.RuleResult["face"] != nil && len(result.RuleResult["face"].([]structure.Result)) > 0){
            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")
            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)
    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 result.RuleResult["yolo"] != nil && len(result.RuleResult["yolo"].([]structure.Result)) > 0 {
        }
    }
    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 _,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("------------标签过滤器赋值完毕")
        }
        logger.Info("------------标签过滤器赋值完毕")
    }
}