using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using Infragistics.Win.UltraWinDataSource; using Core.Mes.Client.Comm.Control; using com.steering.mes.mcp.entity; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; namespace Core.StlMes.Client.Mcp.Control { public partial class PlanJumpControl : UserControl { private string num = ""; private string wt = ""; public static string pronum = ""; public static string prowt = ""; private VrpJumpingupFaceMEntity _load = new VrpJumpingupFaceMEntity(); public VrpJumpingupFaceMEntity Value { get { return _load; } set { if(value != null) { this._load = value; UpdateData(); } } } private Infragistics.Win.UltraWinGrid.UltraGrid _grid = null; /// /// 编辑区GRID /// public Infragistics.Win.UltraWinGrid.UltraGrid Grid { get { return _grid; } } public PlanJumpControl() { InitializeComponent(); GridHelper.InitCardGrid(ultraDataSource1, ultraGrid1); _grid = this.ultraGrid1; } /// /// 刷新控件数据显示 /// public void UpdateData() { if (_load != null) { ultraDataSource1.Rows[0]["PRO_NUM"] = _load.ProNum; ultraDataSource1.Rows[0]["PRO_WT"] = _load.ProWt; ultraDataSource1.Rows[0]["FAIL_NUM"] = string.IsNullOrEmpty(_load.FailNum) ? "0" : _load.FailNum; ultraDataSource1.Rows[0]["FAIL_WT"] = string.IsNullOrEmpty(_load.FailWt) ? "0" : _load.FailWt; ultraDataSource1.Rows[0]["ACC_NUM"] = _load.AccNum; ultraDataSource1.Rows[0]["ACC_WT"] = _load.AccWt; ultraDataSource1.Rows[0]["LEU_NUM"] = _load.LeuNum; ultraDataSource1.Rows[0]["D4_NUM"] = _load.D4Num; ultraDataSource1.Rows[0]["ELLIP_NUM"] = _load.EllipNum; ultraDataSource1.Rows[0]["UPSETTING_NUM"] = _load.UpsettingNum; ultraDataSource1.Rows[0]["CRACK_NUM"] = _load.CrackNum; ultraDataSource1.Rows[0]["AIR_NUM"] = _load.AirNum; ultraDataSource1.Rows[0]["NOTCH"] = _load.Notch; ultraDataSource1.Rows[0]["OTHER"] = _load.Other; ultraDataSource1.Rows[0]["PRODUCER"] = _load.Producer; ultraDataSource1.Rows[0]["PRODUCER_TIME"] = _load.ProducerTime; ultraDataSource1.Rows[0]["LOAD_TIME"] = _load.LoadTime; ultraDataSource1.Rows[0]["LOAD_SHIFT"] = _load.LoadShift; ultraDataSource1.Rows[0]["LOAD_GROUP"] = _load.LoadGroup; ultraDataSource1.Rows[0]["LOAD_USER"] = _load.LoadUser; num = _load.ProNum; wt = _load.ProWt; pronum = ultraDataSource1.Rows[0]["PRO_NUM"].ToString(); prowt = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); } else { GridHelper.InitCardGrid(ultraDataSource1,ultraGrid1); } this.ultraGrid1.UpdateData(); } /// /// 控件编辑后更新已修改数据 /// public void CompleteEdit() { ultraGrid1.UpdateData(); } private void ultraGrid1_AfterCellUpdate(object sender, CellEventArgs e) { try { if (e.Cell.Column.Key.Equals("PRO_NUM")) { Value.ProNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("PRO_WT")) { Value.ProWt = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("ACC_NUM")) { Value.AccNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("ACC_WT")) { Value.AccWt = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("FAIL_NUM")) { Value.FailNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("FAIL_WT")) { Value.FailWt = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("LEU_NUM")) { Value.LeuNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("D4_NUM")) { Value.D4Num = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("ELLIP_NUM")) { Value.EllipNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("UPSETTING_NUM")) { Value.UpsettingNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("CRACK_NUM")) { Value.CrackNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("AIR_NUM")) { Value.AirNum = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("NOTCH")) { Value.Notch = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("OTHER")) { Value.Other = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("PRODUCER")) { Value.Producer = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("PRODUCER_TIME")) { Value.ProducerTime = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("LOAD_TIME")) { Value.LoadTime = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("LOAD_SHIFT")) { Value.LoadShift = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("LOAD_GROUP")) { Value.LoadGroup = e.Cell.Value.ToString(); } if (e.Cell.Column.Key.Equals("LOAD_USER")) { Value.LoadUser = e.Cell.Value.ToString(); } } catch (Exception ex) { } } /// /// 验证格试 /// public bool ValidInput1() { ultraGrid1.UpdateData(); string PRO_NUM = ultraDataSource1.Rows[0]["PRO_NUM"].ToString(); string PRO_WT = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); string ACC_NUM = ultraDataSource1.Rows[0]["ACC_NUM"].ToString(); string ACC_WT = ultraDataSource1.Rows[0]["ACC_WT"].ToString(); string FAIL_NUM = ultraDataSource1.Rows[0]["FAIL_NUM"].ToString(); string FAIL_WT = ultraDataSource1.Rows[0]["FAIL_WT"].ToString(); string LEU_NUM = ultraDataSource1.Rows[0]["LEU_NUM"].ToString(); string D4_NUM = ultraDataSource1.Rows[0]["D4_NUM"].ToString(); string ELLIP_NUM = ultraDataSource1.Rows[0]["ELLIP_NUM"].ToString(); string UPSETTING_NUM = ultraDataSource1.Rows[0]["UPSETTING_NUM"].ToString(); string CRACK_NUM = ultraDataSource1.Rows[0]["CRACK_NUM"].ToString(); string AIR_NUM = ultraDataSource1.Rows[0]["AIR_NUM"].ToString(); string NOTCH = ultraDataSource1.Rows[0]["NOTCH"].ToString(); string OTHER = ultraDataSource1.Rows[0]["OTHER"].ToString(); if (Convert.ToInt32(PRO_NUM == "" ? "0" : PRO_NUM) != Convert.ToInt32(ACC_NUM == "" ? "0" : ACC_NUM) + Convert.ToInt32(FAIL_NUM == "" ? "0" : FAIL_NUM)) { MessageBox.Show("作业支数=合格支数+废品支数 请查验", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } //if (Convert.ToDouble(PRO_WT == "" ? "0.0" : PRO_WT) != Convert.ToInt32(ACC_WT == "" ? "0.0" : ACC_WT) + // Convert.ToDouble(FAIL_WT == "" ? "0.0" : FAIL_WT)) //{ // MessageBox.Show("作业重量=合格重量+废品重量 请查验", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); // return false; //} //if (Convert.ToInt32(FAIL_NUM == "" ? "0" : FAIL_NUM) != Convert.ToInt32(LEU_NUM == "" ? "0" : LEU_NUM) + // Convert.ToInt32(D4_NUM == "" ? "0" : D4_NUM) + // Convert.ToInt32(ELLIP_NUM == "" ? "0" : ELLIP_NUM) + // Convert.ToInt32(UPSETTING_NUM == "" ? "0" : UPSETTING_NUM) + // Convert.ToInt32(CRACK_NUM == "" ? "0" : CRACK_NUM) + // Convert.ToInt32(AIR_NUM == "" ? "0" : AIR_NUM) + // Convert.ToInt32(NOTCH == "" ? "0" : NOTCH) + // Convert.ToInt32(OTHER == "" ? "0" : OTHER)) //{ // MessageBox.Show("废品支数=LEU+D4+不圆度+加厚壁厚+裂纹+气孔+凹、点坑+其它 请查验", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); // return false; //} return true; } private void ultraGrid1_CellChange(object sender, CellEventArgs e) { ultraGrid1.UpdateData(); if (e.Cell.Column.Key.Equals("ACC_NUM"))//动这个字段会进下面的内容里 { if (ultraDataSource1.Rows[0]["ACC_NUM"].ToString().Equals("")) { ultraDataSource1.Rows[0]["ACC_NUM"] = "0"; } if (ultraDataSource1.Rows[0]["PRO_NUM"].ToString().Equals("")) { ultraDataSource1.Rows[0]["PRO_NUM"] = "0"; } double actnum = double.Parse(ultraDataSource1.Rows[0]["ACC_NUM"].ToString()); if (actnum > int.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString())) { MessageBox.Show("合格支数不能大于加工支数!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } double actwt = 0; if (!ultraDataSource1.Rows[0]["PRO_WT"].ToString().Equals("0")) { if (num != null && !num.Equals("0")) { actwt = double.Parse(ultraDataSource1.Rows[0]["ACC_NUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num)); } } ultraDataSource1.Rows[0]["ACC_WT"] = actwt.ToString("f3"); Value.AccWt = ultraDataSource1.Rows[0]["ACC_WT"].ToString(); double failnum = double.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()) - double.Parse(ultraDataSource1.Rows[0]["ACC_NUM"].ToString()); double failwt = double.Parse(ultraDataSource1.Rows[0]["PRO_WT"].ToString()) - actwt; ultraDataSource1.Rows[0]["FAIL_NUM"] = failnum.ToString(); Value.FailNum = ultraDataSource1.Rows[0]["FAIL_NUM"].ToString(); ultraDataSource1.Rows[0]["FAIL_WT"] = failwt.ToString("f3"); Value.FailWt = ultraDataSource1.Rows[0]["FAIL_WT"].ToString(); } if (e.Cell.Column.Key.Equals("PRO_NUM"))//动这个字段会进下面的内容里 { pronum = ultraDataSource1.Rows[0]["PRO_NUM"].ToString(); if (ultraDataSource1.Rows[0]["PRO_NUM"].ToString().Equals("")) { ultraDataSource1.Rows[0]["PRO_NUM"] = "0"; } double actwt = 0; if (!ultraDataSource1.Rows[0]["PRO_NUM"].ToString().Equals("0")) { if (num != null && !num.Equals("0")) { actwt = double.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num)); } } double actnum = double.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()); ultraDataSource1.Rows[0]["PRO_WT"] = actwt.ToString("f3"); Value.ProWt = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); ultraDataSource1.Rows[0]["ACC_NUM"] = ultraDataSource1.Rows[0]["PRO_NUM"].ToString(); Value.AccNum = ultraDataSource1.Rows[0]["ACC_NUM"].ToString(); ultraDataSource1.Rows[0]["ACC_WT"] = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); Value.AccWt = ultraDataSource1.Rows[0]["ACC_WT"].ToString(); ultraDataSource1.Rows[0]["FAIL_NUM"] = "0"; prowt = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); } if (e.Cell.Column.Key.Equals("FAIL_NUM"))//废品支数 { pronum = ultraDataSource1.Rows[0]["PRO_NUM"].ToString(); prowt = ultraDataSource1.Rows[0]["PRO_WT"].ToString(); if (ultraDataSource1.Rows[0]["FAIL_NUM"].ToString().Equals("")) { ultraDataSource1.Rows[0]["FAIL_NUM"] = "0"; } if (ultraDataSource1.Rows[0]["PRO_NUM"].ToString().Equals("")) { ultraDataSource1.Rows[0]["PRO_NUM"] = "0"; } double actnum = double.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString()); if (actnum > int.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString())) { MessageBox.Show("废品支数不能大于加工支数!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } double actwt = 0; if (!ultraDataSource1.Rows[0]["PRO_WT"].ToString().Equals("0")) { if (num != null && !num.Equals("0")) { actwt = double.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num)); } } ultraDataSource1.Rows[0]["FAIL_WT"] = actwt.ToString("f3"); Value.AccWt = ultraDataSource1.Rows[0]["FAIL_WT"].ToString(); double failnum = double.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()) - double.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString()); double failwt = double.Parse(ultraDataSource1.Rows[0]["PRO_WT"].ToString()) - actwt; ultraDataSource1.Rows[0]["ACC_NUM"] = failnum.ToString(); Value.AccNum = ultraDataSource1.Rows[0]["ACC_NUM"].ToString(); ultraDataSource1.Rows[0]["ACC_WT"] = failwt.ToString("f3"); Value.AccWt = ultraDataSource1.Rows[0]["ACC_WT"].ToString(); } } } }