diff --git a/internal/api/v1/cptask_req.go b/internal/api/v1/cptask_req.go index 25c8555..84d4fc7 100644 --- a/internal/api/v1/cptask_req.go +++ b/internal/api/v1/cptask_req.go @@ -54,6 +54,12 @@ type PostCpTaskExecuteReq struct { ExecuteDays []int `json:"execute_days"` } +type UpdateTaskTitleReq struct { + g.Meta `path:"/task/title/{id}" method:"put" tags:"CpTask" summary:"修改任务标题"` + Id int64 `json:"id"` + Title string `json:"title" v:"required#标题不能为空"` +} + type DeleteTaskReq struct { g.Meta `path:"/task/{id}" method:"delete" tags:"CpTask" summary:"删除任务"` Id int64 `json:"id"` diff --git a/internal/controller/cpdaily/cptask_ctrlV1.go b/internal/controller/cpdaily/cptask_ctrlV1.go index ec78eef..90f46ec 100644 --- a/internal/controller/cpdaily/cptask_ctrlV1.go +++ b/internal/controller/cpdaily/cptask_ctrlV1.go @@ -56,6 +56,11 @@ func (c CpTaskCtrlV1) Delete(ctx context.Context, req *v1.DeleteTaskReq) (res *u return service.Global.CpTask.Delete(ctx, req), nil } +func (c CpTaskCtrlV1) UpdateTaskTitle(ctx context.Context, req *v1.UpdateTaskTitleReq) (res *utils.Response[any], err error) { + defer utils.Pass(&err) + return service.Global.CpTask.UpdateTaskTitle(ctx, req), nil +} + func (c CpTaskCtrlV1) ExecuteNow(ctx context.Context, req *v1.ExecuteNowReq) (res *utils.Response[any], err error) { defer utils.Pass(&err) return service.Global.CpTask.ExecuteNow(ctx, req), nil diff --git a/internal/controller/cpdaily/i_cptask_ctrl.go b/internal/controller/cpdaily/i_cptask_ctrl.go index 644a14e..819a1c7 100644 --- a/internal/controller/cpdaily/i_cptask_ctrl.go +++ b/internal/controller/cpdaily/i_cptask_ctrl.go @@ -19,6 +19,7 @@ type ICpTaskCtrlV1 interface { ExecuteNow(ctx context.Context, req *v1.ExecuteNowReq) (res *utils.Response[any], err error) PauseTask(ctx context.Context, req *v1.PauseTaskReq) (res *utils.Response[any], err error) FindLocation(ctx context.Context, req *v1.FindLocationReq) (res *utils.Response[any], err error) + UpdateTaskTitle(ctx context.Context, req *v1.UpdateTaskTitleReq) (res *utils.Response[any], err error) GetTaskStatistics(ctx context.Context, req *v1.GetTaskStatisticsReq) (res *utils.Response[[]*v1.TaskStatisticsItem], err error) GetTaskStatisticsV2(ctx context.Context, req *v1.GetTaskStatisticsV2Req) (res *utils.Response[[]*v1.TaskStatisticsV2Item], err error) GetDashboardSummary(ctx context.Context, req *v1.GetDashboardSummaryReq) (res *utils.Response[*v1.DashboardSummary], err error) diff --git a/internal/service/cpdaily/cptask.go b/internal/service/cpdaily/cptask.go index b529ea0..7c752c3 100644 --- a/internal/service/cpdaily/cptask.go +++ b/internal/service/cpdaily/cptask.go @@ -216,6 +216,18 @@ func (v CpTaskServiceV1) PostExecute(ctx context.Context, req *v1.PostCpTaskExec return utils.SuccessWithMsg("更新成功") } +func (v CpTaskServiceV1) UpdateTaskTitle(ctx context.Context, req *v1.UpdateTaskTitleReq) *utils.Response[any] { + user := utils.GetUserInfoFromCtx(ctx) + cpTask := db2.Global.CpTask.Query(). + Where(cptask.ID(req.Id), cptask.HasSysUserWith(sysuser.ID(user.ID))). + OnlyX(ctx) + if cpTask == nil { + utils.OkOrPanic(errors2.NewBusinessError(404, "任务不存在")) + } + db2.Global.CpTask.UpdateOne(cpTask).SetTitle(req.Title).ExecX(ctx) + return utils.SuccessWithMsg("修改成功") +} + func (v CpTaskServiceV1) Delete(ctx context.Context, req *v1.DeleteTaskReq) *utils.Response[any] { user := utils.GetUserInfoFromCtx(ctx) // 检测是否属于自己的cpTask