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();
}
}
}
}