using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Mcp.Treatment.Entity; using CoreFS.CA06; using Infragistics.Win; 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; using Core.StlMes.Client.Mcp.Treatment.HeatTreatment; namespace Core.StlMes.Client.Mcp.Treatment { public partial class FrmHttInStore : FrmBase { public FrmHttInStore() { InitializeComponent(); } private string[] plineCode = null; private void FrmHttInStore_Load(object sender, EventArgs e) { DateTime now = DateTime.Now; DateTime dt1 = new DateTime(now.Year, now.Month, 1);//当月第一天 DateTime dt2 = dt1.AddMonths(1).AddDays(-1);//当月最后一天 this.StartTime.Value = DateTime.Parse(dt1.ToString("yyyy-MM-dd") + " 00:00:00"); this.EndTime.Value = DateTime.Parse(dt2.ToString("yyyy-MM-dd") + " 23:59:59"); this.StartTime1.Value = DateTime.Parse(dt1.ToString("yyyy-MM-dd") + " 00:00:00"); this.EndTime1.Value = DateTime.Parse(dt2.ToString("yyyy-MM-dd") + " 23:59:59"); EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid3.DisplayLayout.Bands[0]); plineCode = Core.StlMes.Client.Mcp.Treatment.HeatTreatment.comm.GetPlineCode(ValidDataPurviewIds, "F", ob); portHttBatchControl1.ob = ob; portHttBatchControl1.SetOfflineCode(new string[] { "600211" }); portHttBatchControl1.SetDeleteReason("600406"); portHttBatchControl1.userName = UserInfo.GetUserName(); portHttBatchControl1.HttWasteChange += QuerySinglePlan; } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "DoQuery": QuerySinglePlan(); break; case"DoQueryInList": doQueryInList(); break; case"DoSave": doSave(); break; case"DoBeside": doBeside(); break; case"CancelBeside": cancelBeside(); break; case"CancelPipe": cancelPipe(); break; case "Print": print(); break; case "updateLen": updateLen(); break; case "Close": this.Close(); break; } } /// /// 长度修改 /// /// private void updateLen() { this.portHttBatchControl1.updateLen(); } /// /// 热处理缴库单 /// private void print() { this.ultraGrid1.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if (row == null) { return; } string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepHttInStoreTH.cpt&HEAT_PLAN_NO=" + row.Cells["HeatPlanNo"].Text + "&JUDGE_STOVE_NO=" + row.Cells["JudgeStoveNo"].Text; FrmExcel fre = new FrmExcel(this.ob, strurl); fre.AutoSize = true; fre.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fre.WindowState = FormWindowState.Maximized; fre.Show(); } /// /// 查询炉计划 /// private void QuerySinglePlan() { string startTim = ""; string endTim = ""; string lotNo = ""; string judgeNo = ""; string nodeStaus = ""; if (this.chkJugeHeatNo.Checked && this.txtJugeNo.Text.Trim() != "") { judgeNo = this.txtJugeNo.Text.Trim(); } if (chkTim.Checked) { if (DateTime.Parse(StartTime.Value.ToString()) > DateTime.Parse(EndTime.Value.ToString())) { MessageUtil.ShowTips("选择的前面时间不能大于后面的时间!"); return; } else { startTim = this.StartTime.Value.ToString("yyyy-MM-dd HH:mm:ss"); endTim = this.EndTime.Value.ToString("yyyy-MM-dd HH:mm:ss"); } } if (this.chkLotNo.Checked && this.txtLotNo.Text.Trim() != "") { lotNo = this.txtLotNo.Text.Trim(); } nodeStaus = this.ultraOptionSet2.CheckedItem.DataValue.ToString(); ArrayList parmList = new ArrayList(); parmList.Add(startTim); parmList.Add(endTim); parmList.Add(lotNo); parmList.Add(judgeNo); parmList.Add(nodeStaus); List listSource = EntityHelper.GetData( "com.steering.mes.mcp.Vrp.FrmHttInStore.querySinglePlan", new object[] { parmList, plineCode }, this.ob); PlnZyRclMEntitybindingSource.DataSource = listSource; comm.RefreshAndAutoSize(ultraGrid1); } /// /// 查询交库实绩 /// private void doQueryInList() { string lotNo = ""; string jugeNo = ""; string startTim = ""; string endTim = ""; if (this.chkpipeJudgeNo.Checked && this.pipeJudgeNo.Text.Trim() != "") { jugeNo = this.pipeJudgeNo.Text.Trim(); } if(this.chkPipeLotNo.Checked && this.pipeLotNo.Text.Trim() != "") { lotNo = pipeLotNo.Text.Trim(); } if (this.chkPipeTim.Checked) { if (DateTime.Parse(StartTime1.Value.ToString()) > DateTime.Parse(EndTime1.Value.ToString())) { MessageUtil.ShowTips("选择的前面时间不能大于后面的时间!"); return; } else { startTim = this.StartTime1.Value.ToString("yyyy-MM-dd"); endTim = this.EndTime1.Value.ToString("yyyy-MM-dd"); } } ArrayList list = new ArrayList(); list.Add(startTim); list.Add(endTim); list.Add(lotNo); list.Add(jugeNo); List listSource = EntityHelper.GetData( "com.steering.mes.mcp.Vrp.FrmHttInStore.doQueryInList", new object[] { list, plineCode }, this.ob); YdmBcInlistEntitybindingSource.DataSource = listSource; } /// /// 交库 /// private void doSave() { this.ultraGrid2.UpdateData(); UltraGridRow uRow = this.ultraGrid1.ActiveRow; if (uRow == null) { return; } IQueryable checkMagRows = this.ultraGrid2.Rows.AsQueryable().Where(" CHK = 'True'"); if (checkMagRows.Count() == 0) { MessageUtil.ShowTips("请选择需要交库的信息!"); return; } ArrayList parmList = new ArrayList(); foreach (UltraGridRow row in checkMagRows) { PortHttBatchSampleResultEntity portTity = (PortHttBatchSampleResultEntity)row.ListObject; if (portTity.PhyBatchNo.Equals("")) { MessageUtil.ShowTips("性能批号为空,不允许交库!"); return; } if (portTity.IsSamplePipe.Equals("样管")) { portTity.IsSamplePipe = "1"; } else { portTity.IsSamplePipe = "0"; } string vrpEntity = JSONFormat.Format(portTity); parmList.Add(vrpEntity); } PlnZyRclMEntity plnZyTity = (PlnZyRclMEntity)uRow.ListObject; if(plnZyTity.IfMonitor.Equals("是")) { plnZyTity.IfMonitor = "1"; } else { plnZyTity.IfMonitor = "0"; } string plnZyEntity = JSONFormat.Format(plnZyTity); if (!string.IsNullOrEmpty(plnZyTity.PlineCodeW)) { if (MessageUtil.ShowYesNoAndQuestion("该炉已经委内到" + plnZyTity.PlineNameW + "; 若需返回原产线,请离线委内至原产线, 是否继续下线, 下线管所属权将属于" + plnZyTity.PlineNameW + "") == DialogResult.No) return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmHttInStore"; ccp.MethodName = "doSave"; ccp.ServerParams = new object[] { parmList,plnZyEntity,UserInfo.GetUserName(),UserInfo.GetDeptid(),UserInfo.GetUserOrder(),UserInfo.GetUserGroup()}; ccp = ob.ExecuteNonQuery(ccp,CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("交库成功!")) { QuerySinglePlan(); string load = ccp.ReturnObject.ToString(); if (load.Equals("1")) { doBeside(); } MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销交库 /// private void cancelPipe() { this.ultraGrid3.UpdateData(); IQueryable checkMagRows = this.ultraGrid3.Rows.AsQueryable().Where(" CHK = 'True'"); if (checkMagRows.Count() == 0) { MessageUtil.ShowTips("请选择需要撤销交库的信息!"); return; } ArrayList parmList = new ArrayList(); foreach (UltraGridRow row in checkMagRows) { YdmBcInlistEntity ydmBcTity = (YdmBcInlistEntity)row.ListObject; string ydmBcEntity = JSONFormat.Format(ydmBcTity); parmList.Add(ydmBcEntity); } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmHttInStore"; ccp.MethodName = "cancelPipe"; ccp.ServerParams = new object[] { parmList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryInList(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 结炉 /// private void doBeside() { this.ultraGrid1.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if (row == null) { return; } PlnZyRclMEntity plnEntity = (PlnZyRclMEntity)row.ListObject; string plnTity = JSONFormat.Format(plnEntity); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmHttInStore"; ccp.MethodName = "doBeside"; ccp.ServerParams = new object[] { plnTity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("结炉成功!")) { QuerySinglePlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销结炉 /// private void cancelBeside() { this.ultraGrid1.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if (row == null) { return; } PlnZyRclMEntity plnEntity = (PlnZyRclMEntity)row.ListObject; string plnTity = JSONFormat.Format(plnEntity); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.Vrp.FrmHttInStore"; ccp.MethodName = "cancelDoBeside"; ccp.ServerParams = new object[] { plnTity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("结炉回退成功!")) { QuerySinglePlan(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } private void chkTim_CheckedChanged(object sender, EventArgs e) { this.StartTime.Enabled = this.EndTime.Enabled = this.chkTim.Checked; } private void chkLotNo_CheckedChanged(object sender, EventArgs e) { this.txtLotNo.Enabled = this.chkLotNo.Checked; } private void chkJugeHeatNo_CheckedChanged(object sender, EventArgs e) { this.txtJugeNo.Enabled = this.chkJugeHeatNo.Checked; } private void chkPipeTim_CheckedChanged(object sender, EventArgs e) { this.StartTime1.Enabled = this.EndTime1.Enabled = this.chkPipeTim.Checked; } private void chkPipeLotNo_CheckedChanged(object sender, EventArgs e) { this.pipeLotNo.Enabled = this.chkPipeLotNo.Checked; } private void chkpipeJudgeNo_CheckedChanged(object sender, EventArgs e) { this.pipeJudgeNo.Enabled = this.chkpipeJudgeNo.Checked; } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if(ultraTabControl1.SelectedTab.Key == "0") { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("DoQuery")) { toolMenu.Toolbars[0].Tools["DoQuery"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DoSave")) { toolMenu.Toolbars[0].Tools["DoSave"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DoBeside")) { toolMenu.Toolbars[0].Tools["DoBeside"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CancelBeside")) { toolMenu.Toolbars[0].Tools["CancelBeside"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DoQueryInList")) { toolMenu.Toolbars[0].Tools["DoQueryInList"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelPipe")) { toolMenu.Toolbars[0].Tools["CancelPipe"].InstanceProps.Visible = DefaultableBoolean.False; } }else if(ultraTabControl1.SelectedTab.Key == "1") { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("DoQuery")) { toolMenu.Toolbars[0].Tools["DoQuery"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DoSave")) { toolMenu.Toolbars[0].Tools["DoSave"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DoBeside")) { toolMenu.Toolbars[0].Tools["DoBeside"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelBeside")) { toolMenu.Toolbars[0].Tools["CancelBeside"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DoQueryInList")) { toolMenu.Toolbars[0].Tools["DoQueryInList"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CancelPipe")) { toolMenu.Toolbars[0].Tools["CancelPipe"].InstanceProps.Visible = DefaultableBoolean.True; } } } private void FrmHttInStore_Shown(object sender, EventArgs e) { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("DoQueryInList")) { toolMenu.Toolbars[0].Tools["DoQueryInList"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelPipe")) { toolMenu.Toolbars[0].Tools["CancelPipe"].InstanceProps.Visible = DefaultableBoolean.False; } } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid1.UpdateData(); UltraGridRow row = this.ultraGrid1.ActiveRow; if(row == null) { return; } doQueryVrpRack(row.Cells["HeatPlanNo"].Text,row.Cells["JudgeStoveNo"].Text); portHttBatchControl1.Query(row.Cells["HeatPlanNo"].Text, row.Cells["PlineCode"].Text, int.Parse(row.Cells["RealProcessSeq"].Text), row.Cells["GowhereCode"].Text); } private void doQueryVrpRack(string heatPlanNo, string judgeNo) { List listSource = EntityHelper.GetData( "com.steering.mes.mcp.Vrp.FrmHttInStore.doQueryVrpRack", new object[] { heatPlanNo, judgeNo }, this.ob); PortHttBatchSampleResultEntitybindingSource.DataSource = listSource; foreach (UltraGridRow row in this.ultraGrid2.Rows) { row.Cells["CHK"].Value = "True"; } } private void ultraGrid2_CellChange(object sender, CellEventArgs e) { UltraGridRow row = this.ultraGrid2.ActiveRow; if (e.Cell.Column.Key == "ActCount") { if (!StringUtil.IsInt(row.Cells["ActCount"].Text)) { MessageUtil.ShowTips("支数应为整数!"); return; } DataTable ds = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmHttInStore.doQueryStausRack", new object[] { row.Cells["HeatPlanNo"].Text, row.Cells["JudgeStoveNo"].Text, row.Cells["PhyBatchNo"].Text, row.Cells["IsSamplePipe"].Text }, ob); if (int.Parse(row.Cells["ActCount"].Text) > int.Parse(ds.Rows[0][0].ToString())) { MessageUtil.ShowTips("炉批下所输入交库支数不能大于能交库支数!"); return; } DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Vrp.FrmHttInStore.doQueryStausRackWgt", new object[] { row.Cells["HeatPlanNo"].Text, row.Cells["JudgeStoveNo"].Text, row.Cells["PhyBatchNo"].Text, row.Cells["IsSamplePipe"].Text, row.Cells["ActCount"].Text }, ob); row.Cells["ActWeight"].Value = dt.Rows[0][0].ToString(); } } } }