Example #1
0
        public ActionResult Update(ScheduleTaskModel model)
        {
            if (!CheckPermission(TasksPermissions.ManageScheduleTasks))
            {
                return(new HttpUnauthorizedResult());
            }

            if (!ModelState.IsValid)
            {
                throw new InvalidModelStateException(ModelState);
            }

            ScheduleTask scheduleTask;

            if (model.Id == Guid.Empty)
            {
                scheduleTask = new ScheduleTask
                {
                    Name           = model.Name,
                    Type           = model.Type,
                    CronExpression = model.CronExpression,
                    Enabled        = model.Enabled
                };
                scheduleTaskService.InsertTask(scheduleTask);
            }
            else
            {
                scheduleTask                = scheduleTaskService.GetTaskById(model.Id);
                scheduleTask.Name           = model.Name;
                scheduleTask.Type           = model.Type;
                scheduleTask.CronExpression = model.CronExpression;
                scheduleTask.Enabled        = model.Enabled;
                scheduleTaskService.UpdateTask(scheduleTask);
            }

            scheduleTaskManager.ScheduleJob(scheduleTask);

            return(new AjaxResult().NotifyMessage("UPDATE_ENTITY_COMPLETE").CloseModalDialog());
        }