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
}
}