修改算力管理,统计信息以及增加摄像机关联任务描述事件等级
| | |
| | | } |
| | | return rows, nil |
| | | } else { |
| | | if err := db.Table(a.TableName()).Find(&rows).Error; err != nil { |
| | | if err := db.Table(a.TableName()).Order("create_time asc").Find(&rows).Error; err != nil { |
| | | return nil, err |
| | | } |
| | | return rows, nil |
| | |
| | | ) |
| | | |
| | | // 智查任务 |
| | | |
| | | type Task struct { |
| | | TaskId int64 `db:"task_id" json:"taskId"` |
| | | TaskName string `db:"task_name" json:"taskName"` |
| | | } |
| | | |
| | | type TaskM struct { |
| | | TaskId int64 `db:"task_id" json:"taskId"` |
| | | TaskName string `db:"task_name" json:"taskName"` |
| | | TaskDescription string `db:"task_description" json:"taskDescription"` |
| | | EventName string `db:"event_name" json:"eventName"` |
| | | } |
| | | |
| | | // 视频 |
| | | type Video struct { |
| | | VideoIds []string `json:"videoIds"` |
| | |
| | | models.Camera |
| | | RunServerName string `json:"runServerName"` |
| | | // Tasks []CameraRunTask `json:"tasks"` |
| | | AllTasks []models.Task `json:"allTasks"` |
| | | Status int `json:"status"` |
| | | LinkCams [][]LinkCam `json:"linkCams"` //与此摄像机联动的所有联动摄像机信息,分组 |
| | | AllTasks []models.TaskM `json:"allTasks"` |
| | | Status int `json:"status"` |
| | | LinkCams [][]LinkCam `json:"linkCams"` //与此摄像机联动的所有联动摄像机信息,分组 |
| | | } |
| | | |
| | | type LinkCam struct { |
| | |
| | | // } else { |
| | | // cri.Tasks = []vo.CameraRunTask{} |
| | | // } |
| | | var ids []string |
| | | var ids []string = []string{} |
| | | ids = append(ids, cE.Id) |
| | | cri.AllTasks, _ = models.GetListTask(ids) |
| | | |
| | | //处理摄像机的状态 |
| | | if cE.RunType == commonModel.TYPE_RUNTYPE_POLL || cE.RunType == commonModel.TYPE_RUNTYPE_REALTIME { |
| | | if crInfo, ok := ruleM[cE.Id]; ok && crInfo.Rules != nil && len(crInfo.Rules) > 0 { |
| | | if cri.AllTasks != nil && len(cri.AllTasks) > 0 { |
| | | if cE.IsRunning { |
| | | cri.Status = commonModel.Camera_Status_Doing |
| | | } else { |
| | |
| | | ) |
| | | |
| | | // 查询列表数据 |
| | | func GetListTask(ids []string) (items []models.Task, err error) { |
| | | func GetListTask(ids []string) (items []models.TaskM, err error) { |
| | | |
| | | //idList := strings.Join(ids, ",") |
| | | idList := "'" + strings.Join(ids, "','") + "'" |
| | | // 主查询SQL |
| | | //sqlStr := `select c.task_id, c.task_name from mal_task_video_link a left join mal_smart_task c on a.task_id = c.task_id where a.video_id in(?) ORDER BY a.task_id desc` |
| | | sqlStr := fmt.Sprintf(` |
| | | SELECT c.task_id, c.task_name |
| | | SELECT c.task_id, c.task_name,c.task_description,b.dict_value as event_name |
| | | FROM mal_task_video_link a |
| | | LEFT JOIN mal_smart_task c ON a.task_id = c.task_id |
| | | LEFT JOIN mal_dict_type b ON b.dict_id = c.event_level |
| | | WHERE a.video_id IN (%s) |
| | | ORDER BY a.task_id DESC |
| | | `, idList) |
| | |
| | | // } |
| | | } |
| | | } |
| | | |
| | | //总算里暂时只统计实时算力 |
| | | v.ChannelTotal = rTotal |
| | | |
| | | v.RealTotal = rTotal |
| | | v.PollTotal = pTotal |
| | | logger.Debug("statisticRunInfo 获取完ExistRunningTask耗时:", time.Since(timeStart)) |