87 lines
2.8 KiB
Go
87 lines
2.8 KiB
Go
package controller
|
|
|
|
import (
|
|
"context"
|
|
|
|
"easygoadmin/api/v1"
|
|
"easygoadmin/internal/service"
|
|
)
|
|
|
|
// ============================== 定时任务控制器 ==============================
|
|
|
|
// CJob 定时任务控制器
|
|
// 薄层控制器,仅负责参数透传,业务逻辑由 service.Job() 处理
|
|
type CJob struct{}
|
|
|
|
// Page 任务分页
|
|
// 按查询条件分页返回定时任务列表
|
|
func (c *CJob) Page(ctx context.Context, req *v1.JobPageReq) (res *v1.JobPageRes, err error) {
|
|
return service.Job().Page(ctx, req)
|
|
}
|
|
|
|
// List 任务列表
|
|
// 按关键词、状态等条件返回定时任务列表
|
|
func (c *CJob) List(ctx context.Context, req *v1.JobListReq) (res v1.JobListRes, err error) {
|
|
return service.Job().List(ctx, req)
|
|
}
|
|
|
|
// Detail 任务详情
|
|
// 按任务ID查询详情
|
|
func (c *CJob) Detail(ctx context.Context, req *v1.JobDetailReq) (res *v1.JobDetailRes, err error) {
|
|
return service.Job().Detail(ctx, req)
|
|
}
|
|
|
|
// Add 新增任务
|
|
// 新增成功后返回新记录ID
|
|
func (c *CJob) Add(ctx context.Context, req *v1.JobAddReq) (res *v1.IdRes, err error) {
|
|
return service.Job().Add(ctx, req)
|
|
}
|
|
|
|
// Update 修改任务
|
|
// 按任务ID更新记录
|
|
func (c *CJob) Update(ctx context.Context, req *v1.JobUpdateReq) (res *v1.JobUpdateRes, err error) {
|
|
return service.Job().Update(ctx, req)
|
|
}
|
|
|
|
// Delete 删除任务
|
|
// 按任务ID删除单条记录
|
|
func (c *CJob) Delete(ctx context.Context, req *v1.JobDeleteReq) (res *v1.JobDeleteRes, err error) {
|
|
return service.Job().Delete(ctx, req)
|
|
}
|
|
|
|
// BatchDelete 批量删除任务
|
|
// 按任务ID列表批量删除记录
|
|
func (c *CJob) BatchDelete(ctx context.Context, req *v1.JobBatchDeleteReq) (res *v1.JobBatchDeleteRes, err error) {
|
|
return service.Job().BatchDelete(ctx, req)
|
|
}
|
|
|
|
// RunOnce 立即执行一次任务
|
|
// 触发指定任务立即执行一次
|
|
func (c *CJob) RunOnce(ctx context.Context, req *v1.JobRunOnceReq) (res *v1.JobRunOnceRes, err error) {
|
|
return service.Job().RunOnce(ctx, req)
|
|
}
|
|
|
|
// Pause 暂停任务
|
|
// 暂停指定任务的调度
|
|
func (c *CJob) Pause(ctx context.Context, req *v1.JobPauseReq) (res *v1.JobPauseRes, err error) {
|
|
return service.Job().Pause(ctx, req)
|
|
}
|
|
|
|
// Resume 恢复任务
|
|
// 恢复指定任务的调度
|
|
func (c *CJob) Resume(ctx context.Context, req *v1.JobResumeReq) (res *v1.JobResumeRes, err error) {
|
|
return service.Job().Resume(ctx, req)
|
|
}
|
|
|
|
// Status 设置任务状态
|
|
// 设置任务的未发布、运行中或暂停状态
|
|
func (c *CJob) Status(ctx context.Context, req *v1.JobStatusReq) (res *v1.JobStatusRes, err error) {
|
|
return service.Job().Status(ctx, req)
|
|
}
|
|
|
|
// DaemonStatus 查询调度器状态
|
|
// 返回调度器中运行的任务数、任务键与启动时间
|
|
func (c *CJob) DaemonStatus(ctx context.Context, req *v1.JobDaemonStatusReq) (res *v1.JobDaemonStatusRes, err error) {
|
|
return service.Job().DaemonStatus(ctx, req)
|
|
}
|