mirror of
https://github.com/tiger1103/gfast.git
synced 2026-09-21 18:20:47 +00:00
定时任务手动执行一次
This commit is contained in:
@@ -105,6 +105,20 @@ func (c *sysJob) Stop(r *ghttp.Request) {
|
|||||||
c.SusJsonExit(r, "定时任务管理停止成功")
|
c.SusJsonExit(r, "定时任务管理停止成功")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Run 执行任务
|
||||||
|
func (c *sysJob) Run(r *ghttp.Request) {
|
||||||
|
id := r.GetInt64("id")
|
||||||
|
job, err := service.SysJob.GetJobInfoById(id)
|
||||||
|
if err != nil {
|
||||||
|
c.FailJsonExit(r, err.Error())
|
||||||
|
}
|
||||||
|
err = service.SysJob.JobRun(job)
|
||||||
|
if err != nil {
|
||||||
|
c.FailJsonExit(r, "定时任务管理执行"+err.Error())
|
||||||
|
}
|
||||||
|
c.SusJsonExit(r, "定时任务管理执行成功")
|
||||||
|
}
|
||||||
|
|
||||||
// Delete 删除任务
|
// Delete 删除任务
|
||||||
func (c *sysJob) Delete(r *ghttp.Request) {
|
func (c *sysJob) Delete(r *ghttp.Request) {
|
||||||
ids := r.GetInts("ids")
|
ids := r.GetInts("ids")
|
||||||
|
|||||||
@@ -137,6 +137,7 @@ func init() {
|
|||||||
group.PUT("edit", api.SysJob.Edit)
|
group.PUT("edit", api.SysJob.Edit)
|
||||||
group.PUT("start", api.SysJob.Start)
|
group.PUT("start", api.SysJob.Start)
|
||||||
group.PUT("stop", api.SysJob.Stop)
|
group.PUT("stop", api.SysJob.Stop)
|
||||||
|
group.PUT("run", api.SysJob.Run)
|
||||||
group.DELETE("delete", api.SysJob.Delete)
|
group.DELETE("delete", api.SysJob.Delete)
|
||||||
})
|
})
|
||||||
//服务监控
|
//服务监控
|
||||||
|
|||||||
@@ -150,6 +150,23 @@ func (s *sysJob) JobStop(job *model.SysJob) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// JobRun 执行任务
|
||||||
|
func (s *sysJob) JobRun(job *model.SysJob) error {
|
||||||
|
//可以task目录下是否绑定对应的方法
|
||||||
|
f := TimeTaskList.GetByName(job.InvokeTarget)
|
||||||
|
if f == nil {
|
||||||
|
return gerror.New("当前task目录下没有绑定这个方法")
|
||||||
|
}
|
||||||
|
//传参
|
||||||
|
paramArr := strings.Split(job.JobParams, "|")
|
||||||
|
TimeTaskList.EditParams(f.FuncName, paramArr)
|
||||||
|
task, err := gcron.AddOnce("@every 1s", f.Run)
|
||||||
|
if err != nil || task == nil {
|
||||||
|
return gerror.New("启动执行失败")
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// DeleteJobByIds 删除任务
|
// DeleteJobByIds 删除任务
|
||||||
func (s *sysJob) DeleteJobByIds(ids []int) (err error) {
|
func (s *sysJob) DeleteJobByIds(ids []int) (err error) {
|
||||||
if len(ids) == 0 {
|
if len(ids) == 0 {
|
||||||
|
|||||||
Reference in New Issue
Block a user