using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Lims.Port.封装类.方法; using Core.StlMes.Client.Lims.Port.数据管理.实体类; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Core.StlMes.Client.Lims.Port { public partial class FrmMilBatchSampleNew : FrmBase { public FrmMilBatchSampleNew() { InitializeComponent(); } private string plineCode = "";//产线 List dtPlanM = null;//检验计划主信息 List dtPlanDetial = null;//检验计划从信息 List dtPlanM1 = null;//分批详细方案 int minBatchNum = 0;//最小分批数量 private string batchNoZ = "";//性能批号产线标识 private void FrmMilBatchSampleNew_Load(object sender, EventArgs e) { DateTime now = DateTime.Now; DateTime dt1 = new DateTime(now.Year, now.Month, 1);//当月第一天 DateTime dt2 = dt1.AddMonths(1).AddDays(-1);//当月最后一天 this.RegStartTime.Value = DateTime.Parse(dt1.ToString("yyyy-MM-dd") + " 00:00:00"); this.RegEndTime.Value = DateTime.Parse(dt2.ToString("yyyy-MM-dd") + " 23:59:59"); EntityHelper.ShowGridCaption(this.ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid5.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid6.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid7.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid9.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid10.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid12.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid13.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid15.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid16.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid17.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid18.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid19.DisplayLayout.Bands[0]); plineCode = PublicPort.GetPCode(this.ValidDataPurviewIds, ob); } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": doQueryPlan(); break; case"QueryRepeate": doQueryRepeate(); break; case "BatchSeting": batchSeting(); break; case "CancelBatchSeting": cancelBatchSeting(); break; case"OprocessBatch": oprocessBatch(); break; case "CancelOprocessBatch": cancelBatch(); break; case"GetSample": getSample(); break; case"CancelGetSample": cancelGetSample(); break; case "Confirm": confirm(); break; case "CancelConfirm": cancelConfirm(); break; case "ReGetSample": reGetSample(); break; case "CancelReGetSample": cancelReGetSample(); break; case"RepeateFrim": repeateFrim(); break; case "CancelRepeateFrim": cancelRepeateFrim(); break; case"Print": printTrust(); break; case"PrintLable": printLable(); break; case"PrintReLable": printReLable(); break; case "PrintRe": printReTrust(); break; case "Close": close(); break; } } /// /// 撤销复取样 /// private void cancelReGetSample() { this.ultraGrid15.UpdateData(); this.ultraGrid17.UpdateData(); UltraGridRow uRow = this.ultraGrid15.ActiveRow; List lists = portMilBatchSampleResultEntityBindingSource2.DataSource as List; if (uRow == null || lists.Count <= 0) { return; } PipeCheckconsignNoqualifiedEntity milPlans = (PipeCheckconsignNoqualifiedEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); List portMilEntity = lists.Where(p => p.ResamplePipeLenA != "" || p.ResamplePipeLenB != "").Select(JSONFormat.Format).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelReGetSample"; ccp.ServerParams = new object[] { milPlanEntity, portMilEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryRepeate(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 复取样 /// private void reGetSample() { this.ultraGrid15.UpdateData(); this.ultraGrid17.UpdateData(); UltraGridRow uRow = this.ultraGrid15.ActiveRow; List lists = portMilBatchSampleResultEntityBindingSource2.DataSource as List; if (uRow == null || lists.Count <= 0) { return; } if (lists.Any(p => p.Chk == true && p.ResamplePipeLenA == "" && p.ResamplePipeLenB == "")) { MessageUtil.ShowTips("还有已选做样管未输入样管长度的管材,不允许进行复取样完成!"); return; } if (lists.Any(p => p.Chk == true && !StringUtil.IsInt32(p.ResamplePipeLenA) && !StringUtil.IsInt32(p.ResamplePipeLenB))) { MessageUtil.ShowTips("样管长度单位为毫米,请输入整数!"); return; } PipeCheckconsignNoqualifiedEntity milPlans = (PipeCheckconsignNoqualifiedEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); List portMilEntity = lists.Where(p=>p.Chk).Select(JSONFormat.Format).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "reGetSample"; ccp.ServerParams = new object[] { milPlanEntity, portMilEntity, UserInfo.GetUserName(), UserInfo.GetUserGroup(), UserInfo.GetUserOrder() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("复取样完成!")) { doQueryRepeate(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 查询可复取样信息 /// private void doQueryRepeate() { string startTime = ""; string endTim = ""; string lotNo = ""; string judgeNo = ""; if (this.chkRegTime.Checked) { startTime = this.RegStartTime.Value.ToString(); endTim = this.RegEndTime.Value.ToString(); } if (chkLotNo.Checked && this.txtLotNo.Text.Trim() != "") { lotNo = this.txtLotNo.Text; } if (chkJudgeNo.Checked && this.txtJudgeNo.Text.Trim() != "") { judgeNo = this.txtJudgeNo.Text; } ArrayList parm = new ArrayList(); parm.Add(startTime); parm.Add(endTim); parm.Add(lotNo); parm.Add(judgeNo); if(ultraTabControl1.SelectedTab.Key == "4") { parm.Add("0"); } else if (ultraTabControl1.SelectedTab.Key == "5") { parm.Add("1"); } List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRepeate", new object[] { parm, plineCode }, this.ob); if (ultraTabControl1.SelectedTab.Key == "4") { pipeCheckconsignNoqualifiedEntityBindingSource.DataSource = listSource; } else if (ultraTabControl1.SelectedTab.Key == "5") { pipeCheckconsignNoqualifiedEntityBindingSource3.DataSource = listSource; } } /// /// 打印标签 /// private void printLable() { this.ultraGrid12.UpdateData(); UltraGridRow uRow = this.ultraGrid12.ActiveRow; if (uRow == null) return; string checkNo = uRow.Cells["CheckNo"].Text.Trim(); string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepEntrustLabel.cpt" + "&CHECK_NO=" + checkNo + "&JUDGE_STOVE_NO=" + uRow.Cells["JudgeStoveNoDesc"].Text.Trim() + "&PROCESS_CODE=D"; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "样管号标签"; fBug.Show(); } /// /// 打印复样标签 /// private void printReLable() { this.ultraGrid18.UpdateData(); UltraGridRow uRow = this.ultraGrid18.ActiveRow; if (uRow == null) return; string checkNo = "F" + uRow.Cells["CheckNo"].Text.Trim(); string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepEntrustLabel.cpt" + "&CHECK_NO=" + checkNo; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "样管号标签"; fBug.Show(); } /// /// 打印 /// private void printTrust() { this.ultraGrid12.UpdateData(); UltraGridRow uRow = this.ultraGrid12.ActiveRow; if (uRow == null) return; string checkNo = uRow.Cells["CheckNo"].Text.Trim(); string orderNo = uRow.Cells["ContractNo"].Text.Trim(); string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLimsPortCheckConsignOrder.cpt&&format=pdf&__embed__=true" + "&CHECK_NO=" + checkNo + "&orderNo=" + orderNo; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "检验委托单"; fBug.Show(); } /// /// 打印复样委托单 /// private void printReTrust() { this.ultraGrid18.UpdateData(); UltraGridRow uRow = this.ultraGrid18.ActiveRow; if (uRow == null) return; string checkNo = "F" + uRow.Cells["CheckNo"].Text.Trim(); string orderNo = uRow.Cells["ContractNo"].Text.Trim(); string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLimsPortCheckConsignOrder.cpt&&format=pdf&__embed__=true" + "&CHECK_NO=" + checkNo + "&orderNo=" + orderNo; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "检验委托单"; fBug.Show(); } private void close() { this.Close(); } /// /// 分批取样完成 /// private void batchSeting() { this.ultraGrid1.UpdateData(); this.ultraGrid3.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (uRow == null || lists.Count <= 0) { return; } if (lists.Any(p => p.BatchNo == "")) { MessageUtil.ShowTips("还有未分配批号管材,不允许进行分批完成!"); return; } if (lists.Any(p => p.Chk == true && p.SamplePipeLenA == "" && p.SamplePipeLenB == "")) { MessageUtil.ShowTips("还有已选做样管未输入样管长度的管材,不允许进行分批完成!"); return; } if (lists.Any(p => p.Chk == true && !StringUtil.IsInt32(p.SamplePipeLenA) && !StringUtil.IsInt32(p.SamplePipeLenB))) { MessageUtil.ShowTips("样管长度单位为毫米,请输入整数!"); return; } MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); List portMilEntity = lists.Select(JSONFormat.Format).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "batchSeting"; ccp.ServerParams = new object[] { milPlanEntity, portMilEntity,UserInfo.GetUserName(),UserInfo.GetUserGroup(),UserInfo.GetUserOrder() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("分批取样完成!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 分批完成 /// private void oprocessBatch() { this.ultraGrid1.UpdateData(); this.ultraGrid3.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (uRow == null || lists.Count <= 0) { return; } if (lists.Any(p => p.BatchNo == "")) { MessageUtil.ShowTips("还有未分配批号管材,不允许进行分批完成!"); return; } MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); List portMilEntity = lists.Select(JSONFormat.Format).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "oprocessBatch"; ccp.ServerParams = new object[] { milPlanEntity, portMilEntity, UserInfo.GetUserName(), UserInfo.GetUserGroup(), UserInfo.GetUserOrder() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("分批完成!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销分批 /// private void cancelBatch() { this.ultraGrid1.UpdateData(); this.ultraGrid3.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; if (uRow == null) return; MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelBatch"; ccp.ServerParams = new object[] { milPlanEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销分批取样 /// private void cancelBatchSeting() { this.ultraGrid5.UpdateData(); UltraGridRow uRow = this.ultraGrid5.ActiveRow; if (uRow == null) return; MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelBatchSeting"; ccp.ServerParams = new object[] { milPlanEntity}; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销取样完成 /// private void cancelGetSample() { this.ultraGrid5.UpdateData(); UltraGridRow uRow = this.ultraGrid5.ActiveRow; if (uRow == null) return; MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelGetSample"; ccp.ServerParams = new object[] { milPlanEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 取样完成 /// private void getSample() { this.ultraGrid1.UpdateData(); this.ultraGrid3.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (uRow == null || lists.Count <= 0) { return; } if (lists.Any(p => p.Chk == true && p.SamplePipeLenA == "" && p.SamplePipeLenB == "")) { MessageUtil.ShowTips("还有已选做样管未输入样管长度的管材,不允许进行取样完成!"); return; } if (lists.Any(p => p.Chk == true && !StringUtil.IsInt32(p.SamplePipeLenA) && !StringUtil.IsInt32(p.SamplePipeLenB))) { MessageUtil.ShowTips("样管长度单位为毫米,请输入整数!"); return; } MilPlanEntity milPlans = (MilPlanEntity)uRow.ListObject; string milPlanEntity = JSONFormat.Format(milPlans); List portMilEntity = lists.Where(p => p.Chk).Select(JSONFormat.Format).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "getSample"; ccp.ServerParams = new object[] { milPlanEntity, portMilEntity, UserInfo.GetUserName(), UserInfo.GetUserGroup(), UserInfo.GetUserOrder(), this.cmbSampleType.Value.ToString() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("取样完成!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 确认委托 /// private void confirm() { this.ultraGrid9.UpdateData(); this.ultraGrid10.UpdateData(); this.ultraGrid11.UpdateData(); this.ultraGrid22.UpdateData(); string txtRemark = ""; UltraGrid ug = null; DataTable dataTable = null; string craftSource = ""; if (ultraTabControl2.SelectedTab.Key == "0") { ug = ultraGrid11; dataTable = dataTable3; craftSource = "0"; } else if (ultraTabControl2.SelectedTab.Key == "1") { ug = ultraGrid22; dataTable = dataTable5; craftSource = "1"; } UltraGridRow uRow = this.ultraGrid9.ActiveRow; if (uRow == null) return; if (ug.Rows.Count == 0) return; //List chemSource = EntityHelper.GetData( //"com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryChem", new object[] { uRow.Cells["ProPlanId"].Text, uRow.Cells["GxPlanNo"].Text, BaseMethod.getJudgeStoveNo(uRow.Cells["JudgeStoveNo"].Text) }, this.ob);//查询成分详细信息 //List phySource = EntityHelper.GetData( //"com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPhy", new object[] { uRow.Cells["ProPlanId"].Text, uRow.Cells["GxPlanNo"].Text, BaseMethod.getJudgeStoveNo(uRow.Cells["JudgeStoveNo"].Text) }, this.ob);//查询理化详细信息 MilPlanEntity milTity = (MilPlanEntity)uRow.ListObject; milTity.CraftSource = craftSource; string milEntity = JSONFormat.Format(milTity); List> parmList = new List>(); foreach (UltraGridRow row in ug.Rows) { int m = 0; List list = new List(); list.Add(row.Cells["BATCH_NO"].Text); list.Add(row.Cells["MAT_NO"].Text); list.Add(row.Cells["SAMPLE_PIPE_LEN"].Text); list.Add(row.Cells["SAMPLE_POSTION"].Text); for (int j = 5; j < dataTable.Columns.Count; j++) { if (row.Cells[j].Value == "√") { list.Add(row.Cells[j].Column.Key); m = m + 1; } } if (m > 0) { parmList.Add(list); } } List> batchList = parmList.GroupBy(p => p[0]).Select(p => p.FirstOrDefault() ).ToList(); if (dtPlanM != null) { if (dtPlanM.Any()) { txtRemark = dtPlanM.Select(p => p.Remark).Distinct().Aggregate((a, b) => a + " " + b); } } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "confirm"; ccp.ServerParams = new object[] { milEntity, parmList, batchList, UserInfo.GetUserName(), UserInfo.GetDepartment(), txtRemark }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("委托成功!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 复取样委托 /// private void repeateFrim() { this.ultraGrid18.UpdateData(); this.ultraGrid20.UpdateData(); UltraGridRow uRow = this.ultraGrid18.ActiveRow; if (uRow == null) return; PipeCheckconsignNoqualifiedEntity pipeCheckEntity = (PipeCheckconsignNoqualifiedEntity)uRow.ListObject; string pipeTity = JSONFormat.Format(pipeCheckEntity); List> parmList = new List>(); foreach (UltraGridRow row in this.ultraGrid20.Rows) { List list = new List(); list.Add(row.Cells["BATCH_NO"].Text); list.Add(row.Cells["MAT_NO"].Text); list.Add(row.Cells["SAMPLE_PIPE_LEN"].Text); list.Add(row.Cells["SAMPLE_POSTION"].Text); for (int j = 5; j < dataTable5.Columns.Count; j++) { if (row.Cells[j].Value == "√") { list.Add(row.Cells[j].Column.Key); } } parmList.Add(list); } List> batchList = parmList.GroupBy(p => p[0]).Select(p => p.FirstOrDefault() ).ToList(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "repeateFrim"; ccp.ServerParams = new object[] { pipeTity, parmList, batchList, UserInfo.GetUserName(), UserInfo.GetDepartment() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("复取样委托成功!")) { doQueryRepeate(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 取消确认 /// private void cancelConfirm() { this.ultraGrid12.UpdateData(); UltraGridRow uRow = this.ultraGrid12.ActiveRow; if (uRow == null) return; MilPlanEntity milTity = (MilPlanEntity)uRow.ListObject; milTity.JudgeStoveNo = milTity.JudgeStoveNoDesc + "-01"; string milPlanEntity = JSONFormat.Format(milTity); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelConfirm"; ccp.ServerParams = new object[] { milPlanEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销委托成功!")) { doQueryPlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销复取样委托 /// private void cancelRepeateFrim() { this.ultraGrid18.UpdateData(); UltraGridRow uRow = this.ultraGrid18.ActiveRow; if (uRow == null) return; PipeCheckconsignNoqualifiedEntity pipeNoTity = (PipeCheckconsignNoqualifiedEntity)uRow.ListObject; string pipeNoEntity = JSONFormat.Format(pipeNoTity); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.port.mil.FrmMilBatchSampleNew"; ccp.MethodName = "cancelRepeateFrim"; ccp.ServerParams = new object[] { pipeNoEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销复取样委托成功!")) { doQueryRepeate(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 查询炉计划 /// private void doQueryPlan() { string startTime = ""; string endTim = ""; string lotNo = ""; string judgeNo = ""; List listSource = null; if (this.chkRegTime.Checked) { startTime = this.RegStartTime.Value.ToString(); endTim = this.RegEndTime.Value.ToString(); } if (chkLotNo.Checked && this.txtLotNo.Text.Trim() != "") { lotNo = this.txtLotNo.Text; } if (chkJudgeNo.Checked && this.txtJudgeNo.Text.Trim() != "") { judgeNo = this.txtJudgeNo.Text; } ArrayList parm = new ArrayList(); parm.Add(startTime); parm.Add(endTim); parm.Add(lotNo); parm.Add(judgeNo); if (this.ultraTabControl1.SelectedTab.Key == "0") { parm.Add("0"); listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPlan", new object[] { parm, plineCode }, this.ob); } else if(this.ultraTabControl1.SelectedTab.Key == "1") { parm.Add("2"); listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPlan", new object[] { parm, plineCode }, this.ob); } else if (this.ultraTabControl1.SelectedTab.Key == "2") { parm.Add("2"); listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPlan2", new object[] { parm, plineCode }, this.ob); } else if (this.ultraTabControl1.SelectedTab.Key == "3") { parm.Add("3"); listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPipeBaseInfo", new object[] { parm, plineCode }, this.ob); } if (this.ultraTabControl1.SelectedTab.Key == "0") { portMilBatchSampleResultEntityBindingSource.Clear(); MilPlanEntity1bindingSource.Clear(); dataTable1.Clear(); MilPlanEntitybindingSource.DataSource = listSource; } else if (this.ultraTabControl1.SelectedTab.Key == "1") { portMilBatchSampleResultEntityBindingSource1.Clear(); milPlanEntityBindingSource2.Clear(); dataTable2.Clear(); milPlanEntityBindingSource1.DataSource = listSource; } else if (this.ultraTabControl1.SelectedTab.Key == "2") { milPlanEntityBindingSource4.Clear(); dataTable3.Clear(); milPlanEntityBindingSource3.DataSource = listSource; } else if (this.ultraTabControl1.SelectedTab.Key == "3") { milPlanEntityBindingSource6.Clear(); dataTable4.Clear(); milPlanEntityBindingSource5.DataSource = listSource; } } private void chkRegTime_CheckedChanged(object sender, EventArgs e) { this.RegStartTime.Enabled = this.RegEndTime.Enabled = this.chkRegTime.Checked; } private void chkLotNo_CheckedChanged(object sender, EventArgs e) { this.txtLotNo.Enabled = this.chkLotNo.Checked; } private void chkJudgeNo_CheckedChanged(object sender, EventArgs e) { this.txtJudgeNo.Enabled = this.chkJudgeNo.Checked; } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid1.UpdateData(); if (dtPlanDetial != null) { dtPlanDetial.Clear(); } if (dtPlanM != null) { dtPlanM.Clear(); } txt_BatchMax.Text = "0"; UltraGridRow uRow = this.ultraGrid1.ActiveRow; batchNoZ = doQueryBacthPline(uRow); doQueryBasePlan(uRow); doQueryRack(uRow); dtPlanDetial = doQueryCheckPlanDetila(uRow); if (dtPlanDetial != null && dtPlanDetial.Count() > 0) { var s = dtPlanDetial.Where(p => p.Rate == "408601" || p.Rate == "408608").ToList(); if (s.Any()) { dtPlanM = doQueryCheckPlan(uRow, "1"); } else { dtPlanM = doQueryCheckPlan(uRow, "0"); } } ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); if (dtPlanM == null || dtPlanDetial == null || dtPlanM.Count == 0 || dtPlanDetial.Count == 0) { txtBATCH_MIN.Text = ""; txtBATCH_MIN.Text = this.txtPIPE_NUM.Text;//参考批数; return; } //bool isFlag = dtPlanDetial.Any(p => p.Rate == "408607" || p.Rate == "408608" || p.Rate == "408601"); //if (isFlag) //{ //} //else //{ //if (int.Parse(uRow.Cells["IsBatch"].Text) >= 1) //{ // txt_BatchMax.Text = this.ultraGrid4.Rows[0].Cells["NUM"].Text; // txtBATCH_MIN.Text = (Math.Ceiling(double.Parse(this.txtPIPE_NUM.Text) / int.Parse(this.txt_BatchMax.Text))).ToString(); //} //else //{ minBatchNum = dtPlanDetial.Min(p => p.BatchCnt == null ? int.Parse(this.txtPIPE_NUM.Text) : (int)(p.BatchCnt));//检验计划最小分批数量 txt_BatchMax.Text = minBatchNum.ToString();//分批上限 txtREMARK.Text = dtPlanM.Select(p => p.Remark).Distinct().Aggregate((a, b) => a + " " + b); if (minBatchNum == 0) { txtBATCH_MIN.Text = "0"; } else { txtBATCH_MIN.Text = (Math.Ceiling(double.Parse(this.txtPIPE_NUM.Text) / minBatchNum)).ToString();//参考批数 } ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); //} //} } private string doQueryBacthPline(UltraGridRow uRow) { string ss = ""; DataTable ds = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryBacthNo", new object[] { uRow.Cells["PlineCode"].Text }, ob); if (ds.Rows.Count > 0) { ss = ds.Rows[0][0].ToString(); } return ss; } private void initBindTable() { List lists = portMilBatchSampleResultEntityBindingSource1.DataSource as List; dataTable2.Rows.Clear(); if (lists == null || lists.Count <= 0) return; foreach (var list in lists.Where(p => p.BatchNo != "").GroupBy(p => p.BatchNo)) { DataRow newRow; newRow = dataTable2.NewRow(); newRow["PHY_BATCH_NO"] = list.Key; newRow["START_SEQ"] = list.Min(p => p.Seq); newRow["END_SEQ"] = list.Max(p => p.Seq); newRow["NUM"] = list.Count(); newRow["SAMPLE_NUM"] = list.Count(p => p.SamplePipeLenA != "" || p.SamplePipeLenB != ""); dataTable2.Rows.Add(newRow); } ultraGrid8.Update(); } /// /// 自动分批 /// /// /// private void btnAuto_Click(object sender, EventArgs e) { this.ultraGrid4.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; if (uRow == null) return; string target = uRow.Cells["Target"].Text; List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (lists==null || lists.Count<=0) { MessageUtil.ShowTips("不存在有效管号队列,不允许进行分批!"); return; } if (dtPlanM == null || dtPlanM.Count <= 0) { MessageUtil.ShowTips("检验计划未确认,不能自动分批!"); return; } int maxBacthNum = int.Parse(this.txt_BatchMax.Text.ToString3());//分批上限 int maxBacth = dtPlanM.Max(p => p.BatchNo == null ? 1 : (int)(p.BatchNo));//取主表最大方案 string sampleLen = "";//样管长度 string sampleCount = "";//样管数量 //为批号赋值 for (int i = 0; i < int.Parse(this.txtBATCH_MIN.Text);i++) { var list = dtPlanM1.Where(p => p.BatchNo == (i+1 > maxBacth ? maxBacth : i+1)).ToList(); var listA = list.Where(p => p.Position != "401202").ToList();//非B端 //var listA = list.Where(p => p.Position != "401201").ToList(); var listB = list.Where(p => p.Position == "401202").ToList();//B端 int m = 0; for (int k = 0; k < listA.Count; k++) { var crft = listA[k]; int a = 1;//非A端的都只取一个样 /*if (crft.Position.Equals("401201")) { a = (int)crft.SampleCount;//样管数量 }*/ a = (int)crft.SampleCount;//样管数量 8-13 所有的按照工艺取样数量取A端 for (int j = 0; j < a; j++,m++) { if (lists.Count > m + i * maxBacthNum) { lists[m + i * maxBacthNum].SamplePipeLenA = crft.SampleLength.ToString(); lists[m + i * maxBacthNum].PhyCodeGroup = crft.PhyCodeGroup.ToString(); lists[m + i * maxBacthNum].Chk = true; lists[m + i * maxBacthNum].CraftSource = "0"; } } } m = 0; for (int k = 0; k < listB.Count; k++) { var crft = listB[k]; int a = (int)crft.SampleCount;//样管数量 for (int j = 0; j < a; j++, m++) { if (lists.Count > m + i * maxBacthNum) { lists[m + i * maxBacthNum].SamplePipeLenB = crft.SampleLength.ToString(); lists[m + i * maxBacthNum].PhyCodeGroupb = crft.PhyCodeGroup.ToString(); lists[m + i * maxBacthNum].Chk = true; lists[m + i * maxBacthNum].CraftSource = "0"; } } } if (target == "C") { lists.Skip(i * maxBacthNum).Take((i + 1) * maxBacthNum).ToList().ForEach(p => p.BatchNo = batchNoZ + "999"); } else { lists.Skip(i * maxBacthNum).Take((i + 1) * maxBacthNum).ToList().ForEach(p => p.BatchNo = batchNoZ + (i + 1).ToString("000")); } } ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); } /// /// 人工分批 /// /// /// private void btnConfirm_Click(object sender, EventArgs e) { this.ultraGrid4.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if (row == null) return; string target = row.Cells["Target"].Text; ; int sampleNum = 0; if (!StringUtil.IsInt32(this.txt_SampleNum.Text.Trim().ToString3())) { MessageUtil.ShowTips("样管数量需输入正整数!"); return; } else { sampleNum = int.Parse(this.txt_SampleNum.Text.Trim().ToString3()); } if (!StringUtil.IsInt32(txt_BatchMax.Text.ToString3()) || int.Parse(txt_BatchMax.Text.ToString3()) <= 0) { MessageUtil.ShowTips("人工分批输入的分批上限需为正整数!"); return; } List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; var m = lists.Where(p => p.BatchNo == "").ToList();//判断是否还未分配性能批号集合数据 if (m.Count == 0) { return; } int Bathno = 1; for (int k = 0; k < int.Parse(this.txtBATCH_MIN.Text.ToString3()); k++) { int startSeq = int.Parse(ultraSTART_PIPE_NO.Text);//开始序号 int endSeq = int.Parse(ultraEND_PIPE_NO.Text);//结束序号 var lists1 = lists.Where(p => p.BatchNo != "").ToList(); if (lists1.Any()) { Bathno = lists1.Max(p => int.Parse(p.BatchNo.Substring(2, 3))) + 1; } if (target == "C") { m.Take(endSeq - startSeq + 1).ToList().ForEach(p => p.BatchNo = batchNoZ + "999");//赋值批号 } else { m.Take(endSeq - startSeq + 1).ToList().ForEach(p => p.BatchNo = batchNoZ + Bathno.ToString("000"));//赋值批号 } m.Take(sampleNum).ToList().ForEach(p => p.Chk = true); ultraSTART_PIPE_NO.Text = m.First().Seq.ToString();//初始序号 跳过已赋值批号数据 ultraEND_PIPE_NO.Text = m.Take(int.Parse(txt_BatchMax.Text.ToString3())).Last().Seq.ToString();//结束序号 ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); m = lists.Where(p => p.BatchNo == "").ToList();//判断是否还未分配性能批号集合数据 if (m.Count == 0) { return; } } } /// /// 仅分批 /// /// /// private void buttonBatchNo_Click(object sender, EventArgs e) { this.ultraGrid4.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if(row == null)return; string target = row.Cells["Target"].Text; if (!StringUtil.IsInt32(txt_BatchMax.Text.ToString3()) || int.Parse(txt_BatchMax.Text.ToString3()) <= 0) { MessageUtil.ShowTips("人工分批输入的分批上限需为正整数!"); return; } List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; var m = lists.Where(p => p.BatchNo == "").ToList();//判断是否还未分配性能批号集合数据 if (m.Count == 0) { return; } int Bathno = 1; int sampleNum = 0; for (int k = 0; k < int.Parse(this.txtBATCH_MIN.Text.ToString3()); k++) { int startSeq = int.Parse(ultraSTART_PIPE_NO.Text);//开始序号 int endSeq = int.Parse(ultraEND_PIPE_NO.Text);//结束序号 var lists1 = lists.Where(p => p.BatchNo != "").ToList(); if (lists1.Any()) { Bathno = lists1.Max(p => int.Parse(p.BatchNo.Substring(2, 3))) + 1; } if (target == "C") { m.Take(endSeq - startSeq + 1).ToList().ForEach(p => p.BatchNo = batchNoZ + "999");//赋值批号 } else { m.Take(endSeq - startSeq + 1).ToList().ForEach(p => p.BatchNo = batchNoZ + Bathno.ToString("000"));//赋值批号 } m.Take(sampleNum).ToList().ForEach(p => p.Chk = true); ultraSTART_PIPE_NO.Text = m.First().Seq.ToString();//初始序号 跳过已赋值批号数据 ultraEND_PIPE_NO.Text = m.Take(int.Parse(txt_BatchMax.Text.ToString3())).Last().Seq.ToString();//结束序号 ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); m = lists.Where(p => p.BatchNo == "").ToList();//判断是否还未分配性能批号集合数据 if (m.Count == 0) { return; } } } /// /// 仅取样 /// /// /// private void buttonGetSample_Click(object sender, EventArgs e) { this.ultraGrid4.UpdateData(); int sampleNum = 0; List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; var m = lists.Where(p => p.BatchNo != "").ToList();//判断是否还未分配性能批号集合数据 if (m.Count == 0) { return; } if (dtPlanM1.Count() == 0) { if (!StringUtil.IsInt32(this.txt_SampleNum.Text.Trim().ToString3())) { MessageUtil.ShowTips("样管数量需输入正整数!"); return; } if (int.Parse(this.txt_SampleNum.Text.Trim().ToString3()) <= 0) { MessageUtil.ShowTips("取样时每批样管数应大于0"); return; } else { sampleNum = int.Parse(this.txt_SampleNum.Text.Trim().ToString3()); } foreach (var item in lists.GroupBy(p => p.BatchNo)) { item.Take(sampleNum).ToList().ForEach(p => p.Chk = true); } } else { int maxBacthNum = int.Parse(this.ultraGrid4.Rows[0].Cells["NUM"].Text);//分批上限 int maxBacth = dtPlanM.Max(p => p.BatchNo == null ? 1 : (int)(p.BatchNo));//取主表最大方案 for (int i = 0; i < lists.GroupBy(p => p.BatchNo).Count(); i++) { var list = dtPlanM1.Where(p => p.BatchNo == (i + 1 > maxBacth ? maxBacth : i + 1)).ToList(); var listA = list.Where(p => p.Position == "401201").ToList(); var listB = list.Where(p => p.Position == "401202").ToList(); int s = 0; for (int k = 0; k < listA.Count; k++) { var crft = list[k]; int a = (int)crft.SampleCount;//样管数量 for (int j = 0; j < a; j++, s++) { if (lists.Count > s + i * maxBacthNum) { lists[s + i * maxBacthNum].SamplePipeLenA = crft.SampleLength.ToString(); lists[s + i * maxBacthNum].PhyCodeGroup = crft.PhyCodeGroup.ToString(); lists[s + i * maxBacthNum].Chk = true; } } } s = 0; for (int k = 0; k < listB.Count; k++) { var crft = list[k]; int a = (int)crft.SampleCount;//样管数量 for (int j = 0; j < a; j++, s++) { if (lists.Count > s + i * maxBacthNum) { lists[s + i * maxBacthNum].SamplePipeLenB = crft.SampleLength.ToString(); lists[s + i * maxBacthNum].PhyCodeGroupb = crft.PhyCodeGroup.ToString(); lists[s + i * maxBacthNum].Chk = true; } } } } } ultraGrid3.Update(); ultraGrid3.DataBind(); ultraGrid3_CellChange(null, null); } /// /// 查询检验计划子表 /// /// /// private List doQueryCheckPlanDetila(UltraGridRow uRow) { List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryCheckPlanDetial", new object[] { uRow.Cells["OrdLnPk"].Text, uRow.Cells["ImpProcess"].Text, uRow.Cells["CraftSeq"].Text }, this.ob);//查询检验计划主表 return listSource; } /// /// 查询检验计划主表 /// /// private List doQueryCheckPlan(UltraGridRow uRow,string flag) { List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryCheckPlan", new object[] { uRow.Cells["OrdLnPk"].Text, uRow.Cells["ImpProcess"].Text, uRow.Cells["CraftSeq"].Text, flag }, this.ob);//查询检验计划主表 return listSource; } /// /// 查询炉计划基础信息 /// /// private void doQueryBasePlan(UltraGridRow row) { List listSource = null; if (this.ultraTabControl1.SelectedTab.Key == "0") { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryBasePlan", new object[] { row.Cells["Id"].Text, row.Cells["JudgeStoveNo"].Text }, this.ob); MilPlanEntity1bindingSource.DataSource = listSource; } else if (this.ultraTabControl1.SelectedTab.Key == "1") { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryBasePlan", new object[] { row.Cells["Id"].Text, row.Cells["JudgeStoveNo"].Text }, this.ob); milPlanEntityBindingSource2.DataSource = listSource; } else if (this.ultraTabControl1.SelectedTab.Key == "2") { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryBasePlan", new object[] { row.Cells["Id"].Text, row.Cells["JudgeStoveNo"].Text }, this.ob); milPlanEntityBindingSource4.DataSource = listSource; }else if(this.ultraTabControl1.SelectedTab.Key == "3") { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryBasePlan1", new object[] { row.Cells["LotNo"].Text, row.Cells["JudgeStoveNoDesc"].Text, row.Cells["ContractNo"].Text }, this.ob); milPlanEntityBindingSource6.DataSource = listSource; } } /// /// 查询管号队列 /// /// private void doQueryRack(UltraGridRow row) { List listSource = null; if (row.Cells["BackSlabFlag"].Text.Equals("2")) { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRack1", new object[] { row.Cells["LotNo"].Text, row.Cells["JudgeStoveNo"].Text }, this.ob); } else { listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRack", new object[] { row.Cells["Id"].Text, row.Cells["JudgeStoveNo"].Text }, this.ob); } if (this.ultraTabControl1.SelectedTab.Key == "0") { portMilBatchSampleResultEntityBindingSource.DataSource = listSource; txtPIPE_NUM.Text = listSource.Count.ToString(); } else if (this.ultraTabControl1.SelectedTab.Key == "1") { List lists = listSource as List; lists.Where(p => p.IsSamplePipe == "1").ToList().ForEach(p => p.Chk = true); portMilBatchSampleResultEntityBindingSource1.DataSource = lists; initBindTable(); } } private void txt_BatchMax_ValueChanged(object sender, EventArgs e) { UltraGridRow uRow = this.ultraGrid1.ActiveRow; if (uRow == null) return; if (!StringUtil.IsInt32(this.txt_BatchMax.Text.Trim())) { return; } doQueryRack(uRow); dataTable1.Clear(); if (int.Parse(this.txt_BatchMax.Text) == 0) { txtBATCH_MIN.Text = "0"; } else { txtBATCH_MIN.Text = (Math.Ceiling(double.Parse(this.txtPIPE_NUM.Text) / int.Parse(this.txt_BatchMax.Text))).ToString(); } if (dtPlanDetial != null) { if (dtPlanDetial.Count > 0) { //bool isBacthFlag = dtPlanDetial.Any(p => p.Rate == "408601" || p.Rate == "408608");//判断是否试样组有生产批 //if (isBacthFlag) //{ //} //else //{ int maxBacth = dtPlanM.Max(p => p.BatchNum == null ? 1 : (int)(p.BatchNum));//取主表最大方案 int batchNum = int.Parse(txtBATCH_MIN.Text);//实际批数 dtPlanM1 = dtPlanM.Where(p => p.BatchNum == (batchNum > maxBacth ? maxBacth : batchNum)).OrderBy(p => p.PhyCodeGroup).OrderBy(p => p.SampleLength).ToList();//取具体方案 //} List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (lists == null || lists.Count() == 0) { return; } var lists1 = lists.Where(p => p.BatchNo == "").ToList(); if (lists1.Any()) { ultraSTART_PIPE_NO.Text = lists1.First().Seq.ToString(); ultraEND_PIPE_NO.Text = lists1.Take(int.Parse(txt_BatchMax.Text)).Last().Seq.ToString(); } else { ultraSTART_PIPE_NO.Text = ""; ultraEND_PIPE_NO.Text = ""; } } else { ultraSTART_PIPE_NO.Text = "1"; ultraEND_PIPE_NO.Text = this.txt_BatchMax.Text; } } } private void ultraGrid3_CellChange(object sender, CellEventArgs e) { dataTable1.Rows.Clear(); ultraGrid3.Update(); ultraGrid3.UpdateData(); List lists = portMilBatchSampleResultEntityBindingSource.DataSource as List; if (lists == null || lists.Count() <= 0) return; foreach (var list in lists.Where(p =>p.BatchNo != "").GroupBy(p => p.BatchNo)) { DataRow newRow; newRow = dataTable1.NewRow(); newRow["PHY_BATCH_NO"] = list.Key; newRow["START_SEQ"] = list.Min(p => p.Seq); newRow["END_SEQ"] = list.Max(p => p.Seq); newRow["NUM"] = list.Count(); newRow["SAMPLE_NUM"] = list.Count(p => p.Chk); dataTable1.Rows.Add(newRow); } ultraGrid4.Update(); //if (e.Cell.Column.Key.Equals("Chk")) //{ // e.Cell.Row.Cells["CraftSource"].Value = "0"; //} //else //{ // e.Cell.Row.Cells["CraftSource"].Value = ""; //} } private void ultraGrid5_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid5.UpdateData(); UltraGridRow uRow = this.ultraGrid5.ActiveRow; if (uRow == null) return; doQueryRack(uRow); doQueryBasePlan(uRow); } DataTable dtChem = new DataTable(); DataTable dtPhy = new DataTable(); private void ultraGrid9_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid9.UpdateData(); UltraGridRow uRow = this.ultraGrid9.ActiveRow; if (uRow == null) return; doQuerySampleRack(uRow, "0");//查询正常样样管信息 doQuerySampleRack(uRow, "1");//查询首日检样管信息 doQueryBasePlan(uRow); doQueryPhyChem(uRow, "0");//查询正常样成分、理化项目明细 doQueryPhyChem(uRow, "1");//查询首日检成分、理化项目明细 //if (dtPlanDetial != null && dtPlanDetial.Count() > 0) //{ // var s = dtPlanDetial.Where(p => p.Rate == "408601" || p.Rate == "408608").ToList(); // if (s.Any()) // { // dtPlanM = doQueryCheckPlan(uRow, "1"); // } // else // { // dtPlanM = doQueryCheckPlan(uRow, "0"); // } //} } private void ultraGrid12_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid12.UpdateData(); UltraGridRow uRow = this.ultraGrid12.ActiveRow; if (uRow == null) return; doQueryBasePlan(uRow); doQuerySampleNo(uRow);//查询试样号信息 } /// /// 查询试样号信息 /// /// private void doQuerySampleNo(UltraGridRow uRow) { while (dataTable4.Columns.Count > 3) { dataTable4.Columns.RemoveAt(3); } DataTable dtSample = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryDetialSampleNo", new Object[] { uRow.Cells["CheckNo"].Text,"0","D" }, ob); dataTable4.Rows.Clear(); dtSample.AsEnumerable().GroupBy(p => new { BatchNo = p["BATCH_NO"].ToString(), Sample = p["SAMPLE_NO"].ToString(),HeatMatNo = p["HEAD_MAT_NO"].ToString() }).ToList() .ForEach(p => { foreach (DataRow row in p) { if (!dataTable4.Columns.Contains(row["PHY_CODE_MAX"].ToString())) { DataColumn phyCloum = new DataColumn(); phyCloum.ColumnName = row["PHY_CODE_MAX"].ToString(); phyCloum.Caption = row["PHY_NAME_MAX"].ToString(); dataTable4.Columns.Add(phyCloum); } } DataRow dr = dataTable4.NewRow(); dr["BATCH_NO"] = p.Key.BatchNo; dr["HEAD_MAT_NO"] = p.Key.HeatMatNo; dr["SAMPLE_LEN"] = p.Max(q => q["SAMPLE_LEN"]); foreach (DataRow row in p) { dr[row["PHY_CODE_MAX"].ToString()] = row["SAMPLE_COUNT"].ToString(); } dataTable4.Rows.Add(dr); }); ultraGrid14.DataBind(); // GridHelper.CopyDataToDatatable(dtSample, dataTable4, true); GridHelper.RefreshAndAutoSize(ultraGrid14); } /// /// 查询复取样委托信息 /// /// private void doQueryResampleNo(UltraGridRow uRow) { while (dataTable6.Columns.Count > 3) { dataTable6.Columns.RemoveAt(3); } DataTable dtSample = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryReDetialSampleNo", new Object[] { uRow.Cells["CheckNo"].Text,"2","D" }, ob); dataTable6.Rows.Clear(); dtSample.AsEnumerable().GroupBy(p => new { BatchNo = p["BATCH_NO"].ToString(), Sample = p["SAMPLE_NO"].ToString() }).ToList() .ForEach(p => { foreach (DataRow row in p) { if (!dataTable6.Columns.Contains(row["PHY_CODE_MAX"].ToString())) { DataColumn phyCloum = new DataColumn(); phyCloum.ColumnName = row["PHY_CODE_MAX"].ToString(); phyCloum.Caption = row["PHY_NAME_MAX"].ToString(); dataTable6.Columns.Add(phyCloum); } } DataRow dr = dataTable6.NewRow(); dr["BATCH_NO"] = p.Key.BatchNo; dr["SAMPLE_NO"] = p.Key.Sample; dr["SAMPLE_LEN"] = p.Max(q => q["SAMPLE_LEN"]); foreach (DataRow row in p) { dr[row["PHY_CODE_MAX"].ToString()] = row["SAMPLE_COUNT"].ToString(); } dataTable6.Rows.Add(dr); }); ultraGrid21.DataBind(); GridHelper.RefreshAndAutoSize(ultraGrid21); } /// /// 查询成分理化项目明细 /// /// private void doQueryPhyChem(UltraGridRow uRow, string sampleType) { DataTable dataTable = null; UltraGrid ug = null; string craftSource = ""; if (sampleType == "0") { dataTable = dataTable3; ug = ultraGrid11; craftSource = "0"; } else if (sampleType == "1") { dataTable = dataTable5; ug = ultraGrid22; craftSource = "1"; ultraLabel5.Text = ""; } while (dataTable.Columns.Count > 5) { dataTable.Columns.RemoveAt(5); } dtChem = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryChem", new Object[] { uRow.Cells["ProPlanId"].Text, uRow.Cells["GxPlanNo"].Text, uRow.Cells["JudgeStoveNo"].Text, craftSource }, ob);//查询成分明细 if (dtChem.Rows.Count > 0) { DataColumn hxCloum = new DataColumn(); hxCloum.ColumnName = "HX"; hxCloum.Caption = "化学"; dataTable.Columns.Add(hxCloum); } dtPhy = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPhy", new Object[] { uRow.Cells["ProPlanId"].Text, uRow.Cells["GxPlanNo"].Text, BaseMethod.getJudgeStoveNo(uRow.Cells["JudgeStoveNo"].Text), craftSource, uRow.Cells["Pic"].Text }, ob);//查询理化明细 string[] phyMaxCode = null; ultraLabel3.Text = ""; List list = new List(); if (dtPhy.Rows.Count > 0) { dtPhy.AsEnumerable().Select(p => new { Code = p["PHY_CODE_MIN"].ToString(), Name = p["PHY_NAME_MIN"].ToString(), rate = p["RATE"].ToString(), rateName = p["DESC_RATE"].ToString() }).Distinct().ToList() .ForEach(p => { DataColumn phyCloum = new DataColumn(); phyCloum.ColumnName = p.Code; phyCloum.Caption = p.Name; dataTable.Columns.Add(phyCloum); if (p.rate.Equals("408601") || p.rate.Equals("408608")) { ultraLabel3.Text = ultraLabel3.Text + p.Name + " 取样频次:" + p.rateName; list.Add(p.Code); } //if (sampleType == "1") //{ // if (p.common.Equals("1")) // { // ultraLabel17.Text = ultraLabel17.Text + p.Name + " (共样) "; // } //} }); } foreach (DataRow dr in dataTable.Rows) { string[] phyCodeGroup = dr["PHY_CODE_GROUP"].ToString().Split(','); for (int i = 5; i < dataTable.Columns.Count; i++) { if (phyCodeGroup.Contains(dataTable.Columns[i].ColumnName)) { dr[i] = "√"; } } } phyMaxCode = list.ToArray(); ug.DataBind(); GridHelper.RefreshAndAutoSize(ug); ultraLabel3.ForeColor = Color.Red; //if (phyMaxCode.Length > 0) //{ // doQueryPhyCodeMax(phyMaxCode, uRow.Cells["LotNo"].Text); //} } /// /// 查询哪些炉批已经取样送样 /// private void doQueryPhyCodeMax(string[] phyCode,string lotNo) { List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryPhyCodeMax", new object[] { lotNo, phyCode }, this.ob); pipeCheckconsignDetailEntityBindingSource.DataSource = listSource; } private void ultraGrid18_AfterRowActivate(object sender, EventArgs e) { UltraGridRow uRow = this.ultraGrid18.ActiveRow; if (uRow == null) return; List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRepeateInformation", new object[] { uRow.Cells["CheckNo"].Text, uRow.Cells["JudgeStoveNo"].Text }, this.ob); pipeCheckconsignNoqualifiedEntityBindingSource4.DataSource = listSource; doQueryResampleRck(uRow); doQueryChemPhy(uRow); doQueryResampleNo(uRow);//复取样委托信息 } /// /// 查询复取样试样组 /// /// private void doQueryChemPhy(UltraGridRow uRow) { while (dataTable5.Columns.Count > 5) { dataTable5.Columns.RemoveAt(5); } dtPhy = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryReChemPhy", new Object[] { uRow.Cells["LotNo"].Text, uRow.Cells["JudgeStoveNo"].Text, uRow.Cells["CheckNo"].Text }, ob);//查询复取样试样组 List list = new List(); if (dtPhy.Rows.Count > 0) { dtPhy.AsEnumerable().Select(p => new { Code = p["PHY_CODE_MAX"].ToString(), Name = p["PHY_NAME_MAX"].ToString() }).Distinct().ToList() .ForEach(p => { DataColumn phyCloum = new DataColumn(); phyCloum.ColumnName = p.Code; phyCloum.Caption = p.Name; dataTable5.Columns.Add(phyCloum); }); } //foreach (DataRow dr in dataTable5.Rows) //{ // string[] phyCodeGroup = dr["PHY_CODE_GROUP"].ToString().Split(','); // for (int i = 5; i < dataTable5.Columns.Count; i++) // { // if (phyCodeGroup.Contains(dataTable5.Columns[i].ColumnName)) // { // dr[i] = "√"; // } // } //} ultraGrid20.DataBind(); GridHelper.RefreshAndAutoSize(ultraGrid20); } /// /// 查询复取样样管信息 /// /// private void doQueryResampleRck(UltraGridRow uRow) { DataTable dtBatchNo = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryResampleInfo", new Object[] { uRow.Cells["JudgeStoveNo"].Text }, ob); dataTable5.Rows.Clear(); foreach (DataRow row in dtBatchNo.Rows) { if (row["RESAMPLE_PIPE_LEN_A"] != null && row["RESAMPLE_PIPE_LEN_A"].ToString() != "") { DataRow newRowA = dataTable5.NewRow(); newRowA["BATCH_NO"] = row["BATCH_NO"].ToString(); newRowA["MAT_NO"] = row["MAT_NO"].ToString(); newRowA["SAMPLE_PIPE_LEN"] = row["RESAMPLE_PIPE_LEN_A"].ToString(); newRowA["SAMPLE_POSTION"] = "A端"; newRowA["PHY_CODE_GROUP"] = row["REPHY_CODE_GROUP"].ToString(); dataTable5.Rows.Add(newRowA); } if (row["RESAMPLE_PIPE_LEN_B"] != null && row["RESAMPLE_PIPE_LEN_B"].ToString() != "") { DataRow newRowA = dataTable5.NewRow(); newRowA["BATCH_NO"] = row["BATCH_NO"].ToString(); newRowA["MAT_NO"] = row["MAT_NO"].ToString(); newRowA["SAMPLE_PIPE_LEN"] = row["RESAMPLE_PIPE_LEN_B"].ToString(); newRowA["SAMPLE_POSTION"] = "B端"; newRowA["PHY_CODE_GROUP"] = row["REPHY_CODE_GROUPB"].ToString(); dataTable5.Rows.Add(newRowA); } } GridHelper.RefreshAndAutoSize(ultraGrid20); } /// /// 查询样管信息 /// private void doQuerySampleRack(UltraGridRow uRow, string sampleType) { DataTable dtBatchNo = new DataTable(); if (uRow.Cells["BackSlabFlag"].Text.Equals("2")) { dtBatchNo = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQuerySampleInfo1", new Object[] { uRow.Cells["LotNo"].Text, uRow.Cells["JudgeStoveNo"].Text, sampleType }, ob); } else { dtBatchNo = PublicServer.GetData("com.steering.mes.port.mil.FrmMilBatchSampleNew.doQuerySampleInfo", new Object[] { uRow.Cells["Id"].Text, uRow.Cells["JudgeStoveNo"].Text, sampleType }, ob); } DataTable dt = new DataTable(); if (sampleType == "1") { dt = dataTable5; } else if (sampleType == "0") { dt = dataTable3; } dt.Rows.Clear(); foreach (DataRow row in dtBatchNo.Rows) { if (row["SAMPLE_PIPE_LEN_A"] != null && row["SAMPLE_PIPE_LEN_A"].ToString() != "") { DataRow newRowA = dt.NewRow(); newRowA["BATCH_NO"] = row["BATCH_NO"].ToString(); newRowA["MAT_NO"] = row["MAT_NO"].ToString(); newRowA["SAMPLE_PIPE_LEN"] = row["SAMPLE_PIPE_LEN_A"].ToString(); newRowA["SAMPLE_POSTION"] = "A端"; newRowA["PHY_CODE_GROUP"] = row["PHY_CODE_GROUP"].ToString(); dt.Rows.Add(newRowA); } if (row["SAMPLE_PIPE_LEN_B"] != null && row["SAMPLE_PIPE_LEN_B"].ToString() != "") { DataRow newRowA = dt.NewRow(); newRowA["BATCH_NO"] = row["BATCH_NO"].ToString(); newRowA["MAT_NO"] = row["MAT_NO"].ToString(); newRowA["SAMPLE_PIPE_LEN"] = row["SAMPLE_PIPE_LEN_B"].ToString(); newRowA["SAMPLE_POSTION"] = "B端"; newRowA["PHY_CODE_GROUP"] = row["PHY_CODE_GROUPB"].ToString(); dt.Rows.Add(newRowA); } } GridHelper.RefreshAndAutoSize(ultraGrid11); GridHelper.RefreshAndAutoSize(ultraGrid22); } private void ultraGrid11_ClickCell(object sender, ClickCellEventArgs e) { if (e.Cell.Column.Key != "BATCH_NO" && e.Cell.Column.Key != "MAT_NO" && e.Cell.Column.Key != "SAMPLE_PIPE_LEN" && e.Cell.Column.Key != "SAMPLE_POSTION") { if (e.Cell.Text.Trim() == "") { e.Cell.Value = "√"; } else { e.Cell.Value = ""; } } } private void FrmMilBatchSampleNew_Shown(object sender, EventArgs e) { if (toolMenu == null || toolMenu.Toolbars == null) return; if (toolMenu.Toolbars[0].Tools.Exists("CancelBatchSeting")) { toolMenu.Toolbars[0].Tools["CancelBatchSeting"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Confirm")) { toolMenu.Toolbars[0].Tools["Confirm"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelConfirm")) { toolMenu.Toolbars[0].Tools["CancelConfirm"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintLable")) { toolMenu.Toolbars[0].Tools["PrintLable"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("QueryRepeate")) { toolMenu.Toolbars[0].Tools["QueryRepeate"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelGetSample")) { toolMenu.Toolbars[0].Tools["CancelGetSample"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ReGetSample")) { toolMenu.Toolbars[0].Tools["ReGetSample"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelReGetSample")) { toolMenu.Toolbars[0].Tools["CancelReGetSample"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("RepeateFrim")) { toolMenu.Toolbars[0].Tools["RepeateFrim"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelRepeateFrim")) { toolMenu.Toolbars[0].Tools["CancelRepeateFrim"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintRe")) { toolMenu.Toolbars[0].Tools["PrintRe"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintReLable")) { toolMenu.Toolbars[0].Tools["PrintReLable"].InstanceProps.Visible = DefaultableBoolean.False; } } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (toolMenu == null || toolMenu.Toolbars == null) return; if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 4 || this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.False : DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("BatchSeting")) { toolMenu.Toolbars[0].Tools["BatchSeting"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 0 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("OprocessBatch")) { toolMenu.Toolbars[0].Tools["OprocessBatch"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 0 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelOprocessBatch")) { toolMenu.Toolbars[0].Tools["CancelOprocessBatch"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 0 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("GetSample")) { toolMenu.Toolbars[0].Tools["GetSample"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 0 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelBatchSeting")) { toolMenu.Toolbars[0].Tools["CancelBatchSeting"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 1 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelGetSample")) { toolMenu.Toolbars[0].Tools["CancelGetSample"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 1 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Confirm")) { toolMenu.Toolbars[0].Tools["Confirm"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 2 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelConfirm")) { toolMenu.Toolbars[0].Tools["CancelConfirm"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 3 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 3 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintLable")) { toolMenu.Toolbars[0].Tools["PrintLable"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 3 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("QueryRepeate")) { toolMenu.Toolbars[0].Tools["QueryRepeate"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 4 || this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ReGetSample")) { toolMenu.Toolbars[0].Tools["ReGetSample"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 4 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelReGetSample")) { toolMenu.Toolbars[0].Tools["CancelReGetSample"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 4 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintRe")) { toolMenu.Toolbars[0].Tools["PrintRe"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PrintReLable")) { toolMenu.Toolbars[0].Tools["PrintReLable"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("RepeateFrim")) { toolMenu.Toolbars[0].Tools["RepeateFrim"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.True : DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelRepeateFrim")) { toolMenu.Toolbars[0].Tools["CancelRepeateFrim"].InstanceProps.Visible = this.ultraTabControl1.SelectedTab.Index == 5 ? DefaultableBoolean.True : DefaultableBoolean.False; } } private void ultraGrid15_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid15.UpdateData(); UltraGridRow uRow = this.ultraGrid15.ActiveRow; if (uRow == null) return; List listSource = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRepeateInformation", new object[] { uRow.Cells["CheckNo"].Text, uRow.Cells["JudgeStoveNo"].Text }, this.ob); pipeCheckconsignNoqualifiedEntityBindingSource2.DataSource = listSource; List listSource1 = EntityHelper.GetData( "com.steering.mes.port.mil.FrmMilBatchSampleNew.doQueryRepeatRack", new object[] { uRow.Cells["JudgeStoveNo"].Text }, this.ob); portMilBatchSampleResultEntityBindingSource2.DataSource = listSource1; foreach(UltraGridRow row in this.ultraGrid17.Rows) { if (row.Cells["IsSamplePipe"].Text == "1") { row.RowSelectorAppearance.BackColor = Color.Red; } } } private void txtBATCH_MIN_ValueChanged(object sender, EventArgs e) { if (txtBATCH_MIN.Text == "") return; if (dtPlanM == null || dtPlanDetial == null || dtPlanM.Count == 0 || dtPlanDetial.Count == 0) { return; } //bool isBacthFlag = dtPlanDetial.Any(p => p.Rate == "408601" || p.Rate == "408608");//判断是否试样组有生产批 //if (isBacthFlag) //{ //} //else //{ int maxBacth = dtPlanM.Max(p => p.BatchNum == null ? 1 : (int)(p.BatchNum));//取主表最大方案 int batchNum = int.Parse(txtBATCH_MIN.Text);//实际批数 dtPlanM1 = dtPlanM.Where(p => p.BatchNum == (batchNum > maxBacth ? maxBacth : batchNum)).ToList();//取具体方案 //} } private void ultraGrid20_ClickCell(object sender, ClickCellEventArgs e) { if (e.Cell.Column.Key != "BATCH_NO" && e.Cell.Column.Key != "MAT_NO" && e.Cell.Column.Key != "SAMPLE_PIPE_LEN" && e.Cell.Column.Key != "SAMPLE_POSTION") { if (e.Cell.Text.Trim() == "") { e.Cell.Value = "√"; } else { e.Cell.Value = ""; } } } private void ultraGrid22_ClickCell(object sender, ClickCellEventArgs e) { if (e.Cell.Column.Key != "BATCH_NO" && e.Cell.Column.Key != "MAT_NO" && e.Cell.Column.Key != "SAMPLE_PIPE_LEN" && e.Cell.Column.Key != "SAMPLE_POSTION") { if (e.Cell.Text.Trim() == "") { e.Cell.Value = "√"; } else { e.Cell.Value = ""; } } } //private void ultraGrid17_CellChange(object sender, CellEventArgs e) //{ // this.ultraGrid17.UpdateData(); // IQueryable checkMagRows = this.ultraGrid17.Rows.AsQueryable().Where(a => a.GetValue("CHK") == "True"); // if(checkMagRows.Count() > 1) // { // MessageUtil.ShowTips("取样频次是生成批类的,只允许指定一个炉号!"); // e.Cell.Value = "False"; // } //} } }