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.Tool;
namespace Core.StlMes.Client.Mcp.Control
{
public partial class PlanExpanLGColdDrawn : UserControl
{
private string num = "";
private string wt = "";
// private InstructionCard _card = new InstructionCard();
private VrpColdDrawnResultEntity _load = new VrpColdDrawnResultEntity();
public VrpColdDrawnResultEntity 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 PlanExpanLGColdDrawn()
{
InitializeComponent();
GridHelper.InitCardGrid(ultraDataSource1, ultraGrid1);
_grid = this.ultraGrid1;
}
///
/// 刷新控件数据显示
///
public void UpdateData()
{
if (_load != null)
{
ultraDataSource1.Rows[0]["PRODUCER"] = _load.Producer;
ultraDataSource1.Rows[0]["SIZDIMATER"] = _load.SizDimater;
ultraDataSource1.Rows[0]["SIZHEIGHT"] = _load.SizHeight;
ultraDataSource1.Rows[0]["ROLLSPEED"] = _load.RollSpeed;
ultraDataSource1.Rows[0]["SPEMANDREL"] = _load.SpeMandrel;
ultraDataSource1.Rows[0]["SPEROLL"] = _load.SpeRoll;
ultraDataSource1.Rows[0]["ROLLGAP"] = _load.RollGap;
ultraDataSource1.Rows[0]["SENDNUM"] = _load.SendNum;
ultraDataSource1.Rows[0]["PRONUM"] = _load.ProNum;
ultraDataSource1.Rows[0]["PROWT"] = _load.ProWt;
ultraDataSource1.Rows[0]["ACCNUM"] = _load.AccNum;
ultraDataSource1.Rows[0]["ACCWT"] = _load.AccWt;
ultraDataSource1.Rows[0]["ACCLEN"] = _load.AccLen;
ultraDataSource1.Rows[0]["FAILNUM"] = string.IsNullOrEmpty(_load.FailNum) ? "0" : _load.FailNum;
ultraDataSource1.Rows[0]["FAILWT"] = string.IsNullOrEmpty(_load.FailWt) ? "0" : _load.FailWt;
ultraDataSource1.Rows[0]["FAILREASON"] = _load.FailReason;
ultraDataSource1.Rows[0]["PRODUCERTIME"] = _load.ProducerTime;
ultraDataSource1.Rows[0]["LOADTIME"] = _load.LoadTime;
ultraDataSource1.Rows[0]["LOADSHIFT"] = _load.LoadShift;
ultraDataSource1.Rows[0]["LOADGROUP"] = _load.LoadGroup;
ultraDataSource1.Rows[0]["LOADUSER"] = _load.LoadUser;
num = _load.ProNum;
wt = _load.ProWt;
}
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("PRODUCER"))
{
Value.Producer = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("SIZDIMATER"))
{
Value.SizDimater = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("SIZHEIGHT"))
{
Value.SizHeight = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("ROLLSPEED"))
{
Value.RollSpeed = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("SPEMANDREL"))
{
Value.SpeMandrel = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("SPEROLL"))
{
Value.SpeRoll = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("ROLLGAP"))
{
Value.RollGap = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("SENDNUM"))
{
Value.SendNum = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("PRONUM"))
{
Value.ProNum = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("PROWT"))
{
Value.ProWt = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("ACCNUM"))
{
Value.AccNum = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("ACCWT"))
{
Value.AccWt = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("ACCLEN"))
{
Value.AccLen = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("FAILNUM"))
{
Value.FailNum = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("FAILWT"))
{
Value.FailWt = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("FAILREASON"))
{
Value.FailReason = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("PRODUCERTIME"))
{
Value.ProducerTime = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("LOADTIME"))
{
Value.LoadTime = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("LOADSHIFT"))
{
Value.LoadShift = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("LOADGROUP"))
{
Value.LoadGroup = e.Cell.Value.ToString();
}
if (e.Cell.Column.Key.Equals("LOADUSER"))
{
Value.LoadUser = e.Cell.Value.ToString();
}
}
catch (Exception ex)
{
}
}
///
/// 验证格试
///
public bool ValidInput1()
{
ultraGrid1.UpdateData();
string TestingNum = ultraDataSource1.Rows[0]["ProNum"].ToString();
string AccNum = ultraDataSource1.Rows[0]["ACCNUM"].ToString();//合格
string ProNum = ultraDataSource1.Rows[0]["PRONUM"].ToString();//作业
string FailNum = ultraDataSource1.Rows[0]["FAILNUM"].ToString();//废品
if (!StringUtil.IsInt(TestingNum))
{
MessageBox.Show("合格支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
if (Convert.ToInt32(ProNum) !=
Convert.ToInt32(AccNum == "" ? "0" : AccNum) +
Convert.ToInt32(FailNum == "" ? "0" : FailNum))
{
MessageBox.Show("作业支数 = 合格支数+ 废品支数,请查验 ", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
return true;
}
private void ultraGrid1_InitializeLayout(object sender, InitializeLayoutEventArgs e)
{
}
private void ultraGrid1_CellChange(object sender, CellEventArgs e)
{
ultraGrid1.UpdateData();
if (e.Cell.Column.Key.Equals("FAILNUM"))//动这个字段会进下面的内容里
{
if (ultraDataSource1.Rows[0]["FAILNUM"].ToString().Equals(""))
{
ultraDataSource1.Rows[0]["FAILNUM"] = "0";
}
if (ultraDataSource1.Rows[0]["PRONUM"].ToString().Equals(""))
{
ultraDataSource1.Rows[0]["PRONUM"] = "0";
}
double actnum = double.Parse(ultraDataSource1.Rows[0]["FAILNUM"].ToString());
if (actnum > int.Parse(ultraDataSource1.Rows[0]["PRONUM"].ToString()))
{
MessageBox.Show("废品支数不能大于加工支数!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
double actwt = 0;
if (!ultraDataSource1.Rows[0]["PROWT"].ToString().Equals("0"))
{
if (num != null && !num.Equals("0"))
{
actwt = double.Parse(ultraDataSource1.Rows[0]["FAILNUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num));
}
}
ultraDataSource1.Rows[0]["FAILWT"] = actwt.ToString("f3");
Value.FailWt = ultraDataSource1.Rows[0]["FAILWT"].ToString();
double failnum = double.Parse(ultraDataSource1.Rows[0]["PRONUM"].ToString()) - double.Parse(ultraDataSource1.Rows[0]["FAILNUM"].ToString());
double failwt = double.Parse(ultraDataSource1.Rows[0]["PROWT"].ToString()) - actwt;
ultraDataSource1.Rows[0]["ACCNUM"] = failnum.ToString();
Value.AccNum = ultraDataSource1.Rows[0]["ACCNUM"].ToString();
ultraDataSource1.Rows[0]["ACCWT"] = failwt.ToString("f3");
Value.AccWt = ultraDataSource1.Rows[0]["ACCWT"].ToString();
}
if (e.Cell.Column.Key.Equals("PRONUM"))//动这个字段会进下面的内容里
{
if (ultraDataSource1.Rows[0]["PRONUM"].ToString().Equals(""))
{
ultraDataSource1.Rows[0]["PRONUM"] = "0";
}
double actwt = 0;
if (!ultraDataSource1.Rows[0]["PRONUM"].ToString().Equals("0"))
{
if (num != null && !num.Equals("0"))
{
actwt = double.Parse(ultraDataSource1.Rows[0]["PRONUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num));
}
}
double actnum = double.Parse(ultraDataSource1.Rows[0]["PRONUM"].ToString());
ultraDataSource1.Rows[0]["PROWT"] = actwt.ToString("f3");
Value.ProWt = ultraDataSource1.Rows[0]["PROWT"].ToString();
//if (piece != null && !piece.Equals(""))
//{
// if (int.Parse(ultraDataSource1.Rows[0]["PRONUM"].ToString()) > int.Parse(piece))
// {
// MessageBox.Show("输入的支数不能超过管号队列合格的支数!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
// ultraDataSource1.Rows[0]["PRONUM"] = num;
// Value.ProNum = ultraDataSource1.Rows[0]["PRONUM"].ToString();
// ultraDataSource1.Rows[0]["PROWT"] = wt;
// Value.ProWt = ultraDataSource1.Rows[0]["PROWT"].ToString();
// ultraDataSource1.Rows[0]["ACCNUM"] = ultraDataSource1.Rows[0]["PRONUM"].ToString();
// Value.ProNum = ultraDataSource1.Rows[0]["ACCNUM"].ToString();
// ultraDataSource1.Rows[0]["ACCWT"] = (double.Parse(ultraDataSource1.Rows[0]["ACCNUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num))).ToString("f3");
// Value.ProWt = ultraDataSource1.Rows[0]["ACCWT"].ToString();
// return;
// }
//}
ultraDataSource1.Rows[0]["ACCNUM"] = ultraDataSource1.Rows[0]["PRONUM"].ToString();
Value.ProNum = ultraDataSource1.Rows[0]["ACCNUM"].ToString();
ultraDataSource1.Rows[0]["ACCWT"] = (double.Parse(ultraDataSource1.Rows[0]["ACCNUM"].ToString()) * (double.Parse(wt)) / (double.Parse(num))).ToString("f3");
Value.ProWt = ultraDataSource1.Rows[0]["ACCWT"].ToString();
}
}
}
}