Пример #1
0
        public JsonResult DeleteJob(JobDetailInput input)
        {
            var status = new OperateStatus();

            if (RemoteShedulerManager.DeleteJob(input.JobName, input.JobGroup))
            {
                status.ResultSign = ResultSign.Successful;
                status.Message    = "删除作业成功";
            }
            return(Json(status));
        }
Пример #2
0
        public async Task <JsonResult> DeleteJob(JobDetailInput input)
        {
            var status = new OperateStatus();

            if (await StdSchedulerManager.DeleteJob(input.JobName, input.JobGroup))
            {
                status.ResultSign = ResultSign.Successful;
                status.Message    = Chs.Successful;
            }
            return(Json(status));
        }
Пример #3
0
 public JsonResult GetDetailJobDataMap(JobDetailInput input)
 {
     if (!input.JobGroup.IsNullOrEmpty() && !input.JobName.IsNullOrEmpty())
     {
         var detail = RemoteShedulerManager.GetJobDetail(new JobKey(input.JobName, input.JobGroup));
         var maps   = detail.JobDataMap;
         return(Json(maps.Select(map => new Parameters {
             Key = map.Key, Value = map.Value
         }).ToList()));
     }
     return(null);
 }
Пример #4
0
        public JsonResult ResumeAll(JobDetailInput input)
        {
            var status = new OperateStatus();

            try
            {
                RemoteShedulerManager.ResumeAll();
                status.ResultSign = ResultSign.Successful;
                status.Message    = "恢复作业成功";
            }
            catch (Exception ex)
            {
                status.Message = ex.Message;
            }
            return(Json(status));
        }
Пример #5
0
        public JsonResult PauseJob(JobDetailInput input)
        {
            var status = new OperateStatus();

            try
            {
                RemoteShedulerManager.PauseJob(input.JobName, input.JobGroup);
                status.ResultSign = ResultSign.Successful;
                status.Message    = "暂停作业成功";
            }
            catch (Exception ex)
            {
                status.Message = ex.Message;
            }
            return(Json(status));
        }
Пример #6
0
        public async Task <JsonResult> JobEdit(JobDetailInput input)
        {
            var output = new QuartzOutput();

            if (!input.JobName.IsNullOrEmpty() && !input.JobGroup.IsNullOrEmpty())
            {
                var key = new JobKey(input.JobName, input.JobGroup);
                //作业详情
                var detal = await StdSchedulerManager.GetJobDetail(key);

                output.NamespaceName = detal.JobType.Namespace;
                output.ClassName     = detal.JobType.Name;
                //触发器
                var triggerKey = new TriggerKey(input.TriggerName, input.TriggerGroup);
                var trigger    = await StdSchedulerManager.GetTrigger(triggerKey);

                output.JobType        = detal.JobType.FullName;
                output.JobGroup       = detal.Key.Group;
                output.JobName        = detal.Key.Name;
                output.JobDescription = detal.Description;

                output.TriggerType        = trigger.GetType().Name;
                output.TriggerName        = trigger.Key.Name;
                output.TriggerGroup       = trigger.Key.Group;
                output.TriggerDescription = trigger.Description;

                //获取trigger类型
                switch (trigger.GetType().Name)
                {
                case "SimpleTriggerImpl":
                    var simpleTriggerImpl = (SimpleTriggerImpl)trigger;
                    output.Interval = simpleTriggerImpl.RepeatInterval;
                    break;

                case "CronTriggerImpl":
                    //获取表达式
                    var cronTriggerImpl = (CronTriggerImpl)trigger;
                    output.Expression = cronTriggerImpl.CronExpressionString;
                    break;
                }
                output.ReplaceExists = true;
            }
            return(Json(output));
        }