예제 #1
0
        /// <summary>
        /// 数据状态
        /// </summary>
        /// <param name="context"></param>
        public void SetRowStatus(HttpContext context)
        {
            long   Id          = context.Request["id"].ParseToLong();
            int    RowStatus   = context.Request["rowStatus"].ParseToInt();
            string TriggerName = context.Request["triggerName"].ParseToString();

            if (!string.IsNullOrEmpty(TriggerName))
            {
                JobControler job = new JobControler(TriggerName);
                if (RowStatus == CommonEnum.ValidStatus.InValid.GetHashCode())
                {
                    job.Remove();
                    JobService.CreateInstance().SetJobRowStatus(Id, RowStatus);
                }
                else
                {
                    var data = JobService.CreateInstance().GetJobData(Id);
                    if (data != null)
                    {
                        JobManagerBase.AddJob(data.TriggerName, data.Id.ParseToString(), data.CronExpr, data.TriggerUrl);
                    }
                }
            }
            ResponseAjaxContent("1");
        }
예제 #2
0
        /// <summary>
        /// 重启
        /// </summary>
        /// <param name="context"></param>
        public void SetRestart(HttpContext context)
        {
            int Id   = context.Request["id"].ParseToInt();
            var data = JobService.CreateInstance().GetJobData(Id);

            if (data != null)
            {
                JobManagerBase.Restart(data.TriggerName, data.Id.ParseToString(), data.CronExpr, data.TriggerUrl);
            }
            ResponseAjaxContent("");
        }
예제 #3
0
 protected void Application_Start(object sender, EventArgs e)
 {
     log4net.Config.XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(Server.MapPath("~/App_Data/Log.config")));
     log4net.LogManager.GetLogger("RuningLogger").Error("IIS重启");
     JobManagerBase.ReAddAllJob();
 }
예제 #4
0
        /// <summary>
        /// 保存数据
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnSave_Click(object sender, EventArgs e)
        {
            string data        = string.Empty;
            string txtName     = TriggerName.Value.TrimEnd();
            string txtUrl      = TriggerUrl.Value.TrimEnd();
            string txtCronExpr = CronExpr.Value.TrimEnd();
            string txtExplain  = Explain.Value.TrimEnd();

            if (string.IsNullOrEmpty(txtName))
            {
                data += "job名称不能为空";
            }
            if (string.IsNullOrEmpty(txtUrl))
            {
                data += "job地址不能为空";
            }
            if (string.IsNullOrEmpty(txtCronExpr))
            {
                data += "CronExpr表达式不能为空";
            }
            if (string.IsNullOrEmpty(txtExplain))
            {
                data += "job说明不能为空";
            }
            if (!string.IsNullOrEmpty(data))
            {
                Alert(data);
                return;
            }
            if (id > 0)
            {
                var JobData = JobService.CreateInstance().GetJobData(id);
                if (JobData == null)
                {
                    return;
                }
                var isChange = false;
                if (JobData.TriggerName != txtName)
                {
                    isChange = true;
                }
                if (JobData.TriggerUrl != txtUrl)
                {
                    isChange = true;
                }
                if (JobData.CronExpr != txtCronExpr)
                {
                    isChange = true;
                }
                if (JobData.Explain != txtExplain)
                {
                    isChange = true;
                }
                if (!isChange)
                {
                    Alert("无任何变化,无需保存");
                    return;
                }
            }
            long backId = JobService.CreateInstance().SaveJob(txtName, txtUrl, txtCronExpr, txtExplain, id);

            if (backId > 0)
            {
                if (id > 0)
                {
                    JobControler job = new JobControler(TriggerName.Value.TrimEnd());
                    job.Remove();
                }
                if (JobManagerBase.AddJob(txtName, backId.ParseToString(), txtCronExpr, txtUrl))
                {
                    AlertFun("保存成功!", "window.close();opener.QueryDataList(1)");
                    return;
                }
            }
            Alert("保存失败!");
        }