|
@@ -95,35 +95,36 @@ func (s *sysJob) EditJob(req *dao.SysJobEditReq) error {
|
|
|
// JobStart 启动任务
|
|
// JobStart 启动任务
|
|
|
func (s *sysJob) JobStart(job *model.SysJob) error {
|
|
func (s *sysJob) JobStart(job *model.SysJob) error {
|
|
|
//获取task目录下是否绑定对应的方法
|
|
//获取task目录下是否绑定对应的方法
|
|
|
|
|
+
|
|
|
f := TimeTaskList.GetByName(job.InvokeTarget)
|
|
f := TimeTaskList.GetByName(job.InvokeTarget)
|
|
|
if f == nil {
|
|
if f == nil {
|
|
|
return gerror.New("没有绑定对应的方法")
|
|
return gerror.New("没有绑定对应的方法")
|
|
|
}
|
|
}
|
|
|
//传参
|
|
//传参
|
|
|
paramArr := strings.Split(job.JobParams, "|")
|
|
paramArr := strings.Split(job.JobParams, "|")
|
|
|
- g.Log().Infof(job.JobParams)
|
|
|
|
|
|
|
+
|
|
|
TimeTaskList.EditParams(f.FuncName, paramArr)
|
|
TimeTaskList.EditParams(f.FuncName, paramArr)
|
|
|
- //rs := gcron.Search(job.InvokeTarget)
|
|
|
|
|
- //if rs == nil {
|
|
|
|
|
- if job.MisfirePolicy == 1 {
|
|
|
|
|
- t, err := gcron.Add(job.CronExpression, f.Run, job.InvokeTarget)
|
|
|
|
|
- //t, err := gcron.AddSingleton(job.CronExpression, f.Run, job.InvokeTarget)
|
|
|
|
|
- if err != nil {
|
|
|
|
|
- return err
|
|
|
|
|
- }
|
|
|
|
|
- if t == nil {
|
|
|
|
|
- return gerror.New("启动任务失败")
|
|
|
|
|
- }
|
|
|
|
|
- } else {
|
|
|
|
|
- t, err := gcron.AddOnce(job.CronExpression, f.Run, job.InvokeTarget)
|
|
|
|
|
- if err != nil {
|
|
|
|
|
- return err
|
|
|
|
|
- }
|
|
|
|
|
- if t == nil {
|
|
|
|
|
- return gerror.New("启动任务失败")
|
|
|
|
|
|
|
+ rs := gcron.Search(job.InvokeTarget)
|
|
|
|
|
+ if rs == nil {
|
|
|
|
|
+ if job.MisfirePolicy == 1 {
|
|
|
|
|
+ t, err := gcron.AddSingleton(job.CronExpression, f.Run, job.InvokeTarget)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ return err
|
|
|
|
|
+ }
|
|
|
|
|
+ if t == nil {
|
|
|
|
|
+ return gerror.New("启动任务失败")
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ t, err := gcron.AddOnce(job.CronExpression, f.Run, job.InvokeTarget)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ return err
|
|
|
|
|
+ }
|
|
|
|
|
+ if t == nil {
|
|
|
|
|
+ return gerror.New("启动任务失败")
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- //}
|
|
|
|
|
|
|
+
|
|
|
gcron.Start(job.InvokeTarget)
|
|
gcron.Start(job.InvokeTarget)
|
|
|
if job.MisfirePolicy == 1 {
|
|
if job.MisfirePolicy == 1 {
|
|
|
job.Status = 0
|
|
job.Status = 0
|