| | |
| | | return &TaskService{} |
| | | } |
| | | |
| | | type TaskMode int |
| | | |
| | | const ( |
| | | TaskModeUnStarted TaskMode = 1 //未开始的 |
| | | TaskModeCurrent TaskMode = 2 |
| | | TaskModeLastFinished TaskMode = 3 //上一个结束的 |
| | | ) |
| | | |
| | | // GetTask 获取任务,未完成的开始时间小于等于当前时间,结束时间大于当前时间的任务 |
| | | func (slf TaskService) GetTask(page, pageSize int, mode TaskMode, channels []int32) (taskResp *response.TaskResponse, code int) { |
| | | func (slf TaskService) GetTask(page, pageSize int, mode constvar.TaskMode, channels []int32) (taskResp *response.TaskResponse, code int) { |
| | | var taskList []*response.TaskData |
| | | var count int64 |
| | | var workers []*common.ProcedureWorker |
| | |
| | | SetDeviceId(conf.Conf.System.DeviceId). |
| | | SetPage(page, pageSize) |
| | | |
| | | if mode == TaskModeUnStarted { |
| | | if mode == constvar.TaskModeUnStarted { |
| | | search.SetStatus(model.ProcedureStatusWaitProcess). |
| | | SetStartTimeMax(nowTs). |
| | | SetEndTimeMin(nowTs). |
| | | SetOrder("start_time asc") |
| | | } else if mode == TaskModeCurrent { |
| | | } else if mode == constvar.TaskModeCurrent { |
| | | search.SetStatusNot(model.ProcedureStatusFinished). |
| | | SetStartTimeMax(nowTs). |
| | | SetEndTimeMin(nowTs). |
| | | SetOrder("status desc, start_time asc") |
| | | } else if mode == TaskModeLastFinished { |
| | | } else if mode == constvar.TaskModeLastFinished { |
| | | search.SetStatus(model.ProcedureStatusFinished).SetOrder("updated_at desc") |
| | | if len(channels) > 0 { |
| | | search.SetChannels(channels) |