297 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			297 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Data; | |||
|  | using System.Linq; | |||
|  | using BLL; | |||
|  | 
 | |||
|  | namespace FineUIPro.Web.HJGL.HotProcessHard | |||
|  | { | |||
|  |     public partial class HardTrustItemEdit : PageBase | |||
|  |     { | |||
|  |         #region 定义项 | |||
|  |         /// <summary> | |||
|  |         /// 单位主键 | |||
|  |         /// </summary> | |||
|  |         public string UnitId | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["UnitId"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["UnitId"] = value; | |||
|  |             } | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// 装置主键 | |||
|  |         /// </summary> | |||
|  |         public string UnitWorkId | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["UnitWorkId"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["UnitWorkId"] = value; | |||
|  |             } | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// 焊口主键 | |||
|  |         /// </summary> | |||
|  |         public string WeldJointId | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["WeldJointId"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["WeldJointId"] = value; | |||
|  |             } | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// 硬度委托主键 | |||
|  |         /// </summary> | |||
|  |         public string HardTrustID | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["HardTrustID"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["HardTrustID"] = value; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 被选择项列表 | |||
|  |         /// </summary> | |||
|  |         public List<string> SelectedList | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (List<string>)ViewState["SelectedList"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["SelectedList"] = value; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 加载页面 | |||
|  |         /// <summary> | |||
|  |         /// 加载页面 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void Page_Load(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (!IsPostBack) | |||
|  |             { | |||
|  |                 this.SelectedList = new List<string>(); | |||
|  |                 //this.NoSelectedList = new List<string>(); | |||
|  | 
 | |||
|  |                 string strList = Request.Params["strList"]; | |||
|  |                 List<string> list = Funs.GetStrListByStr(strList, '|'); | |||
|  |                 if (list.Count() == 3) | |||
|  |                 { | |||
|  |                     this.UnitWorkId = list[0]; | |||
|  |                     this.UnitId = list[1]; | |||
|  |                     this.HardTrustID = list[2]; | |||
|  |                 } | |||
|  |                 this.InitTreeMenu();//加载树 | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 加载树 | |||
|  |         /// <summary> | |||
|  |         /// 加载树 | |||
|  |         /// </summary> | |||
|  |         private void InitTreeMenu() | |||
|  |         { | |||
|  |             this.tvControlItem.Nodes.Clear(); | |||
|  |             TreeNode rootNode = new TreeNode(); | |||
|  |             rootNode.Text = "管线号"; | |||
|  |             rootNode.NodeID = "0"; | |||
|  |             rootNode.Expanded = true; | |||
|  |             this.tvControlItem.Nodes.Add(rootNode); | |||
|  |             ///根据已经热处理且需要硬度检测且未进行硬度检测的焊口获取管线id集合 | |||
|  |             var pipelineIds = (from x in Funs.DB.HJGL_HotProess_TrustItem | |||
|  |                                join y in Funs.DB.HJGL_WeldJoint | |||
|  |                                on x.WeldJointId equals y.WeldJointId | |||
|  |                                join z in Funs.DB.HJGL_Pipeline | |||
|  |                                on y.PipelineId equals z.PipelineId | |||
|  |                                where z.UnitWorkId == this.UnitWorkId && | |||
|  |                                z.UnitId == this.UnitId && x.IsHardness == true && x.IsTrust == null | |||
|  |                                select y.PipelineId).Distinct().ToList(); | |||
|  | 
 | |||
|  |             var pipelines = (from x in Funs.DB.HJGL_Pipeline | |||
|  |                              where x.UnitWorkId == this.UnitWorkId && x.UnitId == this.UnitId | |||
|  |                              orderby x.PipelineCode | |||
|  |                              select x).ToList(); | |||
|  |             pipelines = pipelines.Where(e => pipelineIds.Contains(e.PipelineId)).ToList(); | |||
|  |             if (!string.IsNullOrEmpty(this.txtPipelineCode.Text)) | |||
|  |             { | |||
|  |                 pipelines = (from x in pipelines where x.PipelineCode.Contains(this.txtPipelineCode.Text.Trim()) orderby x.PipelineCode select x).ToList(); | |||
|  |             } | |||
|  | 
 | |||
|  |             foreach (var item in pipelines) | |||
|  |             { | |||
|  |                 TreeNode newNode = new TreeNode(); | |||
|  |                 newNode.Text = item.PipelineCode; | |||
|  |                 newNode.NodeID = item.PipelineId; | |||
|  |                 newNode.ToolTip = item.PipelineCode; | |||
|  |                 newNode.EnableClickEvent = true; | |||
|  |                 rootNode.Nodes.Add(newNode); | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 数据绑定 | |||
|  |         /// <summary> | |||
|  |         /// 数据绑定 | |||
|  |         /// </summary> | |||
|  |         private void BindGrid() | |||
|  |         { | |||
|  |             string pipelineId = this.tvControlItem.SelectedNodeID; | |||
|  | 
 | |||
|  |             List<Model.View_HJGL_Hard_TrustItem> toDoMatterList = BLL.Hard_TrustService.GetHardTrustFind(this.UnitWorkId, this.HardTrustID, pipelineId); | |||
|  |             string weldJointIds = Request.Params["weldJointIds"]; | |||
|  |             if (!string.IsNullOrEmpty(weldJointIds)) | |||
|  |             { | |||
|  |                 string[] weldJoints = weldJointIds.Split('|'); | |||
|  |                 foreach (string weldJointId in weldJoints) | |||
|  |                 { | |||
|  |                     Model.View_HJGL_Hard_TrustItem item = toDoMatterList.FirstOrDefault(e => e.WeldJointId == weldJointId); | |||
|  |                     if (item != null) | |||
|  |                     { | |||
|  |                         toDoMatterList.Remove(item); | |||
|  |                     } | |||
|  |                 } | |||
|  |             } | |||
|  | 
 | |||
|  |             DataTable tb = this.LINQToDataTable(toDoMatterList); | |||
|  |             // 2.获取当前分页数据 | |||
|  |             //var table = this.GetPagedDataTable(GridNewDynamic, tb1); | |||
|  |             Grid1.RecordCount = tb.Rows.Count; | |||
|  |             tb = GetFilteredTable(Grid1.FilteredData, tb); | |||
|  |             var table = this.GetPagedDataTable(Grid1, tb); | |||
|  | 
 | |||
|  |             Grid1.DataSource = table; | |||
|  |             Grid1.DataBind(); | |||
|  | 
 | |||
|  | 
 | |||
|  |             //string[] arr = new string[this.Grid1.Rows.Count]; | |||
|  |             //int a = 0; | |||
|  |             //for (int i = 0; i < this.Grid1.Rows.Count; i++) | |||
|  |             //{ | |||
|  |             //    string rowId = this.Grid1.Rows[i].DataKeys[0].ToString(); | |||
|  |             //    if (weldJointIds.Contains(rowId)) | |||
|  |             //    { | |||
|  |             //        arr[a] = rowId; | |||
|  |             //    } | |||
|  |             //    a++; | |||
|  |             //} | |||
|  |             //Grid1.SelectedRowIDArray = arr; | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 管线查询 | |||
|  |         /// <summary> | |||
|  |         /// 查询 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void btnQuery_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             this.InitTreeMenu(); | |||
|  |             this.BindGrid(); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 点击TreeView | |||
|  |         /// <summary> | |||
|  |         /// 点击TreeView | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) | |||
|  |         { | |||
|  |             string[] selectRowId = Grid1.SelectedRowIDArray; | |||
|  |             for (int i = 0; i < this.Grid1.Rows.Count; i++) | |||
|  |             { | |||
|  |                 string rowId = this.Grid1.Rows[i].DataKeys[0].ToString(); | |||
|  |                 string id = this.Grid1.Rows[i].DataKeys[0].ToString() + "," + this.Grid1.Rows[i].DataKeys[1].ToString(); | |||
|  |                 if (selectRowId.Contains(rowId)) | |||
|  |                 { | |||
|  |                     SelectedList.Add(id); | |||
|  |                 } | |||
|  |             } | |||
|  |             this.BindGrid(); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 排序 | |||
|  |         /// <summary> | |||
|  |         /// 排序 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void Grid1_Sort(object sender, GridSortEventArgs e) | |||
|  |         { | |||
|  |             this.BindGrid(); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 提交按钮 | |||
|  |         /// <summary> | |||
|  |         /// 提交按钮 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void btnAccept_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             string itemsString = string.Empty; | |||
|  |             string[] selectRowId = Grid1.SelectedRowIDArray; | |||
|  |             for (int i = 0; i < this.Grid1.Rows.Count; i++) | |||
|  |             { | |||
|  |                 string rowId = this.Grid1.Rows[i].DataKeys[0].ToString(); | |||
|  |                 string id = this.Grid1.Rows[i].DataKeys[0].ToString() + "," + this.Grid1.Rows[i].DataKeys[1].ToString(); | |||
|  |                 if (selectRowId.Contains(rowId)) | |||
|  |                 { | |||
|  |                     SelectedList.Add(id); | |||
|  |                 } | |||
|  | 
 | |||
|  |             } | |||
|  |             string weldJointIds = Request.Params["weldJointIds"]; | |||
|  |             if (!string.IsNullOrEmpty(weldJointIds)) | |||
|  |             { | |||
|  |                 string[] jots = weldJointIds.Split('|'); | |||
|  |                 foreach (string jotId in jots) | |||
|  |                 { | |||
|  |                     SelectedList.Add(jotId); | |||
|  |                 } | |||
|  |             } | |||
|  |             foreach (var item in SelectedList) | |||
|  |             { | |||
|  |                 if (!itemsString.Contains(item)) | |||
|  |                 { | |||
|  |                     itemsString += item + "|"; | |||
|  |                 } | |||
|  |             } | |||
|  |             if (!string.IsNullOrEmpty(itemsString)) | |||
|  |             { | |||
|  |                 itemsString = itemsString.Substring(0, itemsString.LastIndexOf("|")); | |||
|  |             } | |||
|  |             PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(itemsString) | |||
|  |                     + ActiveWindow.GetHidePostBackReference()); | |||
|  |         } | |||
|  |         #endregion | |||
|  |     } | |||
|  | } |