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.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm; using com.steering.pss.plan.jgtransa.model; using System.Collections; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Comm.Tool; namespace Core.StlMes.Client.Plan.Order.JGGXPln { public partial class FrmModifyPlnJgM : FrmBase { /// /// 接箍订单号 /// private string proPlanId = ""; public FrmModifyPlnJgM() { InitializeComponent(); } public FrmModifyPlnJgM(OpeBase _ob) { InitializeComponent(); this.ob = _ob; } private void FrmModifyPlnJgM_Load(object sender, EventArgs e) { comPlineTimeCtrl1.ComBLL(this.ob); DoQuery(); } private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "Query": DoQuery(); break; case "Modefiy": DoModify(); break; case "Close": this.Close(); break; } } /// /// 查询 /// private void DoQuery() { DateTime date = new DateTime(); DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreOrderJGGXPln.queryJGDDById", new object[] { proPlanId }, this.ob); if (dtStatus == null || dtStatus.Rows.Count <= 0) { MessageUtil.ShowError("找不到指定的订单,请尝试刷新数据!"); return; } if (!dtStatus.Rows[0]["PLANSTATUS"].Equals("0")) { MessageUtil.ShowError("指定的订单已经下发,不能再修改!"); return; } DateTime.TryParse(dtStatus.Rows[0]["PLAN_TIME_JG"].ToString(), out date); comPlineTimeCtrl1.DateTimeProdu.Value = date; comPlineTimeCtrl1.Query(dtStatus.Rows[0]["CODE_JG_BL"].ToString(), dtStatus.Rows[0]["CODE_JG"].ToString()); comPlineTimeCtrl1.setPline(dtStatus.Rows[0]["PLINE_CODE"].ToString()); DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreOrderJGGXPln.queryJGDDMForD", new object[] { this.proPlanId }, this.ob); GridHelper.CopyDataToDatatable(dt, dataTable1, true); PlanComm.setGridActivation(ultraGridGXJGD.DisplayLayout.Bands[0], "PLANNUM"); PlanComm.setGridDigitalCol(ultraGridGXJGD.DisplayLayout.Bands[0], 7, 0, "PLANNUM", "PRODUCED_NUM"); } /// /// 修改 /// private void DoModify() { try { ArrayList list = new ArrayList(); PlnGxJgMEntity jgMEntity = new PlnGxJgMEntity(); DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreOrderJGGXPln.queryJGDDById", new object[] { proPlanId }, this.ob); if (dtStatus == null || dtStatus.Rows.Count <= 0) { MessageUtil.ShowError("找不到指定的订单,请尝试刷新数据!"); return; } if (!dtStatus.Rows[0]["PLANSTATUS"].Equals("0")) { MessageUtil.ShowError("指定的订单已经下发,不能再修改!"); return; } int singleCutNun = Convert.ToInt32(dtStatus.Rows[0]["SINGLE_CUT_NUN"]); int numJg = 0; //订单接箍个数 int numBl = 0; //备料支数 double weightJg = 0; double weightBl = 0; double hrCapcty = 0; //小时能力(t/h) ArrayList param = new ArrayList(); param.Add(dtStatus.Rows[0]["CODE_JG_BL"].ToString()); param.Add(dtStatus.Rows[0]["CODE_JG"].ToString()); param.Add(comPlineTimeCtrl1.Plinecode); DataTable dt = ServerHelper.GetData("com.steering.pss.plan.jgtransa.CoreOrderJGGXPln.queryJgPlHrCapcty", new object[] { param }, this.ob); if (dt != null && dt.Rows.Count > 0) { double.TryParse(dt.Rows[0]["HR_CAPCTY"].ToString(), out hrCapcty); } foreach (UltraGridRow uRow in ultraGridGXJGD.Rows) { PlnGxJgDEntity jgDEntity = new PlnGxJgDEntity(); jgDEntity.ProPlanId = proPlanId; jgDEntity.JgOrderno = uRow.Cells["JG_ORDERNO"].Value.ToString(); jgDEntity.Plannum = uRow.Cells["PLANNUM"].Value.ToString(); jgDEntity.UpdateName = UserInfo.GetUserName(); jgDEntity.ReqBlId = uRow.Cells["REQ_BL_ID"].Value.ToString(); list.Add(jgDEntity); numJg += Convert.ToInt32(uRow.Cells["PLANNUM"].Value); } //需备料管支数 if ((numJg % singleCutNun) == 0) { numBl = numJg / singleCutNun; } else { numBl = (numJg / singleCutNun) + 1; } if (Convert.ToDouble(dtStatus.Rows[0]["BL_NUM"]) <= 0) { MessageUtil.ShowError("原接箍订单信息有误!"); return; } weightJg = numJg * Convert.ToDouble(dtStatus.Rows[0]["SINGLEWEIGHT"]) / 1000; weightBl = numBl * Convert.ToDouble(dtStatus.Rows[0]["BL_WEIGHT"]) / Convert.ToDouble(dtStatus.Rows[0]["BL_NUM"]); jgMEntity.PlanTimeJg = comPlineTimeCtrl1.DateTimeProdu.Value.ToString("yyyy-MM-dd HH:mm:ss"); jgMEntity.ProPlanId = proPlanId; jgMEntity.PlanNum = numJg.ToString(); jgMEntity.BlNum = numBl.ToString(); jgMEntity.BlWeight = weightBl.ToString(); jgMEntity.UpdateName = UserInfo.GetUserName(); jgMEntity.PlanUsetimeJg = (weightJg * hrCapcty * 60).ToString();//单位分min jgMEntity.PlineCode = comPlineTimeCtrl1.Plinecode; jgMEntity.PlineName = comPlineTimeCtrl1.Plinename; int succed = ServerHelper.SetData("com.steering.pss.plan.jgtransa.CoreOrderJGGXPln.doModifyJGDD", new object[] { list, jgMEntity }, this.ob); if (succed > 0) { MessageUtil.ShowTips("成功!"); } } catch (Exception ex) { if (!(ex is MESException)) { MessageBox.Show(ex.Message); } } DoQuery(); } /// /// 接箍订单号 /// public string ProPlanId { get { return proPlanId; } set { proPlanId = value; } } } }