static void Update(TriggersModel value) { //Сохраняю схему в json файл JsonSchemaToFileWriter.SaveSchemaToFile(value, FilePath); _uidDict = value; }
public ActionResult TriggerSave(TriggersModel savemodel) { #region 拉初始化 var triggerStateList = new List <SelectListItem>(); triggerStateList.Insert(0, new SelectListItem { Text = "等待", Value = "WAITING" }); triggerStateList.Insert(1, new SelectListItem { Text = "暂停", Value = "PAUSED" }); ViewData["triggerStateList"] = triggerStateList; var triggerTypeList = new List <SelectListItem>(); triggerTypeList.Insert(0, new SelectListItem { Text = "简单触发器", Value = "SIMPLE" }); triggerTypeList.Insert(1, new SelectListItem { Text = "CRON触发器", Value = "CRON" }); ViewData["triggerTypeList"] = triggerTypeList; var triggersGroupList = TriggersGroupEnum.TriggersGroup1.ToSelectList(); triggersGroupList.Insert(0, new SelectListItem { Text = "请选择", Value = string.Empty }); ViewData["triggersGroupList"] = triggersGroupList; var jobList = _job.GetListJobName().ToSelectList(c => c.JOB_NAME, c => c.JOB_NAME); jobList.Insert(0, new SelectListItem { Text = "请选择", Value = string.Empty }); ViewData["jobList"] = jobList; #endregion var model = _job.GetTriggers(savemodel.TRIGGER_NAME); var jobModel = _job.GetJob(savemodel.JOB_NAME); if (savemodel.TRIGGER_TYPE == "SIMPLE" && savemodel.REPEAT_INTERVAL <= 0) { ModelState.AddModelError("JOB_NAME", "请填写重复间隔"); return(View(savemodel)); } if (model == null) { if (ModelState.IsValid) { model = new QRTZ_TRIGGERSDto { SCHED_NAME = jobModel.SCHED_NAME, TRIGGER_NAME = savemodel.TRIGGER_NAME, TRIGGER_GROUP = savemodel.TRIGGER_GROUP, JOB_NAME = jobModel.JOB_NAME, JOB_GROUP = jobModel.JOB_GROUP, DESCRIPTION = savemodel.DESCRIPTION, NEXT_FIRE_TIME = savemodel.START_TIME.AddHours(-8).AddMilliseconds(savemodel.REPEAT_INTERVAL * 60 * 1000).Ticks, PRIORITY = savemodel.PRIORITY, TRIGGER_STATE = savemodel.TRIGGER_STATE, TRIGGER_TYPE = savemodel.TRIGGER_TYPE, START_TIME = savemodel.START_TIME.AddHours(-8).Ticks, CRON_EXPRESSION = savemodel.CRON_EXPRESSION, REPEAT_COUNT = savemodel.REPEAT_COUNT, REPEAT_INTERVAL = Convert.ToInt64(savemodel.REPEAT_INTERVAL * 60 * 1000) }; if (savemodel.END_TIME != null) { model.END_TIME = Convert.ToDateTime(savemodel.END_TIME).AddHours(-8).Ticks; } var result = _job.AddTriggers(model); if (result.Ret == -1) { ModelState.AddModelError("JOB_NAME", result.Msg); return(View(savemodel)); } return(CloseParentBox(result.Msg, "/Job/TriggerList")); } } else { model.DESCRIPTION = savemodel.DESCRIPTION; model.PRIORITY = savemodel.PRIORITY; model.TRIGGER_STATE = savemodel.TRIGGER_STATE; model.TRIGGER_TYPE = savemodel.TRIGGER_TYPE; model.START_TIME = savemodel.START_TIME.AddHours(-8).Ticks; model.CRON_EXPRESSION = savemodel.CRON_EXPRESSION; model.REPEAT_COUNT = savemodel.REPEAT_COUNT; model.REPEAT_INTERVAL = Convert.ToInt64(savemodel.REPEAT_INTERVAL * 60 * 1000); if (savemodel.END_TIME != null) { model.END_TIME = Convert.ToDateTime(savemodel.END_TIME).AddHours(-8).Ticks; } var result = _job.UpdateTriggers(model); if (result.Ret == -1) { ModelState.AddModelError("JOB_NAME", result.Msg); return(View(savemodel)); } return(CloseParentBox(result.Msg, "/Job/TriggerList")); } return(View(savemodel)); }
public ActionResult TriggerSave(string tname) { #region 拉初始化 var triggerStateList = new List <SelectListItem>(); triggerStateList.Insert(0, new SelectListItem { Text = "等待", Value = "WAITING" }); triggerStateList.Insert(1, new SelectListItem { Text = "暂停", Value = "PAUSED" }); ViewData["triggerStateList"] = triggerStateList; var triggerTypeList = new List <SelectListItem>(); triggerTypeList.Insert(0, new SelectListItem { Text = "简单触发器", Value = "SIMPLE" }); triggerTypeList.Insert(1, new SelectListItem { Text = "CRON触发器", Value = "CRON" }); ViewData["triggerTypeList"] = triggerTypeList; var triggersGroupList = TriggersGroupEnum.TriggersGroup1.ToSelectList(); triggersGroupList.Insert(0, new SelectListItem { Text = "请选择", Value = string.Empty }); ViewData["triggersGroupList"] = triggersGroupList; var jobList = _job.GetListJobName().ToSelectList(c => c.JOB_NAME, c => c.JOB_NAME); jobList.Insert(0, new SelectListItem { Text = "请选择", Value = string.Empty }); ViewData["jobList"] = jobList; #endregion var model = new TriggersModel(); if (!string.IsNullOrEmpty(tname)) { var trigger = _job.GetTriggers(tname); if (trigger == null) { return(AlertMsg("参数错误", HttpContext.Request.UrlReferrer.PathAndQuery)); } model.TRIGGER_NAME = trigger.TRIGGER_NAME; model.TRIGGER_GROUP = trigger.TRIGGER_GROUP; model.JOB_NAME = trigger.JOB_NAME; model.PRIORITY = trigger.PRIORITY; model.DESCRIPTION = trigger.DESCRIPTION; model.TRIGGER_STATE = trigger.TRIGGER_STATE; model.TRIGGER_TYPE = trigger.TRIGGER_TYPE; model.CRON_EXPRESSION = trigger.CRON_EXPRESSION; model.REPEAT_COUNT = trigger.REPEAT_COUNT; model.REPEAT_INTERVAL = trigger.REPEAT_INTERVAL / 60 / 1000.00; model.START_TIME = new DateTime(Convert.ToInt64(trigger.START_TIME)).AddHours(8); if (trigger.END_TIME != null) { model.END_TIME = new DateTime(Convert.ToInt64(trigger.END_TIME)).AddHours(8); } } else { model.START_TIME = DateTime.Now; model.REPEAT_COUNT = -1;//无限循环 model.REPEAT_INTERVAL = 5; } return(View(model)); }