2026-04-29 15:54:14 +08:00
|
|
|
|
package controller
|
|
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
|
"context"
|
2026-05-29 17:54:19 +08:00
|
|
|
|
taskService "model-gateway/service/task"
|
2026-04-29 15:54:14 +08:00
|
|
|
|
|
2026-05-15 14:56:26 +08:00
|
|
|
|
"model-gateway/model/dto"
|
2026-04-29 15:54:14 +08:00
|
|
|
|
)
|
|
|
|
|
|
|
2026-06-11 17:58:49 +08:00
|
|
|
|
// ModelGatewayTask 任务控制器
|
|
|
|
|
|
var ModelGatewayTask = new(task)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
|
2026-06-11 17:58:49 +08:00
|
|
|
|
type task struct{}
|
2026-04-29 15:54:14 +08:00
|
|
|
|
|
|
|
|
|
|
// CreateTask 根据 modelName 创建异步任务,返回 taskId
|
|
|
|
|
|
func (c *task) CreateTask(ctx context.Context, req *dto.CreateTaskReq) (res *dto.CreateTaskRes, err error) {
|
2026-06-11 17:58:49 +08:00
|
|
|
|
return taskService.ModelGatewayTask.Create(ctx, req)
|
2026-06-02 20:26:45 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2026-06-11 17:58:49 +08:00
|
|
|
|
// GetTaskResult 获取单条任务结果(返回 *dto.GetTaskResultRes)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
func (c *task) GetTaskResult(ctx context.Context, req *dto.GetTaskResultReq) (res *dto.GetTaskResultRes, err error) {
|
2026-06-11 17:58:49 +08:00
|
|
|
|
return taskService.ModelGatewayTask.GetResult(ctx, req.TaskID)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2026-06-11 17:58:49 +08:00
|
|
|
|
// GetTaskBatch 批量查询任务(返回 *[]dto.GetTaskBatchItem)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
func (c *task) GetTaskBatch(ctx context.Context, req *dto.GetTaskBatchReq) (res *dto.GetTaskBatchRes, err error) {
|
2026-06-11 17:58:49 +08:00
|
|
|
|
return taskService.ModelGatewayTask.GetBatch(ctx, req)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// ListTask 任务列表分页查询
|
|
|
|
|
|
func (c *task) ListTask(ctx context.Context, req *dto.ListTaskReq) (res *dto.ListTaskRes, err error) {
|
2026-06-11 17:58:49 +08:00
|
|
|
|
return taskService.ModelGatewayTask.List(ctx, req)
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// ModelTaskCallback 接收模型异步任务的回调通知 —— 待调整
|
|
|
|
|
|
func (c *task) ModelTaskCallback(ctx context.Context, req *dto.ModelTaskCallbackReq) (res *dto.ModelTaskCallbackRes, err error) {
|
|
|
|
|
|
return taskService.ModelGatewayTask.ModelTaskCallback(ctx, req)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2026-06-11 17:58:49 +08:00
|
|
|
|
// QueryPendingTasks 批量轮询进行中的异步任务 —— 待调整
|
|
|
|
|
|
func (c *task) QueryPendingTasks(ctx context.Context, req *dto.QueryPendingTasksReq) (res *dto.QueryPendingTasksRes, err error) {
|
|
|
|
|
|
return taskService.ModelGatewayTask.QueryPendingTasks(ctx, req)
|
2026-04-29 15:54:14 +08:00
|
|
|
|
}
|