32 lines
912 B
Go
32 lines
912 B
Go
|
|
package controller
|
|||
|
|
|
|||
|
|
import (
|
|||
|
|
"context"
|
|||
|
|
|
|||
|
|
"model-asynch/model/dto"
|
|||
|
|
"model-asynch/service"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
type task struct{}
|
|||
|
|
|
|||
|
|
// Task 任务控制器
|
|||
|
|
var Task = new(task)
|
|||
|
|
|
|||
|
|
// CreateTask 根据 modelName 创建异步任务,返回 taskId
|
|||
|
|
func (c *task) CreateTask(ctx context.Context, req *dto.CreateTaskReq) (res *dto.CreateTaskRes, err error) {
|
|||
|
|
ctx = ensureUser(ctx)
|
|||
|
|
return service.Task.Create(ctx, req)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetTaskResult 获取任务结果(只返回 oss 地址 + state)
|
|||
|
|
func (c *task) GetTaskResult(ctx context.Context, req *dto.GetTaskResultReq) (res *dto.GetTaskResultRes, err error) {
|
|||
|
|
ctx = ensureUser(ctx)
|
|||
|
|
return service.Task.GetResult(ctx, req.TaskID)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// GetTaskBatch 批量查询任务(成功任务标记为已下载)
|
|||
|
|
func (c *task) GetTaskBatch(ctx context.Context, req *dto.GetTaskBatchReq) (res *dto.GetTaskBatchRes, err error) {
|
|||
|
|
ctx = ensureUser(ctx)
|
|||
|
|
return service.Task.GetBatch(ctx, req)
|
|||
|
|
}
|