public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("ServiceType"); _serviceType = EServiceTypeUtils.GetEnumType(Body.GetQueryString("ServiceType")); if (Body.IsQueryExists("Delete")) { var taskId = Body.GetQueryInt("TaskID"); try { DataProvider.TaskDao.Delete(taskId); SuccessDeleteMessage(); } catch (Exception ex) { FailDeleteMessage(ex); } } if (Body.IsQueryExists("Enabled")) { var taskId = Body.GetQueryInt("TaskID"); var isEnabled = Body.GetQueryBool("IsEnabled"); var func = isEnabled ? "启用" : "禁用"; try { DataProvider.TaskDao.UpdateState(taskId, isEnabled); SuccessMessage($"{func}定时任务成功。"); } catch (Exception ex) { FailMessage(ex, $"{func}定时任务失败。"); } } if (!IsPostBack) { var taskName = EServiceTypeUtils.GetText(_serviceType); if (PublishmentSystemId > 0) { BreadCrumb(AppManager.Cms.LeftMenu.IdConfigration, AppManager.Cms.LeftMenu.Configuration.IdConfigurationTask, taskName + "任务", AppManager.Cms.Permission.WebSite.Configration); } else { BreadCrumbService(AppManager.Service.LeftMenu.Task, taskName + "任务", AppManager.Service.Permission.ServiceTask); } AddTask.Text = $"添加{taskName}任务"; AddTask.Attributes.Add("onclick", ModalTaskAdd.GetOpenWindowStringToAdd(_serviceType, PublishmentSystemId)); BindGrid(); } }
void rptContents_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { var taskID = SqlUtils.EvalInt(e.Item.DataItem, "TaskID"); var taskInfo = DataProvider.TaskDao.GetTaskInfo(taskID); var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(taskInfo.PublishmentSystemID); if (publishmentSystemInfo == null) { e.Item.Visible = false; } var addDate = SqlUtils.EvalDateTime(e.Item.DataItem, "AddDate"); var isSuccess = SqlUtils.EvalString(e.Item.DataItem, "IsSuccess"); var errorMessage = SqlUtils.EvalString(e.Item.DataItem, "ErrorMessage"); var ltlPublishmentSystem = (Literal)e.Item.FindControl("ltlPublishmentSystem"); var ltlTaskName = (Literal)e.Item.FindControl("ltlTaskName"); var ltlServiceType = (Literal)e.Item.FindControl("ltlServiceType"); var ltlAddDate = (Literal)e.Item.FindControl("ltlAddDate"); var ltlIsSuccess = (Literal)e.Item.FindControl("ltlIsSuccess"); var ltlErrorMessage = (Literal)e.Item.FindControl("ltlErrorMessage"); ltlPublishmentSystem.Text = publishmentSystemInfo.PublishmentSystemName; ltlTaskName.Text = taskInfo.TaskName; ltlServiceType.Text = EServiceTypeUtils.GetText(taskInfo.ServiceType); ltlAddDate.Text = DateUtils.GetDateAndTimeString(addDate); ltlIsSuccess.Text = StringUtils.GetTrueOrFalseImageHtml(isSuccess); ltlErrorMessage.Text = errorMessage; } }
public void Update(TaskInfo info) { var updateParms = new IDataParameter[] { GetParameter(ParmTaskName, EDataType.NVarChar, 50, info.TaskName), GetParameter(ParmIsSystemTask, EDataType.VarChar, 18, info.IsSystemTask.ToString()), GetParameter(ParmPublishmentSystemId, EDataType.Integer, info.PublishmentSystemID), GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(info.ServiceType)), GetParameter(ParmServiceParameters, EDataType.NText, info.ServiceParameters), GetParameter(ParmFrequencyType, EDataType.VarChar, 50, EFrequencyTypeUtils.GetValue(info.FrequencyType)), GetParameter(ParmPeriodIntervalMinute, EDataType.Integer, info.PeriodIntervalMinute), GetParameter(ParmStartDay, EDataType.Integer, info.StartDay), GetParameter(ParmStartWeekday, EDataType.Integer, info.StartWeekday), GetParameter(ParmStartHour, EDataType.Integer, info.StartHour), GetParameter(ParmIsEnabled, EDataType.VarChar, 18, info.IsEnabled.ToString()), GetParameter(ParmAddDate, EDataType.DateTime, info.AddDate), GetParameter(ParmLastExecuteDate, EDataType.DateTime, info.LastExecuteDate), GetParameter(ParmDescription, EDataType.NVarChar, 255, info.Description), GetParameter(ParmTaskId, EDataType.Integer, info.TaskID), GetParameter(ParmOnlyOnceDate, EDataType.DateTime, info.OnlyOnceDate) }; ExecuteNonQuery(SqlUpdateTask, updateParms); ServiceManager.ClearTaskCache(); }
public static string GetOpenWindowStringToAdd(EServiceType serviceType, int publishmentSystemId) { return(PageUtils.GetOpenWindowString("添加任务", PageUtils.GetCmsUrl(nameof(ModalTaskAdd), new NameValueCollection { { "ServiceType", EServiceTypeUtils.GetValue(serviceType) }, { "PublishmentSystemID", publishmentSystemId.ToString() } }))); }
public static string GetRedirectUrl(int publishmentSystemId, EServiceType serviceType) { return(PageUtils.GetCmsUrl(nameof(PageTask), new NameValueCollection { { "PublishmentSystemID", publishmentSystemId.ToString() }, { "ServiceType", EServiceTypeUtils.GetValue(serviceType) } })); }
void dgContents_ItemDataBound(object sender, DataGridItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { var taskInfo = (TaskInfo)e.Item.DataItem; var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(taskInfo.PublishmentSystemID); if (publishmentSystemInfo == null) { e.Item.Visible = false; } var ltlPublishmentSystem = e.Item.FindControl("ltlPublishmentSystem") as Literal; var ltlTaskName = e.Item.FindControl("ltlTaskName") as Literal; var ltlServiceType = e.Item.FindControl("ltlServiceType") as Literal; var ltlIsEnabled = e.Item.FindControl("ltlIsEnabled") as Literal; var ltlFrequencyType = e.Item.FindControl("ltlFrequencyType") as Literal; var ltlLastExecuteDate = e.Item.FindControl("ltlLastExecuteDate") as Literal; var ltlEnabledHtml = e.Item.FindControl("ltlEnabledHtml") as Literal; var ltlDeleteHtml = e.Item.FindControl("ltlDeleteHtml") as Literal; ltlPublishmentSystem.Text = publishmentSystemInfo.PublishmentSystemName; ltlTaskName.Text = taskInfo.TaskName; ltlServiceType.Text = EServiceTypeUtils.GetText(taskInfo.ServiceType); ltlIsEnabled.Text = StringUtils.GetTrueOrFalseImageHtml(taskInfo.IsEnabled.ToString()); ltlFrequencyType.Text = EFrequencyTypeUtils.GetText(taskInfo.FrequencyType); if (taskInfo.LastExecuteDate > DateUtils.SqlMinValue) { ltlLastExecuteDate.Text = DateUtils.GetDateAndTimeString(taskInfo.LastExecuteDate); } var urlTask = PageUtils.GetServiceUrl(nameof(PageTask), new NameValueCollection { { "Enabled", "True" }, { "TaskID", taskInfo.TaskID.ToString() }, { "IsEnabled", (!taskInfo.IsEnabled).ToString() } }); ltlEnabledHtml.Text = $"<a href=\"{urlTask}\" onClick=\"javascript:return confirm('此操作将{(taskInfo.IsEnabled ? "禁用" : "启用")}任务“{taskInfo.TaskName}”,确认吗?');\">{(taskInfo.IsEnabled ? "禁用" : "启用")}</a>"; if (!taskInfo.IsSystemTask) { var urlDelete = PageUtils.GetServiceUrl(nameof(PageTask), new NameValueCollection { { "Delete", "True" }, { "TaskID", taskInfo.TaskID.ToString() }, }); ltlDeleteHtml.Text = $"<a href=\"{urlDelete}\" onClick=\"javascript:return confirm('此操作将删除任务“{taskInfo.TaskName}”,确认吗?');\">删除</a>"; } } }
public void DeleteSystemTask(int publishmentSystemId, EServiceType serviceType) { const string sqlString = "DELETE FROM siteserver_Task WHERE PublishmentSystemID = @PublishmentSystemID AND IsSystemTask = @IsSystemTask AND ServiceType = @ServiceType"; var parms = new IDataParameter[] { GetParameter(ParmPublishmentSystemId, EDataType.Integer, publishmentSystemId), GetParameter(ParmIsSystemTask, EDataType.VarChar, 18, true.ToString()), GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(serviceType)) }; ExecuteNonQuery(sqlString, parms); ServiceManager.ClearTaskCache(); }
private void DgContents_ItemDataBound(object sender, DataGridItemEventArgs e) { if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType != ListItemType.AlternatingItem) { return; } var taskInfo = (TaskInfo)e.Item.DataItem; var ltlSite = (Literal)e.Item.FindControl("ltlSite"); var ltlTaskName = (Literal)e.Item.FindControl("ltlTaskName"); var ltlIsEnabled = (Literal)e.Item.FindControl("ltlIsEnabled"); var ltlFrequencyType = (Literal)e.Item.FindControl("ltlFrequencyType"); var ltlLastExecuteDate = (Literal)e.Item.FindControl("ltlLastExecuteDate"); var ltlEditHtml = (Literal)e.Item.FindControl("ltlEditHtml"); var ltlEnabledHtml = (Literal)e.Item.FindControl("ltlEnabledHtml"); var ltlDeleteHtml = (Literal)e.Item.FindControl("ltlDeleteHtml"); if (ltlSite != null) { ltlSite.Text = GetSiteHtml(taskInfo.PublishmentSystemID); } ltlTaskName.Text = taskInfo.TaskName; ltlIsEnabled.Text = StringUtils.GetTrueOrFalseImageHtml(taskInfo.IsEnabled.ToString()); ltlFrequencyType.Text = EFrequencyTypeUtils.GetText(taskInfo.FrequencyType); if (taskInfo.LastExecuteDate > DateUtils.SqlMinValue) { ltlLastExecuteDate.Text = DateUtils.GetDateAndTimeString(taskInfo.LastExecuteDate); } if (!taskInfo.IsSystemTask) { ltlEditHtml.Text = GetEditHtml(taskInfo.TaskID, taskInfo.PublishmentSystemID); ltlDeleteHtml.Text = GetDeleteHtml(taskInfo.TaskID, taskInfo.TaskName, taskInfo.PublishmentSystemID); } var urlTask = PageUtils.GetCmsUrl(nameof(PageTask), new NameValueCollection { { "PublishmentSystemID", taskInfo.PublishmentSystemID.ToString() }, { "TaskID", taskInfo.TaskID.ToString() }, { "ServiceType", EServiceTypeUtils.GetValue(taskInfo.ServiceType) }, { "Enabled", true.ToString() }, { "IsEnabled", (!taskInfo.IsEnabled).ToString() } }); ltlEnabledHtml.Text = $"<a href=\"{urlTask}\" onClick=\"javascript:return confirm('此操作将{(taskInfo.IsEnabled ? "禁用" : "启用")}任务“{taskInfo.TaskName}”,确认吗?');\">{(taskInfo.IsEnabled ? "禁用" : "启用")}</a>"; }
private string GetDeleteHtml(int taskId, string taskName, int publishmentSystemId) { if (PublishmentSystemId != 0 && publishmentSystemId != PublishmentSystemId) { return(string.Empty); } var urlDelete = PageUtils.GetCmsUrl(nameof(PageTask), new NameValueCollection { { "PublishmentSystemID", PublishmentSystemId.ToString() }, { "TaskID", taskId.ToString() }, { "ServiceType", EServiceTypeUtils.GetValue(_serviceType) }, { "Delete", true.ToString() } }); return ($"<a href=\"{urlDelete}\" onClick=\"javascript:return confirm('此操作将删除{EServiceTypeUtils.GetText(_serviceType)}任务“{taskName}”,确认吗?');\">删除</a>"); }
public int Insert(TaskInfo info) { int id; const string sqlString = "INSERT INTO siteserver_Task (TaskName, IsSystemTask, PublishmentSystemID, ServiceType, ServiceParameters, FrequencyType, PeriodIntervalMinute, StartDay, StartWeekday, StartHour, IsEnabled, AddDate, LastExecuteDate, Description, OnlyOnceDate) VALUES (@TaskName, @IsSystemTask, @PublishmentSystemID, @ServiceType, @ServiceParameters, @FrequencyType, @PeriodIntervalMinute, @StartDay, @StartWeekday, @StartHour, @IsEnabled, @AddDate, @LastExecuteDate, @Description, @OnlyOnceDate)"; var parms = new IDataParameter[] { GetParameter(ParmTaskName, EDataType.NVarChar, 50, info.TaskName), GetParameter(ParmIsSystemTask, EDataType.VarChar, 18, info.IsSystemTask.ToString()), GetParameter(ParmPublishmentSystemId, EDataType.Integer, info.PublishmentSystemID), GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(info.ServiceType)), GetParameter(ParmServiceParameters, EDataType.NText, info.ServiceParameters), GetParameter(ParmFrequencyType, EDataType.VarChar, 50, EFrequencyTypeUtils.GetValue(info.FrequencyType)), GetParameter(ParmPeriodIntervalMinute, EDataType.Integer, info.PeriodIntervalMinute), GetParameter(ParmStartDay, EDataType.Integer, info.StartDay), GetParameter(ParmStartWeekday, EDataType.Integer, info.StartWeekday), GetParameter(ParmStartHour, EDataType.Integer, info.StartHour), GetParameter(ParmIsEnabled, EDataType.VarChar, 18, info.IsEnabled.ToString()), GetParameter(ParmAddDate, EDataType.DateTime, info.AddDate), GetParameter(ParmLastExecuteDate, EDataType.DateTime, info.LastExecuteDate), GetParameter(ParmDescription, EDataType.NVarChar, 255, info.Description), GetParameter(ParmOnlyOnceDate, EDataType.DateTime, info.OnlyOnceDate) }; using (var conn = GetConnection()) { conn.Open(); using (var trans = conn.BeginTransaction()) { try { id = ExecuteNonQueryAndReturnId(trans, sqlString, parms); ServiceManager.ClearTaskCache(); trans.Commit(); } catch (Exception) { trans.Rollback(); throw; } } } return(id); }
public List <int> GetTaskIdList(EServiceType serviceType) { var list = new List <int>(); const string sqlString = "SELECT TaskID FROM siteserver_Task WHERE ServiceType = @ServiceType"; var parms = new IDataParameter[] { GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(serviceType)) }; using (var rdr = ExecuteReader(sqlString, parms)) { while (rdr.Read()) { list.Add(GetInt(rdr, 0)); } rdr.Close(); } return(list); }
public List <TaskInfo> GetTaskInfoList(EServiceType serviceType) { var list = new List <TaskInfo>(); const string sqlString = "SELECT TaskID, TaskName, IsSystemTask, PublishmentSystemID, ServiceType, ServiceParameters, FrequencyType, PeriodIntervalMinute, StartDay, StartWeekday, StartHour, IsEnabled, AddDate, LastExecuteDate, Description, OnlyOnceDate FROM siteserver_Task WHERE ServiceType = @ServiceType"; var parms = new IDataParameter[] { GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(serviceType)) }; using (var rdr = ExecuteReader(sqlString, parms)) { while (rdr.Read()) { var i = 0; var info = new TaskInfo(GetInt(rdr, i++), GetString(rdr, i++), GetBool(rdr, i++), GetInt(rdr, i++), EServiceTypeUtils.GetEnumType(GetString(rdr, i++)), GetString(rdr, i++), EFrequencyTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetBool(rdr, i++), GetDateTime(rdr, i++), GetDateTime(rdr, i++), GetString(rdr, i++), GetDateTime(rdr, i)); list.Add(info); } rdr.Close(); } return(list); }
public bool IsSystemTaskExists(int publishmentSystemId, EServiceType serviceType) { var exists = false; const string sqlString = "SELECT TaskID FROM siteserver_Task WHERE PublishmentSystemID = @PublishmentSystemID AND IsSystemTask = @IsSystemTask AND ServiceType = @ServiceType"; var parms = new IDataParameter[] { GetParameter(ParmPublishmentSystemId, EDataType.Integer, publishmentSystemId), GetParameter(ParmIsSystemTask, EDataType.VarChar, 18, true.ToString()), GetParameter(ParmServiceType, EDataType.VarChar, 50, EServiceTypeUtils.GetValue(serviceType)) }; using (var rdr = ExecuteReader(sqlString, parms)) { if (rdr.Read() && !rdr.IsDBNull(0)) { exists = true; } rdr.Close(); } return(exists); }
public List <TaskInfo> GetTaskInfoList() { var list = new List <TaskInfo>(); const string sqlString = "SELECT TaskID, TaskName, IsSystemTask, PublishmentSystemID, ServiceType, ServiceParameters, FrequencyType, PeriodIntervalMinute, StartDay, StartWeekday, StartHour, IsEnabled, AddDate, LastExecuteDate, Description, OnlyOnceDate FROM siteserver_Task ORDER BY LastExecuteDate DESC"; using (var rdr = ExecuteReader(sqlString)) { while (rdr.Read()) { var i = 0; var info = new TaskInfo(GetInt(rdr, i++), GetString(rdr, i++), GetBool(rdr, i++), GetInt(rdr, i++), EServiceTypeUtils.GetEnumType(GetString(rdr, i++)), GetString(rdr, i++), EFrequencyTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetBool(rdr, i++), GetDateTime(rdr, i++), GetDateTime(rdr, i++), GetString(rdr, i++), GetDateTime(rdr, i)); list.Add(info); } rdr.Close(); } return(list); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } _serviceType = EServiceTypeUtils.GetEnumType(Body.GetQueryString("ServiceType")); if (!IsPostBack) { EFrequencyTypeUtils.AddListItems(FrequencyType, false); for (var i = 1; i < 32; i++) { StartDay.Items.Add(new ListItem(i + "日", i.ToString())); } for (var i = 1; i < 8; i++) { var weekName = string.Empty; if (i == 1) { weekName = "星期一"; } else if (i == 2) { weekName = "星期二"; } else if (i == 3) { weekName = "星期三"; } else if (i == 4) { weekName = "星期四"; } else if (i == 5) { weekName = "星期五"; } else if (i == 6) { weekName = "星期六"; } else if (i == 7) { weekName = "星期日"; } StartWeekday.Items.Add(new ListItem(weekName, i.ToString())); } for (var i = 0; i < 24; i++) { StartHour.Items.Add(new ListItem(i + "点", i.ToString())); } var listItem = new ListItem("周", "5040"); PeriodIntervalType.Items.Add(listItem); listItem = new ListItem("天", "720"); PeriodIntervalType.Items.Add(listItem); listItem = new ListItem("小时", "12"); PeriodIntervalType.Items.Add(listItem); listItem = new ListItem("分钟", "1"); listItem.Selected = true; PeriodIntervalType.Items.Add(listItem); if (_serviceType == EServiceType.Create) { PlaceHolder_Create.Visible = true; if (PublishmentSystemId != 0) { NodeManager.AddListItems(CreateChannelIDCollection.Items, PublishmentSystemInfo, false, true, Body.AdministratorName); } else { var arraylist = PublishmentSystemManager.GetPublishmentSystemIdList(); foreach (int publishmentSystemID in arraylist) { var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(publishmentSystemID); var item = new ListItem(publishmentSystemInfo.PublishmentSystemName, publishmentSystemInfo.PublishmentSystemId.ToString()); CreateChannelIDCollection.Items.Add(item); } } ECreateTypeUtils.AddListItems(CreateCreateTypes); } else if (_serviceType == EServiceType.Gather) { PlaceHolder_Gather.Visible = true; if (PublishmentSystemId != 0) { var gatherRuleNameArrayList = DataProvider.GatherRuleDao.GetGatherRuleNameArrayList(PublishmentSystemId); var gatherTypeValue = EGatherTypeUtils.GetValue(EGatherType.Web); var gatherTypeText = EGatherTypeUtils.GetText(EGatherType.Web); foreach (string gatherName in gatherRuleNameArrayList) { GatherListBox.Items.Add(new ListItem(gatherName + "(" + gatherTypeText + ")", gatherTypeValue + "_" + gatherName)); } gatherRuleNameArrayList = DataProvider.GatherDatabaseRuleDao.GetGatherRuleNameArrayList(PublishmentSystemId); gatherTypeValue = EGatherTypeUtils.GetValue(EGatherType.Database); gatherTypeText = EGatherTypeUtils.GetText(EGatherType.Database); foreach (string gatherName in gatherRuleNameArrayList) { GatherListBox.Items.Add(new ListItem(gatherName + "(" + gatherTypeText + ")", gatherTypeValue + "_" + gatherName)); } gatherRuleNameArrayList = DataProvider.GatherFileRuleDao.GetGatherRuleNameArrayList(PublishmentSystemId); gatherTypeValue = EGatherTypeUtils.GetValue(EGatherType.File); gatherTypeText = EGatherTypeUtils.GetText(EGatherType.File); foreach (string gatherName in gatherRuleNameArrayList) { GatherListBox.Items.Add(new ListItem(gatherName + "(" + gatherTypeText + ")", gatherTypeValue + "_" + gatherName)); } GatherHelp.Text = "选择需要定时执行的采集名称"; } else { var arraylist = PublishmentSystemManager.GetPublishmentSystemIdList(); foreach (int publishmentSystemID in arraylist) { var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(publishmentSystemID); var item = new ListItem(publishmentSystemInfo.PublishmentSystemName, publishmentSystemInfo.PublishmentSystemId.ToString()); GatherListBox.Items.Add(item); } GatherHelp.Text = "选择需要定时采集的站点"; } } else if (_serviceType == EServiceType.Backup) { PlaceHolder_Backup.Visible = true; if (PublishmentSystemId != 0) { PlaceHolder_Backup_PublishmentSystem.Visible = false; } else { PlaceHolder_Backup_PublishmentSystem.Visible = true; var arraylist = PublishmentSystemManager.GetPublishmentSystemIdList(); foreach (int publishmentSystemID in arraylist) { var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(publishmentSystemID); var item = new ListItem(publishmentSystemInfo.PublishmentSystemName, publishmentSystemInfo.PublishmentSystemId.ToString()); BackupPublishmentSystemIDCollection.Items.Add(item); } } EBackupTypeUtils.AddListItems(BackupType); } if (Body.IsQueryExists("TaskID")) { var taskId = Body.GetQueryInt("TaskID"); var taskInfo = DataProvider.TaskDao.GetTaskInfo(taskId); if (taskInfo != null) { TaskName.Text = taskInfo.TaskName; TaskName.Enabled = false; ControlUtils.SelectListItems(FrequencyType, EFrequencyTypeUtils.GetValue(taskInfo.FrequencyType)); ControlUtils.SelectListItems(StartDay, taskInfo.StartDay.ToString()); ControlUtils.SelectListItems(StartWeekday, taskInfo.StartWeekday.ToString()); ControlUtils.SelectListItems(StartHour, taskInfo.StartHour.ToString()); if (taskInfo.PeriodIntervalMinute % 5040 == 0) { PeriodInterval.Text = Convert.ToInt32(taskInfo.PeriodIntervalMinute / 5040).ToString(); ControlUtils.SelectListItems(PeriodIntervalType, "5040"); } else if (taskInfo.PeriodIntervalMinute % 720 == 0) { PeriodInterval.Text = Convert.ToInt32(taskInfo.PeriodIntervalMinute / 720).ToString(); ControlUtils.SelectListItems(PeriodIntervalType, "720"); } else if (taskInfo.PeriodIntervalMinute % 12 == 0) { PeriodInterval.Text = Convert.ToInt32(taskInfo.PeriodIntervalMinute / 12).ToString(); ControlUtils.SelectListItems(PeriodIntervalType, "12"); } else { PeriodInterval.Text = taskInfo.PeriodIntervalMinute.ToString(); ControlUtils.SelectListItems(PeriodIntervalType, "1"); } Description.Text = taskInfo.Description; if (_serviceType == EServiceType.Create) { var taskCreateInfo = new TaskCreateInfo(taskInfo.ServiceParameters); if (taskCreateInfo.IsCreateAll) { foreach (ListItem item in CreateChannelIDCollection.Items) { item.Selected = true; } CreateIsCreateAll.Checked = true; } else { var channelIdList = TranslateUtils.StringCollectionToStringList(taskCreateInfo.ChannelIDCollection); ControlUtils.SelectListItems(CreateChannelIDCollection, channelIdList); CreateIsCreateAll.Checked = false; } var createTypeArrayList = TranslateUtils.StringCollectionToStringList(taskCreateInfo.CreateTypes); foreach (ListItem item in CreateCreateTypes.Items) { if (createTypeArrayList.Contains(item.Value)) { item.Selected = true; } else { item.Selected = false; } } } else if (_serviceType == EServiceType.Gather) { var taskGatherInfo = new TaskGatherInfo(taskInfo.ServiceParameters); if (PublishmentSystemId != 0) { var webGatherNames = TranslateUtils.StringCollectionToStringList(taskGatherInfo.WebGatherNames); var databaseGatherNames = TranslateUtils.StringCollectionToStringList(taskGatherInfo.DatabaseGatherNames); var fileGatherNames = TranslateUtils.StringCollectionToStringList(taskGatherInfo.FileGatherNames); foreach (ListItem item in GatherListBox.Items) { var gatherType = EGatherTypeUtils.GetEnumType(item.Value.Split('_')[0]); var gatherName = item.Value.Substring(item.Value.Split('_')[0].Length + 1); if (gatherType == EGatherType.Web && webGatherNames.Contains(gatherName)) { item.Selected = true; } else if (gatherType == EGatherType.Database && databaseGatherNames.Contains(gatherName)) { item.Selected = true; } else if (gatherType == EGatherType.File && fileGatherNames.Contains(gatherName)) { item.Selected = true; } } } else { var publishmentSystemIdList = TranslateUtils.StringCollectionToStringList(taskGatherInfo.PublishmentSystemIDCollection); ControlUtils.SelectListItems(GatherListBox, publishmentSystemIdList); } } else if (_serviceType == EServiceType.Backup) { var taskBackupInfo = new TaskBackupInfo(taskInfo.ServiceParameters); if (taskInfo.PublishmentSystemID == 0) { if (taskBackupInfo.IsBackupAll) { foreach (ListItem item in BackupPublishmentSystemIDCollection.Items) { item.Selected = true; } BackupIsBackupAll.Checked = true; } else { var publishmentSystemIdList = TranslateUtils.StringCollectionToStringList(taskBackupInfo.PublishmentSystemIDCollection); ControlUtils.SelectListItems(BackupPublishmentSystemIDCollection, publishmentSystemIdList); BackupIsBackupAll.Checked = false; } } else { ControlUtils.SelectListItems(BackupPublishmentSystemIDCollection, taskInfo.PublishmentSystemID.ToString()); } ControlUtils.SelectListItems(BackupType, EBackupTypeUtils.GetValue(taskBackupInfo.BackupType)); } } } FrequencyType_SelectedIndexChanged(null, EventArgs.Empty); } }
public TaskInfo GetTaskInfo(int taskId) { TaskInfo info = null; var parms = new IDataParameter[] { GetParameter(ParmTaskId, EDataType.Integer, taskId) }; using (var rdr = ExecuteReader(SqlSelectById, parms)) { if (rdr.Read()) { var i = 0; info = new TaskInfo(GetInt(rdr, i++), GetString(rdr, i++), GetBool(rdr, i++), GetInt(rdr, i++), EServiceTypeUtils.GetEnumType(GetString(rdr, i++)), GetString(rdr, i++), EFrequencyTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetBool(rdr, i++), GetDateTime(rdr, i++), GetDateTime(rdr, i++), GetString(rdr, i++), GetDateTime(rdr, i)); } rdr.Close(); } return(info); }
public override void Submit_OnClick(object sender, EventArgs e) { var isChanged = false; var serviceParamters = new ExtendedAttributes(); if (_serviceType == EServiceType.Create) { var taskCreateInfo = new TaskCreateInfo(string.Empty); taskCreateInfo.IsCreateAll = CreateIsCreateAll.Checked; taskCreateInfo.ChannelIDCollection = TranslateUtils.ObjectCollectionToString(ControlUtils.GetSelectedListControlValueArrayList(CreateChannelIDCollection)); taskCreateInfo.CreateTypes = TranslateUtils.ObjectCollectionToString(ControlUtils.GetSelectedListControlValueArrayList(CreateCreateTypes)); serviceParamters = taskCreateInfo; } else if (_serviceType == EServiceType.Gather) { var taskGatherInfo = new TaskGatherInfo(string.Empty); if (PublishmentSystemId != 0) { var webGatherNames = new ArrayList(); var databaseGatherNames = new ArrayList(); var fileGatherNames = new ArrayList(); foreach (ListItem item in GatherListBox.Items) { if (item.Selected) { var gatherType = EGatherTypeUtils.GetEnumType(item.Value.Split('_')[0]); var gatherName = item.Value.Substring(item.Value.Split('_')[0].Length + 1); if (gatherType == EGatherType.Web && !webGatherNames.Contains(gatherName)) { webGatherNames.Add(gatherName); } else if (gatherType == EGatherType.Database && !databaseGatherNames.Contains(gatherName)) { databaseGatherNames.Add(gatherName); } else if (gatherType == EGatherType.File && !fileGatherNames.Contains(gatherName)) { fileGatherNames.Add(gatherName); } } } taskGatherInfo.WebGatherNames = TranslateUtils.ObjectCollectionToString(webGatherNames); taskGatherInfo.DatabaseGatherNames = TranslateUtils.ObjectCollectionToString(databaseGatherNames); taskGatherInfo.FileGatherNames = TranslateUtils.ObjectCollectionToString(fileGatherNames); } else { taskGatherInfo.PublishmentSystemIDCollection = TranslateUtils.ObjectCollectionToString(ControlUtils.GetSelectedListControlValueArrayList(GatherListBox)); } serviceParamters = taskGatherInfo; } else if (_serviceType == EServiceType.Backup) { var taskBackupInfo = new TaskBackupInfo(string.Empty); taskBackupInfo.BackupType = EBackupTypeUtils.GetEnumType(BackupType.SelectedValue); taskBackupInfo.IsBackupAll = BackupIsBackupAll.Checked; taskBackupInfo.PublishmentSystemIDCollection = TranslateUtils.ObjectCollectionToString(ControlUtils.GetSelectedListControlValueArrayList(BackupPublishmentSystemIDCollection)); serviceParamters = taskBackupInfo; } if (Body.IsQueryExists("TaskID")) { try { var taskId = Body.GetQueryInt("TaskID"); var taskInfo = DataProvider.TaskDao.GetTaskInfo(taskId); taskInfo.FrequencyType = EFrequencyTypeUtils.GetEnumType(FrequencyType.SelectedValue); if (taskInfo.FrequencyType == EFrequencyType.Period) { taskInfo.PeriodIntervalMinute = TranslateUtils.ToInt(PeriodInterval.Text) * TranslateUtils.ToInt(PeriodIntervalType.SelectedValue); } else if (taskInfo.FrequencyType != EFrequencyType.JustInTime) { taskInfo.StartDay = TranslateUtils.ToInt(StartDay.SelectedValue); taskInfo.StartWeekday = TranslateUtils.ToInt(StartWeekday.SelectedValue); taskInfo.StartHour = TranslateUtils.ToInt(StartHour.SelectedValue); } taskInfo.Description = Description.Text; taskInfo.ServiceParameters = serviceParamters.ToString(); DataProvider.TaskDao.Update(taskInfo); Body.AddSiteLog(PublishmentSystemId, $"修改{EServiceTypeUtils.GetText(taskInfo.ServiceType)}任务", $"任务名称:{taskInfo.TaskName}"); SuccessMessage("任务修改成功!"); isChanged = true; } catch (Exception ex) { FailMessage(ex, "任务修改失败!"); } } else { if (DataProvider.TaskDao.IsExists(TaskName.Text)) { FailMessage("任务添加失败,任务名称已存在!"); } else { try { var taskInfo = new TaskInfo(); taskInfo.TaskName = TaskName.Text; taskInfo.PublishmentSystemID = PublishmentSystemId; taskInfo.ServiceType = _serviceType; taskInfo.FrequencyType = EFrequencyTypeUtils.GetEnumType(FrequencyType.SelectedValue); if (taskInfo.FrequencyType == EFrequencyType.Period) { taskInfo.PeriodIntervalMinute = TranslateUtils.ToInt(PeriodInterval.Text) * TranslateUtils.ToInt(PeriodIntervalType.SelectedValue); } else if (taskInfo.FrequencyType != EFrequencyType.JustInTime) { taskInfo.StartDay = TranslateUtils.ToInt(StartDay.SelectedValue); taskInfo.StartWeekday = TranslateUtils.ToInt(StartWeekday.SelectedValue); taskInfo.StartHour = TranslateUtils.ToInt(StartHour.SelectedValue); } taskInfo.Description = Description.Text; taskInfo.ServiceParameters = serviceParamters.ToString(); taskInfo.IsEnabled = true; taskInfo.AddDate = DateTime.Now; taskInfo.OnlyOnceDate = DateUtils.SqlMinValue; taskInfo.LastExecuteDate = DateUtils.SqlMinValue; DataProvider.TaskDao.Insert(taskInfo); Body.AddSiteLog(PublishmentSystemId, $"添加{EServiceTypeUtils.GetText(taskInfo.ServiceType)}任务", $"任务名称:{taskInfo.TaskName}"); SuccessMessage("任务添加成功!"); isChanged = true; } catch (Exception ex) { FailMessage(ex, "任务添加失败!"); } } } if (isChanged) { PageUtils.CloseModalPageAndRedirect(Page, PageTask.GetRedirectUrl(PublishmentSystemId, _serviceType)); } }