public bool UpdateHttpJob(JobParamHttpModel job) { try { JobKey jobKey = CreateJobKey(job.JobName, job.JobGroupName); var jobData = _scheduler.GetJobDetail(jobKey).GetAwaiter().GetResult(); JobDataModel model = new JobDataModel(); model.CallbackUrl = jobData.JobDataMap[JobConfig.CallbackUrl].ToString(); model.CallbackParams = JobUtils.GetDictFromString(jobData.JobDataMap[JobConfig.CallbackParams].ToString()); bool isSameParams = IsSameParam(job, model); if (isSameParams) { return(ModifyJobCron(job)); } else { bool bl = DeleteJob(job); if (bl) { return(AddHttpJob(job)); } } } catch (Exception ex) { logger.Error(ex); } return(false); }
public bool AddHttpJob(JobParamHttpModel job) { try { JobKey jobKey = CreateJobKey(job.JobName, job.JobGroupName); var bl = _scheduler.CheckExists(jobKey).GetAwaiter().GetResult(); if (!bl) { var jobbuilder = JobBuilder.Create <HttpJob>() .WithIdentity(jobKey) .UsingJobData(JobConfig.CallbackUrl, job.CallbackUrl); var param = JobUtils.GetDictToString(job.CallbackParams); if (!string.IsNullOrEmpty(param)) { jobbuilder.UsingJobData(JobConfig.CallbackParams, JobUtils.GetDictToString(job.CallbackParams)); } var jobDetail = jobbuilder.Build(); ITrigger trigger = CreateTrigger(job, jobKey); _scheduler.ScheduleJob(jobDetail, trigger).GetAwaiter().GetResult(); return(true); } } catch (Exception ex) { logger.Error(ex); } return(false); }
public bool UpdateHttpJob(JobParamHttpModel job) { try { JobKey jobKey = CreateJobKey(job.JobName, job.JobGroupName); JobDataModel jobData = Xml.XmlJobManage.GetJobDataByKey(jobKey); bool isSameParams = IsSameParam(job, jobData); if (isSameParams) { return(ModifyJobCron(job)); } else { bool bl = DeleteJob(job); if (bl) { return(AddHttpJob(job)); } } } catch (Exception ex) { logger.Error(ex); } return(false); }
public JsonResult CreateJob(JobHttpModel model) { if (!ModelState.IsValid) { return(BaseJson(MsgCode.Failed, "数据验证失败")); } JobParamHttpModel jobParam = new JobParamHttpModel(); jobParam.JobName = model.JobName; jobParam.CronExpression = model.CronExpression; jobParam.CallbackUrl = model.CallbackUrl; jobParam.CallbackParams = GetParaDict(model.CallbackParams); bool bl = _job.AddHttpJob(jobParam); if (bl) { return(BaseJson(MsgCode.Success, "创建成功")); } else { return(BaseJson(MsgCode.Failed, "创建失败")); } }
public static JobParamBaseModel GetJobParamBase(string jobName, string jobGroupName) { if (jobGroupName.Contains(JobConfig.JobGroupNameHttp)) { JobParamHttpModel model = new JobParamHttpModel(); model.JobName = jobName; return(model); } else { JobParamAssemblyModel model = new JobParamAssemblyModel(); model.JobName = jobName; return(model); } }
/// <summary> /// 参数是否相同 /// </summary> /// <returns></returns> protected bool IsSameParam(JobParamHttpModel job, JobDataModel data) { string map = JobUtils.GetDictToString(data.CallbackParams); string newParam = JobUtils.GetDictToString(job.CallbackParams); if (data.CallbackUrl != job.CallbackUrl) { return(false); } if (map.ToString() != newParam) { return(false); } return(true); }
public JsonResult ModifyJob(UpdateJobModel model) { JobParamHttpModel jobParam = new JobParamHttpModel(); jobParam.JobName = model.JobName; jobParam.CronExpression = model.CronExpression; jobParam.CallbackUrl = model.CallbackUrl; jobParam.CallbackParams = GetParaDict(model.CallbackParams); bool bl = _job.UpdateHttpJob(jobParam); if (bl) { return(BaseJson(MsgCode.Success, "修改成功")); } else { return(BaseJson(MsgCode.Failed, "修改失败")); } }
public bool UpdateHttpJob(JobParamHttpModel job) { return(_jobStore.UpdateHttpJob(job)); }
public bool AddHttpJob(JobParamHttpModel job) { return(_jobStore.AddHttpJob(job)); }