| 
									
										
										
										
											2023-07-28 11:14:32 +08:00
										 |  |  |  | using BLL; | 
					
						
							|  |  |  |  | using Model; | 
					
						
							|  |  |  |  | using Newtonsoft.Json.Linq; | 
					
						
							|  |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using System.Data; | 
					
						
							|  |  |  |  | using System.Data.SqlClient; | 
					
						
							|  |  |  |  | using System.Linq; | 
					
						
							|  |  |  |  | using System.Web; | 
					
						
							|  |  |  |  | using System.Web.UI; | 
					
						
							|  |  |  |  | using System.Web.UI.WebControls; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace FineUIPro.Web.TestRun.BeforeTestRun | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     public partial class InspectTemplate : PageBase | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         protected void Page_Load(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (!IsPostBack) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 this.InitTreeMenu();//加载树 | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         #region 数绑定 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 加载树 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         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); | 
					
						
							| 
									
										
										
										
											2023-12-20 15:48:05 +08:00
										 |  |  |  |             var list = Funs.DB.PreRun_WorkPackage.Where(a => a.SpecialWorkPack == 0).OrderBy(x => x.Sort).ToList(); | 
					
						
							| 
									
										
										
										
											2023-07-28 11:14:32 +08:00
										 |  |  |  |             foreach (var item in list) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 TreeNode rootUnitNode = new TreeNode();//定义根节点 | 
					
						
							|  |  |  |  |                 rootUnitNode.NodeID = item.WorkPackId; | 
					
						
							| 
									
										
										
										
											2023-08-04 11:19:37 +08:00
										 |  |  |  |                 rootUnitNode.Text = item.WorkPackName; | 
					
						
							| 
									
										
										
										
											2023-07-28 11:14:32 +08:00
										 |  |  |  |                 rootUnitNode.ToolTip = item.WorkPackName; | 
					
						
							|  |  |  |  |                 rootUnitNode.CommandName = ""; | 
					
						
							|  |  |  |  |                 rootUnitNode.EnableClickEvent = true; | 
					
						
							|  |  |  |  |                 rootUnitNode.EnableExpandEvent = true; | 
					
						
							|  |  |  |  |                 rootUnitNode.Expanded = true; | 
					
						
							|  |  |  |  |                 rootNode.Nodes.Add(rootUnitNode); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 点击TreeView | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             this.BindGrid(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         #region 数据绑定 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 绑定数据 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         public void BindGrid() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             string strSql = @"select * from PreRun_WorkInspectTemplate where WorkPackId=@WorkPackId "; | 
					
						
							|  |  |  |  |             List<SqlParameter> listStr = new List<SqlParameter>(); | 
					
						
							|  |  |  |  |             listStr.Add(new SqlParameter("@WorkPackId", this.tvControlItem.SelectedNodeID)); | 
					
						
							|  |  |  |  |             if (!string.IsNullOrWhiteSpace(txtsWorkInspectName.Text)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 strSql += "and WorkInspectName like '%" + txtsWorkInspectName.Text + "%'"; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             strSql += "  order by 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(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 搜索 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void btnSearch_Click(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             BindGrid(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 分页 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Grid1.PageIndex = e.NewPageIndex; | 
					
						
							|  |  |  |  |             BindGrid(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 排序 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void Grid1_Sort(object sender, GridSortEventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Grid1.SortDirection = e.SortDirection; | 
					
						
							|  |  |  |  |             Grid1.SortField = e.SortField; | 
					
						
							|  |  |  |  |             BindGrid(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 分页下拉框事件 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); | 
					
						
							|  |  |  |  |             BindGrid(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 行按钮事件 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (e.CommandName == "Delete") | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 string rowID = e.RowID; | 
					
						
							|  |  |  |  |                 var model = Funs.DB.PreRun_WorkInspectTemplate.FirstOrDefault(p => p.WorkInspectId == rowID); | 
					
						
							|  |  |  |  |                 if (model != null) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Funs.DB.PreRun_WorkInspectTemplate.DeleteOnSubmit(model); | 
					
						
							|  |  |  |  |                     Funs.DB.SubmitChanges(); | 
					
						
							|  |  |  |  |                     BindGrid(); | 
					
						
							|  |  |  |  |                     ShowNotify("删除成功!"); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 else | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     ShowNotify("删除错误!"); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 保存 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void btnSave_Click(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             try | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 JArray mergedData = Grid1.GetMergedData(); | 
					
						
							|  |  |  |  |                 foreach (JObject mergedRow in mergedData) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     string status = mergedRow.Value<string>("status"); | 
					
						
							|  |  |  |  |                     JObject values = mergedRow.Value<JObject>("values"); | 
					
						
							|  |  |  |  |                     int i = mergedRow.Value<int>("index"); | 
					
						
							|  |  |  |  |                     var rowid = this.Grid1.Rows[i].DataKeys[0].ToString(); | 
					
						
							|  |  |  |  |                     var add = false; | 
					
						
							|  |  |  |  |                     PreRun_WorkInspectTemplate model = Funs.DB.PreRun_WorkInspectTemplate.FirstOrDefault(x => x.WorkInspectId == rowid); | 
					
						
							|  |  |  |  |                     if (model == null) | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         add = true; | 
					
						
							|  |  |  |  |                         model = new PreRun_WorkInspectTemplate(); | 
					
						
							|  |  |  |  |                         model.WorkInspectId = Guid.NewGuid().ToString(); | 
					
						
							|  |  |  |  |                         model.AddUser = this.CurrUser.UserId; | 
					
						
							|  |  |  |  |                         model.AddTime = DateTime.Now; | 
					
						
							|  |  |  |  |                         model.Sort = i; | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                     model.WorkPackId = this.tvControlItem.SelectedNodeID; | 
					
						
							|  |  |  |  |                     model.WorkInspectName = values.Value<string>("WorkInspectName"); | 
					
						
							|  |  |  |  |                     model.Remark = values.Value<string>("Remark"); | 
					
						
							|  |  |  |  |                     if (add) Funs.DB.PreRun_WorkInspectTemplate.InsertOnSubmit(model); | 
					
						
							|  |  |  |  |                     Funs.DB.SubmitChanges(); | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 BindGrid(); | 
					
						
							|  |  |  |  |                 ShowNotify("修改成功!"); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             catch (Exception ex) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ShowNotify(ex.Message, MessageBoxIcon.Error); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 新增 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void btnAdd_Click(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (string.IsNullOrWhiteSpace(this.tvControlItem.SelectedNodeID)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ShowNotify("请选择工作包!", MessageBoxIcon.Warning); | 
					
						
							|  |  |  |  |                 return; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             this.hidSelectedNodeID.Text = string.Empty; | 
					
						
							|  |  |  |  |             PageContext.RegisterStartupScript(Window1.GetSaveStateReference(hidSelectedNodeID.ClientID) | 
					
						
							|  |  |  |  |                            + Window1.GetShowReference($"InspectTemplateEdit.aspx?WorkInspectId=&WorkPackId={this.tvControlItem.SelectedNodeID}", "新增")); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 编辑 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void btnEdit_Click(object sender, EventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (Grid1.SelectedRowIndexArray.Length == 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 ShowNotify("请选择一条数据!", MessageBoxIcon.Warning); | 
					
						
							|  |  |  |  |                 return; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             var rowIndex = Grid1.SelectedRowIndex; | 
					
						
							|  |  |  |  |             var rowId = Grid1.DataKeys[rowIndex][0].ToString(); | 
					
						
							|  |  |  |  |             var workPackId = Grid1.DataKeys[rowIndex][1].ToString(); | 
					
						
							|  |  |  |  |             this.hidSelectedNodeID.Text = string.Empty; | 
					
						
							|  |  |  |  |             PageContext.RegisterStartupScript(Window1.GetSaveStateReference(hidSelectedNodeID.ClientID) | 
					
						
							|  |  |  |  |                            + Window1.GetShowReference($"InspectTemplateEdit.aspx?WorkInspectId={rowId}&WorkPackId={workPackId}", "编辑")); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 新增/编辑关闭 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         protected void Window1_Close(object sender, WindowCloseEventArgs e) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (!string.IsNullOrWhiteSpace(hidSelectedNodeID.Text)) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 this.tvControlItem.SelectedNodeID = hidSelectedNodeID.Text; | 
					
						
							|  |  |  |  |                 BindGrid(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |