using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.IO; using System.Windows.Forms; using System.Collections; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using CoreFS.CA06; using Core.Mes.Client.Comm; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Control; using com.steering.pss.plnsaleord.jgtransa.model; namespace Core.StlMes.Client.PlnSaleOrd { /// /// 接箍作业计划编辑 /// public partial class FrmJgZYPlnEdit : FrmBase { //用于计算可分离容器的大小。 private int _splitterDistance = 0; private bool _groupBox2ExpandedChanged = false; /// /// 接箍切断作业计划 /// private PlnZyJgCutEntity arguments = new PlnZyJgCutEntity(); /// /// 接箍加工作业计划 /// private List listJgPro = new List(); private List listTes = new List(); /// /// 接箍料米单重(t/m) /// private double jgblWeightOfmi = 0; public FrmJgZYPlnEdit() { InitializeComponent(); } /// /// 构造 /// /// public FrmJgZYPlnEdit(OpeBase openbase) { this.ob = openbase; InitializeComponent(); } private void FrmJgZYPlnEdit_Load(object sender, EventArgs e) { init(); } /// /// 初始化加载 /// private void init() { this.ctrlJGBATCH_ID.Value = arguments.CutBatchId; this.ultraTimePlanStart.DateTime = DateTime.Parse(arguments.PlanTime); this.ultraTextBatchNO.Value = arguments.BatchNo; this.ultraTextStoveNo.Value = arguments.JudgeStoveno; doQueryJgBl(); if (!arguments.ReqBlid.Equals("")) { //this.ctrlJGBL_WEIGHT.Value = Double.Parse(arguments.JgblWeight); //this.ctrlJGBL_NUM.Value = Int32.Parse(arguments.JgblNum); this.ultraTextJgGroup.Value = arguments.GroupCut; this.ultraNumPlanUseTime.Value = Int32.Parse(arguments.PlanUsetime); foreach (UltraGridRow uRow in ultraGrid1.Rows) { if (uRow.Cells["REQ_BL_ID"].Value.ToString().Equals(arguments.ReqBlid)) { ultraGrid1.ActiveRow = uRow; } } foreach (UltraGridRow uRow in ultraGrid4.Rows) { for (int i = 0; i < listJgPro.Count; i++) { if (listJgPro[i].JgOrderno.Equals(uRow.Cells["JG_ORDERNO"].Value.ToString())) { uRow.Cells["GROUP_JGX"].Value = listJgPro[i].GroupJgx; if (!listJgPro[i].PlanTime.Equals("")) { uRow.Cells["PLAN_TIME"].Value = Convert.ToDateTime(listJgPro[i].PlanTime); } uRow.Cells["PLAN_USETIME"].Value = listJgPro[i].PlanUsetime; uRow.Cells["PLAN_NUM"].Value = listJgPro[i].PlanProcNum; uRow.Cells["CHECK"].Value = true; break; } } } } DataTable dtMaterial = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryBaseMaterial", new object[] { }, this.ob); this.ultraComboMATERIAL_NO.DataSource = dtMaterial; this.ultraComboMATERIAL_NO.DisplayMember = "MATERIAL_DESC"; this.ultraComboMATERIAL_NO.ValueMember = "MATERIAL_NO"; this.ultraComboMATERIAL_NO.SelectedIndex = 0; DataTable dtSteelCode = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryBaseSteel", new object[] { }, this.ob); this.ultraComboSTEELCODE.DataSource = dtSteelCode; this.ultraComboSTEELCODE.DisplayMember = "STEELNAME"; this.ultraComboSTEELCODE.ValueMember = "STEELCODE"; this.ultraComboSTEELCODE.SelectedIndex = 0; } /// /// 接箍切断作业计划 /// internal PlnZyJgCutEntity Arguments { get { return arguments; } set { arguments = value; } } /// /// 接箍加工作业计划 /// internal List ListJgPro { get { return listJgPro; } set { listJgPro = value; } } /// /// 保存和退出操作 /// /// /// private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "Update": doUpdate(); break; case "Exit": doExit(); break; } } /// /// 查询接箍备料需求 /// private void doQueryJgBl() { try { DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryBlRequire", new object[] { }, this.ob); GridHelper.CopyDataToDatatable(dt, dataTable1, true); //GridHelper.RefreshAndAutoSize(ultraGrid1); } catch (Exception ex) { if (ex is MESException) { MessageBox.Show(((MESException)ex).ExceptionInfo); } else { MessageBox.Show(ex.Message); } } } private void buttonQueryBl_Click(object sender, EventArgs e) { doQueryJgBl(); } /// /// 查询接箍需求对应接箍合同 /// /// /// private void ultraGrid1_BeforeRowActivate(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e) { try { this.ultraNumJgBlAimlenth.Value = Convert.ToDouble(e.Row.Cells["AIMLENGTH"].Value); this.ctrlCODE_JG_BL.Value = e.Row.Cells["CODE_JG_BL"].Value.ToString(); ///接箍料米单重 double outdiame = Convert.ToDouble(e.Row.Cells["OUTDIAMETER"].Value); double wallthick = Convert.ToDouble(e.Row.Cells["WALLTHICK"].Value); jgblWeightOfmi = PlanComm.WeightOfMi(outdiame, wallthick); DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryrelation", new object[] { e.Row.Cells["REQ_BL_ID"].Value.ToString() }, this.ob); if (dt != null && dt.Rows.Count > 0) { string[] arr = new string[] { "CHECK", "GROUP_JGX", "PLAN_TIME", "PLAN_USETIME", "PLAN_NUM" }; GridHelper.CopyDataToDatatable(dt, dataTable4, true); PlanComm.setGridActivation(ultraGrid4.DisplayLayout.Bands[0], arr); //GridHelper.RefreshAndAutoSize(ultraGrid4); this.ctrlAIMLENGTH.Value = Convert.ToDouble(dt.Rows[0]["AIMLENGTH"]); } this.checkBoxReqBLID.Checked = true; this.ultraTextReqBLID.Value = e.Row.Cells["REQ_BL_ID"].Value.ToString(); queryStock(); } catch (Exception ex) { if (ex is MESException) { MessageBox.Show(((MESException)ex).ExceptionInfo); } else { MessageBox.Show(ex.Message); } } } /// /// 保存 /// private void doUpdate() { try { ArrayList paramBl = new ArrayList(); ArrayList paramRel = new ArrayList(); ArrayList paramMat = new ArrayList(); bool isChecked = false; bool isRelChecked = false; int Jglnum = 0; //PlnZyJgCutEntity arguments = new PlnZyJgCutEntity(); //List listJgPro = new List(); listTes.Clear(); #region 更新接箍作业计划信息 arguments.PlineCode = "";//接箍产线代码 arguments.PlineName = "";//接箍产线名称 arguments.ReqBlid = ultraGrid1.ActiveRow.Cells["REQ_BL_ID"].Value.ToString();//备料需求号 arguments.JudgeStoveno = this.ultraTextStoveNo.Text.Trim().ToString();//判定炉号 arguments.BatchNo = this.ultraTextBatchNO.Text.Trim().ToString();//性能批号 arguments.WlIdin = "";//投入物料编码 arguments.CodeJgbl = ultraGrid1.ActiveRow.Cells["CODE_JG_BL"].Value.ToString();//接箍备料码 arguments.SteelCode = ultraGrid1.ActiveRow.Cells["STEELCODE"].Value.ToString();//钢级(牌号)代码 arguments.SteelName = ultraGrid1.ActiveRow.Cells["STEELNAME"].Value.ToString();//钢级(牌号)名称 arguments.OutdiAmeterBl = ultraGrid1.ActiveRow.Cells["OUTDIAMETER"].Value.ToString();//接箍料外径 arguments.WallthickBl = ultraGrid1.ActiveRow.Cells["WALLTHICK"].Value.ToString();//接箍料壁厚 arguments.JgblLength = ultraGrid1.ActiveRow.Cells["AIMLENGTH"].Value.ToString();//接箍料长度 arguments.JgLength = ultraGrid4.ActiveRow.Cells["AIMLENGTH"].Value.ToString();//接箍坯料长度 //每支可切接箍坯料 double jgbllen = Convert.ToDouble(arguments.JgblLength); double jglen = Convert.ToDouble(arguments.JgLength); if ((jgbllen % (jglen / 1000)) == 0) { arguments.CutNumeach = ((int)(jgbllen * 1000 / jglen)).ToString(); } else { arguments.CutNumeach = ((int)(jgbllen * 1000 / jglen) + 1).ToString(); } arguments.JgblWeight = this.ctrlJGBL_WEIGHT.Value.ToString();//接箍料总重量 arguments.JgblNum = this.ctrlJGBL_NUM.Value.ToString();//接箍料总支数 arguments.CutNumtot = (Convert.ToInt32(arguments.CutNumeach) * Convert.ToInt32(this.ctrlJGBL_NUM.Value)).ToString();//可切接箍坯料总个数 arguments.GroupCut = this.ultraTextJgGroup.Text.Trim().ToString();//切断加工组 arguments.PlanTime = this.ultraTimePlanStart.Value.ToString();//计划开始时间 arguments.PlanUsetime = this.ultraNumPlanUseTime.Value.ToString();//计划耗时(分) //arguments.CutBatchId = cutbatch;//切断作业批次号 #endregion foreach (UltraGridRow uRow in ultraGrid4.Rows) { if (Convert.ToBoolean(uRow.Cells["CHECK"].Text)) { if (uRow.Cells["PLAN_NUM"].Value == null || uRow.Cells["PLAN_NUM"].Value.ToString().Equals("0")) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("接箍合同:"+ uRow.Cells["JG_ORDERNO"].Value.ToString() + "计划排接箍个数未知!"); return; } PlnZyJgProEntity arguJgPro = new PlnZyJgProEntity(); DataTable dtJgBase = ServerHelper.GetData("com.steering.pss.plan.order.CoreSaleOrderOP.queryJgBase", new object[] { uRow.Cells["CODE_JG"].Value.ToString() }, this.ob); if (dtJgBase != null && dtJgBase.Rows.Count > 0) { #region 新增接箍加工作业计划 arguJgPro.CoupcutBatchId = arguments.CutBatchId;//切断作业批次号 arguJgPro.JgOrderno = uRow.Cells["JG_ORDERNO"].Value.ToString();//接箍合同号 arguJgPro.PlineCode = "";//接箍产线代码 arguJgPro.PlineName = "";//接箍产线名称 arguJgPro.ReqBlid = uRow.Cells["REQ_BL_ID"].Value.ToString();//接箍料需求号 arguJgPro.HeatNo = this.ultraTextStoveNo.Text.Trim().ToString();//坯料来源炉号 arguJgPro.BatchNo = this.ultraTextBatchNO.Text.Trim().ToString();//坯料来源性能批号 arguJgPro.CodeJg = uRow.Cells["CODE_JG"].Value.ToString();//接箍码 arguJgPro.OutDiameter = uRow.Cells["OUTDIAMETER"].Value.ToString();//外径 arguJgPro.WallThick = uRow.Cells["WALLTHICK"].Value.ToString();//壁厚 arguJgPro.AimLength = uRow.Cells["AIMLENGTH"].Value.ToString();//接箍长度 arguJgPro.ModelCode = dtJgBase.Rows[0]["MODEL_CODE"].ToString();//扣型代码 arguJgPro.PrdcrNo = queryPrdcrNo(arguJgPro.CodeJg);//监制编号 if (isMonitor(arguJgPro.PrdcrNo, "H")) { //有接箍监制 arguJgPro.IfMonitorJg = "1"; } else { arguJgPro.IfMonitorJg = "0"; } if (uRow.Cells["PLAN_NUM"].Value != null) { arguJgPro.PlanProcNum = uRow.Cells["PLAN_NUM"].Value.ToString();//计划加工个数 } else { arguJgPro.PlanProcNum = "0"; } arguJgPro.PlanStatus = "0";//计划状态 arguJgPro.GroupJgx = uRow.Cells["GROUP_JGX"].Text.Trim(); if (uRow.Cells["PLAN_TIME"].Value != null) { arguJgPro.PlanTime = Convert.ToDateTime(uRow.Cells["PLAN_TIME"].Value).ToString("yyyy-MM-dd HH:mm:ss"); } if (uRow.Cells["PLAN_USETIME"].Value != null) { arguJgPro.PlanUsetime = uRow.Cells["PLAN_USETIME"].Value.ToString(); } else { arguJgPro.PlanUsetime = "0"; } for (int i = 0; i < listJgPro.Count; i++) { if (listJgPro[i].JgOrderno.Equals(arguJgPro.JgOrderno)) { arguJgPro.CreateName = listJgPro[i].CreateName; arguJgPro.CreateTime = listJgPro[i].CreateTime; } } arguJgPro.UpdateName = UserInfo.GetUserName();//修改人 arguJgPro.UpdateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");//修改时间 listTes.Add(arguJgPro); #endregion //接箍料明细表更新 ArrayList param = new ArrayList(); if (uRow.Cells["PLAN_NUM"].Value != null) { param.Add(uRow.Cells["PLAN_NUM"].Value.ToString()); } else { param.Add("0"); } param.Add(uRow.Cells["JG_ORDERNO"].Value.ToString()); param.Add(uRow.Cells["REQ_BL_ID"].Value.ToString()); paramRel.Add(param); } isRelChecked = true; } } if (!isRelChecked) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("未指定要排产的接箍合同!"); return; } //接箍料需求更新接箍切断计划重量、支数 paramBl.Add(arguments.JgblWeight); paramBl.Add(arguments.JgblNum); paramBl.Add(arguments.ReqBlid); //反写库存表,记录作业批次号 foreach (UltraGridRow uRow in ultraGrid2.Rows) { if (Convert.ToBoolean(uRow.Cells["CHECK"].Text)) { ArrayList param = new ArrayList(); if (!uRow.Cells["ACT_DIMATER"].Value.ToString().Equals(arguments.OutdiAmeterBl) || !uRow.Cells["ACT_HEIGHT"].Value.ToString().Equals(arguments.WallthickBl)) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("选取的库存管:" + uRow.Cells["MAT_NO"].Value.ToString() + "与接箍料需求的管外径、壁厚不同!"); return; } param.Add(ultraGrid1.ActiveRow.Cells["REQ_BL_ID"].Value.ToString()); param.Add("1"); param.Add(arguments.CutBatchId); param.Add(uRow.Cells["MAT_NO"].Value.ToString()); paramMat.Add(param); isChecked = true; Jglnum++; } } if (isChecked) { if (Jglnum < Convert.ToInt32(this.ctrlJGBL_NUM.Value)) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("库存管选取支数少于接箍切断计划支数!"); return; } int isSucceed = ServerHelper.SetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.updateJgCutplan", new object[] { arguments, listTes, paramBl, paramRel, paramMat }, this.ob); if (isSucceed > 0) { this.Close(); } else { Core.Mes.Client.Comm.Tool.MessageUtil.ShowError("保存失败!"); } } else { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("请选择炉批号!"); return; } } catch (Exception ex) { if (ex is MESException) { MessageBox.Show(((MESException)ex).ExceptionInfo); } else { MessageBox.Show(ex.Message); } } } /// /// 取消并退出 /// private void doExit() { try { if (Core.Mes.Client.Comm.Tool.MessageUtil.ShowYesNoAndWarning( "是否确认删除计划!").ToString().Equals("No")) { return; } ArrayList param = new ArrayList(); param.Add(arguments.CutBatchId); int isDel = ServerHelper.SetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.deleteJgCutPln", new object[] { param }, this.ob); if (isDel > 0) { this.Close(); } else { Core.Mes.Client.Comm.Tool.MessageUtil.ShowError("删除作业计划失败!"); } } catch (Exception ex) { if (ex is MESException) { MessageBox.Show(((MESException)ex).ExceptionInfo); } else { MessageBox.Show(ex.Message); } } } /// /// 获取计划排接箍的个数 /// /// private int getPlanJgNum() { int planNum = 0; foreach (UltraGridRow uRow in ultraGrid4.Rows) { if (Convert.ToBoolean(uRow.Cells["CHECK"].Text) && uRow.Cells["PLAN_NUM"].Value != null) { int planJgNum = 0; int.TryParse(uRow.Cells["PLAN_NUM"].Value.ToString(), out planJgNum); planNum = planNum + planJgNum; } } return planNum; } /// /// 获取接箍料支数 /// /// private int getJgbl_Num() { double JgblAimlenth = Convert.ToDouble(this.ultraNumJgBlAimlenth.Value);//接箍料目标长度(m) double Aimlenth = Convert.ToDouble(this.ctrlAIMLENGTH.Value) / 1000; //接箍坯料长度(m) double LenJgSum = getPlanJgNum() * Aimlenth; if (LenJgSum % JgblAimlenth == 0) { return (int)(LenJgSum / JgblAimlenth); } else { return (int)(LenJgSum / JgblAimlenth) + 1; } } /// /// 接箍与接箍料关系表全选 /// /// /// private void ultraGrid4_BeforeHeaderCheckStateChanged(object sender, BeforeHeaderCheckStateChangedEventArgs e) { if (e.Column.Key.Equals("CHECK") && ultraGrid1.Rows.Count > 0) { int JgblNum = 0; JgblNum = getJgbl_Num(); if (JgblNum >= 0) { this.ctrlJGBL_NUM.Value = JgblNum; this.ctrlJGBL_WEIGHT.Value = JgblNum * jgblWeightOfmi * Convert.ToDouble(this.ultraNumJgBlAimlenth.Value); } } } /// /// 接箍与接箍料关系表单选 /// /// /// private void ultraGrid4_CellChange(object sender, CellEventArgs e) { if (e.Cell.Column.Key.Equals("CHECK")) { if (Convert.ToBoolean(e.Cell.Row.Cells["CHECK"].Text)) { int jgplan_num = 0; int num_jg = 0; if (e.Cell.Row.Cells["JGPLAN_NUM"].Value != null) { int.TryParse(e.Cell.Row.Cells["JGPLAN_NUM"].Value.ToString(), out jgplan_num); } if (e.Cell.Row.Cells["NUM_JG"].Value != null) { int.TryParse(e.Cell.Row.Cells["NUM_JG"].Value.ToString(), out num_jg); } if (num_jg > jgplan_num) { e.Cell.Row.Cells["PLAN_NUM"].Value = num_jg - jgplan_num; } else { e.Cell.Row.Cells["PLAN_NUM"].Value = 0; } } else { e.Cell.Row.Cells["PLAN_NUM"].Value = 0; } int JgblNum = getJgbl_Num(); this.ctrlJGBL_NUM.Value = JgblNum; this.ctrlJGBL_WEIGHT.Value = JgblNum * jgblWeightOfmi * Convert.ToDouble(this.ultraNumJgBlAimlenth.Value); } } /// /// 接箍与接箍料关系表计划排个数变化时 /// /// /// private void ultraGrid4_AfterCellUpdate(object sender, CellEventArgs e) { if (e.Cell.Column.Key.Equals("PLAN_NUM") && Convert.ToBoolean(e.Cell.Row.Cells["CHECK"].Text)) { int JgblNum = getJgbl_Num(); this.ctrlJGBL_NUM.Value = JgblNum; this.ctrlJGBL_WEIGHT.Value = JgblNum * jgblWeightOfmi * Convert.ToDouble(this.ultraNumJgBlAimlenth.Value); } } /// /// 查询对应合同监制编号 /// /// 接箍码 /// private string queryPrdcrNo(string codeJg) { //查询接箍加工对应接箍合同 DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryJgOrder", new object[] { codeJg }, this.ob); if (dt != null && dt.Rows.Count > 0) { ArrayList param = new ArrayList(); param.Add(dt.Rows[0]["ORDER_NO"].ToString()); param.Add(dt.Rows[0]["ORDER_SEQ"].ToString()); param.Add(dt.Rows[0]["DELIVERY_NO"].ToString()); DataTable dtSale = ServerHelper.GetData("com.steering.pss.plan.order.CoreSaleOrderOP.querySaleByPrimary", new object[] { param }, this.ob); if (dtSale != null && dtSale.Rows.Count > 0) { return dtSale.Rows[0]["PRDCR_NO"].ToString(); } } return ""; } /// /// 工序是否需要监制 /// /// 监制编号 /// 工序代码 /// private bool isMonitor(string procrNo, string proCode) { bool ismonitor = false; DataTable dt = ServerHelper.GetData("com.steering.pss.plan.order.CoreSaleOrderOP.queryOrderPrdcr", new object[] { procrNo }, this.ob); if (dt != null && dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { if (dr["PROCESS_CDOE"].ToString().Equals(proCode)) { ismonitor = true; } } } return ismonitor; } /// /// 查询物流库存表 /// /// /// private void button2_Click(object sender, EventArgs e) { queryStock(); } /// /// 查询库存信息 /// private void queryStock() { try { ArrayList param = new ArrayList(); string strReqBLID = ""; //备料需求编号 string strBATCH_NO = ""; //炉批号 string strMATERIAL_NO = ""; //物料码 string strSTOVE_NO = ""; //熔炼炉号 string strSTEELCODE = ""; //钢级编码 string strACT_DIMATER = ""; //实际外径 string strACT_HEIGHT = ""; //实际壁厚 if (checkBoxReqBLID.Checked) { strReqBLID = this.ultraTextReqBLID.Text.Trim(); } if (this.checkBoxBATCH_NO.Checked) { strBATCH_NO = this.ultraTextBATCH_NO.Text.Trim(); } if (this.checkBoxMATERIAL_NO.Checked) { strMATERIAL_NO = this.ultraComboMATERIAL_NO.Value.ToString(); } if (this.checkBoxSTOVE_NO.Checked) { strSTOVE_NO = this.ultraTextSTOVE_NO.Text.Trim(); } if (this.checkBoxSTEELCODE.Checked) { strSTEELCODE = this.ultraComboSTEELCODE.Value.ToString(); } if (this.checkBoxACT_DIMATER.Checked) { strACT_DIMATER = this.ultraNumberACT_DIMATER.Value.ToString(); } if (this.checkBoxACT_HEIGHT.Checked) { strACT_HEIGHT = this.ultraNumberACT_HEIGHT.Value.ToString(); } //查询条件 param.Add(this.ctrlJGBATCH_ID.Text.Trim()); param.Add(strReqBLID); param.Add(strReqBLID); param.Add(strReqBLID); param.Add(strBATCH_NO); param.Add(strBATCH_NO); param.Add(strBATCH_NO); param.Add(strMATERIAL_NO); param.Add(strMATERIAL_NO); param.Add(strMATERIAL_NO); param.Add(strSTOVE_NO); param.Add(strSTOVE_NO); param.Add(strSTOVE_NO); param.Add(strSTEELCODE); param.Add(strSTEELCODE); param.Add(strSTEELCODE); param.Add(strACT_DIMATER); param.Add(strACT_DIMATER); param.Add(strACT_DIMATER); param.Add(strACT_HEIGHT); param.Add(strACT_HEIGHT); param.Add(strACT_HEIGHT); DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreJgOperatPln.queryMatzcm", new object[] { param }, this.ob); GridHelper.CopyDataToDatatable(dt, dataTable2, true); PlanComm.setGridActivation(ultraGrid2.DisplayLayout.Bands[0], "CHECK"); foreach (UltraGridRow uRow in ultraGrid2.Rows) { if (uRow.Cells["IF_BATCHED_JG"].Value.ToString().Equals("是") && uRow.Cells["COUPCUT_BATCH_ID"].Value.ToString().Equals(this.ctrlJGBATCH_ID.Text.Trim())) { uRow.Cells["CHECK"].Value = true; } } } catch (Exception ex) { if (ex is MESException) { MessageBox.Show(((MESException)ex).ExceptionInfo); } else { MessageBox.Show(ex.Message); } } } private void checkBoxReqBLID_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxReqBLID.Checked) { this.ultraTextReqBLID.Enabled = true; } else { this.ultraTextReqBLID.Enabled = false; } } private void checkBoxBATCH_NO_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxBATCH_NO.Checked) { this.ultraTextBATCH_NO.Enabled = true; } else { this.ultraTextBATCH_NO.Enabled = false; } } private void checkBoxMATERIAL_NO_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxMATERIAL_NO.Checked) { this.ultraComboMATERIAL_NO.Enabled = true; } else { this.ultraComboMATERIAL_NO.Enabled = false; } } private void checkBoxSTOVE_NO_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxSTOVE_NO.Checked) { this.ultraTextSTOVE_NO.Enabled = true; } else { this.ultraTextSTOVE_NO.Enabled = false; } } private void checkBoxSTEELCODE_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxSTEELCODE.Checked) { this.ultraComboSTEELCODE.Enabled = true; } else { this.ultraComboSTEELCODE.Enabled = false; } } private void checkBoxACT_DIMATER_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxACT_DIMATER.Checked) { this.ultraNumberACT_DIMATER.Enabled = true; } else { this.ultraNumberACT_DIMATER.Enabled = false; } } private void checkBoxACT_HEIGHT_CheckedChanged(object sender, EventArgs e) { if (this.checkBoxACT_HEIGHT.Checked) { this.ultraNumberACT_HEIGHT.Enabled = true; } else { this.ultraNumberACT_HEIGHT.Enabled = false; } } private void ultraGrid2_CellChange(object sender, CellEventArgs e) { if (e.Cell.Column.Key.Equals("CHECK") && Convert.ToBoolean(e.Cell.Row.Cells["CHECK"].Text)) { bool isChecked = false; if (!e.Cell.Row.Cells["COUPCUT_BATCH_ID"].Value.ToString().Equals("") && !e.Cell.Row.Cells["COUPCUT_BATCH_ID"].Value.ToString().Equals( this.ctrlJGBATCH_ID.Text.Trim())) { e.Cell.Row.Cells["CHECK"].Value = false; Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("该材料已做接箍组批!"); } foreach (UltraGridRow uRow in ultraGrid2.Rows) { if (Convert.ToBoolean(uRow.Cells["CHECK"].Text) && uRow != e.Cell.Row) { isChecked = true; break; } } if (isChecked) { //如果不是同一炉号或批号,不让勾选 if (!e.Cell.Row.Cells["STOVE_NO"].Value.ToString().Equals(this.ultraTextStoveNo.Text.Trim())) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("只能选择同一炉号!"); e.Cell.Row.Cells["CHECK"].Value = false; return; } if (!e.Cell.Row.Cells["BATCH_NO"].Value.ToString().Equals(this.ultraTextBatchNO.Text.Trim())) { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("只能选择同一批号!"); e.Cell.Row.Cells["CHECK"].Value = false; return; } } else { this.ultraTextBatchNO.Value = e.Cell.Row.Cells["BATCH_NO"].Value.ToString(); this.ultraTextStoveNo.Value = e.Cell.Row.Cells["STOVE_NO"].Value.ToString(); } } } private void ultraExpandableGroupBox2_ExpandedStateChanged(object sender, EventArgs e) { _groupBox2ExpandedChanged = true; if (ultraExpandableGroupBox2.Expanded == false) { splitContainer1.SplitterDistance = this.Width; } else { splitContainer1.SplitterDistance = _splitterDistance; } _groupBox2ExpandedChanged = false; } private void splitContainer1_SplitterMoved(object sender, SplitterEventArgs e) { if (_groupBox2ExpandedChanged == false) { _splitterDistance = splitContainer1.SplitterDistance; if (splitContainer1.SplitterDistance >= 1) { ultraExpandableGroupBox2.Expanded = true; } } if (splitContainer1.Panel2Collapsed) { ultraExpandableGroupBox2.Visible = false; } } private void ultraGrid4_CellDataError(object sender, CellDataErrorEventArgs e) { e.RaiseErrorEvent = false ; } } }