Exemple #1
0
        public async Task <BaseResult> ModifyJob([FromBody] ModifyJobInput entity)
        {
            if (ConfigurationManager.GetTryConfig("EnvironmentalRestrictions", "false") == "true")
            {
                if (entity.NewScheduleEntity.TriggerType == TriggerTypeEnum.Simple &&
                    entity.NewScheduleEntity.IntervalSecond.HasValue &&
                    entity.NewScheduleEntity.IntervalSecond <= 10)
                {
                    return(new BaseResult()
                    {
                        Code = 403,
                        Msg = "当前环境不允许低于10秒内循环执行任务!"
                    });
                }
                else if (entity.NewScheduleEntity.TriggerType == TriggerTypeEnum.Cron && entity.NewScheduleEntity.Cron == "* * * * * ?")
                {
                    return(new BaseResult()
                    {
                        Code = 403,
                        Msg = "当前环境不允许过频繁执行任务!"
                    });
                }
            }
            await scheduler.StopOrDelScheduleJobAsync(entity.OldScheduleEntity.JobGroup, entity.OldScheduleEntity.JobName, true);

            await scheduler.AddScheduleJobAsync(entity.NewScheduleEntity);

            return(new BaseResult()
            {
                Msg = "修改计划任务成功!"
            });
        }
Exemple #2
0
        public async Task <IResponseOutput> ModifyJob([FromBody] ModifyJobInput entity)
        {
            //TODO
            var jobKey    = new JobKey(entity.OldScheduleEntity.JobName, entity.OldScheduleEntity.JobGroup);
            var runNumber = await _service.GetRunNumberAsync(jobKey);

            await _service.StopOrDelScheduleJobAsync(entity.OldScheduleEntity.JobGroup, entity.OldScheduleEntity.JobName, true);

            await _service.AddScheduleJobAsync(entity.NewScheduleEntity, runNumber);

            return(ResponseOutput.Ok("修改计划任务成功!"));
        }