Ejemplo n.º 1
0
 public async Task <BaseResult> AddJob([FromBody] ScheduleEntity entity)
 {
     if (ConfigurationManager.GetTryConfig("EnvironmentalRestrictions", "false") == "true")
     {
         if (entity.TriggerType == TriggerTypeEnum.Simple &&
             entity.IntervalSecond.HasValue &&
             entity.IntervalSecond <= 10)
         {
             return(new BaseResult()
             {
                 Code = 403,
                 Msg = "当前环境不允许低于10秒内循环执行任务!"
             });
         }
         else if (entity.TriggerType == TriggerTypeEnum.Cron &&
                  entity.Cron == "* * * * * ?")
         {
             return(new BaseResult()
             {
                 Code = 403,
                 Msg = "当前环境不允许过频繁执行任务!"
             });
         }
     }
     return(await scheduler.AddScheduleJobAsync(entity));
 }
Ejemplo n.º 2
0
        public async Task <ApiResult <string> > AddJob([FromBody] ScheduleEntity entity)
        {
            var res = await _scheduler.AddScheduleJobAsync(entity);

            if (res.statusCode == 200)
            {
                var redisTask = await _cache.GetAsync <List <ScheduleEntity> >(KeyHelper.TaskSchedulerList);

                if (redisTask == null)
                {
                    //实例数组
                    redisTask = new List <ScheduleEntity>();
                }

                entity.BeginTime   = DateTime.Now.AddYears(-1);
                entity.EndTime     = DateTime.Now.AddYears(30);
                entity.TriggerType = TriggerTypeEnum.Cron;
                entity.RequestType = RequestTypeEnum.Get;

                redisTask.Add(entity);

                await _cache.SetAsync(KeyHelper.TaskSchedulerList, redisTask);
            }
            return(res);
        }
Ejemplo n.º 3
0
        public async Task <ApiResult <string> > AddJob([FromBody] ScheduleEntity entity)
        {
            var res = await _scheduler.AddScheduleJobAsync(entity);

            if (res.statusCode == 200)
            {
                var redisTask = RedisHelper.Get <List <ScheduleEntity> >(KeyHelper.TaskSchedulerList);
                if (redisTask == null)
                {
                    //实例数组
                    redisTask = new List <ScheduleEntity>();
                }
                redisTask.Add(entity);
                //保存到Redis中
                RedisHelper.Set(KeyHelper.TaskSchedulerList, redisTask);
            }
            return(res);
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> ModifyJob(ScheduleEntityParam entity)
        {
            var result = await SchedulerCenter.StopOrDelScheduleJobAsync(new JobKey(entity.JobName, entity.JobGroup), true);

            if (!result.Success)
            {
                return(MyJson(result));
            }

            result = await SchedulerCenter.AddScheduleJobAsync(entity);

            if (result.Success)
            {
                result = await SysQuartzBll.ModifyTask(entity);
            }

            return(MyJson(result));
        }
Ejemplo n.º 5
0
        public async Task <ActionResult> AddTask(ScheduleEntityParam entity)
        {
            // 判断存在
            if (await SysQuartzBll.ExistTask(entity))
            {
                return(Fail("任务名称已存在,请进行修改原任务,或使用新名称"));
            }

            var result = await SchedulerCenter.AddScheduleJobAsync(entity);

            if (!result.Success)
            {
                return(MyJson(result));
            }

            var addResult = await SysQuartzBll.AddTask(entity);

            return(addResult ? Succeed() : Fail("添加失败"));
        }
Ejemplo n.º 6
0
 public async Task <BaseResult> AddJob([FromBody] ScheduleEntity entity)
 {
     return(await scheduler.AddScheduleJobAsync(entity));
 }
Ejemplo n.º 7
0
 public async Task <HttpResponseModel> AddJob([FromBody] ScheduleModel entity)
 {
     return(await scheduler.AddScheduleJobAsync(entity));
 }