using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Core.Mes.Client.Comm.Tool; using Core.Mes.Client.Comm.Control; using System.Collections; using Core.Mes.Client.Comm.Server; using Infragistics.Win.UltraWinGrid; namespace Core.StlMes.Client.ZGMil.Result { public partial class FrmSendCheckConsign : FrmBase { private DataTable m_dtBatchNo;//批次号队列 private DataTable m_dtBatchNo_LOG;//批次号队列 private DataTable m_dtBatchSampleNo;//批次号队列 private DataTable m_dtBatchSampleNo_LOG;//批次号队列 private DataTable m_dtSampleNo;//试样号队列 private DataTable m_dtSampleNo_LOG;//试样号队列 public FrmSendCheckConsign() { InitializeComponent(); } private void FrmCheckConsign_Load(object sender, EventArgs e) { } protected override void OnLoad(EventArgs e) { base.OnLoad(e); //panel8.BackColor = (Color)"183, 208, 250"; ultraGrid2.DisplayLayout.Override.RowSelectors = Infragistics.Win.DefaultableBoolean.False;//不显示行头 ultraGrid2.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 ultraGrid3.DisplayLayout.Override.RowSelectors = Infragistics.Win.DefaultableBoolean.False;//不显示行头 ultraGrid3.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 ultraGrid4.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 ultraGrid5.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 ultraGrid6.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 ultraGrid7.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { //新增、修改修约值、审核、删除、退出 switch (ToolbarKey) { case "Query": if (ultraTabControl1.SelectedTab.Index == 0) { QueryLotNoAndStoveNo(); } else if (ultraTabControl1.SelectedTab.Index == 1) { QueryLotNoAndStoveNo_LOG(); } break; case "Add": AddCheckConsignInfo(); break; case "Send": SendCheckConsignInfo(); break; case "Update": UpdateCheckConsignInfo(); break; case "Delete": DeleteCheckConsignInfo(); break; case "Close": if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes) { this.Close(); } break; } } /// /// 筛选符合条件的DataTable加入排序 /// /// 源dt /// public static DataTable GetSelectDt(DataTable dtSource, string sql, string sort) { if (dtSource != null) { DataTable dtReturn = dtSource.Clone(); DataRow[] arrDrSelect; if (sort != "") { arrDrSelect = dtSource.Select(sql, sort); } else { arrDrSelect = dtSource.Select(sql); } if (arrDrSelect != null && arrDrSelect.Length > 0) { foreach (DataRow row in arrDrSelect) { dtReturn.Rows.Add(row.ItemArray); } } return dtReturn; } else { return null; } } #region 未委托 //查询生产批号、炉号队列 private void QueryLotNoAndStoveNo() { dataTable1.Rows.Clear(); DataRow dr = dataTable1.NewRow(); dr[0] = "129/09/15"; dr[1] = "352027"; dataTable1.Rows.Add(dr); GridHelper.RefreshAndAutoSize(ultraGrid1); dataTable7.Rows.Clear(); if (dataTable1.Rows.Count == 0) { dataTable2.Rows.Clear(); dataTable3.Rows.Clear(); dataTable4.Rows.Clear(); dataTable5.Rows.Clear(); dataTable6.Rows.Clear(); } } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { QueryProductOrderNo(); QueryBatchSampleInfo(); QueryGetSampleReq(); } //弹出取样要求明细 private void btnConfirm_Click(object sender, EventArgs e) { if (ultraGrid1.ActiveRow != null && ultraGrid1.ActiveRow.Activated == true) { if (splitContainer1.Panel1Collapsed) { splitContainer1.Panel1Collapsed = false; } else { splitContainer1.Panel1Collapsed = true; ; } } } //是否显示所有性能批号 private void CHKSHOWBATCH_NO_CheckedChanged(object sender, EventArgs e) { if (ultraGrid1.ActiveRow != null && ultraGrid1.ActiveRow.Activated == true && m_dtBatchNo != null && m_dtBatchSampleNo != null) { if (CHKSHOWBATCH_NO.Checked) { GridHelper.CopyDataToDatatable(m_dtBatchNo, dataTable4, true); } else { GridHelper.CopyDataToDatatable(m_dtBatchSampleNo, dataTable4, true); } } } //是否显示所有试样号 private void CHKSHOWSAMPLE_NO_CheckedChanged(object sender, EventArgs e) { if (ultraGrid1.ActiveRow != null && ultraGrid1.ActiveRow.Activated == true && m_dtSampleNo != null && m_dtSampleNo.Rows.Count > 0) { string strBATCH_NO = ultraGrid4.ActiveRow.Cells["BATCH_NO"].Text.Trim(); if (CHKSHOWSAMPLE_NO.Checked) { GridHelper.CopyDataToDatatable(m_dtSampleNo, dataTable5, true); foreach (UltraGridRow ur in ultraGrid5.Rows) { if (ur.Cells["BATCH_NO"].Text.Trim() == strBATCH_NO) { ur.Selected = true; } else { ur.Selected = false; } } } else { DataTable dtSelect = GetSelectDt(m_dtSampleNo, "BATCH_NO = '" + strBATCH_NO + "'", "BATCH_NO,SAMPLE_NO"); GridHelper.CopyDataToDatatable(dtSelect, dataTable5, true); } } } private void QueryBatchSampleInfo() { if (ultraGrid1.ActiveRow != null && ultraGrid1.ActiveRow.Activated == true) { //查询已录入性能批号+试样号 string strLOT_NO = ultraGrid1.ActiveRow.Cells["LOT_NO"].Text.Trim();//生产批号 string strSTOVE_NO = ultraGrid1.ActiveRow.Cells["JUDGE_STOVE_NO"].Text.Trim();//炉号 ArrayList arrayList = new ArrayList(); arrayList.Add(strLOT_NO); arrayList.Add(strSTOVE_NO);//条件 DataTable dtBATCH_NO = ServerHelper.GetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.QueryBatchInfo", new Object[] { arrayList }, ob);//全部批次号 DataTable dtBATCHSAMPLE_NO = ServerHelper.GetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.QueryBatchSampleInfo", new Object[] { arrayList }, ob);//取样了的批次号 if (dtBATCH_NO == null || dtBATCH_NO.Rows.Count == 0 || dtBATCHSAMPLE_NO == null || dtBATCHSAMPLE_NO.Rows.Count == 0) { return; } m_dtBatchNo = dtBATCH_NO.Copy(); m_dtBatchSampleNo = dtBATCHSAMPLE_NO.Copy(); ultraBATCH_NO.DataSource = m_dtBatchSampleNo;//只绑定取样了的性能批号 ultraBATCH_NO.ValueMember = "BATCH_NO"; ultraBATCH_NO.DisplayMember = "BATCH_NO"; if (CHKSHOWBATCH_NO.Checked) { GridHelper.CopyDataToDatatable(m_dtBatchNo, dataTable4, true); } else { GridHelper.CopyDataToDatatable(m_dtBatchSampleNo, dataTable4, true); } GridHelper.RefreshAndAutoSize(ultraGrid4); DataTable dtSample = ServerHelper.GetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.QuerySampleInfo", new Object[] { arrayList }, ob); m_dtSampleNo = dtSample.Copy(); GridHelper.CopyDataToDatatable(dtSample, dataTable5, true); GridHelper.RefreshAndAutoSize(ultraGrid5); } } private void ultraGrid4_AfterRowActivate(object sender, EventArgs e) { string strBATCH_NO = ultraGrid4.ActiveRow.Cells["BATCH_NO"].Text.Trim(); if (CHKSHOWSAMPLE_NO.Checked) { GridHelper.CopyDataToDatatable(m_dtSampleNo, dataTable5, true); foreach (UltraGridRow ur in ultraGrid5.Rows) { if (ur.Cells["BATCH_NO"].Text.Trim() == strBATCH_NO) { ur.Selected = true; } else { ur.Selected = false; } } } else { DataTable dtSelect = GetSelectDt(m_dtSampleNo, "BATCH_NO = '" + strBATCH_NO + "'", "BATCH_NO,SAMPLE_NO"); GridHelper.CopyDataToDatatable(dtSelect, dataTable5, true); } } //查询取样要求 private void QueryGetSampleReq() { dataTable6.Rows.Clear(); DataRow dr = dataTable6.NewRow(); dr["PHY_NAME_MIN"] = "夏比冲击试验取样1"; dr["DESC_LENGTH"] = "500mm"; dr["DESC_RATE"] = "按比例"; dr["DESC_POSITION"] = "A端"; dr["DESC_COUNT"] = "1"; dataTable6.Rows.Add(dr); GridHelper.RefreshAndAutoSize(ultraGrid6); //GridHelper.RefreshAndAutoSize(ultraGrid8); } //查询生产合同号队列 private void QueryProductOrderNo() { dataTable2.Rows.Clear(); DataRow dr = dataTable2.NewRow(); dr[0] = "ZZBY_E50804/04"; dataTable2.Rows.Add(dr); //GridHelper.RefreshAndAutoSize(ultraGrid2); } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { QueryOrderNo(); } //查询销售合同号 private void QueryOrderNo() { dataTable3.Rows.Clear(); DataRow dr = dataTable3.NewRow(); dr[0] = "XS-Q-15G102/001"; dataTable3.Rows.Add(dr); //GridHelper.RefreshAndAutoSize(ultraGrid3); } private void ultraBATCH_NO_TextChanged(object sender, EventArgs e) { DataTable dtSampleNo = GetSelectDt(m_dtSampleNo, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "'", "SAMPLE_NO"); if (dtSampleNo == null || dtSampleNo.Rows.Count == 0) { return; } ultraSAMPLE_NO.DataSource = dtSampleNo;//绑定试样号 ultraSAMPLE_NO.ValueMember = "SAMPLE_NO"; ultraSAMPLE_NO.DisplayMember = "SAMPLE_NO"; if (CHKISALL.Checked) { DataTable dtIsHave = GetSelectDt(dataTable7, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "'", ""); if (dtIsHave.Rows.Count > 0) { MessageUtil.ShowWarning("此性能批号已选择!"); return; } GridHelper.CopyDataToDatatable(dtSampleNo, dataTable7, false); } } private void ultraSAMPLE_NO_TextChanged(object sender, EventArgs e) { if (CHKISALL.Checked == false) { DataTable dtIsHave = GetSelectDt(dataTable7, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "' AND SAMPLE_NO = '" + ultraSAMPLE_NO.Text.Trim() + "'", ""); if (dtIsHave.Rows.Count > 0) { MessageUtil.ShowWarning("此试样号已经存在!"); return; } DataRow dr = dataTable7.NewRow(); dr["BATCH_NO"] = ultraBATCH_NO.Text.Trim(); dr["SAMPLE_NO"] = ultraSAMPLE_NO.Text.Trim(); dataTable7.Rows.Add(dr); } } private void CHKISALL_CheckedChanged(object sender, EventArgs e) { if (CHKISALL.Checked) { DataTable dtIsHave = GetSelectDt(dataTable7, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "'", ""); if (dtIsHave.Rows.Count > 0) { //MessageUtil.ShowWarning("此性能批号已选择!"); return; } DataTable dtSampleNo = GetSelectDt(m_dtSampleNo, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "'", "SAMPLE_NO"); if (dtSampleNo == null || dtSampleNo.Rows.Count == 0) { return; } GridHelper.CopyDataToDatatable(dtSampleNo, dataTable7, false); } else { //DataTable dtIsHave = PublicTools.GetSelectDt(dataTable7, "BATCH_NO = '" + ultraBATCH_NO.Text.Trim() + "' AND SAMPLE_NO = '" + ultraSAMPLE_NO.Text.Trim() + "'"); //if (dtIsHave.Rows.Count > 0) //{ // //MessageUtil.ShowWarning("此试样号已经存在!"); // return; //} //DataRow dr = dataTable7.NewRow(); //dr["BATCH_NO"] = ultraBATCH_NO.Text.Trim(); //dr["SAMPLE_NO"] = ultraSAMPLE_NO.Text.Trim(); //dataTable7.Rows.Add(dr); } } private void btnDeleteSample_Click(object sender, EventArgs e) { if (dataTable7 == null || dataTable7.Rows.Count == 0 || ultraGrid7.ActiveRow == null || ultraGrid7.ActiveRow.Activated == false) { MessageUtil.ShowWarning("请选择一条需要删除的试样号信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("您确定删除此条试样号信息吗?") == DialogResult.Yes) { for (int i = 0; i < ultraGrid7.Rows.Count; i++) { if (ultraGrid7.Rows[i].Selected) { for (int j = 0; j < dataTable7.Rows.Count; j++) { if (dataTable7.Rows[j]["BATCH_NO"].ToString() == ultraGrid7.Rows[i].Cells["BATCH_NO"].Text.Trim() && dataTable7.Rows[j]["SAMPLE_NO"].ToString() == ultraGrid7.Rows[i].Cells["SAMPLE_NO"].Text.Trim()) { dataTable7.Rows.RemoveAt(j); i--; break; } } } } //string strSampleNo = ultraGrid7.ActiveRow.Cells["SAMPLE_NO"].Text.Trim(); //dataTable7.Rows.RemoveAt(ultraGrid7.ActiveRow.Index); } } //性能批号改变自动带出下面所属试样号 private void ultraGrid7_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { } //新增委托 private void AddCheckConsignInfo() { if (ultraTabControl1.SelectedTab.Index != 0) { MessageUtil.ShowWarning("只有在未委托数据页才能进行新增委托操作!"); return; } if (ultraGrid1.ActiveRow == null || dataTable1.Rows.Count == 0) { MessageUtil.ShowWarning("请选择炉号信息!"); return; } if (dataTable7 == null || dataTable7.Rows.Count == 0 || ultraGrid7.ActiveRow.Cells["SAMPLE_NO"].Text.Trim() == "") { MessageUtil.ShowWarning("没有形成委托不能进行此操作!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认新增委托?") == DialogResult.Yes) { ultraGrid7.UpdateData(); ArrayList alAll = new ArrayList(); ServerHelper.SetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.AddCheckConsignInfo", new Object[] { alAll }, this.ob); QueryLotNoAndStoveNo();//刷新GRID1 QueryLotNoAndStoveNo_LOG();//刷新GRID6 //PublicPipeAndOutdec.ActiveOperateRow(ultraGrid8, new string[] { "LOT_NO", "JUDGE_STOVE_NO" }, new string[] { strLOT_NO, strSTOVE_NO });//定位 MessageUtil.ShowTips("新增委托成功!"); } } #endregion #region 已委托 //查询生产批号、炉号队列 private void QueryLotNoAndStoveNo_LOG() { dataTable1.Rows.Clear(); DataRow dr = dataTable1.NewRow(); dr[0] = "129/09/15"; dr[1] = "352027"; dataTable1.Rows.Add(dr); GridHelper.RefreshAndAutoSize(ultraGrid1); } //下发委托 private void SendCheckConsignInfo() { if (ultraTabControl1.SelectedTab.Index != 1) { MessageUtil.ShowWarning("只有在已委托数据页才能进行下发委托操作!"); return; } //if (ultraGrid8.ActiveRow == null || dataTable8.Rows.Count == 0) //{ // MessageUtil.ShowWarning("请选择炉号信息!"); // return; //} //if (dataTable14 == null || dataTable14.Rows.Count == 0 || ultraGrid14.ActiveRow.Cells["SAMPLE_NO"].Text.Trim() == "") //{ // MessageUtil.ShowWarning("没有形成委托不能进行此操作!"); // return; //} if (MessageUtil.ShowYesNoAndQuestion("是否确认下发委托?") == DialogResult.Yes) { //ultraGrid14.UpdateData(); ArrayList alAll = new ArrayList(); ServerHelper.SetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.SendCheckConsignInfo", new Object[] { alAll }, this.ob); //QueryLotNoAndStoveNo();//刷新GRID1 QueryLotNoAndStoveNo_LOG();//刷新GRID6 //PublicPipeAndOutdec.ActiveOperateRow(ultraGrid14, new string[] { "LOT_NO", "JUDGE_STOVE_NO" }, new string[] { strLOT_NO, strSTOVE_NO });//定位 MessageUtil.ShowTips("下发委托成功!"); } } //修改委托 private void UpdateCheckConsignInfo() { if (ultraTabControl1.SelectedTab.Index != 1) { MessageUtil.ShowWarning("只有在已委托数据页才能进行修改操作!"); return; } //if (ultraGrid8.ActiveRow == null || dataTable8.Rows.Count == 0) //{ // MessageUtil.ShowWarning("请选择炉号信息!"); // return; //} //if (dataTable14 == null || dataTable14.Rows.Count == 0 || ultraGrid14.ActiveRow.Cells["SAMPLE_NO"].Text.Trim() == "") //{ // MessageUtil.ShowWarning("没有形成委托不能进行此操作!"); // return; //} if (MessageUtil.ShowYesNoAndQuestion("是否确认修改?") == DialogResult.Yes) { //ultraGrid14.UpdateData(); ArrayList alAll = new ArrayList(); ServerHelper.SetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.UpdateCheckConsignInfo", new Object[] { alAll }, this.ob); //QueryLotNoAndStoveNo();//刷新GRID1 QueryLotNoAndStoveNo_LOG();//刷新GRID6 //PublicPipeAndOutdec.ActiveOperateRow(ultraGrid8, new string[] { "LOT_NO", "JUDGE_STOVE_NO" }, new string[] { strLOT_NO, strSTOVE_NO });//定位 MessageUtil.ShowTips("修改成功!"); } } //删除委托 private void DeleteCheckConsignInfo() { if (ultraTabControl1.SelectedTab.Index != 1) { MessageUtil.ShowWarning("只有在已委托数据页才能进行删除操作!"); return; } //if (ultraGrid8.ActiveRow == null || dataTable8.Rows.Count == 0) //{ // MessageUtil.ShowWarning("请选择炉号信息!"); // return; //} //if (dataTable14 == null || dataTable14.Rows.Count == 0 || ultraGrid14.ActiveRow.Cells["SAMPLE_NO"].Text.Trim() == "") //{ // MessageUtil.ShowWarning("没有形成委托不能进行此操作!"); // return; //} if (MessageUtil.ShowYesNoAndQuestion("是否确认删除?") == DialogResult.Yes) { //ultraGrid14.UpdateData(); ArrayList alAll = new ArrayList(); ServerHelper.SetData("com.steering.lims.data.pipe.FrmGetSampleCheckConsign.DeleteCheckConsignInfo", new Object[] { alAll }, this.ob); QueryLotNoAndStoveNo_LOG();//刷新GRID6 QueryLotNoAndStoveNo();//刷新GRID1 //PublicPipeAndOutdec.ActiveOperateRow(ultraGrid1, new string[] { "LOT_NO", "JUDGE_STOVE_NO" }, new string[] { strLOT_NO, strSTOVE_NO });//定位 MessageUtil.ShowTips("删除成功!"); } } #endregion } }