Version:0.0.3.dev.260203

feat:  新增任务队列任务获取与创建接口
- 编写获取任务队列中任务的接口
- 编写新增任务接口
- 完成相关测试并验证通过 
This commit is contained in:
LoveLosita
2026-02-03 20:27:36 +08:00
parent 5038ec2fc5
commit a59bcfbc5e
10 changed files with 272 additions and 5 deletions

48
backend/service/task.go Normal file
View File

@@ -0,0 +1,48 @@
package service
import (
"github.com/LoveLosita/smartflow/backend/conv"
"github.com/LoveLosita/smartflow/backend/dao"
"github.com/LoveLosita/smartflow/backend/model"
"github.com/LoveLosita/smartflow/backend/respond"
)
type TaskService struct {
// 伸出手:准备接住 DAO
dao *dao.TaskDAO
}
// NewTaskService 创建 TaskService 实例
func NewTaskService(dao *dao.TaskDAO) *TaskService {
return &TaskService{
dao: dao,
}
}
func (ts *TaskService) AddTask(req *model.UserAddTaskRequest, userID int) (*model.UserAddTaskResponse, error) {
//1. 调用 conv 层进行转换
taskModel := conv.UserAddTaskRequestToModel(req, userID)
//2.检查优先级是否合法
if taskModel.Priority < 1 || taskModel.Priority >= 5 {
return nil, respond.InvalidPriority
}
//3. 调用 dao 层进行数据持久化
createdTask, err := ts.dao.AddTask(taskModel)
if err != nil {
return nil, err
}
//4. 调用 conv 层进行响应转换
response := conv.ModelToUserAddTaskResponse(createdTask)
return response, nil
}
func (ts *TaskService) GetUserTasks(userID int) ([]model.GetUserTaskResp, error) {
//1. 调用 dao 层获取数据
tasks, err := ts.dao.GetTasksByUserID(userID)
if err != nil {
return nil, err
}
//2. 调用 conv 层进行响应转换
response := conv.ModelToGetUserTasksResp(tasks)
return response, nil
}