From 9a7c5aae14491240debad7ba5455071c376928ea Mon Sep 17 00:00:00 2001 From: wangqing <945983254@qq.com> Date: Sat, 4 May 2024 00:43:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=90=E8=A1=8C=E6=97=A5=E5=BF=97=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RunningLogManagementEdit.aspx | 102 ++++++-- .../RunningLogManagementEdit.aspx.cs | 228 +++++++++++++++--- .../RunningLogManagementEdit.aspx.designer.cs | 58 ++++- .../RunningLogManagementList.aspx | 34 ++- .../RunningLogManagementList.aspx.cs | 108 ++------- .../RunningLogManagementList.aspx.designer.cs | 54 +++-- 6 files changed, 400 insertions(+), 184 deletions(-) diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx index 30300c5a..89dadea0 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx @@ -62,21 +62,21 @@ - - - - - - - - + + + + + + @@ -102,12 +102,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - '); - var valid = true, modifiedData = gvOption.getMergedData(); - + //公用工程 + var gvEngOption = F('<%= gvEngineeringOption.ClientID %>'); + var valid = true, modifiedData = gvEngOption.getMergedData(); $.each(modifiedData, function (index, rowData) { if (rowData.status === 'deleted') { return true; @@ -252,7 +287,7 @@ F.alert({ message: '请输入运行情况!', ok: function () { - gvOption.startEdit(rowData.id, 'Situation'); + gvEngOption.startEdit(rowData.id, 'Situation'); } }); valid = false; @@ -263,14 +298,45 @@ F.alert({ message: '请输入备注!', ok: function () { - gvOption.startEdit(rowData.id, 'Remarks'); + gvEngOption.startEdit(rowData.id, 'Remarks'); } }); valid = false; return false; } }); - + if (valid == false) return valid; + //工艺装置 + var gvDeviceOption = F('<%= gvDeviceOption.ClientID %>'); + var valid = true, modifiedData = gvDeviceOption.getMergedData(); + $.each(modifiedData, function (index, rowData) { + if (rowData.status === 'deleted') { + return true; + } + var situation = rowData.values['Situation']; + if (typeof (situation) != 'undefined' && $.trim(situation) == '') { + F.alert({ + message: '请输入运行情况!', + ok: function () { + gvDeviceOption.startEdit(rowData.id, 'Situation'); + } + }); + valid = false; + return false; + } + var remarks = rowData.values['Remarks']; + if (typeof (remarks) != 'undefined' && $.trim(remarks) == '') { + F.alert({ + message: '请输入备注!', + ok: function () { + gvDeviceOption.startEdit(rowData.id, 'Remarks'); + } + }); + valid = false; + return false; + } + }); + if (valid == false) return valid; //操作问题 var gvOperation = F('<%= gvOperation.ClientID %>'); var valid = true, modifiedData = gvOperation.getMergedData(); @@ -301,7 +367,7 @@ return false; } }); - + if (valid == false) return valid; //维护问题 var gvMaintenance = F('<%= gvMaintenance.ClientID %>'); var valid = true, modifiedData = gvMaintenance.getMergedData(); diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.cs b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.cs index f25e6cc1..d6ead992 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.cs +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.cs @@ -37,18 +37,44 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun public void PageBase() { //获取系统 - var syslist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 3).ToList(); - if (syslist.Count > 0) + var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList(); + if (alllist.Count > 0) { - int i = 0; - ListItem[] list = new ListItem[syslist.Count]; - foreach (var item in syslist) + var engineeringModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程"); + if (engineeringModel != null) { - list[i] = new ListItem(item.PreRunName, item.PreRunId); - i++; + var engsyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == engineeringModel.PreRunId).ToList(); + if (engsyslist.Count > 0) + { + int i = 0; + ListItem[] list = new ListItem[engsyslist.Count]; + foreach (var item in engsyslist) + { + list[i] = new ListItem(item.PreRunName, item.PreRunId); + i++; + } + this.rdbEngineeringOperation.DataSource = list; + this.rdbEngineeringOperation.DataBind(); + } + } + + var deviceModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置"); + if (deviceModel != null) + { + var devicesyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == deviceModel.PreRunId).ToList(); + if (devicesyslist.Count > 0) + { + int i = 0; + ListItem[] list = new ListItem[devicesyslist.Count]; + foreach (var item in devicesyslist) + { + list[i] = new ListItem(item.PreRunName, item.PreRunId); + i++; + } + this.rdbDeviceOption.DataSource = list; + this.rdbDeviceOption.DataBind(); + } } - this.rdbOperation.DataSource = list; - this.rdbOperation.DataBind(); } //获取人员 @@ -85,9 +111,18 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun ddlSuccessionUser.SelectedValue = model.SuccessionUser; txtStartData.Text = model.StartData.Value.ToString("yyyy-MM-dd HH:mm:ss"); txtEndData.Text = model.EndData.Value.ToString("yyyy-MM-dd HH:mm:ss"); - rdbOperation.SelectedValueArray = options.ToArray(); txtHandoverCare.Text = model.HandoverCare; - DataBrid(); + var dataInstall = alllist.FirstOrDefault(x => x.PreRunId == model.InstallationId); + if (dataInstall.PreRunName == "公用工程") + { + rdbEngineeringOperation.SelectedValueArray = options.ToArray(); + EngineeringDataBrid(); + } + if (dataInstall.PreRunName == "工艺装置") + { + rdbDeviceOption.SelectedValueArray = options.ToArray(); + DriveDataBrid(); + } gvOperationBrid(); gvMaintenanceBrid(); } @@ -98,17 +133,23 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun } /// - /// 选择项 + /// 公用工程选择项 /// - protected void rdbOperation_SelectedIndexChanged(object sender, EventArgs e) + protected void rdbEngineeringOperation_SelectedIndexChanged(object sender, EventArgs e) { - var syslist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 3).ToList(); - var rdbIdArr = rdbOperation.SelectedItemArray; - var list = gvSystemOptionLs(); + var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList(); + if (alllist.Count == 0) return; + var engineeringModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程"); + if (engineeringModel == null) return; + var engsyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == engineeringModel.PreRunId).ToList(); + if (engsyslist.Count == 0) return; + + var rdbIdArr = rdbEngineeringOperation.SelectedItemArray; + var list = gvEngineeringSystemOptionLs(); foreach (var item in rdbIdArr) { if (list.Count(x => x.SystemId == item.Value) > 0) continue; - var itemsys = syslist.FirstOrDefault(x => x.PreRunId == item.Value); + var itemsys = engsyslist.FirstOrDefault(x => x.PreRunId == item.Value); list.Add(new Running_LogManagementDto { RunningId = Guid.NewGuid().ToString(), @@ -123,8 +164,44 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun AddTime = DateTime.Now, }); } - list.RemoveAll(r => !rdbOperation.SelectedValueArray.Contains(r.SystemId)); - DataBrid(list); + list.RemoveAll(r => !rdbEngineeringOperation.SelectedValueArray.Contains(r.SystemId)); + EngineeringDataBrid(list); + } + + /// + /// 工艺装置选择项 + /// + protected void rdbDeviceOption_SelectedIndexChanged(object sender, EventArgs e) + { + var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList(); + if (alllist.Count == 0) return; + var deviceModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置"); + if (deviceModel == null) return; + var drivesyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == deviceModel.PreRunId).ToList(); + if (drivesyslist.Count == 0) return; + + var rdbIdArr = rdbDeviceOption.SelectedItemArray; + var list = gvDeviceSystemOptionLs(); + foreach (var item in rdbIdArr) + { + if (list.Count(x => x.SystemId == item.Value) > 0) continue; + var itemsys = drivesyslist.FirstOrDefault(x => x.PreRunId == item.Value); + list.Add(new Running_LogManagementDto + { + RunningId = Guid.NewGuid().ToString(), + ProjectId = this.CurrUser.LoginProjectId, + InstallationId = itemsys.InstallationId, + ProcessesId = itemsys.ProcessesId, + SystemId = itemsys.SystemId, + SystemName = itemsys.PreRunName, + Situation = "", + Remarks = "", + AddUser = CurrUser.UserId, + AddTime = DateTime.Now, + }); + } + list.RemoveAll(r => !rdbDeviceOption.SelectedValueArray.Contains(r.SystemId)); + DriveDataBrid(list); } /// @@ -132,6 +209,7 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected void btnSave_Click(object sender, EventArgs e) { + List list = new List(); if (string.IsNullOrWhiteSpace(ddlShiftUser.SelectedValue)) { ShowNotify("请选择轮班职工!", MessageBoxIcon.Warning); @@ -142,10 +220,13 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun ShowNotify("请选择继任职工!", MessageBoxIcon.Warning); return; } - var list = gvSystemOptionLs(); + var englist = gvEngineeringSystemOptionLs(); + if (englist.Count > 0) list.AddRange(englist); + var devlist = gvDeviceSystemOptionLs(); + if (devlist.Count > 0) list.AddRange(devlist); if (list.Count == 0) { - ShowNotify("请选择系统!", MessageBoxIcon.Warning); + ShowNotify("请选择公用工程或工艺装置的系统!", MessageBoxIcon.Warning); return; } var optionlist = gvOperationLs(); @@ -257,14 +338,21 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun } /// - /// 日志管理绑定 + /// 公用工程日志管理绑定 /// - public void DataBrid(List list = null) + public void EngineeringDataBrid(List list = null) { if (list == null) list = new List(); + var engineeringModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程"); + if (engineeringModel == null) + { + gvEngineeringOption.DataSource = list; + gvEngineeringOption.DataBind(); + return; + } var query = from a in Funs.DB.Running_LogManagement join b in Funs.DB.PreRun_SysDevice on a.SystemId equals b.PreRunId - where a.RunningId == this.RunningId + where a.RunningId == this.RunningId && a.InstallationId == engineeringModel.PreRunId select new Running_LogManagementDto { RunningId = a.RunningId, @@ -288,17 +376,17 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun var data = query.ToList(); if (data.Count > 0) list.AddRange(data); - gvSystemOption.DataSource = list; - gvSystemOption.DataBind(); + gvEngineeringOption.DataSource = list; + gvEngineeringOption.DataBind(); } /// - /// 获取绑定集合 + /// 获取公用工程绑定集合 /// - private List gvSystemOptionLs() + private List gvEngineeringSystemOptionLs() { List massQuestionLs = new List(); - JArray mergedData = gvSystemOption.GetMergedData(); + JArray mergedData = gvEngineeringOption.GetMergedData(); foreach (JObject mergedRow in mergedData) { string status = mergedRow.Value("status"); @@ -306,12 +394,84 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun int i = mergedRow.Value("index"); massQuestionLs.Add(new Running_LogManagementDto { - RunningId = this.gvSystemOption.Rows[i].DataKeys[0].ToString(), + RunningId = this.gvEngineeringOption.Rows[i].DataKeys[0].ToString(), ProjectId = this.CurrUser.LoginProjectId, - InstallationId = this.gvSystemOption.Rows[i].DataKeys[1].ToString(), - ProcessesId = this.gvSystemOption.Rows[i].DataKeys[2].ToString(), - SystemId = this.gvSystemOption.Rows[i].DataKeys[3].ToString(), - SystemName = this.gvSystemOption.Rows[i].DataKeys[4].ToString(), + InstallationId = this.gvEngineeringOption.Rows[i].DataKeys[1].ToString(), + ProcessesId = this.gvEngineeringOption.Rows[i].DataKeys[2].ToString(), + SystemId = this.gvEngineeringOption.Rows[i].DataKeys[3].ToString(), + SystemName = this.gvEngineeringOption.Rows[i].DataKeys[4].ToString(), + Situation = values.Value("Situation"), + Remarks = values.Value("Remarks"), + AddUser = CurrUser.UserId, + AddTime = DateTime.Now, + }); + } + return massQuestionLs; + } + + /// + /// 工艺装置日志管理绑定 + /// + public void DriveDataBrid(List list = null) + { + if (list == null) list = new List(); + var deviceModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置"); + if (deviceModel == null) + { + gvDeviceOption.DataSource = list; + gvDeviceOption.DataBind(); + return; + } + var query = from a in Funs.DB.Running_LogManagement + join b in Funs.DB.PreRun_SysDevice on a.SystemId equals b.PreRunId + where a.RunningId == this.RunningId && a.InstallationId == deviceModel.PreRunId + select new Running_LogManagementDto + { + RunningId = a.RunningId, + ProjectId = a.ProjectId, + InstallationId = a.InstallationId, + ProcessesId = a.ProcessesId, + SystemId = a.SystemId, + SystemName = b.PreRunName, + JobNo = a.JobNo, + ShiftType = a.ShiftType, + ShiftUser = a.ShiftUser, + SuccessionUser = a.SuccessionUser, + StartData = a.StartData, + EndData = a.EndData, + Situation = a.Situation, + Remarks = a.Remarks, + HandoverCare = a.HandoverCare, + AddUser = a.AddUser, + AddTime = a.AddTime + }; + + var data = query.ToList(); + if (data.Count > 0) list.AddRange(data); + gvDeviceOption.DataSource = list; + gvDeviceOption.DataBind(); + } + + /// + /// 获取工艺装置绑定集合 + /// + private List gvDeviceSystemOptionLs() + { + List massQuestionLs = new List(); + JArray mergedData = gvDeviceOption.GetMergedData(); + foreach (JObject mergedRow in mergedData) + { + string status = mergedRow.Value("status"); + JObject values = mergedRow.Value("values"); + int i = mergedRow.Value("index"); + massQuestionLs.Add(new Running_LogManagementDto + { + RunningId = this.gvDeviceOption.Rows[i].DataKeys[0].ToString(), + ProjectId = this.CurrUser.LoginProjectId, + InstallationId = this.gvDeviceOption.Rows[i].DataKeys[1].ToString(), + ProcessesId = this.gvDeviceOption.Rows[i].DataKeys[2].ToString(), + SystemId = this.gvDeviceOption.Rows[i].DataKeys[3].ToString(), + SystemName = this.gvDeviceOption.Rows[i].DataKeys[4].ToString(), Situation = values.Value("Situation"), Remarks = values.Value("Remarks"), AddUser = CurrUser.UserId, diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.designer.cs index bd1e4335..f8b54226 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementEdit.aspx.designer.cs @@ -140,15 +140,6 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected global::FineUIPro.DatePicker txtEndData; - /// - /// rdbOperation 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.CheckBoxList rdbOperation; - /// /// ContentPanel4 控件。 /// @@ -168,13 +159,22 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun protected global::FineUIPro.Form Form5; /// - /// gvSystemOption 控件。 + /// rdbEngineeringOperation 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.Grid gvSystemOption; + protected global::FineUIPro.CheckBoxList rdbEngineeringOperation; + + /// + /// gvEngineeringOption 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvEngineeringOption; /// /// txtSituation 控件。 @@ -194,6 +194,42 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected global::FineUIPro.TextArea txtRemarks; + /// + /// rdbDeviceOption 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.CheckBoxList rdbDeviceOption; + + /// + /// gvDeviceOption 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid gvDeviceOption; + + /// + /// TextArea1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea TextArea1; + + /// + /// TextArea2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea TextArea2; + /// /// ContentPanel5 控件。 /// diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx index 3de02858..b4b3642a 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx @@ -44,6 +44,11 @@ white-space: normal; word-break: break-all; } + + .customlabel span { + color: red; + font-weight: bold; + } @@ -52,18 +57,8 @@ - - - - - - + runat="server" BoxFlex="1" DataKeyNames="RunningId" AllowCellEditing="true" ClicksToEdit="2" DataIDField="RunningId" AllowSorting="true" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true"> @@ -72,8 +67,21 @@ + + + + + + + + + + + - @@ -84,7 +92,7 @@ - + diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.cs b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.cs index e0aa1d48..d56b9dfe 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.cs +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.cs @@ -24,82 +24,10 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun if (!IsPostBack) { //绑定数据 - InitTreeMenu(); BindGrid(); } } - #region 树绑定 - - /// - /// 加载树 - /// - private void InitTreeMenu() - { - this.tvControlItem.Nodes.Clear(); - TreeNode rootNode = new TreeNode(); - rootNode.Text = "检查表"; - rootNode.NodeID = "0"; - rootNode.Expanded = true; - rootNode.ToolTip = ""; - rootNode.EnableClickEvent = true; - this.tvControlItem.Nodes.Add(rootNode); - var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel != 4).ToList(); - if (alllist.Count() > 0) - { - var onelist = alllist.Where(x => x.PreRunLevel == 1).ToList(); - - foreach (var itemOne in onelist) - { - TreeNode rootOneNode = new TreeNode(); - rootOneNode.NodeID = itemOne.PreRunId; - rootOneNode.Text = itemOne.PreRunName; - rootOneNode.ToolTip = itemOne.PreRunName; - rootOneNode.CommandName = ""; - rootOneNode.EnableClickEvent = true; - rootOneNode.EnableExpandEvent = false; - rootNode.Nodes.Add(rootOneNode); - rootOneNode.Expanded = true; - var twolist = alllist.Where(x => x.PreRunLevel == 2 && x.ParentId == itemOne.PreRunId).ToList(); - foreach (var itemTwo in twolist) - { - TreeNode rootTwoNode = new TreeNode(); - rootTwoNode.NodeID = itemOne.PreRunId + "|" + itemTwo.PreRunId; - rootTwoNode.Text = itemTwo.PreRunName; - rootTwoNode.ToolTip = itemTwo.PreRunName; - rootTwoNode.CommandName = ""; - rootTwoNode.EnableClickEvent = true; - rootTwoNode.EnableExpandEvent = false; - rootOneNode.Nodes.Add(rootTwoNode); - rootTwoNode.Expanded = true; - var threelist = alllist.Where(x => x.PreRunLevel == 3 && x.ParentId == itemTwo.PreRunId).ToList(); - foreach (var itemThree in threelist) - { - TreeNode rootThreeNode = new TreeNode(); - rootThreeNode.NodeID = itemOne.PreRunId + "|" + itemTwo.PreRunId + "|" + itemThree.PreRunId; - rootThreeNode.Text = itemThree.PreRunName; - rootThreeNode.ToolTip = itemThree.PreRunName; - rootThreeNode.CommandName = ""; - rootThreeNode.EnableClickEvent = true; - rootThreeNode.EnableExpandEvent = false; - rootTwoNode.Nodes.Add(rootThreeNode); - rootThreeNode.Expanded = true; - } - } - } - } - } - - /// - /// 点击TreeView - /// - protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) - { - this.BindGrid(); - } - - #endregion - #region 绑定数据 /// @@ -107,42 +35,42 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// public void BindGrid() { + var years = DateTime.Now.Year; string strSql = @"select a.RunningId,a.ProjectId,project.ProjectName as ProjectName,a.InstallationId,a.ProcessesId,a.SystemId,inst.PreRunName as InstallationName,proce.PreRunName as ProcessesName,syst.PreRunName as SystemName,a.JobNo,a.ShiftType,(case a.ShiftType when 1 then '白班' else '夜班' end) as ShiftTypeName,a.ShiftUser,shiftuser.UserName as ShiftUserName,a.SuccessionUser,successuser.UserName as SuccessionUserName,a.StartData,a.EndData,a.AddUser,a.AddTime,a.Sort from Running_LogManagement as a inner join Sys_User as shiftuser on shiftuser.UserId=a.ShiftUser inner join Sys_User as successuser on successuser.UserId=a.SuccessionUser inner join Base_Project as project on project.ProjectId=a.ProjectId inner join PreRun_SysDevice as inst on inst.PreRunId=a.InstallationId inner join PreRun_SysDevice as proce on proce.PreRunId=a.ProcessesId inner join PreRun_SysDevice as syst on syst.PreRunId=a.SystemId where a.ProjectId=@ProjectId "; List listStr = new List(); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); - if (this.tvControlItem.SelectedNodeID.Split('|').Length > 0) + if (!string.IsNullOrWhiteSpace(txtStartData.Text)) { - var installationId = this.tvControlItem.SelectedNodeID.Split('|').First(); - if (installationId != "0" && !string.IsNullOrWhiteSpace(installationId)) - { - strSql += " and a.InstallationId=@InstallationId"; - listStr.Add(new SqlParameter("@InstallationId", installationId)); - } + strSql += " and a.StartData>=@StartData"; + listStr.Add(new SqlParameter("@StartData", DateTime.Parse(txtStartData.Text).ToString("yyyy-MM-dd") + " 00:00:00")); + years = DateTime.Parse(txtStartData.Text).Year; } - if (this.tvControlItem.SelectedNodeID.Split('|').Length > 1) + if (!string.IsNullOrWhiteSpace(txtEndData.Text)) { - var processesId = this.tvControlItem.SelectedNodeID.Split('|')[1]; - strSql += " and a.ProcessesId=@ProcessesId"; - listStr.Add(new SqlParameter("@ProcessesId", processesId)); - } - if (this.tvControlItem.SelectedNodeID.Split('|').Length > 2) - { - var systemId = this.tvControlItem.SelectedNodeID.Split('|').Last(); - strSql += " and a.SystemId=@SystemId"; - listStr.Add(new SqlParameter("@SystemId", systemId)); + strSql += " and a.EndData<=@EndData"; + listStr.Add(new SqlParameter("@EndData", DateTime.Parse(txtEndData.Text).ToString("yyyy-MM-dd") + " 23:59:59")); } if (!string.IsNullOrWhiteSpace(ddlShiftType.SelectedValue)) { strSql += " and a.ShiftType=@ShiftType"; listStr.Add(new SqlParameter("@ShiftType", ddlShiftType.SelectedValue)); } - strSql += " order by a.AddTime asc"; + strSql += " order by inst.PreRunLevel,inst.Sort,proce.Sort,syst.Sort asc"; SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); + if (Funs.DB.Running_LogManagement.Count(x => x.StartData.Value.Year == years) > 0) + { + var minTime = Funs.DB.Running_LogManagement.Where(x => x.StartData.Value.Year == years).Min(m => m.StartData); + lblminTime.Text = $"{years}年日志最小日期:{minTime.Value.ToString("yyyy-MM-dd")}"; + } + else + { + lblminTime.Text = $"{years}年无日志信息"; + } } /// diff --git a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.designer.cs b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.designer.cs index 757b5e83..96b43d03 100644 --- a/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/TestRun/ProduceTestRun/RunningLogManagementList.aspx.designer.cs @@ -41,24 +41,6 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected global::FineUIPro.Panel Panel1; - /// - /// panelLeftRegion 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Panel panelLeftRegion; - - /// - /// tvControlItem 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Tree tvControlItem; - /// /// Grid1 控件。 /// @@ -86,6 +68,24 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected global::FineUIPro.DropDownList ddlShiftType; + /// + /// txtStartData 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtStartData; + + /// + /// txtEndData 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtEndData; + /// /// btnQuery 控件。 /// @@ -95,6 +95,24 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun /// protected global::FineUIPro.Button btnQuery; + /// + /// Toolbar2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar2; + + /// + /// lblminTime 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Label lblminTime; + /// /// btnAdd 控件。 ///