using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Core.StlMes.Client.PipeLeaveFactory.Dialog { public partial class FrmLocInfo : FrmBase { public FrmLocInfo(string loadNo,string judgeNo,string batchNo,string groupNo,string ordLnDlyPk,OpeBase ob) { InitializeComponent(); _loadNo=loadNo; _judgeNo = judgeNo; _batchNo = batchNo; _groupNo = groupNo; _ordLnDlyPk = ordLnDlyPk; _ob = ob; query(); } private string _loadNo = ""; private string _judgeNo = ""; private string _batchNo = ""; private string _groupNo = ""; private string _ordLnDlyPk = ""; private OpeBase _ob; private void ultraToolbarsManager1_ToolClick_1(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "query": query(); break; case "doConfirm": doConfirm(); break; case "Close": this.Close(); break; } } private void query() { DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmLocInfo.queryLocInfo", new Object[] { _loadNo, _judgeNo, _batchNo, _groupNo, _ordLnDlyPk }, _ob); GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable1, true); dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmLocInfo.queryMatInfo", new Object[] { _judgeNo, _batchNo, _groupNo, _ordLnDlyPk }, _ob); GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable2, true); GridHelper.RefreshAndAutoSizeExceptColumns(this.ultraGrid1); GridHelper.RefreshAndAutoSizeExceptColumns(this.ultraGrid2); } private void doConfirm() { ultraGrid1.UpdateData(); ultraGrid2.UpdateData(); if (ultraGrid1.ActiveRow==null) return; if (ultraGrid2.ActiveRow == null) return; double count = 0; if (!double.TryParse(ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value.ToString(), out count)) { MessageUtil.ShowTips("请输入正确的倒料支数"); return; } if (!double.TryParse(ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value.ToString(), out count)) { MessageUtil.ShowTips("请输入正确的倒料支数"); return; } if(ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value.ToString()!=ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value.ToString()) { MessageUtil.ShowTips("倒料支数必须一致"); return; } ArrayList list1 = new ArrayList(); list1.Add(ultraGrid1.ActiveRow.Cells["LOADVEHICLE_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["JUDGE_STOVE_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["BATCH_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["GROUP_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["ORD_LN_DLY_PK"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["STORAGE_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["LOCATION_NO"].Value.ToString()); list1.Add(ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value.ToString()); ArrayList list2 = new ArrayList(); list2.Add(ultraGrid2.ActiveRow.Cells["JUDGE_STOVE_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["BATCH_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["BATCH_GROUD_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["ORD_LN_DLY_PK"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["STORAGE_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["LOCATION_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["BILL_NO"].Value.ToString()); list2.Add(ultraGrid2.ActiveRow.Cells["TALLYSHEET_NO"].Value.ToString()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.FrmLocInfo"; ccp.MethodName = "doConfirm"; ccp.ServerParams = new object[] { list1, list2 }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp != null) { if (ccp.ReturnCode == -1) { MessageUtil.ShowWarning(ccp.ReturnInfo); return; } } else { return; } MessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); query(); } private void delete() { throw new NotImplementedException(); } private void FrmLocInfo_Load(object sender, EventArgs e) { GridHelper.SetColumnsActivateAndColor(ultraGrid1.Rows.Band, "MOVE_COUNT"); GridHelper.SetColumnsActivateAndColor(ultraGrid2.Rows.Band, "MOVE_COUNT"); } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { //ultraGrid1.ActiveRow.CellAppearance.BackColor = Color.DeepSkyBlue; } private void ultraGrid1_CellChange(object sender, CellEventArgs e) { ultraGrid1.UpdateData(); if (ultraGrid1.ActiveRow == null) return; double count=0; if (!double.TryParse(ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value.ToString(), out count)) { ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value = double.Parse(ultraGrid1.ActiveRow.Cells["ACT_COUNT"].Value.ToString()); return; } if (count > double.Parse(ultraGrid1.ActiveRow.Cells["ACT_COUNT"].Value.ToString())) { ultraGrid1.ActiveRow.Cells["MOVE_COUNT"].Value = double.Parse(ultraGrid1.ActiveRow.Cells["ACT_COUNT"].Value.ToString()); return; } } private void ultraGrid2_CellChange(object sender, CellEventArgs e) { ultraGrid2.UpdateData(); if (ultraGrid2.ActiveRow == null) return; double count = 0; if (!double.TryParse(ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value.ToString(), out count)) { ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value = double.Parse(ultraGrid2.ActiveRow.Cells["ACT_COUNT"].Value.ToString()); return; } if (count > double.Parse(ultraGrid2.ActiveRow.Cells["ACT_COUNT"].Value.ToString())) { ultraGrid2.ActiveRow.Cells["MOVE_COUNT"].Value = double.Parse(ultraGrid2.ActiveRow.Cells["ACT_COUNT"].Value.ToString()); return; } } } }