Пример #1
0
        public ActionResult TaskList(String TaskName, string SubmitType)
        {
            JobSchedule         JobSchedule  = new JobSchedule();
            List <ScheduleTask> ScheduleTask = JobSchedule.ScheduleTask();

            if (SubmitType == "Run")
            {
                var ScheduleTask_Run = ScheduleTask.Where(t => t.TaskName.Equals(TaskName)).FirstOrDefault();
                if (ScheduleTask_Run != null)
                {
                    JobSchedule.CreateTask(ScheduleTask_Run, MasterScheduler);
                    MasterScheduler.ResumeJob(ScheduleTask_Run.TaskKey);
                    ScheduleTask_Run.Status = "Enabled";
                    JobSchedule.UpdateScheduleStatus(TaskName, "Enabled");
                }
            }
            else if (SubmitType == "Pause")
            {
                schFactory      = new StdSchedulerFactory();
                MasterScheduler = schFactory.GetScheduler();
                var ScheduleTask_Pause = ScheduleTask.Where(t => t.TaskName.Equals(TaskName)).FirstOrDefault();
                if (ScheduleTask_Pause != null)
                {
                    MasterScheduler.PauseJob(ScheduleTask_Pause.TaskKey);
                    ScheduleTask_Pause.Status = "Disabled";

                    JobSchedule.UpdateScheduleStatus(TaskName, "Disabled");
                }
            }
            return(PartialView(ScheduleTask));
        }
Пример #2
0
        public JsonResult EditCronString(string TaskName, string CronString)
        {
            JobSchedule JobSchedule = new JobSchedule();

            try
            {
                var Trigger = TriggerBuilder.Create()
                              .WithIdentity(TaskName + "Trigger", TaskName + "TriggerGroup").WithCronSchedule(CronString).Build();
                JobSchedule.UpdateScheduleCron(TaskName, CronString);
                List <ScheduleTask> ScheduleTask = JobSchedule.ScheduleTask();
                var ScheduleTask_Run             = ScheduleTask.Where(t => t.TaskName.Equals(TaskName)).FirstOrDefault();
                if (ScheduleTask_Run != null)
                {
                    var OldStatus = ScheduleTask_Run.Status;
                    MasterScheduler.PauseJob(ScheduleTask_Run.Job.Key);
                    JobSchedule.RemoveTask(ScheduleTask_Run, MasterScheduler);
                    JobSchedule.CreateTask(ScheduleTask_Run, MasterScheduler);
                    if (OldStatus == "Enabled")
                    {
                        MasterScheduler.ResumeJob(ScheduleTask_Run.TaskKey);
                        ScheduleTask_Run.Status = "Enabled";
                    }
                }
                return(Json("Success"));
            }
            catch (Exception ex)
            {
                return(Json(ex.Message));
            }
        }