void GetRateDetail() { try { if (TaskItems.TaskSettingID <= 0) { return; } TaskRate = new List <TaskDurationRate>(); WebRequest webRequest = new WebRequest(); webRequest.Session = CurrentApp.Session; webRequest.Code = (int)S3107Codes.GetRateDetail; webRequest.ListData.Add(TaskItems.TaskSettingID.ToString()); Service31071Client client = new Service31071Client(WebHelper.CreateBasicHttpBinding(CurrentApp.Session), WebHelper.CreateEndpointAddress(CurrentApp.Session.AppServerInfo, "Service31071")); WebReturn webReturn = client.UMPTaskOperation(webRequest); client.Close(); if (!webReturn.Result) { return; } if (webReturn.ListData.Count <= 0) { return; } for (int i = 0; i < webReturn.ListData.Count; i++) { OperationReturn optReturn = XMLHelper.DeserializeObject <TaskDurationRate>(webReturn.ListData[i]); if (!optReturn.Result) { ShowException(string.Format("Fail.\t{0}\t{1}", optReturn.Code, optReturn.Message)); continue; } TaskDurationRate rateItem = optReturn.Data as TaskDurationRate; if (rateItem == null) { ShowException(string.Format("Fail. rateItem is null")); return; } TaskRate.Add(rateItem); } } catch (Exception ex) { ShowException(ex.Message); } }
private bool TaskDBOperation() { bool flag = true; WebRequest webRequest; Service31071Client client; WebReturn webReturn; try { if (!S3107App.TaskModify)//新建數據需要獲取任務分配ID、運行週期ID { //生成新的任务分配ID webRequest = new WebRequest(); webRequest.Session = CurrentApp.Session; webRequest.Code = (int)RequestCode.WSGetSerialID; webRequest.ListData.Add("31"); webRequest.ListData.Add("372"); webRequest.ListData.Add(DateTime.Now.ToString("yyyyMMddHHmmss")); client = new Service31071Client(WebHelper.CreateBasicHttpBinding(CurrentApp.Session), WebHelper.CreateEndpointAddress(CurrentApp.Session.AppServerInfo, "Service31071")); webReturn = client.UMPTaskOperation(webRequest); client.Close(); if (!webReturn.Result) { return(false); } string strNewResultID = webReturn.Data; if (string.IsNullOrEmpty(strNewResultID)) { ShowException(CurrentApp.GetLanguageInfo("3107T00082", "strNewResultID1 Is Null")); return(false); } TaskItems.TaskSettingID = Convert.ToInt64(strNewResultID); //生成新的运行周期ID webRequest = new WebRequest(); webRequest.Session = CurrentApp.Session; webRequest.Code = (int)RequestCode.WSGetSerialID; webRequest.ListData.Add("31"); webRequest.ListData.Add("313"); webRequest.ListData.Add(DateTime.Now.ToString("yyyyMMddHHmmss")); client = new Service31071Client(WebHelper.CreateBasicHttpBinding(CurrentApp.Session), WebHelper.CreateEndpointAddress(CurrentApp.Session.AppServerInfo, "Service31071")); webReturn = client.UMPTaskOperation(webRequest); client.Close(); if (!webReturn.Result) { return(false); } strNewResultID = webReturn.Data; if (string.IsNullOrEmpty(strNewResultID)) { ShowException(CurrentApp.GetLanguageInfo("3107T00082", "strNewResultID2 Is Null")); return(false); } TaskItems.FrequencyID = Convert.ToInt64(strNewResultID); } //往任务设置中插入用户信息 TaskItems.Creator = CurrentApp.Session.UserID; TaskItems.CreatorName = CurrentApp.Session.UserInfo.UserName; #region 时长分配比率 T_31_048 在插入数据库时获取自动任务分配ID时读取 TaskRate = new List <TaskDurationRate>(); if (ckDataGrid.IsChecked == true) { if (dataGrid.Items.Count < 0) { return(false); } TaskDurationRate rateItem; double ratecount = 0.0; foreach (DataGridInfo tempRate in dataGrid.ItemsSource) { rateItem = new TaskDurationRate(); rateItem.DurationMin = tempRate.DurationMin; rateItem.DurationMax = tempRate.DurationMax; if (tempRate.DurationMin > tempRate.DurationMax) { ShowInformation(CurrentApp.GetLanguageInfo("3107T00085", "Please Input Right Duration")); return(false); } rateItem.Rate = tempRate.Rate; rateItem.TaskSettingID = TaskItems.TaskSettingID; ratecount += tempRate.Rate; TaskRate.Add(rateItem); } if (ratecount != 100.0) { ShowInformation(CurrentApp.GetLanguageInfo("3107T00085", "Please Input Right Duration")); return(false); } } #endregion //往T_31_023、T_31_026、T_31_048中插入数据 webRequest = new WebRequest(); webRequest.Session = CurrentApp.Session; webRequest.Code = (int)S3107Codes.TaskSettingDBO; OperationReturn optReturn = XMLHelper.SeriallizeObject(TaskItems);//任务设置 0 if (!optReturn.Result) { ShowException(string.Format("Fail.\t{0}\t{1}", optReturn.Code, optReturn.Message)); return(false); } webRequest.ListData.Add(optReturn.Data.ToString()); string tempFlag = S3107App.TaskModify == true ? "T" : "F"; webRequest.ListData.Add(tempFlag); // 1 webRequest.ListData.Add(TaskRate.Count.ToString()); //2 if (TaskRate.Count > 0 && ckDataGrid.IsChecked == true) { for (int i = 0; i < TaskRate.Count; i++) { optReturn = XMLHelper.SeriallizeObject(TaskRate[i]); if (!optReturn.Result) { ShowException(string.Format("Fail.\t{0}\t{1}", optReturn.Code, optReturn.Message)); return(false); } webRequest.ListData.Add(optReturn.Data.ToString());//时长比率 2+i } } client = new Service31071Client(WebHelper.CreateBasicHttpBinding(CurrentApp.Session), WebHelper.CreateEndpointAddress(CurrentApp.Session.AppServerInfo, "Service31071")); webReturn = client.UMPTaskOperation(webRequest); client.Close(); if (!webReturn.Result) { return(false); } } catch (Exception ex) { ShowException(ex.Message); return(false); } return(flag); }