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.Server; using Core.Mes.Client.Comm.Control; using Infragistics.Win.UltraWinGrid; using System.Collections; using com.steering.mes.mcp.entity; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Mcp.Control; using Core.StlMes.Client.Mcp.VRP.Vrp; using Infragistics.Win.UltraWinEditors; namespace Core.StlMes.Client.Htt { public partial class FrmVrpPierCoSurInspe : FrmBase { private string SlGx {get{return "650404";}} // private string name = ""; private string departm = ""; private string plineCode = ""; private string[] plineCodes; private string storageNo = ""; private string dingwei = ""; UltraComboEditor uceLB = new UltraComboEditor();//缺陷项 public FrmVrpPierCoSurInspe() { InitializeComponent(); this.IsLoadUserView = true; } protected override void OnLoad(EventArgs e) { base.OnLoad(e); this.planJumpControl1.Grid.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False; initControl(); } public override void ToolBar_Click(object sender, string ToolbarKey) { //base.ToolBar_Click(sender, ToolbarKey); switch (ToolbarKey) { case "DoQuery": QuerySinglePlan(); break; case "DoSave": DoSave(); break; case "DoDelete": DoReturn(); break; case "DoUpdate": DoUpdate(); break; case "DoBeside": DoBeside(); break; case "CelBeside": DoCelBeside(); break; case "DoClose": this.Close(); break; } } /// /// 撤销结炉 /// private void DoCelBeside() { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; string num = row.Cells["PRO_NUM"].Text.ToString(); ArrayList list = new ArrayList(); list.Add(row.Cells["HEAT_PLAN_NO"].Value.ToString()); list.Add(row.Cells["PLINE_CODE"].Value.ToString()); list.Add(SlGx); if (MessageUtil.ShowYesNoAndQuestion("是否撤销结炉?") == DialogResult.No) { return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "undoBeside"; ccp.ServerParams = new Object[] { list,num }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("撤销结炉成功!")) { QuerySinglePlan(); initControl(); } } } /// /// 工序结炉 /// private void DoBeside() { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; string num = row.Cells["IN_NUM"].Text.ToString(); ArrayList list = new ArrayList(); list.Add(row.Cells["HEAT_PLAN_NO"].Value.ToString()); list.Add(row.Cells["PLINE_CODE"].Value.ToString()); list.Add(SlGx); if(MessageUtil.ShowYesNoAndQuestion("是否结庐?")==DialogResult.No) { return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "updateDoBeside"; ccp.ServerParams = new Object[] { list,num }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("结炉成功!")) { QuerySinglePlan(); initControl(); } } } /// /// 简单查询 /// private void QuerySinglePlan() { string plnNo = ""; string judgeStoveNo = ""; #region 条件 if (chkPlnNo.Checked) { if (string.IsNullOrEmpty(txtRollBatchId.Text.Trim())) { MessageUtil.ShowTips("请输入炉次计划号!"); return; } else { plnNo = txtRollBatchId.Text.ToString().Trim(); } } if (chkJuNo.Checked) { if (string.IsNullOrEmpty(txtZyBatchId.Text.Trim())) { MessageUtil.ShowTips("请输入炉号!"); return; } else { judgeStoveNo = txtZyBatchId.Text.ToString().Trim(); } } #endregion PlnZyDbkMEntity plan = new PlnZyDbkMEntity(); plan.JudgeStoveNo = judgeStoveNo;//生产批次号 plan.HeatPlanNo = plnNo;//组料炉批号 string dobeside = ""; string index = ""; if (ultraOptionSet1.CheckedIndex.ToString() == "0") { index = "0"; dobeside = ultraOptionSet1.CheckedItem.DataValue.ToString(); } else if (ultraOptionSet1.CheckedIndex.ToString() == "1") { index = "1"; dobeside = ultraOptionSet1.CheckedItem.DataValue.ToString(); } else { index = "2"; } string[] start = contorlPlanStatus1.statusArr; //查询镦拔扩计划 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getDbkPlan", new object[] { plan, plineCodes, dobeside,index,start }, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref dataTable2, true); foreach (UltraGridRow urg in ultraGrid1.Rows) { if (urg.Cells["PLANSTATUS"].Text.Equals("生产中")) { urg.Cells["PLANSTATUS"].Appearance.BackColor = Color.LightGreen; } if (urg.Cells["PLANSTATUS"].Text.Equals("生产完成")) { urg.Cells["PLANSTATUS"].Appearance.BackColor = Color.Red; } if (urg.Cells["PLANSTATUS"].Text.Equals("关闭")) { urg.Cells["PLANSTATUS"].Appearance.BackColor = Color.Red; } if (urg.Cells["BESIDE_STATUS"].Text.Equals("表检结炉")) { urg.Cells["BESIDE_STATUS"].Appearance.BackColor = Color.LightGray; } } if (dt.Rows.Count > 0) { for (int i = 0; i < ultraGrid1.Rows.Count; i++) { if (ultraGrid1.Rows[i].Cells["HEAT_PLAN_SQE"].Value.ToString() == dingwei) { UltraGridRow row = ultraGrid1.Rows[i]; row.Activate(); } } } initControl(); } /// /// 计划详情 /// /// /// private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { this.getUltraGrid1AfterRowActivate(); } private void getUltraGrid1AfterRowActivate() { ultraGrid1.UpdateData(); UltraGridRow row = ultraGrid1.ActiveRow; if (row != null) { string heatNo = row.Cells["HEAT_PLAN_NO"].Value.ToString(); dingwei = row.Cells["HEAT_PLAN_SQE"].Value.ToString(); plineCode = row.Cells["PLINE_CODE"].Value.ToString(); //查询镦拔库管号队列合格的支、吨 DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryDbkPortVrp1", new object[] { heatNo }, ob); string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); VrpJumpingupFaceMEntity result = new VrpJumpingupFaceMEntity(); if (row.Cells["IF_MONITOR_DBK"].Text.ToString().Equals("是")) { this.planJumpControl1.Grid.DisplayLayout.Bands[0].Columns["PRODUCER"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit; this.planJumpControl1.Grid.DisplayLayout.Bands[0].Columns["PRODUCER_TIME"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit; } else { this.planJumpControl1.Grid.DisplayLayout.Bands[0].Columns["PRODUCER"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly; this.planJumpControl1.Grid.DisplayLayout.Bands[0].Columns["PRODUCER_TIME"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly; } result.LoadShift = UserInfo.GetUserOrder(); result.LoadGroup = UserInfo.GetUserGroup(); result.LoadUser = UserInfo.GetUserName(); result.LoadTime = time; result.ProducerTime = time; result.ProNum = dt2.Rows[0]["ACT_COUNT"].ToString(); result.ProWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); result.AccNum = dt2.Rows[0]["ACT_COUNT"].ToString(); result.AccWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); this.planJumpControl1.Value = result; //查询镦粗实绩合格的支数的和 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.getQueryExpandResult1", new object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, this.ob); //VrpLoadingResultEntity result1 = new VrpLoadingResultEntity(); //this.planExpanQuery1.Value = result; string pronum = ""; if (dt.Rows.Count > 0) { pronum = dt.Rows[0]["ACC_NUM"].ToString(); } else { pronum = "0"; } row.Cells["snum"].Value = Convert.ToString(int.Parse(dt2.Rows[0]["ACT_COUNT"].ToString()) - int.Parse(pronum)); //镦拔扩管号队列查询 DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryDbkPortVrp", new object[] { heatNo }, ob); GridHelper.CopyDataToDatatable(ref dt1, ref dataTable4, true); foreach (UltraGridRow urg in ultraGrid5.Rows) { if (urg.Cells["MAT_STATUS"].Text.Equals("剔除")) { urg.Cells["MAT_STATUS"].Appearance.ForeColor = Color.Red; } } DataTable dt3 = new DataTable(); GridHelper.CopyDataToDatatable(ref dt3, ref dataTable1, true); foreach (UltraGridRow ugr in ultraGrid4.Rows) { ugr.Cells["UPDATE"].Value = "修改"; ugr.Cells["DELETE"].Value = "删除"; } this.GetLoadResult(heatNo); } } /// /// 根据计划号查询镦粗实绩 /// /// public void GetLoadResult(string heatNo) { //查询镦粗实绩合格支数的和 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.getQueryExpandResult", new object[] { heatNo }, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref dtLoadRecord, true); if (dt.Rows.Count <= 0) { DataTable dt1 = new DataTable(); GridHelper.CopyDataToDatatable(ref dt1, ref dataTable3, true); } } /// /// 初始化控件 /// private void initControl() { UltraGridRow uRow = this.ultraGrid1.ActiveRow; if (uRow != null) { string heat = uRow.Cells["HEAT_PLAN_NO"].Value.ToString(); //查询镦拔库管号队列合格的支、吨 DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryDbkPortVrp1", new object[] { heat }, ob); string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); VrpJumpingupFaceMEntity result = new VrpJumpingupFaceMEntity(); result.LoadShift = UserInfo.GetUserOrder(); result.LoadGroup = UserInfo.GetUserGroup(); result.LoadUser = UserInfo.GetUserName(); result.LoadTime = time; result.ProducerTime = time; result.ProNum = "0"; result.ProWt = "0"; result.ProNum = dt2.Rows[0]["ACT_COUNT"].ToString(); result.ProWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); result.AccNum = dt2.Rows[0]["ACT_COUNT"].ToString(); result.AccWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); this.planJumpControl1.Value = result; } } private void chkStarts_CheckedChanged(object sender, EventArgs e) { if (chkPlnNo.Checked) { txtRollBatchId.Enabled = true; } else { txtRollBatchId.Enabled = false; } if (chkJuNo.Checked) { txtZyBatchId.Enabled = true; } else { txtZyBatchId.Enabled = false; } } /// /// 实绩新增 /// private void DoSave() { int count = 0; if (this.planJumpControl1.ValidInput1()) { UltraGridRow row = ultraGrid1.ActiveRow; if (row != null) { string groupNo = row.Cells["BATCH_GROUD_NO"].Value.ToString(); this.planJumpControl1.UpdateData(); VrpJumpingupFaceMEntity result = this.planJumpControl1.Value; result.HeatPlanNo = row.Cells["HEAT_PLAN_NO"].Value.ToString(); if (result.AccNum == null || result.AccNum == "") { result.AccNum = "0"; } if (result.AccWt == null || result.AccWt == "") { result.AccWt = "0"; } if (result.FailNum == null || result.FailNum == "") { result.FailNum = "0"; } if (result.FailWt == null || result.FailWt == "") { result.FailWt = "0"; } //管号队列合格支,重量 int count1 = 0; double weghit = 0; DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpExpandResult.queryPortVrpResult", new Object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, ob); if (dt.Rows.Count > 0) { count1 = int.Parse(dt.Rows[0]["ACT_COUNT"].ToString()); weghit = Double.Parse(dt.Rows[0]["ACT_WEIGHT"].ToString()); } if (int.Parse(result.ProNum) > count1) { MessageUtil.ShowTips("作业支数不能超过管号队列合格支数!"); return; } if (result.ProNum.Equals("0")) { MessageUtil.ShowTips("加工支数是零,无法新增!!"); return; } if (int.Parse(result.ProNum) < int.Parse(result.AccNum) + int.Parse(result.FailNum)) { MessageUtil.ShowTips("合格支数与废品支数之和不能超过加工支数!"); return; } if (result.FailNum!="0"&&ultraGrid4.Rows.Count == 0) { MessageUtil.ShowTips("请输入废品原因!"); return; } ArrayList list1 = new ArrayList(); for (int j = 0; j < ultraGrid4.Rows.Count; j++) { ArrayList listRess = new ArrayList(); UltraGridRow checkrow = ultraGrid4.Rows[j]; string defNmae = checkrow.Cells["DEF_FILL_NAME"].Text.ToString(); string defNum = checkrow.Cells["DEF_FILL_NUM"].Text.ToString(); if (!defNmae.Equals("")&&defNum.Equals("")) { MessageUtil.ShowTips("缺陷支数不能为空!"); return; } if (!defNmae.Equals("") && defNum.Equals("0")) { MessageUtil.ShowTips("缺陷支数不能为零!"); return; } listRess.Add(checkrow.Cells["DEF_FILL_NAME"].Text.ToString()); listRess.Add(checkrow.Cells["DEF_FILL_NUM"].Text.ToString()); listRess.Add(row.Cells["HEAT_PLAN_NO"].Value.ToString()); list1.Add(listRess); } ArrayList list = new ArrayList(); for (int i = 0; i < ultraGrid3.Rows.Count; i++) { UltraGridRow checkrow = ultraGrid3.Rows[i]; if (Convert.ToBoolean(checkrow.Cells["CHK"].Text)==true) { count += 1; VrpJumpingupFaceDEntity resultD = getRowData(checkrow); resultD.ResultNo = checkrow.Cells["SQE_NO"].Value.ToString(); list.Add(resultD); } } if (count == 0) { /* if (MessageUtil.ShowYesNoAndQuestion("表检检验项无数据, 是否需要录入表面检验项?") == DialogResult.Yes) { ultraExpandableGroupBox1.Expanded = true; };*/ } if (result.ProNum.Equals("0")) { MessageUtil.ShowTips("作业支数是零,无法新增!!"); return; } //查询镦粗实绩合格的支数的和 DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.getQueryExpandResult1", new object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, this.ob); //VrpLoadingResultEntity result1 = new VrpLoadingResultEntity(); //this.planExpanQuery1.Value = result; string pronum = ""; if (dt2.Rows.Count > 0) { pronum = dt2.Rows[0]["ACC_NUM"].ToString(); } else { pronum = "0"; } if (int.Parse(pronum) + int.Parse(result.ProNum) > count1) { MessageUtil.ShowTips("实绩合格支数和作业实绩支数的和超过管号对列合格支数,无法新增!!"); return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "saveExpandResult"; ccp.ServerParams = new Object[] { result, SlGx, row.Cells["PLINE_CODE"].Value.ToString(), list, list1,groupNo }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("新增镦粗成功!")) { QuerySinglePlan(); initControl(); } } } } } /// /// 撤销 /// private void DoReturn() { UltraGridRow row = ultraGrid1.ActiveRow; UltraGridRow Rows = ultraGrid2.ActiveRow; if (Rows == null) return; if (row == null) return; string flag = ""; int delCount = 0; int detCount = int.Parse(Rows.Cells["FAIL_NUM"].Value.ToString()); ArrayList list = new ArrayList(); delCount += 1; flag = "0"; ArrayList list1 = new ArrayList(); list1.Add(Rows.Cells["RESULT_NO"].Value.ToString()); list1.Add(Rows.Cells["DEF_SERIAL_ITEM"].Value.ToString()); // list.Add(list1); //选择外观检测实绩 if (delCount == 0) { foreach (UltraGridRow ugr1 in ultraGrid3.Rows) { if (Convert.ToBoolean(ugr1.Cells["CHK"].Text) == true) { flag = "1"; ArrayList list2 = new ArrayList(); list2.Add(ugr1.Cells["RESULT_NO"].Value.ToString()); list2.Add(ugr1.Cells["M_RESULT_NO"].Value.ToString()); list.Add(list2); } } } if (flag == "") { MessageUtil.ShowTips("请选择要删除的信息!"); return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "deleteVrpExpandResult"; ccp.ServerParams = new Object[] { list1,list, row.Cells["HEAT_PLAN_NO"].Value.ToString(), row.Cells["PLINE_CODE"].Value.ToString(), SlGx, flag, detCount }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("删除镦粗成功!")) { QuerySinglePlan(); initControl(); } } } /// /// 修改 /// private void DoUpdate() { UltraGridRow row = ultraGrid1.ActiveRow; UltraGridRow urg = ultraGrid2.ActiveRow; if (urg == null) return; if (row == null) return; int count = 0; if (this.planJumpControl1.ValidInput1()) { this.planJumpControl1.UpdateData(); VrpJumpingupFaceMEntity result = this.planJumpControl1.Value; result.ResultNo = urg.Cells["RESULT_NO"].Value.ToString(); result.HeatPlanNo = row.Cells["HEAT_PLAN_NO"].Value.ToString(); result.PlineCode = row.Cells["PLINE_CODE"].Value.ToString(); if (result.AccNum == null || result.AccNum == "") { result.AccNum = "0"; } if (result.AccWt == null || result.AccWt == "") { result.AccWt = "0"; } if (result.FailNum == null || result.FailNum == "") { result.FailNum = "0"; } if (result.FailWt == null || result.FailWt == "") { result.FailWt = "0"; } //管号队列合格支,重量 int count1 = 0; double weghit = 0; DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpExpandResult.queryPortVrpResult", new Object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, ob); if (dt.Rows.Count > 0) { count1 = int.Parse(dt.Rows[0]["ACT_COUNT"].ToString()); weghit = Double.Parse(dt.Rows[0]["ACT_WEIGHT"].ToString()); } if (result.ProNum.Equals("0")) { MessageUtil.ShowTips("加工支数是零,无法修改!!"); return; } if (int.Parse(result.ProNum) < int.Parse(result.AccNum) + int.Parse(result.FailNum)) { MessageUtil.ShowTips("合格支数与废品支数之和不能超过加工支数!"); return; } if (result.FailNum != "0" && ultraGrid4.Rows.Count == 0) { MessageUtil.ShowTips("请输入废品原因!"); return; } ArrayList list1 = new ArrayList(); for (int j = 0; j < ultraGrid4.Rows.Count; j++) { ArrayList listRess = new ArrayList(); UltraGridRow checkrow = ultraGrid4.Rows[j]; string defNmae = checkrow.Cells["DEF_FILL_NAME"].Text.ToString(); string defNum = checkrow.Cells["DEF_FILL_NUM"].Text.ToString(); if (!defNmae.Equals("") && defNum.Equals("")) { MessageUtil.ShowTips("缺陷支数不能为空!"); return; } if (!defNmae.Equals("") && defNum.Equals("0")) { MessageUtil.ShowTips("缺陷支数不能为零!"); return; } listRess.Add(checkrow.Cells["DEF_FILL_NAME"].Text.ToString()); listRess.Add(checkrow.Cells["DEF_FILL_NUM"].Text.ToString()); listRess.Add(row.Cells["HEAT_PLAN_NO"].Value.ToString()); list1.Add(listRess); } if (count == 0) { /* if (MessageUtil.ShowYesNoAndQuestion("表检检验项无数据, 是否需要录入表面检验项?") == DialogResult.Yes) { ultraExpandableGroupBox1.Expanded = true; };*/ } if (result.ProNum.Equals("0")) { MessageUtil.ShowTips("作业支数是零,无法修改!!"); return; } //查询镦粗实绩合格的支数的和 DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.getQueryExpandResult1", new object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, this.ob); //VrpLoadingResultEntity result1 = new VrpLoadingResultEntity(); //this.planExpanQuery1.Value = result; string pronum = ""; if (dt2.Rows.Count > 0) { pronum = dt2.Rows[0]["ACC_NUM"].ToString(); } else { pronum = "0"; } if (int.Parse(pronum) + int.Parse(result.ProNum) - int.Parse(urg.Cells["PRO_NUM"].Value.ToString()) > count1) { MessageUtil.ShowTips("实绩合格支数和作业实绩支数的和超过管号对列合格支数,无法修改!!"); return; } ////管号队列合格支,重量 //int count1 = 0; //double weghit = 0; //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpExpandResult.queryPortVrpResult", new Object[] { row.Cells["HEAT_PLAN_NO"].Value.ToString() }, ob); //if (dt.Rows.Count > 0) //{ // count1 = int.Parse(dt.Rows[0]["ACT_COUNT"].ToString()); // weghit = Double.Parse(dt.Rows[0]["ACT_WEIGHT"].ToString()); //} //if (count1 != int.Parse(result.AccNum) + int.Parse(result.FailNum)) //{ // MessageUtil.ShowTips("合格支数+废品支数不等于管号队列合格支数,请检查!"); // return; //} //if (weghit != Double.Parse((Double.Parse(result.AccWt) + Double.Parse(result.FailWt)).ToString("f3")))//f3就是保留3为小数 //{ // MessageUtil.ShowTips("合格重量+废品重量不等于管号队列合格重量,请检查!"); // return; //} ArrayList list = new ArrayList(); for (int i = 0; i < ultraGrid3.Rows.Count; i++) { UltraGridRow checkrow = ultraGrid3.Rows[i]; if (Convert.ToBoolean(checkrow.Cells["CHK"].Text)==true) { count += 1; VrpJumpingupFaceDEntity resultD = getRowData(checkrow); resultD.ResultNo = checkrow.Cells["RESULT_NO"].Value.ToString(); resultD.MResultNo = checkrow.Cells["M_RESULT_NO"].Value.ToString(); list.Add(resultD); } } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "updateVrpExpandResult"; ccp.ServerParams = new Object[] { result, SlGx,list }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("修改镦粗成功!")) { QuerySinglePlan(); initControl(); } } } } private void FrmVrpPierCoSurInspe_Load(object sender, EventArgs e) { //cmbDate.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd 00:00:00")); //cmbEndDate.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd 23:59:59")); //获取工序 departm = UserInfo.GetDepartment(); plineCodes = comm.GetPlineCode(this.ValidDataPurviewIds, "E", ob); //查询仓库代码 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getStorageDep", new object[] { this.UserInfo.GetDeptid(), Core.Mes.Client.Comm.Server.ClsBaseInfo.GetDepartIdBySectionId(this.UserInfo.GetDeptid(), this.ob), "800202", "800304" }, this.ob); if (dt.Rows.Count > 0) { storageNo = dt.Rows[0]["STORAGE_NO"].ToString(); } YdmBaseClass.InitComboEditorWithParm(uceLB, "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.doComIinfoRession", "BASENAME", this.ob,true, new Object[] { "6511" }); YdmBaseClass.BindColumn(uceLB, "DEF_FILL_NAME", this.Controls, ultraGrid4, 0); QuerySinglePlan(); } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { UltraGridRow urg = ultraGrid2.ActiveRow; if (urg == null) { return; } VrpJumpingupFaceMEntity result = new VrpJumpingupFaceMEntity(); result.AccNum = urg.Cells["ACC_NUM"].Value.ToString(); result.AccWt = urg.Cells["ACC_WT"].Value.ToString(); result.LeuNum = urg.Cells["LEU_NUM"].Value.ToString(); result.D4Num = urg.Cells["D4_NUM"].Value.ToString(); result.EllipNum = urg.Cells["ELLIP_NUM"].Value.ToString(); result.UpsettingNum = urg.Cells["UPSETTING_NUM"].Value.ToString(); result.CrackNum = urg.Cells["CRACK_NUM"].Value.ToString(); result.AirNum = urg.Cells["AIR_NUM"].Value.ToString(); result.Notch = urg.Cells["NOTCH"].Value.ToString(); result.Other = urg.Cells["OTHER"].Value.ToString(); result.FailNum = urg.Cells["FAIL_NUM"].Value.ToString(); result.FailWt = urg.Cells["FAIL_WT"].Value.ToString(); result.Producer = urg.Cells["PRODUCER"].Value.ToString(); result.ProducerTime = urg.Cells["PRODUCER_TIME"].Value.ToString(); result.LoadShift = urg.Cells["LOAD_SHIFT"].Value.ToString(); result.LoadGroup = urg.Cells["LOAD_GROUP"].Value.ToString(); result.LoadUser = urg.Cells["UPDATE_NAME"].Value.ToString() == "" ? this.UserInfo.GetUserName() : urg.Cells["UPDATE_NAME"].Value.ToString(); result.ProNum = urg.Cells["PRO_NUM"].Value.ToString(); result.ProWt = urg.Cells["PRO_WT"].Value.ToString(); result.LoadTime = urg.Cells["LOAD_TIME"].Value.ToString(); this.planJumpControl1.Value = result; GetQueryJumD(urg.Cells["RESULT_NO"].Value.ToString()); doQueryRession(urg.Cells["DEF_SERIAL_ITEM"].Value.ToString()); } /// /// 查询废品原因 /// /// private void doQueryRession(string defNo) { //查询废品原因 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.doQueryRession", new object[] { defNo }, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true); foreach (UltraGridRow ugr in ultraGrid4.Rows) { ugr.Cells["UPDATE"].Value = "修改"; ugr.Cells["DELETE"].Value = "删除"; } } /// /// 查询表检从表 /// /// private void GetQueryJumD(string resultNo) { //查询镦粗从表实绩 DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.getQueryJumDResult", new object[] { resultNo }, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref dataTable3, true); } public VrpJumpingupFaceDEntity getRowData(UltraGridRow checkrow) { VrpJumpingupFaceDEntity resultD = new VrpJumpingupFaceDEntity(); resultD.SqeNo = checkrow.Cells["SQE_NO"].Value.ToString().Trim(); resultD.LeuD = checkrow.Cells["LEU_D"].Value.ToString().Trim(); resultD.D4Max = checkrow.Cells["D4_MAX"].Value.ToString().Trim(); resultD.D4Min = checkrow.Cells["D4_MIN"].Value.ToString().Trim(); resultD.EllipVal = checkrow.Cells["ELLIP_VAL"].Value.ToString().Trim(); resultD.UpwMax = checkrow.Cells["UPW_MAX"].Value.ToString().Trim(); resultD.UpwMin = checkrow.Cells["UPW_MIN"].Value.ToString().Trim(); resultD.WallVal = checkrow.Cells["WALL_VAL"].Value.ToString().Trim(); resultD.DriftingVal = checkrow.Cells["DRIFTING_VAL"].Value.ToString().Trim(); resultD.CreateName = checkrow.Cells["CREATE_NAME"].Value.ToString().Trim(); return resultD; } /// /// 自检记录序号加1 /// /// /// private void ultraGrid3_AfterRowInsert(object sender, RowEventArgs e) { e.Row.Cells["SQE_NO"].Value = (e.Row.Index == 0 ? 1 : Convert.ToInt32(((Infragistics.Win.UltraWinGrid.UltraGrid)sender).Rows[e.Row.Index - 1].Cells["SQE_NO"].Value) + 1); e.Row.Cells["CHK"].Value = true; } private void BtOffline_Click(object sender, EventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; UltraGridRow row3 = ultraGrid5.ActiveRow; if (row3 == null) return; /* UltraGridRow row2 = ultraGrid2.ActiveRow; if (row2 == null) return;*/ string groupNo = row.Cells["BATCH_GROUD_NO"].Value.ToString(); if (OfflineNum.Value.ToString().Equals("0")) { MessageUtil.ShowTips("请输入离线支数!"); return; } if (txtReasion.Text.Trim().ToString().Equals("")) { MessageUtil.ShowTips("请输入离线原因!"); return; } VrpJumpingupFaceMEntity result = this.planJumpControl1.Value; string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); ArrayList list = new ArrayList(); list.Add(row.Cells["HEAT_PLAN_NO"].Value.ToString()); list.Add(SlGx); list.Add(""); list.Add(this.UserInfo.GetUserName()); list.Add(time); list.Add(this.UserInfo.GetUserOrder()); list.Add(this.UserInfo.GetUserGroup()); list.Add(OfflineNum.Value.ToString()); list.Add(row3.Cells["JUDGE_STOVE_NO"].Value.ToString()); list.Add(row3.Cells["BATCH_NO"].Value.ToString()); list.Add(txtReasion.Text.ToString()); // list.Add(row2.Cells["RESULT_NO"].Value.ToString()); if (MessageUtil.ShowYesNoAndQuestion("是否离线?") == DialogResult.No) return; CoreClientParam ccp = new CoreClientParam(); try { this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待 if (Constant.WaitingForm == null) { Constant.WaitingForm = new WaitingForm(); } Constant.WaitingForm.ShowToUser = true; Constant.WaitingForm.Show(); Constant.WaitingForm.Update(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "offLineExpandResult"; ccp.ServerParams = new Object[] { result,list, row.Cells["PLINE_CODE"].Value.ToString(), storageNo,groupNo }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); this.Cursor = Cursors.Default; Constant.WaitingForm.ShowToUser = false; Constant.WaitingForm.Close(); Constant.WaitingForm = null; } catch (Exception ex) { this.Cursor = Cursors.Default; Constant.WaitingForm.ShowToUser = false; Constant.WaitingForm.Close(); Constant.WaitingForm = null; } if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("离线成功!")) { QuerySinglePlan(); txtReasion.Clear(); } } } private void craftImg_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; string craftPath = YdmBaseClass.getQueryCraftNoDBK(row.Cells["CRAFT_FILE_NO"].Text.ToString(), row.Cells["CRAFT_SEQ"].Text.ToString(), ob); if (e.Button.Key.ToLower().Equals("select")) { FormFileDown down = new FormFileDown(ob, craftPath); down.CtrlFileDown1.Button3.Visible = false; down.ShowDialog(); } } private void ultraGrid4_CellChange(object sender, CellEventArgs e) { UltraGridRow row1 = ultraGrid1.ActiveRow; UltraGridRow row2 = ultraGrid2.ActiveRow; string heatNo = row1.Cells["HEAT_PLAN_NO"].Value.ToString(); string ProNum = ""; string ProWt = ""; //if (row2==null) // { //查询镦拔库管号队列合格的支、吨 //DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryDbkPortVrp1", new object[] { heatNo }, ob); //ProNum = dt2.Rows[0]["ACT_COUNT"].ToString(); //ProWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); ProNum = Core.StlMes.Client.Mcp.Control.PlanJumpControl.pronum; ProWt = Core.StlMes.Client.Mcp.Control.PlanJumpControl.prowt; //} //else //{ // ProNum = row2.Cells["PRO_NUM"].Value.ToString(); ; // ProWt = row2.Cells["PRO_WT"].Value.ToString(); ; //} if (e.Cell.Column.Key.Equals("DEF_FILL_NUM")) { if (e.Cell.Row.Cells["DEF_FILL_NUM"].Value == null) { e.Cell.Row.Cells["DEF_FILL_NUM"].Value = "0"; } else { ultraGrid4.UpdateData(); string actLen = e.Cell.Row.Cells["DEF_FILL_NUM"].Value.ToString(); if (!StringUtil.IsInt(actLen) || actLen == "0") { e.Cell.Row.Cells["DEF_FILL_NUM"].Value = "0"; } if (int.Parse(ProNum) < int.Parse(e.Cell.Row.Cells["DEF_FILL_NUM"].Value.ToString())){ e.Cell.Row.Cells["DEF_FILL_NUM"].Value = 0; } } int count = 0; foreach (UltraGridRow row in ultraGrid4.Rows) { count += int.Parse(row.Cells["DEF_FILL_NUM"].Value.ToString()); } if (int.Parse(ProNum) < count) { MessageUtil.ShowTips("废品支数不能大于作业支数!"); e.Cell.Row.Cells["DEF_FILL_NUM"].Value = 0; count = 0; foreach (UltraGridRow row in ultraGrid4.Rows) { count += int.Parse(row.Cells["DEF_FILL_NUM"].Value.ToString()); } //return; } //获取废品重量 DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.queryFaillWt", new object[] { heatNo, count.ToString() }, ob); string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); VrpJumpingupFaceMEntity result = new VrpJumpingupFaceMEntity(); result.LoadShift = UserInfo.GetUserOrder(); result.LoadGroup = UserInfo.GetUserGroup(); result.LoadUser = UserInfo.GetUserName(); result.LoadTime = time; result.ProducerTime = time; result.ProNum = ProNum; result.ProWt = ProWt; result.FailNum = count.ToString(); result.FailWt = dt1.Rows[0]["ACT_WEIGHT"].ToString(); result.AccNum = (int.Parse(ProNum) - count).ToString(); result.AccWt = (double.Parse(ProWt) - double.Parse(result.FailWt)).ToString("f3"); this.planJumpControl1.Value = result; } } /// /// ULTRAGRID4 按钮点击事件 /// /// /// private void ultraGrid4_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow urg = ultraGrid2.ActiveRow; UltraGridRow ugrM = ultraGrid4.ActiveRow; UltraGridRow row1 = ultraGrid1.ActiveRow; string heatNo = row1.Cells["HEAT_PLAN_NO"].Value.ToString(); string ProNum = ""; string ProWt = ""; if (ugrM == null) { return; } if (urg == null) { //查询镦拔库管号队列合格的支、吨 DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryDbkPortVrp1", new object[] { heatNo }, ob); ProNum = dt2.Rows[0]["ACT_COUNT"].ToString(); ProWt = dt2.Rows[0]["ACT_WEIGHT"].ToString(); } else { ProNum = urg.Cells["PRO_NUM"].Value.ToString(); ; ProWt = urg.Cells["PRO_WT"].Value.ToString(); ; } if (e.Cell.Text.Equals("修改")) { if (ugrM.Cells["DEF_SERIAL_ITEM"].Text.Equals("")) { MessageUtil.ShowTips("未新增不能修改!"); return; } ArrayList param = new ArrayList(); param.Add(ugrM.Cells["DEF_FILL_NAME"].Text.ToString()); param.Add(ugrM.Cells["DEF_FILL_NUM"].Value.ToString()); param.Add(ugrM.Cells["DEF_SERIAL_NO"].Text.ToString()); param.Add(ugrM.Cells["DEF_SERIAL_ITEM"].Text.ToString()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "updateWasteRess"; ccp.ServerParams = new object[] { param,"0"}; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("修改成功!")) { doQueryRession(urg.Cells["DEF_SERIAL_ITEM"].Value.ToString()); } } } else //删除 { if (ugrM.Cells["DEF_SERIAL_ITEM"].Text.Equals("")) { MessageUtil.ShowTips("未新增不能删除!"); return; } ArrayList param = new ArrayList(); param.Add(ugrM.Cells["DEF_SERIAL_NO"].Text.ToString()); param.Add(ugrM.Cells["DEF_SERIAL_ITEM"].Text.ToString()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe"; ccp.MethodName = "updateWasteRess"; ccp.ServerParams = new object[] { param, "1" }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("删除成功!")) { doQueryRession(urg.Cells["DEF_SERIAL_ITEM"].Value.ToString()); } } } int count = 0; foreach (UltraGridRow row in ultraGrid4.Rows) { count += int.Parse(row.Cells["DEF_FILL_NUM"].Value.ToString()); } //获取废品重量 DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmVrpPierCoSurInspe.queryFaillWt", new object[] { heatNo, count.ToString() }, ob); string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); VrpJumpingupFaceMEntity result = new VrpJumpingupFaceMEntity(); result.LoadShift = UserInfo.GetUserOrder(); result.LoadGroup = UserInfo.GetUserGroup(); result.LoadUser = UserInfo.GetUserName(); result.LoadTime = time; result.ProducerTime = time; result.ProNum = ProNum; result.ProWt = ProWt; result.FailNum = count.ToString(); result.FailWt = dt1.Rows[0]["ACT_WEIGHT"].ToString(); result.AccNum = (int.Parse(ProNum) - count).ToString(); result.AccWt = (double.Parse(ProWt) - double.Parse(result.FailWt)).ToString("f3"); this.planJumpControl1.Value = result; } private void btnChangeLen_Click(object sender, EventArgs e) { UltraGridRow urg = ultraGrid1.ActiveRow; if (urg == null) return; FrmChangeLength FrmChangeLength = new FrmChangeLength(urg.Cells["HEAT_PLAN_NO"].Value.ToString(), ob); FrmChangeLength.ShowDialog(); QuerySinglePlan(); } } }