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.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.PlnSaleOrd.炼钢计划.entity; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using Core.StlMes.Client.PlnSaleOrd.BaseMethod; using Core.StlMes.Client.PlnSaleOrd.工序排产; using Core.Mes.Client.Comm.Server; using Infragistics.Win.UltraWinEditors; using Infragistics.Win; using Core.Mes.Client.Comm.Control; using System.IO; using System.Runtime.InteropServices; using Core.StlMes.Client.PlnSaleOrd.炼钢计划.control; using Infragistics.Win.UltraWinMaskedEdit; namespace Core.StlMes.Client.PlnSaleOrd.炼钢计划 { public partial class FrmSteelMakingPlanChange : FrmBase { private string[] plineCode = null; /// /// 订单编号 /// private string _ProPlanId = ""; private string _weightPerMeterFormula = string.Empty; /// /// 排产序号 /// private string _GxPlanNo = ""; UltraCombo uceBatch = new UltraCombo(); DataTable dtBatch = new DataTable(); /// /// 行首背景色 /// private Color _BackColor = new Color(); /// /// 调整行集合 /// private ArrayList _EntityList = null; /// /// 铸机最大流量 /// private int MaxFlow = 0; private int MaxFurnaceNum = 0; public FrmSteelMakingPlanChange() { this.IsLoadUserView = true; InitializeComponent(); } private string plineCodeBSelete = ""; private string plineCodeASelete = ""; void ultraGridCast_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { foreach (UltraGridRow uRow in ultraGridCast.Selected.Rows) { if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow)) { uRow.Cells["CHC"].Value = true; } if (plineCodeBSelete.Equals("")) { plineCodeBSelete = uRow.Cells["PlineCode"].Value.ToString(); plineCodeASelete = uRow.Cells["PlineCodeA"].Value.ToString(); } //if (!plineCodeBSelete.Equals("") && !plineCodeBSelete.Equals(uRow.Cells["PlineCode"].Value.ToString())) //{ // MessageUtil.ShowTips("不能跨铸造产线预算/组浇!"); // uRow.Cells["CHC"].Value = false; // return; //} } chcChange(plineCodeBSelete, plineCodeASelete); } /// /// 初始化数据 /// /// /// private void FrmSteelMakingPlanChange_Load(object sender, EventArgs e) { //设置列头名称 EntityHelper.ShowGridCaption(ultraGridCast.DisplayLayout.Bands[0]); BaseHelper.setOtherColumnReadOnly(ultraGridCast, new string[] { "CHC", "CanNum", "PlineCode", "PlineCodeA", "PlanTimeB", "PlanUsetime", "RepairType", "Memo", "ProgyMemo", "ManualNum", "CraftNo", "CutNumGp", "SteelJudgement" }); BaseHelper.InitCellPosition(ultraGridCast, new string[] { "GxPlanNo", "OrderSeq", "DeliveryNo", "PlanWtS", "PlanNumS", "PlanUsetime", "GxProSeq", "PlnDivideId", "DiameterLz", "LenGpSingle", "CutNumGp", "CutLoseLen", "LengthLz", "WtCastOne", "CastNumCalc", "FurnaceNumCalc", "FurnaceWt", "PlanedWt", "PlanedNum", "Finishweight", "FinishNum", "CastNum", "FurnaceNum", "AddWtBegin", "AddWtEnd", "AddWtAhead", "AddWtNext", "CanWgt", "CanNum", "GradeSort", "ProcessingCostA", "TotalCostA", "ProcessingCostB", "TotalCostB", "ManualNum","PlanWtSold", "PlanNumSold" }); BaseHelper.GridColumnSum(ultraGridCast, new string[] { "PlanWtS", "CanWgt" }); BaseHelper.GridColumnCount(ultraGridCast, new string[] { "PlanNumS", "CanNum" }); BaseHelper.setUltraGridColumnMaxInput(ultraGridCast, new string[] { "PlanWtS", "CanWgt", "PlanedWt", "PlanWtSold" }); BaseHelper.setUltraGridColumnBits(ultraGridCast, new string[] { "PlanNumS", "CanNum", "PlanedNum", "ManualNum" }); BaseHelper.setColumnBackColor(ultraGridCast, new string[] { "PlineCode", "PlineCodeA", "CHC", "Memo", "ProgyMemo", "ManualNum", "CraftNo", "CutNumGp", "SteelJudgement" }); //BaseHelper.InitCellPositionMiddle(ultraGridCast, new string[] { "IsRepairPln", "IsPlanOk", "IfConnectAhead", "IfConnectNext", "IfMonitorLg" }); PlanHelper.InitRepairType(ultraGridCast, this); InitEditPline(ultraGridCast, this); BaseHelper.ForbidSort(ultraGridCast); SteelHelper.ForbidSort(ultraGridFurName); BaseHelper.ForbidSort(ultraGrid1); SteelHelper.ForbidSort(ugStove); _BackColor = ultraGridCast.DisplayLayout.Override.RowSelectorAppearance.BackColor; plineCode = PlanHelper.InitDropPlinePower("B", comBPline, this.ValidDataPurviewIds, this.ob); InitPline(); InitGrade(); ultraGridCast.DisplayLayout.Bands[0].Columns["ProPlanId"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; ultraGridCast.DisplayLayout.Bands[0].Columns["Cic"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; #region 炉次信息 Controls.Add(uceBatch); uceBatch.Visible = false; EntityHelper.ShowGridCaption(ultraGridFurName.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGridFurName.DisplayLayout.Bands[1]); BaseHelper.setColumnReadOnly(ultraGridFurName, new string[] { "CHC", "BatchingCode", "LenGpSingle", "TotWeightM", "ChcMast", "PlanRoute" }); BaseHelper.InitCellPosition(ultraGridFurName, new string[] { "Quantity", "Weight", "AimSteelQty", "CastSeq", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum", "CastStoveSeq", "ConAmountNum" }); BaseHelper.InitCellPositionC(ultraGridFurName, new string[] { "Sequenceno", "Sequenceincast", "Diameter", "LenGpSingle", "CutNumGp", "LengthM", "WeightGpOne", "WeightM", "TotWeightM", "TotMumM","CutNum" }); BaseHelper.GridColumnSum(ultraGridFurName, new string[] { "Weight", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum", "AimSteelQty" }); BaseHelper.GridColumnCount(ultraGridFurName, new string[] { "Quantity", "ConAmountNum" }); //BaseHelper.GridColumnSum(ultraGridFurName, new string[] { "TotWeightM" }); //BaseHelper.GridColumnCount(ultraGridFurName, new string[] { "TotMumM" }); BaseHelper.setUltraGridColumnMaxInput(ultraGridFurName, new string[] { "Weight", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum", "AimSteelQty" }); //BaseHelper.setUltraGridColumnMaxInput(ultraGridFurName, new string[] { "TotWeightM", "WeightGpOne" }); //BaseHelper.setColumnBackColor(ultraGridFurName, new string[] { "TotWeightM", "LenGpSingle" }); BaseHelper.setColumnBackColor(ultraGridFurName, new string[] { "BatchingCode", "PlanRoute" }); UltraNumericEditor[] uneArr = new UltraNumericEditor[1]; uneArr[0] = new UltraNumericEditor(); uneArr[0].NumericType = NumericType.Double; uneArr[0].MaskInput = "nnnnn"; uneArr[0].SpinButtonDisplayStyle = Infragistics.Win.ButtonDisplayStyle.Always; this.Controls.Add(uneArr[0]); uneArr[0].Visible = false; uneArr[0].SpinIncrement = 10; ultraGridFurName.DisplayLayout.Bands[1].Columns["LenGpSingle"].EditorComponent = uneArr[0]; QueryBatch(""); #endregion #region 浇次信息 EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); BaseHelper.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHC" }); BaseHelper.InitCellPosition(ultraGrid1, new string[] { "Furnacenumber", "TotWt", "TotNum", "AddWtBegin", "AddWtEnd", "Diameter", "AimSteelQty", "AverageQty" }); BaseHelper.setUltraGridColumnMaxInput(ultraGrid1, new string[] { "TotWt", "AddWtBegin", "AimSteelQty", "AverageQty" }); #endregion #region 组浇tab页 EntityHelper.ShowGridCaption(ugCast.DisplayLayout.Bands[0]); BaseHelper.setOtherColumnReadOnly(ugCast, new string[] { "CHC" }); BaseHelper.InitCellPosition(ugCast, new string[] { "CastSeq", "TotWt", "TotNum", "AddWtBegin", "AddWtEnd", "AddWtConnAhead", "AddWtConnNext" }); BaseHelper.GridColumnSum(ugCast, new string[] { "TotWt", "AddWtBegin", "AddWtEnd", "AddWtConnAhead", "AddWtConnNext" }); BaseHelper.GridColumnCount(ugCast, new string[] { "TotNum" }); EntityHelper.ShowGridCaption(ugStove.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ugStove.DisplayLayout.Bands[1]); BaseHelper.setColumnReadOnly(ugStove, new string[] { "CHC", "TotWeightM" }); BaseHelper.InitCellPositionC(ugStove, new string[] { "Sequenceno", "Sequenceincast", "Diameter", "LenGpSingle", "CutNumGp", "LengthM", "WeightGpOne", "WeightM", "TotWeightM", "TotMumM", "CutNum" }); BaseHelper.InitCellPosition(ugStove, new string[] { "Quantity", "Weight", "AimSteelQty", "CastSeq", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum", "CastStoveSeq", "FurnacenoSeq", "ConAmountNum" }); BaseHelper.GridColumnSum(ugStove, new string[] { "Weight", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum" }); BaseHelper.GridColumnCount(ugStove, new string[] { "Quantity" }); BaseHelper.setUltraGridColumnMaxInput(ugStove, new string[] { "Weight", "ConAmount", "ResAmount", "FirstAmount", "EndAmount", "HotmetalNum", "IronNum", "SteelscrapNum", "AimSteelQty" }); //设置可拖拽 //BaseHelper.SetGridDragDropRows(ugCast, AdjustCastSeq, GetMyCursor()); BaseHelper.SetGridDragDropRows(ugStove, AdjustStoveSeq, GetMyCursor()); BaseHelper.ForbidSort(ugCast); BaseHelper.ForbidSort(ugStove); #endregion ugStove.DisplayLayout.Bands[0].Columns["PlnStarttime"].Format = "yyyy-MM-dd HH:mm:ss"; ugStove.DisplayLayout.Bands[0].Columns["PlnStarttime"].MaskInput = "yyyy-mm-dd hh:mm:ss"; ugStove.DisplayLayout.Bands[0].Columns["PlnStarttime"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTime; DateTime now = DateTime.Now; DateTime d1 = new DateTime(now.Year, now.Month, now.Day); txtPlanTimeB1.Value = d1; endTimeB.Value = d1; } private void QueryBatch(string plineCode) { dtBatch = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.queryBatch", new object[] { plineCode }, ob); uceBatch.DataSource = dtBatch; uceBatch.ValueMember = "BATCHING_CODE"; uceBatch.DisplayMember = "配料方案"; ultraGridFurName.DisplayLayout.Bands[0].Columns["BatchingCode"].EditorComponent = uceBatch; UltraComboEditor ucePath = new UltraComboEditor(); ultraGridFurName.DisplayLayout.Bands[0].Columns["PlanRoute"].EditorComponent = ucePath; ultraGridFurName.DisplayLayout.Bands[0].Columns["PlanRoute"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList; ValueList vlistSteel = new ValueList(); ; vlistSteel.ValueListItems.Insert(0, "ELC", "ELC"); vlistSteel.ValueListItems.Insert(1, "ELVC", "ELVC"); vlistSteel.ValueListItems.Insert(2, "ELRC", "ELRC"); vlistSteel.ValueListItems.Insert(3, "ELVI", "ELVI"); vlistSteel.ValueListItems.Insert(4, "ELRI", "ELRI"); ultraGridFurName.DisplayLayout.Bands[0].Columns["PlanRoute"].ValueList = vlistSteel; } /// /// 初始化编辑区产线 /// /// 工序 /// UltraGrid /// 窗体 public static void InitEditPline(UltraGrid ug, FrmBase from) { DataTable dt1 = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.base.BaseHelper.initPlinePowerB", new object[] { }, from.ob); UltraComboEditor uce = new UltraComboEditor(); from.Controls.Add(uce); uce.Visible = false; uce.DropDownListWidth = -1; uce.DropDownStyle = DropDownStyle.DropDownList; uce.DataSource = dt1; uce.DisplayMember = "PLINE_NAME"; uce.ValueMember = "PLINE_CODE"; ug.DisplayLayout.Bands[0].Columns["PlineCode"].EditorComponent = uce; ug.DisplayLayout.Bands[0].Columns["PlineCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList; DataTable dt2 = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.base.BaseHelper.initPlinePowerA", new object[] { }, from.ob); UltraComboEditor uce2 = new UltraComboEditor(); from.Controls.Add(uce2); uce2.Visible = false; uce2.DropDownListWidth = -1; uce2.DropDownStyle = DropDownStyle.DropDownList; uce2.DataSource = dt2; uce2.DisplayMember = "PLINE_NAME"; uce2.ValueMember = "PLINE_CODE"; ug.DisplayLayout.Bands[0].Columns["PlineCodeA"].EditorComponent = uce2; ug.DisplayLayout.Bands[0].Columns["PlineCodeA"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList; } /// /// 初始化产线 /// private void InitPline() { SteelHelper.InitPline(comEfPlin, "A", this.ob); //SteelHelper.InitPline(comBPline, "B", this.ob); } /// /// 初始化钢种 /// private void InitGrade() { SteelHelper.InitGrade(comGrade, this.ob); } /// /// 选择控制 /// /// /// private void chc_CheckedChanged(object sender, EventArgs e) { //if (chcAPline.Checked) { comAPline.Enabled = true; } else { comAPline.Enabled = false; } if (chcBPline.Checked) { comBPline.Enabled = true; } else { comBPline.Enabled = false; } if (chcGrade.Checked) { comGrade.Enabled = true; } else { comGrade.Enabled = false; } if (chcProplanId.Checked) { txtProplanId.Enabled = true; } else { txtProplanId.Enabled = false; } if (chkEfPlin.Checked) { comEfPlin.Enabled = true; } else { comEfPlin.Enabled = false; } if (chcPlanTimeB.Checked) { txtPlanTimeB1.Enabled = true; endTimeB.Enabled = true; } else { txtPlanTimeB1.Enabled = false; endTimeB.Enabled = false; } if (chcCastNo.Checked) { txtCastNo.Enabled = true; } else { txtCastNo.Enabled = false; } if (chkStoveNo.Checked) { txtStoveNo.Enabled = true; } else { txtStoveNo.Enabled = false; } if (chkJudgeNo.Checked) { txtJudgeNo.Enabled = true; } else { txtJudgeNo.Enabled = false; } } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "QueryOrder": // 订单产线 QueryOrder(); break; case "Budget": // 预算 AddCast("0"); break; case "AddCast": // 组浇 AddCast("1"); break; case "Exchange": // 顺序交换 Exchange(); break; case "Capacity"://产线能力维护 Capacity(); break; case "AddRepairPlan"://检修计划 AddRepairPlan(); break; case "DeleteRepairPlan"://删除检修计划 DeleteRepairPlan(); break; case "PlineChange"://产线调整 PlineChange(); break; case "TimeChange"://时间调整 TimeChange(); break; case "StatusChange"://状态调整 StatusChange(); break; case "InitData"://耗时初始化 Init(); break; case "Spit"://拆分订单 Spit(); break; case "Merge"://合并订单 Merge(); break; case "SetPlanFinish"://设置关闭 SetPlanFinish(); break; case "Issued"://下发 Issued("0"); break; case "CancelIssued"://取消下发 Issued("1"); break; case "Close": this.Close(); break; case "Export": GridHelper.ulGridToExcel(ultraGridCast, "铸造排产信息"); break; case "ProMemo"://工艺/计划备注修改 DoProMemo(); break; case "QueryCast"://查询浇次 QueryCastTab(); break; case "Down"://下发 ChangeSatusStove(true); break; case "Rollback"://撤销下发 ChangeSatusStove(false); break; case "TimeAdjust"://浇次时间调整 TimeAdjust(); break; case "FillFurnace"://补炉 doFillFurnace(); break; case "Confirm"://工艺确认 doConfirm("1"); break; case "UnConfirm"://取消确认 doConfirm("0"); break; case "ProcessAll"://获取工艺 doProcessAll(); break; case "ClearProcess": //取消工艺 doClearProcess(); break; case "UpdateNumGp"://调整倍尺 doUpdateNumGp(); break; case "AddBlOrder"://一键生成备料合同 doAddBlOrder(); break; case "Print"://炉次订单打印 doPrint(); break; case "RefreshPln"://轧管炉计划刷新 doRefreshPln(); break; case "LimitProcessAll"://加严工艺卡 doLimitProcessAll(); break; default: break; } } /// /// 炉次订单打印 /// private void doPrint() { UltraGridRow row = ugStove.ActiveRow; if (row == null) { MessageUtil.ShowTips("打印数据不能为空,请查询!"); return; } string efPlineCode = ""; string proMonth = ""; string proMonth1 = ""; if (chcPlanTimeB.Checked) { proMonth = txtPlanTimeB1.Text.ToString().Replace("-", ""); proMonth1 = endTimeB.Text.ToString().Replace("-", ""); } if (proMonth.Equals("")) { MessageUtil.ShowTips("请选择生产年月!"); return; } foreach (UltraGridRow rows in ugStove.Rows) { if (efPlineCode.Equals("")) { efPlineCode = rows.Cells["EfPlineCode"].Text.ToString(); } if (!efPlineCode.Equals(rows.Cells["EfPlineCode"].Text.ToString())) { MessageUtil.ShowTips("请选择同一电炉产线!"); return; } } string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLgDatePlan.cpt&op=view" + "&EF_PLINE_CODE=" + efPlineCode + "&PRO_MONTH=" + proMonth + "&PRO_MONTH1=" + proMonth1; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.Text = "炼钢计划打印"; fBug.ShowDialog(); QueryFurnaceTab(); } #region 铸造订单功能 /// /// 产线能力维护 /// private void Capacity() { UltraGridRow ugr = ultraGridCast.ActiveRow; if (ugr == null) { return; } string inMaterialNo = ugr.Cells["WlidIn"].Text; string outMaterialNo = ugr.Cells["MaterialNo"].Text; string plineCode = ugr.Cells["PlineCode"].Value.ToString(); FrmBaseMaterialBPl frmBaseMaterialBPl = new FrmBaseMaterialBPl(inMaterialNo, outMaterialNo, plineCode, ob); frmBaseMaterialBPl.ShowDialog(); } /// /// 新增检修计划 /// private void AddRepairPlan() { if (comBPline.Value == null || comBPline.Value.ToString().Equals("")) { MessageUtil.ShowTips("请选择产线!"); return; } FrmJxjh frmJxjh = new FrmJxjh(this.ob, comBPline.Value.ToString(), "B"); frmJxjh.ShowDialog(); QueryOrder(); } /// /// 删除检修计划 /// public void DeleteRepairPlan() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.DeleteRepairPlan(list, "B", this.ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 折分订单 /// private void Spit() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.SpitPlanOrder(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 合并订单 /// private void Merge() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.MergePlanOrder(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 产线调整 /// private void PlineChange() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.PlineChange(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 初始化 /// private void Init() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.InitData(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 状态调整 /// private void StatusChange() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.StatusChange(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 时间调整 /// private void TimeChange() { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.TimeChange(list, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 下发(取消) /// private void Issued(string isFlag) { ArrayList list = ProducHelper.GetChcRows(ultraGridCast); bool flag = ProducHelper.issuedPlanOrder(list, this.UserInfo.GetUserName(), isFlag, "B", ob); if (flag) { _ProPlanId = ((PlnOrderCastSEntity)list[0]).ProPlanId; _GxPlanNo = ((PlnOrderCastSEntity)list[0]).GxPlanNo.ToString(); QueryOrder(); } } /// /// 设置完成 /// private void SetPlanFinish() { ArrayList entityList = ProducHelper.GetChcRows(ultraGridCast); if (entityList == null) { MessageUtil.ShowWarning("请选择订单!"); return; } ArrayList jsonlist = new ArrayList(); foreach (PlnOrderCastSEntity entity in entityList) { //ProducEntity entity = ProducHelper.GenerationProEntity(obj, "B"); if (entity.IsRepairPln.Equals("是")) { MessageUtil.ShowWarning("检修计划订单,不能设置关闭!"); return; } if (entity.GxProSeq.Equals("-2")) { MessageUtil.ShowWarning("铸造订单已经设置关闭!"); return; } //if (!entity.ExeStatusZg.Equals("")) //{ // if (entity.ExeStatusZg.Equals("计划") || entity.ExeStatusZg.Equals("生产中")) // { // MessageUtil.ShowWarning("铸造订单对应轧管订单信息已" + entity.ExeStatusZg + "!"); // return; // } //} jsonlist.Add(JSONFormat.Format(entity)); } if (MessageUtil.ShowYesNoAndQuestion("是否设置关闭(此操作数据暂不可恢复)?") == DialogResult.No) { return; } string[] param = PlanHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelPlnZg.setPlanFinish", new object[] { jsonlist, this.UserInfo.GetUserName(), "B" }, ob); if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); return; } else { MessageUtil.ShowTips(param[1]); if ((bool.Parse(param[0]))) { QueryOrder(); } else { return; } } } private void craftImg1_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ultraGridCast.ActiveRow; string craftNo = row.Cells["CraftNo"].Text.ToString(); string craftPath = row.Cells["CraftPath"].Text.ToString(); ArrayList list = new ArrayList(); list.Add(row.Cells["Cic"].Text.ToString()); list.Add(row.Cells["ProPlanId"].Text.ToString()); list.Add(row.Cells["PlineCodeA"].Value.ToString()); list.Add(row.Cells["PlineNameA"].Text.ToString()); list.Add(row.Cells["Gradecode"].Text.ToString()); list.Add(row.Cells["Gradename"].Text.ToString()); list.Add(row.Cells["StationDesc"].Text.ToString()); list.Add(row.Cells["PlineCode"].Value.ToString()); list.Add(row.Cells["GxPlanNo"].Value.ToString()); if (e.Button.Key.ToLower().Equals("select")) { //if (craftNo.Equals("")) //{ // MessageUtil.ShowTips(""); // return; //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLgSmeltingProcess.cpt&op=view" + "&CRAFT_NO=" + craftNo; FrmRepExcel down = new FrmRepExcel(ob, strurl); down.Text = "炼钢工艺卡打印"; down.Visible = false; down.Size = new Size(740, this.Height); down.WindowState = FormWindowState.Maximized; down.ShowDialog(); } else { FrmSteelProcessCard steCard = new FrmSteelProcessCard(craftNo, ob, list, "0"); steCard.ShowDialog(); bool flag = steCard.Falg; if (flag) { QueryOrder(); } } } #endregion /// /// 计算首炉加量 /// /// 首炉切头长(m) /// 管坯直径 /// 铸机流量 /// private double CalculateBeginAdd(double cutLenBegin, double dimater, double flow) { //计算米单重 double mSingleWeight = (7.8 * Math.PI / 4 * dimater * dimater) / 1000 / 1000; //计算首炉加量 double beginAddWgt = mSingleWeight * flow * cutLenBegin; return beginAddWgt; } /// /// 计算尾炉加量 /// /// 换中包切尾长(m) /// 管坯直径 /// 铸机流量 /// 中包铸余量 /// private double CalculateEndAdd(double cutLenEnd, double dimater, double flow, double zbLeftWgt) { //计算米单重 double mSingleWeight = (7.8 * Math.PI / 4 * dimater * dimater) / 1000 / 1000; //计算尾炉加量 double endAddWgt = mSingleWeight * cutLenEnd * flow + zbLeftWgt; return endAddWgt; } /// /// 计算可组炉数 /// /// 可组炉量 /// 标准出钢量 /// private double CalculateCanFurnace(double sumWgt, double standardSteel) { double canNum = sumWgt / standardSteel; return canNum; } private List listSourceCast = null; /// /// 查询铸造订单 /// private void QueryOrder() { if (plineCode == null) { MessageUtil.ShowTips("该用户没有铸造产线查看权限!"); return; } //if (chcAPline.Checked && comAPline.Value != null) { plineA = comAPline.Value.ToString(); } string[] plineB = null; if (chcBPline.Checked && comBPline.Value != null) { plineB = (comBPline.Value as List).Select(p => p.ToString()).ToArray(); } if (plineB == null) { MessageUtil.ShowWarning("请选择铸机!"); return; } string grade = ""; if (chcGrade.Checked && comGrade.Value != null) { grade = comGrade.Value.ToString(); } string fiterStatus = "0"; if (chcPlaned.Checked) { fiterStatus = "1"; } string proPlanId = ""; if (chcProplanId.Checked) { proPlanId = txtProplanId.Text.Trim(); } string isRepairPln = "0"; if (ChsisRepairPln.Checked) { isRepairPln = "1"; } string gongy = ""; if (Chkgongy.Checked) { gongy = comGongy.Value.ToString(); } string[] plineA = { }; if (chkEfPlin.Checked && comEfPlin.Value != null) { plineA = (comEfPlin.Value as List).Select(p => p.ToString()).ToArray(); } //执行状态 string[] statusArr = contorlPlanStatus1.statusArr; listSourceCast = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlOrderPlan.getOrderBInfoByContion", new object[] { plineA, plineCode, grade, proPlanId, fiterStatus, isRepairPln, statusArr, plineB, gongy }, ob); //plnOrderCastSEntityBindingSource.DataSource = listSourceCast; //ultraGridCast.UpdateData(); if (chcPlaned.Checked) { List Query = listSourceCast.Where(w => w.CanWgt > 0).ToList(); //var Query = from listSource in listSourceCast // where listSource.CanWgt > 0 Select; plnOrderCastSEntityBindingSource.DataSource = Query; } else { plnOrderCastSEntityBindingSource.DataSource = listSourceCast; } ultraGridCast.Refresh(); ultraGridCast.Update(); ////激活操作行代码 //if ((!_ProPlanId.Equals("") && !_GxPlanNo.Equals("")) || _EntityList != null) foreach (UltraGridRow ugrca in ultraGridCast.Rows) { //if (ugrca.Cells["ProPlanId"].Text.Equals("连铸")) //{ // ugrca.Cells["CutNumGp"].Appearance.BackColor = Color.FromArgb(255, 255, 128); //} //else //{ // ugrca.Cells["CutNumGp"].Appearance.BackColor = Color.Transparent; //} if (!_ProPlanId.Equals("") && !_GxPlanNo.Equals("")) { if (ugrca.Cells["ProPlanId"].Text.Trim().Equals(_ProPlanId) && ugrca.Cells["GxPlanNo"].Text.Trim().Equals(_GxPlanNo)) { ugrca.Activate(); break; } } if (_EntityList != null) { for (int i = 0; i < _EntityList.Count; i++) { PlnOrderCastSEntity jgxsEntity = (PlnOrderCastSEntity)_EntityList[i]; if (ugrca.Cells["ProPlanId"].Text.Trim().Equals(jgxsEntity.ProPlanId) && ugrca.Cells["GxPlanNo"].Text.Trim().Equals(jgxsEntity.GxPlanNo.ToString())) { ugrca.Appearance.BackColor = Color.Wheat; ugrca.Activate(); } } } } _EntityList = null; _ProPlanId = ""; } /// /// 查询最大浇次炉数 /// /// 投入物料编码/产出物料数组集合类似 ArrayList private int GetCastMaxNum(ArrayList materialArrList, string plinecode) { ArrayList list = GetChcRows(); object obj = SteelHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.getCastMaxNum", new object[] { materialArrList, plinecode }, this.ob); if (obj == null) return 0; else { int num = (int)obj; return num; } } /// /// 查询炼钢基础表 /// /// 电炉 /// private PlnBasePlineLgEntity GetBasePlineLg(string plinecode) { List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.getBasePlineLg", new object[] { plinecode }, ob); if (listSource == null || listSource.Count == 0) { return null; } else { return listSource[0]; } } /// /// 查询铸造基础表 /// /// 铸机 /// private PlnBasePlineLzEntity GetBasePlineLz(string plinecode) { List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.getBasePlineLz", new object[] { plinecode }, ob); if (listSource == null || listSource.Count == 0) { return null; } else { return listSource[0]; } } /// /// 查询连浇群组 /// /// 钢种代码集合 /// 钢种名称集合 /// private string[] GetCastGroupByGradeList(ArrayList gradecodeList, ArrayList gradenameList) { object obj = SteelHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.getCastInPlaceGroup", new object[] { gradecodeList, gradenameList }, this.ob); if (obj == null) return null; else { string[] messageArr = (string[])obj; return messageArr; } } int maxGroupNum = 0; private void chcChange(string plineCodeB, string plineCodeA) { IQueryable chcRows = ultraGridCast.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True"); if (chcRows == null || chcRows.Count() == 0) { txtMessage.Text = ""; txtAllwgt.Value = 0; txtAllnum.Value = 0; txtMaxGroupNum.Value = 0; maxGroupNum = 0; txtCastGroup.Tag = ""; txtCastGroup.Text = ""; } else { //钢种代码集合 ArrayList gradecodeList = new ArrayList(); //钢种名称集合 ArrayList gradenameList = new ArrayList(); //物料投入产出集合 ArrayList materialList = new ArrayList(); //总重量 double totalWgt = 0; //总支数 int totalNum = 0; //double diameterLz=0; foreach (UltraGridRow ugr in chcRows) { ugr.Cells["GradeSort"].Value = 0; string gradecode = ugr.Cells["Gradecode"].Value.ToString(); if (!gradecodeList.Contains(gradecode)) { gradecodeList.Add(gradecode); } string gradename = ugr.Cells["Gradename"].Value.ToString(); if (!gradenameList.Contains(gradename)) { gradenameList.Add(gradename); } string[] materialArr = new string[] { ugr.Cells["WlidIn"].Value.ToString(), ugr.Cells["MaterialNo"].Value.ToString() }; materialList.Add(materialArr); double canWgt = Convert.ToDouble(ugr.Cells["CanWgt"].Value.ToString()); totalWgt += canWgt; int canNum = Convert.ToInt32(ugr.Cells["CanNum"].Value.ToString()); totalNum += canNum; } txtAllwgt.Value = totalWgt.ToString("f3"); txtAllnum.Value = totalNum; //如果钢种个数等于1 string gradeGroup = ""; if (gradecodeList.Count <= 1) { txtMessage.Text = ""; txtCastGroup.Tag = ""; txtCastGroup.Text = ""; int index = 0; foreach (UltraGridRow ugr in chcRows) { index++; ugr.Cells["GradeSort"].Value = index; } } else { //多个钢种要验证连浇群组 string[] messageArr = GetCastGroupByGradeList(gradecodeList, gradenameList); txtMessage.Text = messageArr[0]; txtCastGroup.Tag = messageArr[1]; txtCastGroup.Text = messageArr[2]; gradeGroup = messageArr[3]; //连浇顺序 if (gradeGroup.Equals("")) { int index = 0; foreach (UltraGridRow ugr in chcRows) { index++; ugr.Cells["GradeSort"].Value = index; } } else { //连浇排序 string[] gradecodeArr = gradeGroup.Split(','); int index = 0; for (int i = 0; i < gradecodeArr.Count(); i++) { foreach (UltraGridRow ugr in chcRows) { if (ugr.Cells["Gradecode"].Value.ToString().Equals(gradecodeArr[i])) { index++; ugr.Cells["GradeSort"].Value = index; } } } } } //查询最大浇次炉数 int num = GetCastMaxNum(materialList, plineCodeB); if (num > 0) { txtMaxGroupNum.Value = num; maxGroupNum = num; } else { txtMaxGroupNum.Value = MaxFurnaceNum; maxGroupNum = MaxFurnaceNum; } //查询铸机基础数据,流数,中包铸余,炉数 PlnBasePlineLzEntity entity = GetBasePlineLz(plineCodeB); if (entity == null) { txtZbLeftWgt.Value = 0; txtFlow.Value = 0; txtMaxGroupNum.Value = 0; maxGroupNum = 0; } else { //全局变量 最大流量赋值 MaxFlow = Convert.ToInt32(entity.FlowNumMax.ToString()); MaxFurnaceNum = Convert.ToInt32(entity.FurnaceNumMax.ToString()); txtFlow.Value = entity.FlowNumMax; txtZbLeftWgt.Value = entity.ZbLeftWt; txtMaxGroupNum.Value = entity.FurnaceNumMax; maxGroupNum = Convert.ToInt32(entity.FurnaceNumMax.ToString()); //中包铸余 } //查询出钢量上下限 PlnBasePlineLgEntity lgentity = GetBasePlineLg(plineCodeA); if (lgentity == null) { SteelCeil.Value = 0; SteelLower.Value = 0; } else { SteelCeil.Value = lgentity.OutWtMax.ToString(); SteelLower.Value = lgentity.OutWtMin.ToString(); } } } /// /// 值变化事件 /// /// /// void ultraGridCast_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { UltraGridRow ugr = ultraGridCast.ActiveRow; if (ugr == null) return; string cutNUm = ugr.Cells["CutNumGp"].Value.ToString(); try { //if (e.Cell.Column.Key.Equals("ManualNum")) //{ // if (e.Cell.Row.Cells["ManualNum"].Equals()) // { // e.Cell.Row.Cells["ManualNum"].Value = 0; // } //} ultraGridCast.UpdateData(); if (e.Cell.Column.Key.Equals("CHC")) { foreach (UltraGridRow row in ultraGridCast.Rows) { if (Convert.ToBoolean(row.Cells["CHC"].Text.ToString()) == true) { if (!row.Cells["PlineCode"].Value.ToString().Equals(e.Cell.Row.Cells["PlineCode"].Value.ToString())) { MessageUtil.ShowTips("不能跨铸造产线预算/组浇!"); e.Cell.Row.Cells["CHC"].Value = false; return; } } } chcChange(e.Cell.Row.Cells["PlineCode"].Value.ToString(), e.Cell.Row.Cells["PlineCodeA"].Value.ToString()); //取消选择,将连浇排序置空 if (!Convert.ToBoolean(e.Cell.Value.ToString())) { //e.Cell.Row.Cells["First"].Value = false; e.Cell.Row.Cells["GradeSort"].Value = 0; e.Cell.Row.Cells["ManualNum"].Value = ""; } } if (e.Cell.Column.Key.Equals("PlineCode")) { e.Cell.Row.Cells["PlineCode"].Value = e.Cell.Value.ToString(); e.Cell.Row.Cells["PlineName"].Value = e.Cell.Text; string PlineCodeA = ""; string PlineNameA = ""; if (ugr.Cells["PlineCode"].Value.Equals("C002")) { e.Cell.Row.Cells["PlineCodeA"].Value = "C001"; e.Cell.Row.Cells["PlineNameA"].Value = "一炼钢电炉"; e.Cell.Row.Cells["PlineCodeA"].Band.Columns["PlineCodeA"].CellActivation = Activation.ActivateOnly; e.Cell.Row.Cells["PlineCodeA"].Appearance.BackColor = Color.Transparent; PlineCodeA = "C001"; PlineNameA = "一炼钢电炉"; } else if (ugr.Cells["PlineCode"].Value.Equals("C004")) { e.Cell.Row.Cells["PlineCodeA"].Value = "C003"; e.Cell.Row.Cells["PlineNameA"].Value = "二炼钢电炉"; e.Cell.Row.Cells["PlineCodeA"].Band.Columns["PlineCodeA"].CellActivation = Activation.AllowEdit; e.Cell.Row.Cells["PlineCodeA"].Appearance.BackColor = Color.FromArgb(255, 255, 128); PlineCodeA = "C003"; PlineNameA = "二炼钢电炉"; } else { e.Cell.Row.Cells["PlineCodeA"].Value = "C006"; e.Cell.Row.Cells["PlineNameA"].Value = "三炼钢电炉"; e.Cell.Row.Cells["PlineCodeA"].Band.Columns["PlineCodeA"].CellActivation = Activation.AllowEdit; e.Cell.Row.Cells["PlineCodeA"].Appearance.BackColor = Color.FromArgb(255, 255, 128); PlineCodeA = "C006"; PlineNameA = "三炼钢电炉"; } foreach (UltraGridRow row in ultraGridCast.Rows) { if (Convert.ToBoolean(row.Cells["CHC"].Text) == true) { row.Cells["PlineCode"].Value = e.Cell.Value.ToString(); row.Cells["PlineName"].Value = e.Cell.Text; row.Cells["PlineCodeA"].Value = PlineCodeA; row.Cells["PlineNameA"].Value = PlineNameA; } } } if (e.Cell.Column.Key.Equals("PlineCodeA")) { e.Cell.Row.Cells["PlineCodeA"].Value = e.Cell.Value.ToString(); e.Cell.Row.Cells["PlineNameA"].Value = e.Cell.Text; foreach (UltraGridRow row in ultraGridCast.Rows) { if (Convert.ToBoolean(row.Cells["CHC"].Text) == true) { row.Cells["PlineCodeA"].Value = e.Cell.Value.ToString(); row.Cells["PlineNameA"].Value = e.Cell.Text; } } } if (e.Cell.Column.Key.Equals("CutNumGp")) { if (e.Cell.Row.Cells["CutNumGp"].Value == null) { e.Cell.Row.Cells["CutNumGp"].Value = cutNUm; } else { string actLen = e.Cell.Row.Cells["CutNumGp"].Value.ToString(); if (!StringUtil.IsInt(actLen) || actLen == "0") { e.Cell.Row.Cells["CutNumGp"].Value = cutNUm; } } } } catch (Exception ex) { if (e.Cell.Column.Key.Equals("CutNumGp")) { MessageUtil.ShowTips("请输入数字"); e.Cell.Row.Cells["CutNumGp"].Value = cutNUm; } } } /// /// 获取选择行 /// /// public ArrayList GetChcRows() { ultraGridCast.UpdateData(); IQueryable chcRows = ultraGridCast.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");//.OrderBy(a => Convert.ToInt32(a.GetValue("GradeSort").ToString())); ; if (chcRows == null || chcRows.Count() == 0) { return null; } else { ArrayList list = new ArrayList(); foreach (UltraGridRow ugr in chcRows) { list.Add((PlnOrderCastSEntity)ugr.ListObject); } return list; } } /// /// 组浇 /// private void AddCast(string flag) { ArrayList entityList = GetChcRows(); if (entityList == null || entityList.Count == 0) { MessageUtil.ShowWarning("请选择订单"); return; } //实体类转json字符串 ArrayList jsonList = new ArrayList(); ArrayList gradecodeList = new ArrayList(); string plineCodeB = ""; string plineNameB = ""; string castype = ""; string dimer = ""; string plineCodeA = ""; string[] proPlanIdall = null; string manuaNum = ""; int countNotMan = 0; string memoNum = ""; List list = new List(); foreach (PlnOrderCastSEntity entity in entityList) { if (plineCodeB.Equals("")) { plineCodeB = entity.PlineCode; plineNameB = entity.PlineName; } if (!plineCodeB.Equals(entity.PlineCode)) { MessageUtil.ShowWarning("请选择同一铸造产线!"); return; } if (plineCodeA.Equals("")) { plineCodeA = entity.PlineCodeA; } if (!plineCodeA.Equals(entity.PlineCodeA)) { MessageUtil.ShowWarning("请选择同一电炉产线!"); return; } if (castype.Equals("")) { castype = entity.Castingtype; } if (!castype.Equals(entity.Castingtype)) { MessageUtil.ShowWarning("请选择同一铸造类型!"); return; } if (dimer.Equals("")) { dimer = entity.DiameterLz; } if (!dimer.Equals(entity.DiameterLz)) { MessageUtil.ShowWarning("请选择同一连铸直径!"); return; } if (memoNum.Equals("")) { memoNum = entity.Memo; } if (!memoNum.Equals(entity.Memo)) { MessageUtil.ShowWarning("选中的铸造订单计划备注不一样!"); return; } string gradecode = entity.Gradecode; if (!gradecodeList.Contains(gradecode)) { gradecodeList.Add(gradecode); } if (entity.ExeStatus.Equals("完成")) { MessageUtil.ShowWarning("铸造订单(" + entity.ProPlanId + "/" + entity.GxPlanNo + ")已生产完成!"); return; } if (entity.ExeStatus.Equals("关闭A")) { MessageUtil.ShowWarning("铸造订单(" + entity.ProPlanId + "/" + entity.GxPlanNo + ")已关闭A!"); return; } if (entity.IsRepairPln.Equals("是")) { MessageUtil.ShowWarning("铸造订单(" + entity.ProPlanId + "/" + entity.GxPlanNo + ")是检修计划,不能组浇!"); return; } if (manuaNum.Equals("")) { manuaNum = entity.ManualNum; } if (!manuaNum.Equals("")) { countNotMan = 1; if (entity.ManualNum.Equals("") || int.Parse(entity.ManualNum) == 0) { MessageUtil.ShowWarning("铸造订单(" + entity.ProPlanId + "/" + entity.GxPlanNo + ")已输入炉次号,则全部输入,否则全部不输入自动组浇!"); return; } } list.Add(entity.ProPlanId + "/" + entity.GxPlanNo); jsonList.Add(JSONFormat.Format(entity)); } proPlanIdall = list.ToArray(); int cicCount = 0; //查询是否有多个索引码 DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.queryCastCicCount", new object[] { proPlanIdall }, this.ob); if (dt.Rows.Count > 0) { cicCount = int.Parse(dt.Rows[0]["COUNT"].ToString()); } //流量 double flow = Convert.ToDouble(txtFlow.Value == null ? "0" : txtFlow.Value.ToString()); if (flow <= 0) { MessageUtil.ShowWarning("流数为0,请手动输入或者维护铸机(" + plineNameB + ")基础数据!"); return; } if (flow > MaxFlow) { MessageUtil.ShowWarning("流数大于铸机(" + plineNameB + ")的最大流数" + MaxFlow + "!"); return; } ////铸机 //string plineCode = comBPline.Value == null ? "" : comBPline.Value.ToString(); //if (plineCode.Equals("")) { MessageUtil.ShowWarning("请选择铸机!"); return; } //最大炉数 double castMaxNum = Convert.ToInt32(txtMaxGroupNum.Value == null ? "0" : txtMaxGroupNum.Value.ToString()); if (castMaxNum > maxGroupNum) { MessageUtil.ShowWarning("输入的最大炉数大于对应投入产出物料的最大炉数,请重新输入!"); return; } if (castMaxNum <= 0) { MessageUtil.ShowWarning("请维护对应投入产出物料的最大炉数!"); return; } //中包铸余 string zbLeftWgt = txtZbLeftWgt.Value.ToString(); //连浇群组 string castGroupCode = txtCastGroup.Tag.ToString().Trim(); string castGroup = txtCastGroup.Text.Trim(); //连浇备注 string memo = txtMemo.Text.Trim(); //换中包方式(1 换中包 0不换中包) string castMode = comCastMode.Value.ToString(); if (SteelCeil.Value.Equals("0")) { MessageUtil.ShowWarning("出钢量上限不能为零!"); return; } if (SteelLower.Value.Equals("0")) { MessageUtil.ShowWarning("出钢量下限不能为零!"); return; } //出钢量上限 string steelCeil = SteelCeil.Value.ToString(); //出钢量下限 string steelLower = SteelLower.Value.ToString(); //操作人 string username = UserInfo.GetUserName(); string[] paramArr = new string[] { plineCodeB, plineNameB, flow.ToString(), zbLeftWgt, castMaxNum.ToString(), castGroupCode, castMode, memo, steelCeil, steelLower, memoNum }; if (castGroupCode.Equals("") && gradecodeList.Count >= 2) { MessageUtil.ShowWarning("请维护对应钢种的连浇群组!"); return; } string LuNumFalg = "0"; if (flag.Equals("1")) { var a = MessageUtil.ShowYesNoCancelAndQuestion("是否按炉数控制组浇?"); if (a == DialogResult.Yes) { LuNumFalg = "1"; } else if (a == DialogResult.No) { LuNumFalg = "0"; } else { return; } //if (MessageUtil.ShowYesNoAndQuestion("是否组浇?") == DialogResult.No) { return; } } else { if (MessageUtil.ShowYesNoAndQuestion("是否按炉数控制?") == DialogResult.Yes) { LuNumFalg = "1"; } } PlanComm.WaitFromOpen(this.Cursor); string[] param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.CastGoup", new object[] { jsonList, paramArr, username, flag, cicCount.ToString(), countNotMan.ToString(), LuNumFalg }, this.ob); PlanComm.WaitFromColse(this.Cursor); if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); } else { if (flag.Equals("1")) { MessageUtil.ShowTips(param[1]); if ((bool.Parse(param[0]))) { //刷新数据 QueryOrder(); QueryCast(); } } else { txtMessage.Value = param[1]; } } } /// /// 顺序交换 /// private void Exchange() { ultraGridCast.UpdateData(); IQueryable chcRows = ultraGridCast.Rows.AsQueryable().Where(a => a.GetValue("First") == "True"); if (chcRows == null || chcRows.Count() != 2) { MessageUtil.ShowWarning("请选择需要顺序交换的两条订单!"); return; } UltraGridRow lastUgr = chcRows.Last(); UltraGridRow fristUgr = chcRows.First(); //if (castGroupCode.Equals("") && gradecodeList.Count >= 2) { //if (!fristUgr.Cells["Gradecode"].Value.ToString().Equals(lastUgr.Cells["Gradecode"].Value.ToString())) //{ // MessageUtil.ShowWarning("只有相同的钢种的订单才能交换连浇顺序!"); // return; //} int gradeSort1 = Convert.ToInt32(fristUgr.Cells["GradeSort"].Value.ToString()); int gradeSort2 = Convert.ToInt32(lastUgr.Cells["GradeSort"].Value.ToString()); lastUgr.Cells["GradeSort"].Value = gradeSort1; fristUgr.Cells["GradeSort"].Value = gradeSort2; } /// /// 修改备注 /// private void DoProMemo() { ArrayList messageErr = new ArrayList(); ultraGridCast.UpdateData(); ArrayList list = ProducHelper.GetChcRows(ultraGridCast); if (list == null || list.Count == 0) { MessageUtil.ShowTips("请选择铸造订单!"); return; } ArrayList jsonList = new ArrayList(); foreach (PlnOrderCastSEntity entity in list) { entity.Memo.ToString(); jsonList.Add(JSONFormat.Format(entity)); } if (MessageUtil.ShowYesNoAndQuestion("是否工艺/计划备注修改?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doProMemo"; ccp.ServerParams = new object[] { jsonList }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("修改成功!")) { QueryOrder(); } } /// /// 激活事件 /// /// /// void ultraGridCast_AfterRowActivate(object sender, EventArgs e) { UltraGridRow ugrc = ultraGridCast.ActiveRow; if (ugrc == null) return; foreach (UltraGridRow ugrca in ultraGridCast.Rows) { if (ugrca.Cells["ProPlanId"].Text.Equals(ugrc.Cells["ProPlanId"].Text)) { ugrca.RowSelectorAppearance.BackColor = Color.LightGreen; } else { ugrca.RowSelectorAppearance.BackColor = _BackColor; } if (ugrca.Cells["PlanUsetime"].Value == null || ugrca.Cells["PlanUsetime"].Value.ToString().Equals("") || Convert.ToDouble(ugrca.Cells["PlanUsetime"].Value.ToString()) <= 0) { ugrca.Cells["PlanUsetime"].Appearance.BackColor = Color.MistyRose; } if (ugrca.Cells["ExeStatus"].Value.ToString().Equals("生产中")) { ugrca.Cells["PlanTimeB"].Appearance.BackColor = System.Drawing.Color.FromArgb(255, 255, 128); } else { ugrca.Cells["PlanTimeB"].Appearance.BackColor = System.Drawing.Color.Transparent; } if (ugrca.Cells["IsRepairPln"].Text.Equals("是")) { ugrca.Cells["PlanUsetime"].Appearance.BackColor = System.Drawing.Color.FromArgb(255, 255, 128); ugrca.Cells["RepairType"].Appearance.BackColor = System.Drawing.Color.FromArgb(255, 255, 128); } else { ugrca.Cells["PlanUsetime"].Appearance.BackColor = Color.Transparent; ugrca.Cells["RepairType"].Appearance.BackColor = Color.Transparent; } //if (ugrca.Cells["PlineCode"].Value.Equals("C002")) //{ // ugrca.Cells["PlineCodeA"].Appearance.BackColor = Color.Transparent; //} //else //{ // ugrca.Cells["PlineCodeA"].Appearance.BackColor = Color.FromArgb(255, 255, 128); //} } DataTable dtSpec = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.ControlOrderPlan.queryPlineCode", new object[] { ugrc.Cells["DiameterLz"].Text.ToString(), ugrc.Cells["Castingtype"].Text.ToString() }, this.ob); if (dtSpec == null || dtSpec.Rows.Count == 0) { return; } ugrc.Cells["PlineCode"].ValueList = PlanComm.GeneralValuelist(ref dtSpec, "PLINE_CODE", "PLINE_NAME"); } /******************浇/炉次操作*****************/ private void ultraToolbarsManager2_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "QueryCast": // 查询浇次 QueryCast(); break; case "DeleteCast": // 删除浇次 DeleteCast(); break; case "Ajust": // ButtonTool Adjust(); break; case "AdjustMerge": // 炉次合并 AdjustMerge(); break; case "UpdateLenght": // 调整单倍坯长 UpdateLenght(); break; case "ProcessAll": //获取工艺 doProcessAllFur(); break; case "ClearProcess": //取消工艺 doClearProcessFur(); break; case "Confirm": //工艺确认 doConfirmFur("1"); break; case "UnConfirm": //取消确认 doConfirmFur("0"); break; case "UpdateScheme": //配料方案修改 doUpdateScheme(); break; case "BreakUp": //余材拆分 doBreakUp(); break; case "MastMerge": //同定尺去向合并 doMastMerge(); break; case "UpdatePath": //修改工艺路径 doUpdatePath(); break; case "FillFurnace"://补炉 doFillFurnace1(); break; case "CastConfirm": //浇次确认 CastConfirm("0"); break; case "CastCancel"://取消浇次确认 CastConfirm("1"); break; default: break; } } /// /// 获取从记录选中行 /// /// public ArrayList GetChildChcRow() { ultraGridFurName.UpdateData(); if (ultraGridFurName.Rows.Count == 0) { return null; } ArrayList list = new ArrayList(); foreach (UltraGridRow ugr in ultraGridFurName.Rows) { foreach (UltraGridRow ugrc in ugr.ChildBands[0].Rows) { if (Convert.ToBoolean(ugrc.Cells["CHC"].Value.ToString()) && ugrc.HasParent()) { list.Add((PlnSteelforOrdEntity)ugrc.ListObject); } } } return list; } /// /// 删除浇次 /// private void DeleteCast() { ArrayList entityList = new ArrayList(); ultraGrid1.UpdateData(); IQueryable chcRows = ultraGrid1.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True"); if (chcRows == null || chcRows.Count() == 0) { MessageUtil.ShowWarning("请选择要删除的浇次!"); return; } else { foreach (UltraGridRow ugr in chcRows) { entityList.Add((PlnSteelforcastEntity)ugr.ListObject); } } //ArrayList entityList = GetChcRow(); //if (entityList == null || entityList.Count == 0) //{ // MessageUtil.ShowWarning("请选择要删除的浇次!"); // return; //} ArrayList castnoList = new ArrayList(); foreach (PlnSteelforcastEntity entity in entityList) { if (!entity.Status.Equals("编制中")) { MessageUtil.ShowWarning("浇次号(" + entity.CastNo + "),不是编制中状态,不能删除!"); return; } if (entity.IfConfirm.Equals("是")) { MessageUtil.ShowWarning("浇次号(" + entity.CastNo + "),已浇次确认,不能删除!"); return; } castnoList.Add(entity.CastNo); } if (MessageUtil.ShowYesNoAndQuestion("是否删除浇次?") == DialogResult.No) { return; } string[] param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.ControlCastPlan.deleteCast", new object[] { castnoList }, this.ob); if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); } else { MessageUtil.ShowTips(param[1]); if ((bool.Parse(param[0]))) { //刷新数据 QueryCast(); } } } /// /// 调整炉次订单 /// private void Adjust() { ArrayList entityList = GetChildChcRow(); ultraGridFurName.UpdateData(); //IQueryable chcRows = ultraGridFurName.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True"); if (entityList == null || entityList.Count == 0) { MessageUtil.ShowWarning("请选择要调整炉次订单信息!"); return; } ArrayList jsonList = new ArrayList(); //UltraGridRow ros = ultraGridFurName.ActiveRow; string firstWt = ""; string endWt = ""; string resNum = ""; foreach (UltraGridRow ugr in ultraGridFurName.Rows) { foreach (UltraGridRow ugrc in ugr.ChildBands[0].Rows) { if (Convert.ToBoolean(ugrc.Cells["CHC"].Value.ToString()) && ugrc.HasParent()) { firstWt = ugr.Cells["FirstAmount"].Text.ToString(); endWt = ugr.Cells["EndAmount"].Text.ToString(); resNum = ugr.Cells["ResAmount"].Text.ToString(); } } } //UltraGridRow rowP = ros.ParentRow; foreach (PlnSteelforOrdEntity entity in entityList) { if (!entity.Status.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次订单才能调整!"); return; } if (!entity.Surplusflag.Equals("订单材")) { MessageUtil.ShowWarning("只有订单材的炉次订单才能调整!"); return; } if (entity.ProPlanId.Contains("ZG")) { MessageUtil.ShowWarning("利库并且是利轧管计划的不能调整!"); return; } if (entity.TotWeightM == null || Convert.ToDouble(entity.TotWeightM.ToString()) <= 0) { MessageUtil.ShowWarning("炉次订单重量必须大于0!"); return; } if (entity.IfConfirm.Equals("是")) { MessageUtil.ShowWarning("浇次号(" + entity.CastNo + "),已浇次确认,不能调整炉次订单!"); return; } entity.TotWeightM = Convert.ToDecimal(entity.TotMumM.Value * entity.WeightM.Value); jsonList.Add(JSONFormat.Format(entity)); } if (MessageUtil.ShowYesNoAndQuestion("是否调整炉次订单?") == DialogResult.No) { return; } string[] param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.ControlCastPlan.adjustSteeelord", new object[] { jsonList, UserInfo.GetUserName(), firstWt, endWt, resNum }, this.ob); if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); } else { MessageUtil.ShowTips(param[1]); if ((bool.Parse(param[0]))) { //刷新数据 QueryCast(); } } } private void ultraGridCast_InitializeRow(object sender, InitializeRowEventArgs e) { PlanHelper.ControlCellEdit(e.Row); } /// /// 排序 /// /// /// private void ultraGridCast_MouseDown(object sender, MouseEventArgs e) { try { ultraGridCast.UpdateData(); } catch (Exception) { MessageUtil.ShowWarning("数据异常,请刷新数据!"); return; } if (e.Button == MouseButtons.Right) { string plineCodeB = ""; int count = 0; foreach (UltraGridRow ugrca in ultraGridCast.Rows) { if (plineCodeB.Equals("")) { plineCodeB = ugrca.Cells["PlineCode"].Text.ToString(); } if (!plineCodeB.Equals(ugrca.Cells["PlineCode"].Text.ToString())) { count++; } } if (count > 1) { MessageUtil.ShowTips("调整顺序时只允许界面存在相同铸造产线,请重新查询!"); return; } //移动行 ArrayList entityList = ProducHelper.GetChcRows(ultraGridCast); if (entityList == null || entityList.Count == 0) { return; } //定位行 UIElement myUIElement = ultraGridCast.DisplayLayout.UIElement.ElementFromPoint(new Point(e.X, e.Y)); UltraGridCell myCell = (UltraGridCell)myUIElement.GetContext(typeof(UltraGridCell)); if (myCell == null) { return; } UltraGridRow ugr = myCell.Row; if (ugr == null) { return; } PlnOrderCastSEntity entityD = (PlnOrderCastSEntity)ugr.ListObject; bool flag = ProducHelper.SortPlanOrder(entityList, entityD, "B", "", this.ob); if (flag) { _EntityList = entityList; QueryOrder(); } } } #region 炉次信息 /// /// 查询炉信息/订单信息 /// /// OpeBase public void QueryFurnaceByCastno(string castno) { List listSourceM = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnaceByCastno", new object[] { castno }, ob); List listSourceC = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getSteelOrder", new object[] { castno }, ob); EntityHelper.AddEntityRelation(listSourceM, listSourceC, "Furnaceno", "Furnaceno"); plnSteelforfurnaceEntityBindingSource.DataSource = listSourceM; GridHelper.RefreshAndAutoSizeExceptColumns(ultraGridFurName, new UltraGridColumn[] { ultraGridFurName.DisplayLayout.Bands[0].Columns["CIC"], ultraGridFurName.DisplayLayout.Bands[1].Columns["FinalUserDesc"], ultraGridFurName.DisplayLayout.Bands[1].Columns["OrderSeqNo"], ultraGridFurName.DisplayLayout.Bands[1].Columns["GowhereName"], ultraGridFurName.DisplayLayout.Bands[1].Columns["WldescIn"], ultraGridFurName.DisplayLayout.Bands[1].Columns["MaterialName"] }); foreach (UltraGridRow ugrc in ultraGridFurName.Rows) { foreach (UltraGridRow row in ugrc.ChildBands[0].Rows) { if (row.Cells["Surplusflag"].Text.ToString().Equals("余材")) { if (row.Cells["SurplusType"].Text.ToString().Equals("生产超量") || row.Cells["SurplusType"].Text.ToString().Equals("补炉")) { if (row.Cells["Gptype"].Text.ToString().Equals("铸坯")) { row.Cells["Surplusflag"].Appearance.BackColor = System.Drawing.Color.Lime; row.Cells["Surplusflag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; row.Cells["LenGpSingle"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["LenGpSingle"].Activation = Activation.AllowEdit; row.Cells["LenGpSingle"].IgnoreRowColActivation = true; row.Cells["TotWeightM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["TotWeightM"].Activation = Activation.AllowEdit; row.Cells["TotWeightM"].IgnoreRowColActivation = true; row.Cells["TotMumM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["TotMumM"].Activation = Activation.AllowEdit; row.Cells["TotMumM"].IgnoreRowColActivation = true; row.Cells["CutNumGp"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["CutNumGp"].Activation = Activation.AllowEdit; row.Cells["CutNumGp"].IgnoreRowColActivation = true; } else { row.Cells["Surplusflag"].Appearance.BackColor = System.Drawing.Color.Lime; row.Cells["Surplusflag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; row.Cells["TotWeightM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["TotWeightM"].Activation = Activation.AllowEdit; row.Cells["TotWeightM"].IgnoreRowColActivation = true; } } } else if (row.Cells["Surplusflag"].Text.ToString().Equals("订单材")) { row.Cells["TotWeightM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["TotWeightM"].Activation = Activation.AllowEdit; row.Cells["TotWeightM"].IgnoreRowColActivation = true; //row.Cells["LenGpSingle"].Appearance.BackColor = Color.Transparent; //row.Cells["LenGpSingle"].Band.Columns["LenGpSingle"].CellActivation = Activation.ActivateOnly; } //else //{ // row.Cells["TotMumM"].Activation = Activation.AllowEdit; // row.Cells["TotMumM"].IgnoreRowColActivation = true; //} if (row.Cells["StateLk"].Text.ToString().Equals("是")) { row.Appearance.BackColor = Color.FromArgb(255, 224, 192); row.Cells["Surplusflag"].Activation = Activation.AllowEdit; row.Cells["Surplusflag"].IgnoreRowColActivation = true; row.Cells["Surplusflag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; //row.Cells["Surplusflag"].EditorComponent = this.ultraTextEditor2; } if (!row.Cells["SurplusType"].Text.ToString().Equals("首炉加量") && !row.Cells["SurplusType"].Text.ToString().Equals("尾炉加量")) { row.Cells["GowhereName"].Activation = Activation.AllowEdit; row.Cells["GowhereName"].IgnoreRowColActivation = true; row.Cells["GowhereName"].Appearance.BackColor = Color.FromArgb(255, 255, 128); row.Cells["GowhereName"].EditorComponent = txtgowhere; } } } if (ultraCheckEditor2.Checked) { this.ultraGridFurName.Rows.ExpandAll(true); } else { this.ultraGridFurName.Rows.CollapseAll(true); } //this.ultraGridFurName.Rows.ExpandAll(true); } private void QueryFurnaceByOrd(string furnaceno) { List listSourceC = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnSteelOrder", new object[] { furnaceno }, ob); plnSteelforOrdEntityBindingSource.DataSource = listSourceC; //foreach (UltraGridRow row in ultraGrid2.Rows) //{ // if (row.Cells["Surplusflag"].Text.ToString().Equals("余材") && row.Cells["SurplusType"].Text.ToString().Equals("生产超量")) // { // row.Cells["Surplusflag"].Appearance.BackColor = System.Drawing.Color.Lime; // row.Cells["Surplusflag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; // } // else // { // row.Cells["LenGpSingle"].Appearance.BackColor = Color.Transparent; // row.Cells["LenGpSingle"].Band.Columns["LenGpSingle"].CellActivation = Activation.ActivateOnly; // } // if (row.Cells["StateLk"].Text.ToString().Equals("是")) // { // row.Appearance.BackColor = Color.FromArgb(255, 224, 192); // row.Cells["Surplusflag"].Band.Columns["Surplusflag"].CellActivation = Activation.AllowEdit; // row.Cells["Surplusflag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; // //row.Cells["Surplusflag"].EditorComponent = this.ultraTextEditor2; // } //} } private void ultraGridFurName_InitializeRow(object sender, InitializeRowEventArgs e) { BaseHelper.ControlCellEdit(e.Row); } private void ultraGridFurName_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) { //plnSteelforOrdEntityBindingSource.Clear(); return; } //QueryFurnaceByOrd(row.Cells["Furnaceno"].Text.ToString().Trim()); QueryBatch(row.Cells["EfPlineCode"].Value.ToString()); } /// /// 余材拆分 /// private void doBreakUp() { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; ArrayList entityList = GetChildChcRow(); if (entityList == null || entityList.Count == 0) { MessageUtil.ShowWarning("请选择要调整炉次订单信息!"); return; } if (entityList.Count > 1) { MessageUtil.ShowWarning("不能一次性拆分多条余材!"); return; } ArrayList jsonList = new ArrayList(); double wgt = 0; int num = 0; double ratio = 0; foreach (PlnSteelforOrdEntity entity in entityList) { if (!entity.Surplusflag.Equals("余材")) { MessageUtil.ShowTips("请选择余材的炉次订单!"); return; } else { if (!entity.SurplusType.Equals("生产超量") &&!entity.SurplusType.Equals("补炉")) { MessageUtil.ShowTips("请选择余材类型是生产超量或补炉的炉次订单!"); return; } } if (entity.IfConfirm.Equals("是")) { MessageUtil.ShowWarning("浇次号(" + entity.CastNo + "),已浇次确认,不能拆分!"); return; } wgt = Convert.ToDouble(entity.TotWeightM); num = Convert.ToInt32(entity.TotMumM); ratio = Convert.ToDouble(entity.WeightM); jsonList.Add(JSONFormat.Format(entity)); } //重量与支数验证 if (wgt <= 0 || num <= 1) { MessageUtil.ShowWarning("余材重量为0吨,支数小于或者等于1支!"); return; } //重量与支数比例 double ratio1 = wgt / num; FrmFurnaceOrdBreak frmSpitWgt = new FrmFurnaceOrdBreak(wgt, num, ratio1); frmSpitWgt.ShowDialog(); double spitWgt = frmSpitWgt.AlreadySpitWgt; int spitNum = frmSpitWgt.AlreadySpitNum; if (spitWgt <= 0) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "spitPlanOrder"; ccp.ServerParams = new object[] { jsonList, spitWgt.ToString(), spitNum.ToString(), this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("拆分成功!")) { QueryFurnaceByCastno(castno); } } /// /// 同定尺,去向合并 /// private void doMastMerge() { ArrayList entityList = new ArrayList(); ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; int countParn = 0; string LengthM = "";//定尺 string GowhereName = "";//去向 int ChcMastCount = 0; string furnacenoMast = ""; string sequencenoMast = ""; string cutNumGp = ""; foreach (UltraGridRow ugr in ultraGridFurName.Rows) { foreach (UltraGridRow ugrc in ugr.ChildBands[0].Rows) { if (Convert.ToBoolean(ugrc.Cells["CHC"].Text.ToString()) == true) { countParn += 1; if (Convert.ToBoolean(ugrc.Cells["ChcMast"].Text.ToString()) == true) { ChcMastCount++; furnacenoMast = ugrc.Cells["Furnaceno"].Value.ToString(); sequencenoMast = ugrc.Cells["Sequenceno"].Value.ToString(); cutNumGp = ugrc.Cells["CutNumGp"].Value.ToString(); } ArrayList jsonList = new ArrayList(); if (!ugrc.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次订单才能合并!"); return; } if (!ugrc.Cells["Surplusflag"].Text.Equals("订单材")) { MessageUtil.ShowWarning("只有订单材炉次订单才能合并!"); return; } if (ugrc.Cells["IfConfirm"].Text.Equals("是")) { MessageUtil.ShowWarning("浇次已确认,不能合并!"); return; } if (LengthM.Equals("")) { LengthM = ugrc.Cells["LenGpSingle"].Value.ToString(); } //判断炉次是否是同定尺 if (!LengthM.Equals(ugrc.Cells["LenGpSingle"].Value.ToString())) { MessageUtil.ShowWarning("单倍坯长不同,不能合并!"); return; } if (GowhereName.Equals("")) { GowhereName = ugrc.Cells["GowhereName"].Text.ToString(); } //判断是否同去向 if (!GowhereName.Equals(ugrc.Cells["GowhereName"].Text.ToString())) { MessageUtil.ShowWarning("去向不同,不能合并!"); return; } jsonList.Add(ugrc.Cells["Furnaceno"].Text.ToString()); jsonList.Add(ugrc.Cells["Sequenceno"].Text.ToString()); entityList.Add(jsonList); } } } if (countParn == 0) { MessageUtil.ShowWarning("请选择需要合并同单倍坯长,同去向的炉次订单信息!"); return; } if (ChcMastCount == 0 || ChcMastCount > 1) { MessageUtil.ShowWarning("请选择一条主记录信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否已炉次订单顺序号[" + sequencenoMast + "],倍尺数[" + cutNumGp + "]做为主记录合并?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doMastMerge"; ccp.ServerParams = new object[] { furnacenoMast, sequencenoMast, entityList, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("合并成功!")) { UltraGridRow rowf = ultraGridFurName.ActiveRow; QueryFurnaceByCastno(castno); } } /// /// 补炉 /// private void doFillFurnace1() { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) { MessageUtil.ShowWarning("炉次信息不能为空!"); return; } if (!row.HasParent()) { PlnSteelforfurnaceOEntity entity = row.ListObject as PlnSteelforfurnaceOEntity; if (entity == null) { MessageUtil.ShowWarning("请选择需要补炉的炉次主信息!"); return; } //var a = MessageUtil.ShowYesNoCancelAndQuestion("是否对所选中的炉次进行补炉?"); //if (a == DialogResult.Yes) { LuNumFalg = "1"; } else if (a == DialogResult.No) { LuNumFalg = "0"; } else { return; } string text = "是否对所选中的炉次进行补炉或补余材订单?,请确认!"; FrmBuFurnShow furnShow = new FrmBuFurnShow(text); furnShow.ShowDialog(); string flag = furnShow.Falg; string[] param = null; if (flag.Equals("1")) { param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SupplementStove", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); } else if (flag.Equals("2")) { param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SteelSupplement", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); } else { return; } //if (MessageUtil.ShowYesNoAndQuestion("是否对所选中的炉次进行补炉?,请确认!") == DialogResult.No) // return; if (param != null) { MessageUtil.ShowTips("补炉成功"); QueryFurnaceByCastno(castno); } } else { ArrayList jsonList = new ArrayList(); PlnSteelforOrdEntity entity = row.ListObject as PlnSteelforOrdEntity; if (entity == null) { MessageUtil.ShowWarning("请选择需要补炉的炉次订单信息!"); return; } //entity.Surplusflag = "1"; //entity.SurplusType = "1"; //jsonList.Add(JSONFormat.Format(entity)); if (MessageUtil.ShowYesNoAndQuestion("是否对所选中的炉次进行补炉余材订单?,请确认!") == DialogResult.No) return; var param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SteelSupplement", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); if (param != null) { MessageUtil.ShowTips("补炉成功"); QueryFurnaceByCastno(castno); } } } #endregion #region 浇次信息 /// /// 查询浇次计划 /// /// /// /// /// /// public void QueryCast() { string[] plineB = null; if (chcBPline.Checked && comBPline.Value != null) { plineB = (comBPline.Value as List).Select(p => p.ToString()).ToArray(); } else { plineB = plineCode; } string[] strat = new string[] { "00" }; List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlCastPlan.getCastByCondition", new object[] { "", "", "", "", strat, plineB, "0" }, ob); plnSteelforcastEntityBindingSource.DataSource = listSource; GridHelper.RefreshAndAutoSize(ultraGrid1); UltraGridRow ugr = ultraGrid1.ActiveRow; if (ugr == null) { plnSteelforfurnaceEntityBindingSource.Clear(); plnSteelforOrdEntityBindingSource.Clear(); } if (ultraCheckEditor2.Checked) { this.ultraGridFurName.Rows.ExpandAll(true); } else { this.ultraGridFurName.Rows.CollapseAll(true); } } private string castno = ""; private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { UltraGridRow ugr = ultraGrid1.ActiveRow; if (ugr == null) { plnSteelforfurnaceEntityBindingSource.Clear(); //plnSteelforOrdEntityBindingSource.Clear(); return; } castno = ugr.Cells["CastNo"].Text; QueryFurnaceByCastno(castno); } #endregion /// /// 炉次合并 /// private void AdjustMerge() { ArrayList entityList = new ArrayList(); ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; ArrayList jsonList = new ArrayList(); int countParn = 0; string gradecode = row.Cells["Gradecode"].Text.ToString(); string falg = "0"; int countHb=0; foreach (UltraGridRow ugr in ultraGridFurName.Rows) {countHb++; if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { //ArrayList jsonList = new ArrayList(); countParn += 1; if (!ugr.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次订单才能合并!"); return; } //判断炉次是否是同钢种 if (!gradecode.Equals(ugr.Cells["Gradecode"].Text.ToString())) { falg = "1"; } if (ugr.Cells["IfConfirmCast"].Text.Equals("是")) { MessageUtil.ShowWarning("浇次号:" + ugr.Cells["CastNo"].Text + "已浇次确认,不能合并!"); return; } jsonList.Add(ugr.Cells["Furnaceno"].Text.ToString()); jsonList.Add(ugr.Cells["Gradename"].Text.ToString()); jsonList.Add(ugr.Cells["PlineCode"].Text.ToString()); jsonList.Add(ugr.Cells["PlineName"].Text.ToString()); jsonList.Add(ugr.Cells["FurnacenoSeq"].Text.ToString()); //jsonList1.Add(jsonList); int dianC = 0; //判断炉次订单是否有订单材 // DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMakingPlanChange.getPlnsteelforOrd", //new object[] { ugr.Cells["Furnaceno"].Text.ToString() }, this.ob); // if (dt.Rows.Count > 0) // { // for (int i = 0; i < dt.Rows.Count; i++) // { // if (dt.Rows[i]["SURPLUSFLAG"].ToString().Equals("0"))//订单材 // { // dianC += 1; // } // } // } // if (dianC == 0) // { // MessageUtil.ShowWarning("炉次;" + ugr.Cells["Furnaceno"].Text.ToString() + "没有订单材,只有订单材的炉次订单才能合并!"); // return; // } } } if (countParn == 0) { MessageUtil.ShowWarning("请选择需要合并的炉次信息!"); return; } if (countParn > 2) { MessageUtil.ShowWarning("请选择两条炉次信息!"); return; } if (falg.Equals("1")) { MessageUtil.ShowWarning("您所选择的两条炉次信息钢种不一样!"); return; } if (jsonList == null) return; String[] arrString = (string[])jsonList.ToArray(typeof(string)); string furnNo2 = ""; if (jsonList.Count > 5) { furnNo2 = arrString[5]; } //PlanComm.WaitFromOpen(this.Cursor); //CoreClientParam ccp = new CoreClientParam(); //ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmCicIntersection"; //ccp.MethodName = "saveIntersectionCic"; //ccp.ServerParams = new object[] { arrString[0], furnNo2 }; //ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); //PlanComm.WaitFromColse(this.Cursor); //if (ccp.ReturnCode == -1) return; //if (ccp.ReturnInfo.Equals("存在交集!")) //{ FrmSteelMerge merge = new FrmSteelMerge(jsonList, ob, countHb); merge.ShowDialog(); bool flag = merge.Flag; if (flag) { QueryFurnaceByCastno(castno); } //} //else //{ // MessageUtil.ShowTips(ccp.ReturnInfo); //} } /// /// 单倍坯长调整 /// private void UpdateLenght() { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; ArrayList entityList = GetChildChcRow(); //IQueryable chcRows = ultraGridFurName.Rows..AsQueryable().Where(a => a.GetValue("CHC") == "True"); if (entityList == null || entityList.Count == 0) { MessageUtil.ShowWarning("请选择要调整炉次订单信息!"); return; } ArrayList jsonList = new ArrayList(); foreach (PlnSteelforOrdEntity entity in entityList) { if (entity.IfConfirm.Equals("是")) { MessageUtil.ShowWarning("浇次号:" + entity.CastNo + "已浇次确认,不能调整!"); return; } if (entity.Surplusflag.Equals("余材")) { if (!entity.SurplusType.Equals("生产超量") && !entity.SurplusType.Equals("补炉")) { MessageUtil.ShowTips("请选择余材类型是生产超量或补炉的炉次订单!"); return; } } else { MessageUtil.ShowTips("请选择余材炉次订单!"); return; } if (entity.Castingtype.Equals("模铸")) { MessageUtil.ShowTips("只能修改连铸!"); return; } jsonList.Add(JSONFormat.Format(entity)); } if (MessageUtil.ShowYesNoAndQuestion("是否调整炉次订单?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doUpdateLenght"; ccp.ServerParams = new object[] { jsonList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("调整余材成功!")) { UltraGridRow rowf = ultraGridFurName.ActiveRow; QueryFurnaceByCastno(castno); } } /// /// 修改工艺路径 /// private void doUpdatePath() { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; int countParn = 0; ArrayList entityList = new ArrayList(); foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { ArrayList jsonList = new ArrayList(); countParn += 1; if (!ugr.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次才能调整!"); return; } /* if (!ugr.Cells["CraftNo"].Text.Equals("")) { MessageUtil.ShowWarning("炼钢工艺文件号为空才能修改!"); return; }*/ jsonList.Add(ugr.Cells["PlanRoute"].Text.ToString()); jsonList.Add(ugr.Cells["Furnaceno"].Text.ToString()); entityList.Add(jsonList); } } if (countParn == 0) { MessageUtil.ShowWarning("请选择需炉次主信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否修改炼钢工艺路径?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doUpdatePath"; ccp.ServerParams = new object[] { entityList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("修改成功!")) { QueryFurnaceByCastno(castno); } } #region 铸造订单层炼钢工艺功能 /// /// 一键获取炼钢工艺 /// private void doProcessAll() { UltraGridRow row = ultraGridCast.ActiveRow; if (row == null) return; //ArrayList entityListLc = new ArrayList(); //ArrayList entityListJc = new ArrayList(); ArrayList entityList = new ArrayList(); int count = 0; string str = ""; #region 炉次 //foreach (UltraGridRow ugr in ultraGridFurName.Rows) //{ // if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) // { // str = "LC"; // count++; // entityListLc.Add((PlnSteelforfurnaceEntity)ugr.ListObject); // } //} ////if (count == 0) ////{ //// MessageUtil.ShowWarning("请选择要获取工艺的炉次信息!"); //// return; ////} //foreach (UltraGridRow ugrJC in ultraGrid1.Rows) //{ // if (Convert.ToBoolean(ugrJC.Cells["CHC"].Text.ToString()) == true) // { // str = "JC"; // count++; // entityListJc.Add((PlnSteelforcastEntity)ugrJC.ListObject); // } //} //if (count == 0) //{ // MessageUtil.ShowWarning("请选择要获取工艺的炉次信息或浇次信息!"); // return; //} //ArrayList jsonListLc = new ArrayList(); //ArrayList jsonListJc = new ArrayList(); //if (str.Equals("LC")) //{ // foreach (PlnSteelforfurnaceEntity entityl in entityListLc) // { // jsonListLc.Add(JSONFormat.Format(entityl)); // } //} //else if (str.Equals("JC")) //{ // foreach (PlnSteelforcastEntity entityj in entityListJc) // { // jsonListJc.Add(JSONFormat.Format(entityj)); // } //} #endregion foreach (UltraGridRow ugr in ultraGridCast.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true) { ArrayList jsonList = new ArrayList(); count++; jsonList.Add(ugr.Cells["ProPlanId"].Text.ToString()); jsonList.Add(ugr.Cells["GxPlanNo"].Text.ToString()); entityList.Add(jsonList); } } if (count == 0) { MessageUtil.ShowWarning("请选择要获取工艺的铸造订单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否获取工艺?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doProcessAll"; ccp.ServerParams = new object[] { entityList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("获取工艺成功!")) { QueryOrder(); } } /// /// 一键取消炼钢工艺 /// private void doClearProcess() { UltraGridRow row = ultraGridCast.ActiveRow; if (row == null) return; //ArrayList entityListLc = new ArrayList(); //ArrayList entityListJc = new ArrayList(); ArrayList entityList = new ArrayList(); int count = 0; string str = ""; foreach (UltraGridRow ugr in ultraGridCast.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true) { ArrayList jsonList = new ArrayList(); count++; jsonList.Add(ugr.Cells["ProPlanId"].Text.ToString()); jsonList.Add(ugr.Cells["GxPlanNo"].Text.ToString()); entityList.Add(jsonList); } } if (count == 0) { MessageUtil.ShowWarning("请选择要取消工艺的铸造订单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否取消工艺?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doClearProcess"; ccp.ServerParams = new object[] { entityList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("取消工艺成功!")) { QueryOrder(); } } /// /// 确认/取消确认 /// /// private void doConfirm(string falg) { ultraGridCast.UpdateData(); UltraGridRow row = ultraGridCast.ActiveRow; if (row == null) return; int countParn = 0; ArrayList entityList = new ArrayList(); #region 炉次 //foreach (UltraGridRow ugr in ultraGridFurName.Rows) //{ // if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) // { // ArrayList jsonList = new ArrayList(); // countParn += 1; // if (falg.Equals("1")) // { // if (ugr.Cells["CraftNo"].Text.Equals("")) // { // MessageUtil.ShowWarning("炼钢工艺卡文件不能为空!"); // return; // } // if (ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) // { // MessageUtil.ShowWarning("炼钢工艺已确认!"); // return; // } // if (ugr.Cells["BatchingName"].Text.ToString().Equals("")) // { // MessageUtil.ShowWarning("配料方案不能为空!"); // return; // } // if (!ugr.Cells["Status"].Text.Equals("编制中")) // { // MessageUtil.ShowWarning("只有编制中状态的炉次才能确认!"); // return; // } // } // else // { // if (!ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) // { // MessageUtil.ShowWarning("炼钢工艺未确认!"); // return; // } // if (!ugr.Cells["Status"].Text.Equals("编制中")) // { // MessageUtil.ShowWarning("只有编制中状态的炉次才能取消确认!"); // return; // } // } // jsonList.Add(ugr.Cells["Furnaceno"].Text.ToString()); // entityList.Add(jsonList); // } //} #endregion #region 铸造订单层 foreach (UltraGridRow ugr in ultraGridCast.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true) { ArrayList jsonList = new ArrayList(); countParn += 1; if (falg.Equals("1")) { if (ugr.Cells["CraftNo"].Text.Equals("")) { MessageUtil.ShowWarning("铸造订单(" + ugr.Cells["ProPlanId"].Text.ToString() + "/" + ugr.Cells["GxPlanNo"].Text.ToString() + "),炼钢工艺卡文件不能为空!"); return; } if (ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowWarning("铸造订单(" + ugr.Cells["ProPlanId"].Text.ToString() + "/" + ugr.Cells["GxPlanNo"].Text.ToString() + "),炼钢工艺已确认!"); return; } //if (!ugr.Cells["ExeStatus"].Text.Equals("计划") && !ugr.Cells["ExeStatus"].Text.Equals("生产中")) //{ // MessageUtil.ShowWarning("只有计划,生产中状态的订单才能确认!"); // return; //} } else { if (!ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowWarning("铸造订单(" + ugr.Cells["ProPlanId"].Text.ToString() + "/" + ugr.Cells["GxPlanNo"].Text.ToString() + "),炼钢工艺未确认!"); return; } //if (!ugr.Cells["ExeStatus"].Text.Equals("计划") && !ugr.Cells["ExeStatus"].Text.Equals("生产中")) //{ // MessageUtil.ShowWarning("只有计划,生产中状态的订单才能取消确认!"); // return; //} } jsonList.Add(ugr.Cells["ProPlanId"].Text.ToString()); jsonList.Add(ugr.Cells["GxPlanNo"].Text.ToString()); entityList.Add(jsonList); } } #endregion if (countParn == 0) { MessageUtil.ShowWarning("请选择铸造订单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion(falg.Equals("1") ? "是否工艺确认?" : "是否取消工艺确认?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doConfirm"; ccp.ServerParams = new object[] { entityList, falg }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("确认成功!") || ccp.ReturnInfo.Equals("取消确认成功!")) { QueryOrder(); } } #endregion /// /// 配料方案修改 /// private void doUpdateScheme() { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; int countParn = 0; ArrayList entityList = new ArrayList(); foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { ArrayList jsonList = new ArrayList(); countParn += 1; if (!ugr.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次才能调整!"); return; } jsonList.Add(ugr.Cells["BatchingCode"].Value.ToString()); jsonList.Add(ugr.Cells["BatchingName"].Text.ToString()); jsonList.Add(ugr.Cells["HotmetalNum"].Text.ToString()); jsonList.Add(ugr.Cells["IronNum"].Text.ToString()); jsonList.Add(ugr.Cells["SteelscrapNum"].Text.ToString()); jsonList.Add(ugr.Cells["Furnaceno"].Text.ToString()); entityList.Add(jsonList); } } if (countParn == 0) { MessageUtil.ShowWarning("请选择需炉次主信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否调整配料方案?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doUpdateScheme"; ccp.ServerParams = new object[] { entityList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("调整配料方案成功!")) { QueryFurnaceByCastno(castno); } } #region 炉次层炼钢工艺功能 /// /// 一键获取炼钢工艺 /// private void doProcessAllFur() { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; ArrayList entityListLc = new ArrayList(); ArrayList entityListJc = new ArrayList(); ArrayList entityList = new ArrayList(); int count = 0; string str = ""; #region 炉次 foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { str = "LC"; count++; entityListLc.Add((PlnSteelforfurnaceEntity)ugr.ListObject); } } //if (count == 0) //{ // MessageUtil.ShowWarning("请选择要获取工艺的炉次信息!"); // return; //} foreach (UltraGridRow ugrJC in ultraGrid1.Rows) { if (Convert.ToBoolean(ugrJC.Cells["CHC"].Text.ToString()) == true) { str = "JC"; count++; entityListJc.Add((PlnSteelforcastEntity)ugrJC.ListObject); } } if (count == 0) { MessageUtil.ShowWarning("请选择要获取工艺的炉次信息或浇次信息!"); return; } ArrayList jsonListLc = new ArrayList(); ArrayList jsonListJc = new ArrayList(); if (str.Equals("LC")) { foreach (PlnSteelforfurnaceEntity entityl in entityListLc) { jsonListLc.Add(JSONFormat.Format(entityl)); } } else if (str.Equals("JC")) { foreach (PlnSteelforcastEntity entityj in entityListJc) { jsonListJc.Add(JSONFormat.Format(entityj)); } } #endregion if (MessageUtil.ShowYesNoAndQuestion("是否获取工艺?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doProcessAllFur"; ccp.ServerParams = new object[] { jsonListLc, jsonListJc }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("获取工艺成功!")) { QueryFurnaceByCastno(castno); } } /// /// 取消炼钢工艺 /// private void doClearProcessFur() { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; ArrayList entityListLc = new ArrayList(); ArrayList entityListJc = new ArrayList(); ArrayList entityList = new ArrayList(); int count = 0; string str = ""; #region 炉次 foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { str = "LC"; count++; entityListLc.Add((PlnSteelforfurnaceEntity)ugr.ListObject); } if (ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowWarning("炼钢工艺已确认!"); return; } } //if (count == 0) //{ // MessageUtil.ShowWarning("请选择要获取工艺的炉次信息!"); // return; //} foreach (UltraGridRow ugrJC in ultraGrid1.Rows) { if (Convert.ToBoolean(ugrJC.Cells["CHC"].Text.ToString()) == true) { str = "JC"; count++; entityListJc.Add((PlnSteelforcastEntity)ugrJC.ListObject); } } if (count == 0) { MessageUtil.ShowWarning("请选择要取消工艺卡的炉次信息或浇次信息!"); return; } ArrayList jsonListLc = new ArrayList(); ArrayList jsonListJc = new ArrayList(); if (str.Equals("LC")) { foreach (PlnSteelforfurnaceEntity entityl in entityListLc) { jsonListLc.Add(JSONFormat.Format(entityl)); } } else if (str.Equals("JC")) { foreach (PlnSteelforcastEntity entityj in entityListJc) { jsonListJc.Add(JSONFormat.Format(entityj)); } } #endregion if (MessageUtil.ShowYesNoAndQuestion("是否取消工艺卡?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doClearProcessFur"; ccp.ServerParams = new object[] { jsonListLc, jsonListJc }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("取消工艺成功!")) { QueryFurnaceByCastno(castno); } } /// /// 确认/取消确认 /// /// private void doConfirmFur(string falg) { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; int countParn = 0; ArrayList entityList = new ArrayList(); #region 炉次 foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { ArrayList jsonList = new ArrayList(); countParn += 1; if (falg.Equals("1")) { if (ugr.Cells["CraftNo"].Text.Equals("")) { MessageUtil.ShowWarning("炼钢工艺卡文件不能为空!"); return; } if (ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowWarning("炼钢工艺已确认!"); return; } if (ugr.Cells["BatchingName"].Text.ToString().Equals("")) { MessageUtil.ShowWarning("配料方案不能为空!"); return; } if (!ugr.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次才能确认!"); return; } } else { if (!ugr.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowWarning("炼钢工艺未确认!"); return; } if (!ugr.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次才能取消确认!"); return; } } jsonList.Add(ugr.Cells["Furnaceno"].Text.ToString()); entityList.Add(jsonList); } } #endregion if (countParn == 0) { MessageUtil.ShowWarning("请选择炉次信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion(falg.Equals("1") ? "是否工艺确认?" : "是否取消工艺确认?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doConfirmFur"; ccp.ServerParams = new object[] { entityList, falg }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("确认成功!") || ccp.ReturnInfo.Equals("取消确认成功!")) { QueryFurnaceByCastno(castno); } } #endregion private void craftImg_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ultraGridFurName.ActiveRow; string craftNo = row.Cells["CraftNo"].Text.ToString(); string craftPath = row.Cells["CraftPath"].Text.ToString(); ArrayList list = new ArrayList(); list.Add(row.Cells["Cic"].Text.ToString()); list.Add(row.Cells["Furnaceno"].Text.ToString()); list.Add(row.Cells["EfPlineCode"].Text.ToString()); list.Add(row.Cells["EfPlineName"].Text.ToString()); list.Add(row.Cells["Gradecode"].Text.ToString()); list.Add(row.Cells["Gradename"].Text.ToString()); list.Add(row.Cells["PlanRoute"].Text.ToString()); list.Add(row.Cells["PlineCode"].Text.ToString()); list.Add(""); if (e.Button.Key.ToLower().Equals("select")) { //if (craftNo.Equals("")) //{ // MessageUtil.ShowTips(""); // return; //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLgSmeltingProcess.cpt&op=view" + "&CRAFT_NO=" + craftNo; FrmRepExcel down = new FrmRepExcel(ob, strurl); down.Text = "炼钢工艺卡打印"; down.ShowDialog(); } else { FrmSteelProcessCard steCard = new FrmSteelProcessCard(craftNo, ob, list, "1"); steCard.ShowDialog(); bool flag = steCard.Falg; if (flag) { QueryFurnaceByCastno(castno); } } } private void ultraGridFurName_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { foreach (UltraGridRow uRow in ultraGridFurName.Selected.Rows) { if (!uRow.HasParent())//主记录 { if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow)) { uRow.Cells["CHC"].Value = true; } } } } private void ultraGridFurName_CellChange(object sender, CellEventArgs e) { ultraGridFurName.UpdateData(); UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; if (e.Cell.Column.Key.Equals("BatchingCode")) { e.Cell.Row.Cells["BatchingCode"].Value = e.Cell.Value.ToString(); e.Cell.Row.Cells["BatchingName"].Value = e.Cell.Text.ToString(); DataRow[] drs = dtBatch.Select("BATCHING_CODE ='" + e.Cell.Value.ToString() + "'"); if (drs != null && drs.Length > 0) { e.Cell.Row.Cells["HotmetalNum"].Value = drs[0]["铁水"].ToString(); e.Cell.Row.Cells["IronNum"].Value = (double.Parse(e.Cell.Row.Cells["Weight"].Value.ToString()) * 0.3 - double.Parse(e.Cell.Row.Cells["HotmetalNum"].Value.ToString())).ToString("f3"); e.Cell.Row.Cells["SteelscrapNum"].Value = (double.Parse(e.Cell.Row.Cells["Weight"].Value.ToString()) - double.Parse(e.Cell.Row.Cells["IronNum"].Value.ToString())).ToString("f3"); } } if (e.Cell.Column.Key.Equals("PlanRoute")) { foreach (UltraGridRow ugr in ultraGridFurName.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true && !ugr.HasParent()) { ugr.Cells["PlanRoute"].Value = e.Cell.Text.ToString(); } } } if (row.HasParent()) { if (row.Cells["Gptype"].Text.ToString().Equals("铸坯")) { double outdiameter = double.Parse(e.Cell.Row.Cells["Diameter"].Value.ToString()); double zgwtSingle = (7.8 * 3.1415926 / 4 * outdiameter * outdiameter) / 1000 / 1000;// 坯米单重 if (e.Cell.Column.Key.Equals("TotWeightM")) { if (e.Cell.Row.Cells["TotWeightM"].Value == null) { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * (zgwtSingle * (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / 1000))).ToString("f3"); } else { string actLen = e.Cell.Row.Cells["TotWeightM"].Value.ToString(); if (!StringUtil.IsFloat(actLen) || actLen == "0.000") { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * (zgwtSingle * (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / 1000))).ToString("f3"); } else { //比较输入的重量不能大于原重量 //if (double.Parse(actLen) > double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString())) //{ // e.Cell.Row.Cells["EditWt"].Value = e.Cell.Row.Cells["TotWeightM"].Value.ToString(); // e.Cell.Row.Cells["EditNum"].Value = e.Cell.Row.Cells["TotMumM"].Value.ToString(); //} //else //{ e.Cell.Row.Cells["TotMumM"].Value = ((int)Math.Ceiling(double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString()))).ToString(); //e.Cell.Row.Cells["TotWeightM"].Value = (int.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * (zgwtSingle * (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / 1000))).ToString("f3"); } } } //余材修改单倍坯长,倍尺数,重量,支数 if (e.Cell.Row.Cells["SurplusType"].Value.ToString().Equals("生产超量") || e.Cell.Row.Cells["SurplusType"].Value.ToString().Equals("补炉") && e.Cell.Row.Cells["Castingtype"].Value.ToString().Equals("连铸")) { double lenGpSingle = 0; int cutNumGp = 0; if (e.Cell.Column.Key.Equals("CutNumGp")) { if (e.Cell.Row.Cells["CutNumGp"].Value == null) { e.Cell.Row.Cells["CutNumGp"].Value = (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["LenGpSingle"].Value.ToString())).ToString(); //MessageUtil.ShowTips("倍尺数不能为空!"); //return; } else { string actLen = e.Cell.Row.Cells["CutNumGp"].Value.ToString(); if (!StringUtil.IsInt(actLen) || actLen == "0") { e.Cell.Row.Cells["CutNumGp"].Value = (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["LenGpSingle"].Value.ToString())).ToString(); //MessageUtil.ShowTips("倍尺数不能为零!"); //return; } } } if (e.Cell.Column.Key.Equals("LenGpSingle")) { if (e.Cell.Row.Cells["LenGpSingle"].Value == null) { e.Cell.Row.Cells["LenGpSingle"].Value = (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["CutNumGp"].Value.ToString())).ToString(); //MessageUtil.ShowTips("单倍坯长不能为空!"); //return; } else { string actLen = e.Cell.Row.Cells["LenGpSingle"].Value.ToString(); if (!StringUtil.IsInt(actLen) || actLen == "0") { e.Cell.Row.Cells["LenGpSingle"].Value = (double.Parse(e.Cell.Row.Cells["LengthM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["CutNumGp"].Value.ToString())).ToString(); //MessageUtil.ShowTips("单倍坯长不能为零!"); //return; } } } // 单倍坯重 double singleWeight = zgwtSingle * (double.Parse(e.Cell.Row.Cells["LenGpSingle"].Value.ToString()) / 1000); //cutNumGp = int.Parse(e.Cell.Row.Cells["CutNumGp"].Value.ToString()); double lengthLz = double.Parse(e.Cell.Row.Cells["LenGpSingle"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["CutNumGp"].Value.ToString());// 倍尺坯长 double wtCastOne = zgwtSingle * (lengthLz / 1000); e.Cell.Row.Cells["WeightM"].Value = wtCastOne.ToString("f3"); e.Cell.Row.Cells["LengthM"].Value = lengthLz.ToString("f3"); e.Cell.Row.Cells["WeightGpOne"].Value = singleWeight.ToString("f3"); double totWtM = double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()); int totNum = (int)Math.Ceiling(totWtM / wtCastOne); totWtM = wtCastOne * totNum; if (e.Cell.Column.Key.Equals("TotWeightM")) { if (e.Cell.Row.Cells["TotWeightM"].Value == null) { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * wtCastOne).ToString("f3"); } else { string actLen = e.Cell.Row.Cells["TotWeightM"].Value.ToString(); if (!StringUtil.IsFloat(actLen) || actLen == "0.000") { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * wtCastOne).ToString("f3"); } else { totWtM = double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()); totNum = (int)Math.Ceiling(totWtM / wtCastOne); //totWtM = totNum * wtCastOne; } } } if (e.Cell.Column.Key.Equals("TotMumM")) { if (e.Cell.Row.Cells["TotMumM"].Value == null) { e.Cell.Row.Cells["TotMumM"].Value = ((int)Math.Ceiling(double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) / wtCastOne)).ToString(); } else { string actLen = e.Cell.Row.Cells["TotMumM"].Value.ToString(); if (!StringUtil.IsInt(actLen) || actLen == "0") { e.Cell.Row.Cells["TotMumM"].Value = totNum.ToString(); } else { totNum = int.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()); totWtM = totNum * wtCastOne; } } } e.Cell.Row.Cells["TotWeightM"].Value = totWtM.ToString("f3"); e.Cell.Row.Cells["TotMumM"].Value = totNum.ToString(); } } else { int totNum = int.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()); if (e.Cell.Column.Key.Equals("TotWeightM")) { if (e.Cell.Row.Cells["TotWeightM"].Value == null) { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString())).ToString("f3"); } else { string actLen = e.Cell.Row.Cells["TotWeightM"].Value.ToString(); if (!StringUtil.IsFloat(actLen) || actLen == "0") { e.Cell.Row.Cells["TotWeightM"].Value = (double.Parse(e.Cell.Row.Cells["TotMumM"].Value.ToString()) * double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString())).ToString("f3"); } else { totNum = (int)Math.Ceiling(double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString())); } } } //e.Cell.Row.Cells["TotWeightM"].Value = (totNum * double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString())).ToString("f3"); e.Cell.Row.Cells["TotMumM"].Value = totNum.ToString(); } } } private int splitterDistance = 0; private void ultraExpandableGroupBox2_ExpandedStateChanged(object sender, EventArgs e) { if (ultraExpandableGroupBox2.Expanded == false) { this.splitContainer1.SplitterDistance = splitContainer1.Size.Height - 26; } else { this.splitContainer1.SplitterDistance = splitterDistance == 0 ? splitContainer1.Size.Height / 2 : splitterDistance; } } private void FrmSteelMakingPlanChange_Shown(object sender, EventArgs e) { ultraExpandableGroupBox2.Expanded = false; this.splitContainer1.SplitterDistance = splitContainer1.Size.Height - 26; this.splitContainer2.SplitterDistance = splitContainer2.Size.Width / 2; if (toolMenu.Toolbars[0].Tools.Exists("QueryOrder")) { toolMenu.Toolbars[0].Tools["QueryOrder"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Budget")) { toolMenu.Toolbars[0].Tools["Budget"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddCast")) { toolMenu.Toolbars[0].Tools["AddCast"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Capacity")) { toolMenu.Toolbars[0].Tools["Capacity"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddRepairPlan")) { toolMenu.Toolbars[0].Tools["AddRepairPlan"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DeleteRepairPlan")) { toolMenu.Toolbars[0].Tools["DeleteRepairPlan"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("PlineChange")) { toolMenu.Toolbars[0].Tools["PlineChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("TimeChange")) { toolMenu.Toolbars[0].Tools["TimeChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("StatusChange")) { toolMenu.Toolbars[0].Tools["StatusChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("InitData")) { toolMenu.Toolbars[0].Tools["InitData"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Spit")) { toolMenu.Toolbars[0].Tools["Spit"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Merge")) { toolMenu.Toolbars[0].Tools["Merge"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Issued")) { toolMenu.Toolbars[0].Tools["Issued"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CancelIssued")) { toolMenu.Toolbars[0].Tools["CancelIssued"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("QueryCast")) { toolMenu.Toolbars[0].Tools["QueryCast"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Down")) { toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Rollback")) { toolMenu.Toolbars[0].Tools["Rollback"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Exchange")) { toolMenu.Toolbars[0].Tools["Exchange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("TimeAdjust")) { toolMenu.Toolbars[0].Tools["TimeAdjust"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ProMemo")) { toolMenu.Toolbars[0].Tools["ProMemo"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMemo")) { toolMenu.Toolbars[0].Tools["UpdateMemo"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("SetPlanFinish")) { toolMenu.Toolbars[0].Tools["SetPlanFinish"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("FillFurnace")) { toolMenu.Toolbars[0].Tools["FillFurnace"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Confirm")) { toolMenu.Toolbars[0].Tools["Confirm"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UnConfirm")) { toolMenu.Toolbars[0].Tools["UnConfirm"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("ProcessAll")) { toolMenu.Toolbars[0].Tools["ProcessAll"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateNumGp")) { toolMenu.Toolbars[0].Tools["UpdateNumGp"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddBlOrder")) { toolMenu.Toolbars[0].Tools["AddBlOrder"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("LimitProcessAll")) { toolMenu.Toolbars[0].Tools["LimitProcessAll"].InstanceProps.Visible = DefaultableBoolean.False; } clekUtral.Visible = true; chcGrade.Visible = true; comGrade.Visible = true; chcProplanId.Visible = true; txtProplanId.Visible = true; contorlPlanStatus1.Visible = true; chcPlaned.Visible = true; ChsisRepairPln.Visible = true; ultraCheckEditor1.Visible = false; ultraComboEditor1.Visible = false; Chkgongy.Visible = true; comGongy.Visible = true; chcBPline.Visible = true; comBPline.Visible = true; chkEfPlin.Checked = false; chkEfPlin.Enabled = true; chcPlanTimeB.Visible = false; txtPlanTimeB1.Visible = false; chcCastNo.Visible = false; txtCastNo.Visible = false; chkStoveNo.Visible = false; txtStoveNo.Visible = false; chkJudgeNo.Visible = false; txtJudgeNo.Visible = false; ultraCheckEditor5.Visible = false; endTimeB.Visible = false; } private void ultraExpandableGroupBox4_ExpandedStateChanged(object sender, EventArgs e) { if (ultraExpandableGroupBox4.Expanded == false) { this.splitContainer2.SplitterDistance = 22; } else { this.splitContainer2.SplitterDistance = splitterDistance == 0 ? splitContainer2.Size.Width / 2 : splitterDistance; } } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (toolMenu == null) return; if (e.Tab.TabControl.SelectedTab.Key.Equals("0")) { if (toolMenu.Toolbars[0].Tools.Exists("QueryOrder")) { toolMenu.Toolbars[0].Tools["QueryOrder"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Budget")) { toolMenu.Toolbars[0].Tools["Budget"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddCast")) { toolMenu.Toolbars[0].Tools["AddCast"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Capacity")) { toolMenu.Toolbars[0].Tools["Capacity"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddRepairPlan")) { toolMenu.Toolbars[0].Tools["AddRepairPlan"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DeleteRepairPlan")) { toolMenu.Toolbars[0].Tools["DeleteRepairPlan"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("PlineChange")) { toolMenu.Toolbars[0].Tools["PlineChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("TimeChange")) { toolMenu.Toolbars[0].Tools["TimeChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("StatusChange")) { toolMenu.Toolbars[0].Tools["StatusChange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("InitData")) { toolMenu.Toolbars[0].Tools["InitData"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Spit")) { toolMenu.Toolbars[0].Tools["Spit"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Merge")) { toolMenu.Toolbars[0].Tools["Merge"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Issued")) { toolMenu.Toolbars[0].Tools["Issued"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CancelIssued")) { toolMenu.Toolbars[0].Tools["CancelIssued"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("QueryCast")) { toolMenu.Toolbars[0].Tools["QueryCast"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Down")) { toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Rollback")) { toolMenu.Toolbars[0].Tools["Rollback"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Exchange")) { toolMenu.Toolbars[0].Tools["Exchange"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("TimeAdjust")) { toolMenu.Toolbars[0].Tools["TimeAdjust"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ProMemo")) { toolMenu.Toolbars[0].Tools["ProMemo"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMemo")) { toolMenu.Toolbars[0].Tools["UpdateMemo"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("SetPlanFinish")) { toolMenu.Toolbars[0].Tools["SetPlanFinish"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("FillFurnace")) { toolMenu.Toolbars[0].Tools["FillFurnace"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Confirm")) { toolMenu.Toolbars[0].Tools["Confirm"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UnConfirm")) { toolMenu.Toolbars[0].Tools["UnConfirm"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("ProcessAll")) { toolMenu.Toolbars[0].Tools["ProcessAll"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateNumGp")) { toolMenu.Toolbars[0].Tools["UpdateNumGp"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("AddBlOrder")) { toolMenu.Toolbars[0].Tools["AddBlOrder"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("LimitProcessAll")) { toolMenu.Toolbars[0].Tools["LimitProcessAll"].InstanceProps.Visible = DefaultableBoolean.False; } clekUtral.Visible = true; chcGrade.Visible = true; comGrade.Visible = true; chcProplanId.Visible = true; txtProplanId.Visible = true; contorlPlanStatus1.Visible = true; chcPlaned.Visible = true; ChsisRepairPln.Visible = true; ultraCheckEditor1.Visible = false; ultraComboEditor1.Visible = false; Chkgongy.Visible = true; comGongy.Visible = true; chcBPline.Visible = true; comBPline.Visible = true; chkEfPlin.Checked = false; chkEfPlin.Enabled = true; chcPlanTimeB.Visible = false; txtPlanTimeB1.Visible = false; chcCastNo.Visible = false; txtCastNo.Visible = false; chkStoveNo.Visible = false; txtStoveNo.Visible = false; chkJudgeNo.Visible = false; txtJudgeNo.Visible = false; ultraCheckEditor5.Visible = false; endTimeB.Visible = false; } else { if (toolMenu.Toolbars[0].Tools.Exists("QueryOrder")) { toolMenu.Toolbars[0].Tools["QueryOrder"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Budget")) { toolMenu.Toolbars[0].Tools["Budget"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("AddCast")) { toolMenu.Toolbars[0].Tools["AddCast"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Capacity")) { toolMenu.Toolbars[0].Tools["Capacity"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("AddRepairPlan")) { toolMenu.Toolbars[0].Tools["AddRepairPlan"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DeleteRepairPlan")) { toolMenu.Toolbars[0].Tools["DeleteRepairPlan"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("PlineChange")) { toolMenu.Toolbars[0].Tools["PlineChange"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("TimeChange")) { toolMenu.Toolbars[0].Tools["TimeChange"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("StatusChange")) { toolMenu.Toolbars[0].Tools["StatusChange"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("InitData")) { toolMenu.Toolbars[0].Tools["InitData"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Spit")) { toolMenu.Toolbars[0].Tools["Spit"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Merge")) { toolMenu.Toolbars[0].Tools["Merge"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Issued")) { toolMenu.Toolbars[0].Tools["Issued"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CancelIssued")) { toolMenu.Toolbars[0].Tools["CancelIssued"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("QueryCast")) { toolMenu.Toolbars[0].Tools["QueryCast"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Down")) { toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Rollback")) { toolMenu.Toolbars[0].Tools["Rollback"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Exchange")) { toolMenu.Toolbars[0].Tools["Exchange"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("TimeAdjust")) { toolMenu.Toolbars[0].Tools["TimeAdjust"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("ProMemo")) { toolMenu.Toolbars[0].Tools["ProMemo"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMemo")) { toolMenu.Toolbars[0].Tools["UpdateMemo"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("SetPlanFinish")) { toolMenu.Toolbars[0].Tools["SetPlanFinish"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("FillFurnace")) { toolMenu.Toolbars[0].Tools["FillFurnace"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Confirm")) { toolMenu.Toolbars[0].Tools["Confirm"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UnConfirm")) { toolMenu.Toolbars[0].Tools["UnConfirm"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ProcessAll")) { toolMenu.Toolbars[0].Tools["ProcessAll"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateNumGp")) { toolMenu.Toolbars[0].Tools["UpdateNumGp"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("AddBlOrder")) { toolMenu.Toolbars[0].Tools["AddBlOrder"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("LimitProcessAll")) { toolMenu.Toolbars[0].Tools["LimitProcessAll"].InstanceProps.Visible = DefaultableBoolean.True; } clekUtral.Visible = false; chcGrade.Visible = false; comGrade.Visible = false; chcProplanId.Visible = false; txtProplanId.Visible = false; contorlPlanStatus1.Visible = false; chcPlaned.Visible = false; ChsisRepairPln.Visible = false; ultraCheckEditor1.Visible = true; ultraComboEditor1.Visible = true; Chkgongy.Visible = false; comGongy.Visible = false; chcBPline.Visible = false; comBPline.Visible = false; chkEfPlin.Checked = true; chkEfPlin.Enabled = false; chcPlanTimeB.Visible = true; txtPlanTimeB1.Visible = true; chcCastNo.Visible = true; txtCastNo.Visible = true; chkStoveNo.Visible = true; txtStoveNo.Visible = true; chkJudgeNo.Visible = true; txtJudgeNo.Visible = true; ultraCheckEditor5.Visible = true; endTimeB.Visible = true; } } #region 浇次信息TAB页 /// /// 界面 UltraExpandableGroupBox 之间展开或者收缩 调整尺寸 /// /// /// public void QueryCastTab() { //if (ugbCast.Expanded == false) //{ QueryFurnaceTab(); //} //else //{ // QueryCastNo(); //} } /// /// 查询浇次信息 /// private void QueryCastNo() { string[] plineB = null; if (chcBPline.Checked && comBPline.Value != null) { plineB = (comBPline.Value as List).Select(p => p.ToString()).ToArray(); } else { plineB = plineCode; } string[] strat = null; if (ultraCheckEditor1.Checked && ultraComboEditor1.Value != null) { strat = (ultraComboEditor1.Value as List).Select(p => p.ToString()).ToArray(); } else { strat = new string[] { "00" }; } List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlCastPlan.getCastByCondition", new object[] { "", "", "", "", strat, plineB, "1" }, ob); plnSteelforcastNewEntityBindingSource.DataSource = listSource; UltraGridRow ugr = ugCast.ActiveRow; if (ugr == null) { plnSteelforfurnaceNewEntityBindingSource.Clear(); } } public void QueryFurnaceByCastnoTab(string castno) { List listSourceM = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnaceByCastno", new object[] { castno }, ob); List listSourceC = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getSteelOrder", new object[] { castno }, ob); EntityHelper.AddEntityRelation(listSourceM, listSourceC, "Furnaceno", "Furnaceno"); plnSteelforfurnaceNewEntityBindingSource.DataSource = listSourceM; GridHelper.RefreshAndAutoSizeExceptColumns(ugStove, new UltraGridColumn[] { ugStove.DisplayLayout.Bands[0].Columns["CIC"], ugStove.DisplayLayout.Bands[1].Columns["FinalUserDesc"], ugStove.DisplayLayout.Bands[1].Columns["OrderSeqNo"], ugStove.DisplayLayout.Bands[1].Columns["GowhereName"], ugStove.DisplayLayout.Bands[1].Columns["WldescIn"], ugStove.DisplayLayout.Bands[1].Columns["MaterialName"] }); foreach (UltraGridRow ugr in ugStove.Rows) { if (!ugr.HasParent()) { ugr.Cells["Delete"].Value = "删除"; } } } public void QueryFurnaceTab() { string[] plineA = null; if (chkEfPlin.Checked && comEfPlin.Value != null) { plineA = (comEfPlin.Value as List).Select(p => p.ToString()).ToArray(); } else { if (comEfPlin.Text.Equals("")) { MessageUtil.ShowTips("请选择电炉产线!"); return; } } string[] strat = null; if (ultraCheckEditor1.Checked && ultraComboEditor1.Value != null) { strat = (ultraComboEditor1.Value as List).Select(p => p.ToString()).ToArray(); } else { strat = new string[] { "00" }; } string stratTime = ""; string endTime = ""; if (chcPlanTimeB.Checked) { DateTime dt1 = Convert.ToDateTime(txtPlanTimeB1.Text.ToString()); DateTime dt2 = Convert.ToDateTime(endTimeB.Text.ToString()); if (dt1 > dt2) { MessageUtil.ShowTips("选择生产日期区间不对,请重新选择!"); return; } stratTime = txtPlanTimeB1.Text.ToString().Replace("-", ""); endTime = endTimeB.Text.ToString().Replace("-", ""); } string castNo = ""; if (chcCastNo.Checked) { castNo = txtCastNo.Text.ToString(); } string stoveNo = ""; if (chkStoveNo.Checked) { stoveNo = txtStoveNo.Text.ToString(); } string judgeNo = ""; if (chkJudgeNo.Checked) { judgeNo = txtJudgeNo.Text.ToString(); } List listSourceM = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getFurnaceCastno", new object[] { plineA, strat, stratTime, castNo, stoveNo, judgeNo,endTime }, ob); List listSourceC = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.ControlFurNacePlan.getSteelOrd", new object[] { listSourceM.Select(p => p.CastNo).Distinct().ToArray() }, ob); EntityHelper.AddEntityRelation(listSourceM, listSourceC, "Furnaceno", "Furnaceno"); plnSteelforfurnaceNewEntityBindingSource.DataSource = listSourceM; GridHelper.RefreshAndAutoSizeExceptColumns(ugStove, new UltraGridColumn[] { ugStove.DisplayLayout.Bands[0].Columns["CIC"], ugStove.DisplayLayout.Bands[1].Columns["FinalUserDesc"], ugStove.DisplayLayout.Bands[1].Columns["OrderSeqNo"], ugStove.DisplayLayout.Bands[1].Columns["GowhereName"], ugStove.DisplayLayout.Bands[1].Columns["WldescIn"], ugStove.DisplayLayout.Bands[1].Columns["MaterialName"] }); this.ugStove.DisplayLayout.Bands[0].Columns["CastNo"].MergedCellStyle = MergedCellStyle.Always; this.ugStove.DisplayLayout.Bands[0].Columns["CastSeq"].MergedCellStyle = MergedCellStyle.Always; this.ugStove.DisplayLayout.Bands[0].Columns["MemoNum"].MergedCellStyle = MergedCellStyle.Always; foreach (UltraGridRow ugr in ugStove.Rows) { if (!ugr.HasParent()) { //ugr.Cells["Delete"].Value = "删除"; if (ugr.Cells["Status"].Text.ToString().Equals("编制中")) { ugr.Cells["PlnStarttime"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["PlnStarttime"].Activation = Activation.AllowEdit; ugr.Cells["PlnStarttime"].IgnoreRowColActivation = true; break; } } } } private void ugCast_AfterRowActivate(object sender, EventArgs e) { UltraGridRow ugr = ugCast.ActiveRow; if (ugr == null) { plnSteelforfurnaceNewEntityBindingSource.Clear(); } else { QueryFurnaceByCastnoTab(ugr.Cells["CastNo"].Text.ToString()); string castNo = ugr.Cells["CastNo"].Text.ToString(); ugr.Cells["Starttime"].Band.Columns["Starttime"].CellActivation = Activation.AllowEdit; foreach (UltraGridRow row in ugCast.Rows) { if (row.Cells["Status"].Text.ToString().Equals("编制中")) { if (row.Cells["CastNo"].Text.ToString().Equals(castNo)) { ugr.Cells["Starttime"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["Starttime"].Band.Columns["Starttime"].CellActivation = Activation.AllowEdit; } else { row.Cells["Starttime"].Appearance.BackColor = Color.Transparent; } } else { ugr.Cells["Starttime"].Appearance.BackColor = Color.Transparent; ugr.Cells["Starttime"].Band.Columns["Starttime"].CellActivation = Activation.ActivateOnly; } } } } /// /// 浇次下发,取消下发 /// /// /// private void ChangeSatusStove(bool down) { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; if (down && !row.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("选中的浇次不处于编制中状态,无法下发!"); return; } if (down && !row.Cells["IfConfirm"].Text.Equals("是")) { MessageUtil.ShowWarning("选中的浇次未工艺确认,无法下发!"); return; } if (!down && !row.Cells["Status"].Text.Equals("已下发")) { MessageUtil.ShowWarning("选中的浇次不处于下发状态,无法取消下发!"); return; } if (MessageUtil.ShowYesNoAndQuestion((down ? "是否确认所选行及向上的浇次全部下发?" : "是否确认所选行及向下的浇次全部取消下发?")) == DialogResult.No) return; var pram = SteelHelper.SetDataReturnData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.CheckUpdate", new object[] { row.Cells["CastNo"].Text, down ? "10" : "00" }, this.ob); if (pram == null) return; if ((string)pram[0]!="") { if (MessageUtil.ShowYesNoAndQuestion((string)pram[0]) == DialogResult.No) return; } var param = SteelHelper.SetDataReturnData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.UpdatePlnSteelforcastStatus", new object[] { row.Cells["CastNo"].Text, down ? "10" : "00", this.UserInfo.GetUserName() }, ob); if (param != null) { MessageUtil.ShowTips(down ? "下发成功" : "取消下发成功"); //string[] furnaces = (string[])param[0]; //if (down)//下发 //{ // PlanComm.WaitFromOpen(this.Cursor); // CoreClientParam ccp = new CoreClientParam(); // ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; // ccp.MethodName = "queryPlnSteelOrd"; // ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; // ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); // PlanComm.WaitFromColse(this.Cursor); // //MessageUtil.ShowTips(ccp.ReturnInfo); // if (ccp.ReturnCode == -1); // if (!ccp.ReturnInfo.Equals("成功")) // { // string[] message = SteelHelper.SetData("com.steering.pss.plnsaleord.stove.ComPlanFurnace.addMessage", new object[] { ccp.ReturnInfo }, ob); // } //} //else //{ //PlanComm.WaitFromOpen(this.Cursor); //CoreClientParam ccp = new CoreClientParam(); //ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; //ccp.MethodName = "deletePlnSteelOrd"; //ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; //ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); //PlanComm.WaitFromColse(this.Cursor); //if (ccp.ReturnCode == -1); ////MessageUtil.ShowTips(ccp.ReturnInfo); //if (!ccp.ReturnInfo.Equals("成功")) //{ // string[] message = SteelHelper.SetData("com.steering.pss.plnsaleord.stove.ComPlanFurnace.addMessage", new object[] { ccp.ReturnInfo }, ob); //} //} QueryFurnaceTab(); } } private void addZyM() { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; //string[] furnaces = { "JC1171102309", "JC1171102308", "JC1171102401", "JC1171102402", "JC1171102403", "JC1171102404", "JC1171102405", "JC1171102407", "JC1171102408", "JC1171102409", "JC1171102501", "JC1171102502", "JC1171102504", "JC1171102505", "JC1171102506", "JC1171102507" }; string[] furnaces = { "JC3171102902", "JC3171102903", "JC3171102904", "JC3171102905", "JC3171102906", "JC3171102907", "JC3171102908", "JC3171102909", "JC3171102910", "JC3171103001", "JC3171103002", "JC3171103003", "JC3171103004", "JC3171103005", "JC3171103006", "JC3171103007", "JC3171103101", "JC3171103102", "JC3171103103" }; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; ccp.MethodName = "deletePlnSteelOrd"; ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; PlanComm.WaitFromOpen(this.Cursor); //CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; ccp.MethodName = "queryPlnSteelOrd"; ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; } [DllImport("user32")] private static extern IntPtr LoadCursorFromFile(string fileName); private Cursor GetMyCursor() { byte[] bytes = Resources.MyResource.Arrows; FileStream fileStream = new FileStream("tempTest.dat", FileMode.Create); fileStream.Write(bytes, 0, bytes.Length); fileStream.Close(); return new Cursor(LoadCursorFromFile("tempTest.dat")); } private void AdjustCastSeq(SelectedRowsCollection adjustCast, int targetPoint) { var targetPlnSteelforcast = ugCast.Rows[targetPoint].ListObject as PlnSteelforcastEntity; if (targetPlnSteelforcast == null) { MessageUtil.ShowError("找不到指定的位置"); return; } var list = (from UltraGridRow p in adjustCast where p.ListObject is PlnSteelforcastEntity select p.ListObject as PlnSteelforcastEntity).ToList(); if (!list.Any()) { MessageUtil.ShowError("无拖动的数据"); return; } if (list.Any(p => p.CastSeq == null)) { MessageUtil.ShowError("无法调整无浇次顺序号的数据"); return; } if (targetPlnSteelforcast.CastSeq == null) { MessageUtil.ShowError("无法识别目标位置的顺序号,无法调整顺序"); return; } var targetCast = (long)targetPlnSteelforcast.CastSeq; if (list.Select(p => p.PlineCode).Distinct().Count() > 1) { MessageUtil.ShowError("不同铸造产线无法调整顺序"); return; } var plnSteelforcastNewEntity = list.FirstOrDefault(); if (plnSteelforcastNewEntity != null && plnSteelforcastNewEntity.PlineCode != targetPlnSteelforcast.PlineCode) { MessageUtil.ShowError("不同铸造产线无法调整顺序"); return; } if (MessageUtil.ShowYesNoAndQuestion( string.Format("是否将这{0}个浇次按顺序调整到{1}之后", adjustCast.Count, targetPlnSteelforcast.CastNo) ) == DialogResult.No) return; //将选择的数据 按castseq 从小到大排序 防止界面调整过顺序 var listCast = list.OrderBy(p => p.CastSeq).Select(p => p.CastNo).ToList(); var listSeq = list.Where(p => p.CastSeq != null).Select(p => (long)p.CastSeq).ToList(); var maxSeq = listSeq.Max() >= targetCast ? listSeq.Max() : targetCast; var minSeq = listSeq.Min() <= targetCast ? listSeq.Min() : targetCast + 1; // 按照浇次seq范围把所需要调整的Cast全查出来, List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SelectPlnSteelforcastEntity", new object[] { new List() { targetPlnSteelforcast.PlineCode }, minSeq, maxSeq }, ob); if (listSource == null) { MessageUtil.ShowError("无拖动的数据"); return; } //排除掉选择的浇次号 var castElse = listSource.Select(p => p.CastNo).Where(p => !listCast.Contains(p)).ToList(); //无意义的排序 选择的浇次拖到自己本身 if (!castElse.Any()) return; //按照调整后的顺序排序 var List = castElse.Take((int)(targetCast - minSeq)) .Concat(listCast) .Concat(castElse.Skip((int)(targetCast - minSeq))).ToList(); var param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustCastSeq", new object[] { List, targetPlnSteelforcast.PlineCode, minSeq }, ob); if (param != null) { MessageUtil.ShowTips(string.Format("成功将这{0}个浇次调整到{1}之后", adjustCast.Count, targetPlnSteelforcast.CastNo)); QueryCastTab(); } } private void AdjustStoveSeq(SelectedRowsCollection adjustStove, int targetPoint) { var targePlnSteelforfurnace = ugStove.Rows[targetPoint].ListObject as PlnSteelforfurnaceOEntity1; if (targePlnSteelforfurnace == null) { MessageUtil.ShowError("找不到指定的位置"); return; } var list = (from UltraGridRow p in adjustStove where p.ListObject is PlnSteelforfurnaceOEntity1 select p.ListObject as PlnSteelforfurnaceOEntity1).OrderBy(p=>p.FurnacenoSeq).ToList(); if (!list.Any()) { MessageUtil.ShowError("无拖动的数据"); return; } if (list.Any(p => p.CastSeq == null)) { MessageUtil.ShowError("拖动的数据无浇次顺序号,无法调整"); return; } if (targePlnSteelforfurnace.CastStoveSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次内顺序,无法调整"); return; } if (targePlnSteelforfurnace.FurnacenoSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次顺序,无法调整"); return; } if (list.Count == 1 && list.First().CastNo != targePlnSteelforfurnace.CastNo) { if (MessageUtil.ShowYesNoAndQuestion( string.Format("是否将浇次{0}调整到浇次{1}之前", list.First().CastNo, targePlnSteelforfurnace.CastNo) ) == DialogResult.No) return; var param1 = SteelHelper.SetData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustCastFurnaceSeq", new object[] { list.First().CastNo, targePlnSteelforfurnace.CastNo, targePlnSteelforfurnace.EfPlineCode, targePlnSteelforfurnace.FurnacenoSeq < list.First().FurnacenoSeq }, ob); if (param1 != null) { MessageUtil.ShowTips("成功调整"); QueryFurnaceTab(); } return; } if (MessageUtil.ShowYesNoAndQuestion( string.Format("是否将选中炉次调整到炉次{0}之前", targePlnSteelforfurnace.Furnaceno) ) == DialogResult.No) return; var param = SteelHelper.SetData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustFurnaceSeq", new object[] { list.Select(p => p.Furnaceno).ToList(), targePlnSteelforfurnace.Furnaceno }, ob); if (param != null) { MessageUtil.ShowTips("成功调整"); QueryFurnaceTab(); } } private void ugbCast_ExpandedStateChanged(object sender, EventArgs e) { //var expandedNum = (ugbCast.Expanded ? 1 : 0) + (ugbStove.Expanded ? 1 : 0); if (ugbCast.Expanded == false) { this.splitContainer3.SplitterDistance = 26; } else { this.splitContainer3.SplitterDistance = splitterDistance == 0 ? splitContainer3.Size.Height / 2 : splitterDistance; } } private void ugbStove_ExpandedStateChanged(object sender, EventArgs e) { if (ugbStove.Expanded == false) { this.splitContainer3.SplitterDistance = splitContainer3.Size.Height - 26; } else { this.splitContainer3.SplitterDistance = splitterDistance == 0 ? splitContainer3.Size.Height / 2 : splitterDistance; } } /// /// 一键获取备料合同 /// private void doAddBlOrder() { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; if (row == null) { MessageUtil.ShowWarning("炉次信息不能为空!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否一键获取余材合同?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doAddBlOrder"; ccp.ServerParams = new object[] { row.Cells["EfPlineCode"].Text.ToString() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("获取成功!")) { QueryFurnaceTab(); } } /// /// 浇次时间调整* /// private void TimeAdjust() { try { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; if (row == null) return; if (!row.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("选中的炉次不处于编制中状态,无法调整计划开始时间!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否调整时间?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge"; ccp.MethodName = "doTimeAdjust"; ccp.ServerParams = new object[] { row.Cells["Furnaceno"].Text.ToString(), row.Cells["PlnStarttime"].Text.ToString(), row.Cells["EfPlineCode"].Text.ToString() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("调整时间成功!")) { QueryCastTab(); } } catch (Exception) { MessageUtil.ShowTips("时间格式不正确,请重新输入!"); return; } } /// /// 删除单炉 /// private void doDeleteSingle() { UltraGridRow urg = ugStove.ActiveRow; if (urg == null) return; UltraGridRow row = ugCast.ActiveRow; ArrayList jsonList1 = new ArrayList(); int countParn = 0; //foreach (UltraGridRow ugr in ugStove.Rows) //{ ArrayList jsonList = new ArrayList(); if (!urg.HasParent()) { //if (ugr.HasParent() && ugr.Cells[""].Text.Equals("")) //{ // MessageUtil.ShowTips(""); // return; //} //countParn += 1; if (!urg.Cells["Status"].Text.Equals("编制中")) { MessageUtil.ShowWarning("只有编制中状态的炉次才能删除!"); return; } jsonList.Add(urg.Cells["Furnaceno"].Text.ToString()); jsonList.Add(urg.Cells["CastStoveSeq"].Text.ToString()); //jsonList1.Add(jsonList); } //} if (MessageUtil.ShowYesNoAndQuestion("是否删除当前炉次?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.ControlCastPlan"; ccp.MethodName = "doDeleteSingle"; ccp.ServerParams = new object[] { jsonList, row.Cells["CastNo"].Value.ToString(), row.Cells["CastSeq"].Value.ToString() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("删除成功!")) { QueryCastTab(); } } /// /// 补炉 /// private void doFillFurnace() { UltraGridRow row = ugStove.ActiveRow; if (row == null) { MessageUtil.ShowWarning("炉次信息不能为空!"); return; } if (!row.HasParent()) { PlnSteelforfurnaceOEntity1 entity = row.ListObject as PlnSteelforfurnaceOEntity1; if (entity == null) { MessageUtil.ShowWarning("请选择需要补炉的炉次主信息!"); return; } //var a = MessageUtil.ShowYesNoCancelAndQuestion("是否对所选中的炉次进行补炉?"); //if (a == DialogResult.Yes) { LuNumFalg = "1"; } else if (a == DialogResult.No) { LuNumFalg = "0"; } else { return; } string text = "是否对所选中的炉次进行补炉或补余材订单?,请确认!"; FrmBuFurnShow furnShow = new FrmBuFurnShow(text); furnShow.ShowDialog(); string flag = furnShow.Falg; string[] param = null; if (flag.Equals("1")) { param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SupplementStove", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); } else if (flag.Equals("2")) { param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SteelSupplement", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); } else { return; } //if (MessageUtil.ShowYesNoAndQuestion("是否对所选中的炉次进行补炉?,请确认!") == DialogResult.No) // return; if (param != null) { MessageUtil.ShowTips("补炉成功"); QueryCastTab(); } } else { ArrayList jsonList = new ArrayList(); PlnSteelforOrdEntity entity = row.ListObject as PlnSteelforOrdEntity; if (entity == null) { MessageUtil.ShowWarning("请选择需要补炉的炉次订单信息!"); return; } //entity.Surplusflag = "1"; //entity.SurplusType = "1"; //jsonList.Add(JSONFormat.Format(entity)); if (MessageUtil.ShowYesNoAndQuestion("是否对所选中的炉次进行补炉余材订单?,请确认!") == DialogResult.No) return; var param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SteelSupplement", new object[] { entity.Furnaceno, this.UserInfo.GetUserName() }, ob); if (param != null) { MessageUtil.ShowTips("补炉成功"); QueryCastTab(); } } } #endregion private void ultraGridCast_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGridCast.ActiveRow; if (e.Cell.Column.Key.Equals("Cic")) { IQueryable chcRows = ultraGridCast.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True"); List list1 = new List(); string gradeCode = ""; //string cic = ""; List list = new List(); ArrayList arrlist = new ArrayList(); int countChk = 0; foreach (UltraGridRow ugr in chcRows) { countChk++; if (gradeCode.Equals("")) { gradeCode = ugr.Cells["Gradename"].Text.ToString(); } if (!gradeCode.Equals(ugr.Cells["Gradename"].Text.ToString())) { MessageUtil.ShowTips("请选择相同钢种!"); return; } list.Add(ugr.Cells["Cic"].Text.ToString()); //list.Add(ugr.Cells["ProPlanId"].Text.ToString()); } if (countChk == 0) { ArrayList listar = new ArrayList(); list.Add(row.Cells["Cic"].Text.ToString()); list1.Add(row.Cells["ProPlanId"].Text.ToString()); gradeCode = row.Cells["Gradename"].Text.ToString(); listar.Add(row.Cells["Cic"].Text.ToString()); listar.Add(row.Cells["ProPlanId"].Text.ToString()); listar.Add(row.Cells["GxProSeq"].Text.ToString()); listar.Add("工艺评审"); arrlist.Add(listar); } list = list.Distinct().ToList(); for (int i = 0; i < list.Count; i++) { foreach (UltraGridRow ugr in chcRows) { if (ugr.Cells["Cic"].Text.ToString().Equals(list[i])) { ArrayList listar = new ArrayList(); list1.Add(ugr.Cells["ProPlanId"].Text.ToString()); listar.Add(ugr.Cells["Cic"].Text.ToString()); listar.Add(ugr.Cells["ProPlanId"].Text.ToString()); listar.Add("1");//ugr.Cells["GxProSeq"].Text.ToString() listar.Add("工艺评审"); arrlist.Add(listar); break; } } } ArrayList listar1 = new ArrayList(); listar1.Add(""); listar1.Add("null"); listar1.Add("0"); listar1.Add("基础数据"); arrlist.Add(listar1); this.Cursor = Cursors.WaitCursor; AnalysisNkChemPopupLg popup = new AnalysisNkChemPopupLg(list.ToArray(), gradeCode, this.ob, list1.ToArray(), arrlist); popup.TopMost = true; popup.Load += ((a, b) => { this.Cursor = Cursors.Default; }); popup.Show(); } if (e.Cell.Column.Key.Equals("ProPlanId")) { string proPlanId = row.GetValue("ProPlanId"); FrmOrderZgPln orderPln = new FrmOrderZgPln(proPlanId, this.ob); orderPln.ShowDialog(); } } private void ultraGridFurName_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; if (e.Cell.Column.Key.Equals("Surplusflag")) { //string planRoute = row.Cells["PlanRoute"].Text.ToString(); //string cic = row.GetValue("Cic"); if (row.HasParent()) { string PoPlanId = row.GetValue("ProPlanId"); string gxPlanNo = row.GetValue("GxPlanNo"); string Furnaceno = row.GetValue("Furnaceno"); string Sequenceno = row.GetValue("Sequenceno"); string CastNo = row.GetValue("CastNo"); string CastSeq = row.GetValue("CastSeq"); string toWeightM = row.GetValue("TotWeightM"); string toNumM = row.GetValue("TotMumM"); string gradCode = row.GetValue("Gradecode"); string diammterGp = row.GetValue("Diameter"); ArrayList list = new ArrayList(); list.Add(PoPlanId); list.Add(gxPlanNo); list.Add(Furnaceno); list.Add(Sequenceno); list.Add(CastNo); list.Add(toWeightM); list.Add(toNumM); list.Add(gradCode); list.Add(diammterGp); list.Add(row.GetValue("PlineCode")); //list.Add(planRoute); //list.Add(cic); if (!row.GetValue("Status").Equals("编制中")) { MessageUtil.ShowTips("只有编制中状态的炉次订单才能利轧管计划或撤销利轧管计划!"); return; } if (row.GetValue("StateLk").Equals("是")) { ArrayList entityList = new ArrayList(); entityList.Add(Furnaceno); entityList.Add(Sequenceno); entityList.Add(PoPlanId); entityList.Add(gxPlanNo); if (MessageUtil.ShowYesNoAndQuestion("是否撤销利轧管计划?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelPlnZg"; if (PoPlanId.Contains("ZG")) { ccp.MethodName = "doDeleteLibrary"; } else { ccp.MethodName = "doDeleteCast"; } ccp.ServerParams = new object[] { entityList}; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("撤销利计划成功!")) { QueryFurnaceByCastno(castno); } } else { FrmSteelPlnZg frmStPlnZ = new FrmSteelPlnZg(ob, list); frmStPlnZ.ShowDialog(); bool flag = frmStPlnZ.Flag; if (flag) { QueryFurnaceByCastno(castno); }//如果有修改数据,则刷新页面 } } } } } private void ultraCheckEditor2_CheckedChanged(object sender, EventArgs e) { if (ultraCheckEditor2.Checked) { this.ultraGridFurName.Rows.ExpandAll(true); } else { this.ultraGridFurName.Rows.CollapseAll(true); } } private void ultraCheckEditor3_CheckedChanged(object sender, EventArgs e) { if (ultraCheckEditor3.Checked) { this.ugStove.Rows.ExpandAll(true); } else { this.ugStove.Rows.CollapseAll(true); } } private void clekUtral_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (ultraTabControl1.SelectedTab.Key.Equals("0")) { GridHelper.ClearUlGridFilter(ultraGridCast); } else { GridHelper.ClearUlGridFilter(ugCast); } } private void ugStove_ClickCellButton(object sender, CellEventArgs e) { if (e.Cell.Text.Equals("删除")) { doDeleteSingle(); } } private void utSave_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ugStove.ActiveRow; if (row == null) return; ugStove.UpdateData(); ArrayList entityList = new ArrayList(); ArrayList jsonList = new ArrayList(); if (row.HasParent()) { entityList.Add((PlnSteelforOrdEntity)row.ListObject); if (entityList == null) return; foreach (PlnSteelforOrdEntity entity in entityList) { //if (entity.IfConfirm.Equals("是")) //{ // MessageUtil.ShowWarning("浇次号:" + entity.CastNo + "已浇次确认,不能利库!"); // return; //} if (!entity.Castingtype.Equals("模铸")) { if (entity.LenGpSingle % 10 != 0) { MessageUtil.ShowWarning("单倍坯长个位数不是0,请重新调整!"); return; } } if (!entity.SurplusType.Equals("补炉")&& !entity.SurplusType.Equals("生产超量")) { MessageUtil.ShowWarning("只能修改补炉或生产超量的炉次订单!"); return; } //if (!entity.Status.Equals("已下发")) //{ // MessageUtil.ShowWarning("只能修改下发的补炉的炉次订单!"); // return; //} jsonList.Add(JSONFormat.Format(entity)); } } if (MessageUtil.ShowYesNoAndQuestion("是否保存所选补炉或生产超量炉次订单修改值?,请确认!") == DialogResult.No) return; var param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.SaveSupplementOrder", new object[] { jsonList }, ob); if (param != null) { MessageUtil.ShowTips("修改成功"); QueryCastTab(); } } private void ugStove_CellChange(object sender, CellEventArgs e) { try { UltraGridRow row = ugStove.ActiveRow; if (row == null) return; if (row.HasParent()) { ugStove.UpdateData(); double lenGpSingle = 0; int cutNumGp = 1; double TotWeightM = 0; if (!row.Cells["LenGpSingle"].Text.ToString().Equals("")) { lenGpSingle = double.Parse(row.Cells["LenGpSingle"].Value.ToString()); } if (!row.Cells["CutNumGp"].Text.ToString().Equals("")) { cutNumGp = int.Parse(row.Cells["CutNumGp"].Value.ToString()); } double weightPerMeter = 0; double cutS = (cutNumGp - 1) * 10; if (e.Cell.Column.Key.Equals("LenGpSingle")) { if (!row.Cells["LenGpSingle"].Text.ToString().Equals("")) { string actCount = e.Cell.Row.Cells["LenGpSingle"].Value.ToString(); if (!StringUtil.IsInt(actCount) || actCount == "0") { e.Cell.Row.Cells["LenGpSingle"].Value = 0; } lenGpSingle = double.Parse(row.Cells["LenGpSingle"].Value.ToString()); if (e.Cell.Row.Cells["Castingtype"].Text.ToString().Equals("模铸")) { e.Cell.Row.Cells["LengthM"].Value = (decimal)(lenGpSingle * cutNumGp + cutS + 200); e.Cell.Row.Cells["WeightGpOne"].Value = (decimal)Math.Round((double)(lenGpSingle / 1000 * weightPerMeter), 3); e.Cell.Row.Cells["WeightM"].Value = (decimal)Math.Round((double)(lenGpSingle * cutNumGp + 200 / 1000 * weightPerMeter), 3); } else { weightPerMeter = (7.8 * 3.1415926 / 4 * double.Parse(row.Cells["Diameter"].Value.ToString()) * double.Parse(row.Cells["Diameter"].Value.ToString())) / 1000 / 1000; e.Cell.Row.Cells["LengthM"].Value = (decimal)(lenGpSingle * cutNumGp + cutS); e.Cell.Row.Cells["WeightGpOne"].Value = (decimal)Math.Round((double)(lenGpSingle / 1000 * weightPerMeter), 3); e.Cell.Row.Cells["WeightM"].Value = (decimal)Math.Round((double)((lenGpSingle * cutNumGp ) / 1000 * weightPerMeter), 3); } } } if (e.Cell.Column.Key.Equals("CutNumGp")) { if (row.Cells["CutNumGp"].Text.ToString().Equals("") || row.Cells["CutNumGp"].Text.ToString().Equals("0")) { row.Cells["CutNumGp"].Value = 1; } else { string actCount = e.Cell.Row.Cells["CutNumGp"].Value.ToString(); if (!StringUtil.IsInt(actCount) || actCount == "0") { e.Cell.Row.Cells["CutNumGp"].Value = 1; } cutNumGp = int.Parse(row.Cells["CutNumGp"].Value.ToString()); } if (e.Cell.Row.Cells["Castingtype"].Text.ToString().Equals("模铸")) { e.Cell.Row.Cells["LengthM"].Value = (decimal)(lenGpSingle * cutNumGp + cutS + 200); e.Cell.Row.Cells["WeightM"].Value = (decimal)Math.Round((double)(lenGpSingle * cutNumGp + 200 / 1000 * weightPerMeter), 3); } else { weightPerMeter = (7.8 * 3.1415926 / 4 * double.Parse(row.Cells["Diameter"].Value.ToString()) * double.Parse(row.Cells["Diameter"].Value.ToString())) / 1000 / 1000; e.Cell.Row.Cells["LengthM"].Value = (decimal)(lenGpSingle * cutNumGp + cutS); e.Cell.Row.Cells["WeightM"].Value = (decimal)Math.Round((double)((lenGpSingle * cutNumGp ) / 1000 * weightPerMeter), 3); } } if (e.Cell.Column.Key.Equals("TotWeightM")) { if (e.Cell.Row.Cells["TotWeightM"].Text.Equals("")) { e.Cell.Row.Cells["TotWeightM"].Value = 0; } string actCount = e.Cell.Row.Cells["TotWeightM"].Value.ToString(); if (!StringUtil.IsFloat(actCount) || actCount == "0") { e.Cell.Row.Cells["TotWeightM"].Value = 0; } e.Cell.Row.Cells["TotMumM"].Value = (decimal)Math.Round((double.Parse(e.Cell.Row.Cells["TotWeightM"].Value.ToString()) / double.Parse(e.Cell.Row.Cells["WeightM"].Value.ToString())), 0); } } } catch (Exception re) { } } private void ugStove_AfterRowActivate(object sender, EventArgs e) { UltraGridRow ugr = ugStove.ActiveRow; if (ugr == null) return; if (ugr.HasParent()) { if (ugr.Cells["SurplusType"].Value.ToString().Equals("补炉") || ugr.Cells["SurplusType"].Value.ToString().Equals("生产超量")) { ugr.Cells["CutNumGp"].Activation = Activation.AllowEdit; ugr.Cells["CutNumGp"].IgnoreRowColActivation = true; ugr.Cells["CutNumGp"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["CutNumGp"].EditorComponent = utSave2; ugr.Cells["LenGpSingle"].Activation = Activation.AllowEdit; ugr.Cells["LenGpSingle"].IgnoreRowColActivation = true; ugr.Cells["LenGpSingle"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["LenGpSingle"].EditorComponent = utSave2; ugr.Cells["TotWeightM"].Activation = Activation.AllowEdit; ugr.Cells["TotWeightM"].IgnoreRowColActivation = true; ugr.Cells["TotWeightM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["TotWeightM"].EditorComponent = utSave; } if (ugr.Cells["FinalUserDesc"].Value.ToString().Equals("备料")) { // ugr.Cells["FinalUserDesc"].Activation = Activation.AllowEdit; ugr.Cells["FinalUserDesc"].IgnoreRowColActivation = true; //ugr.Cells["FinalUserDesc"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["FinalUserDesc"].EditorComponent = ultraTextEditor1; ugr.Cells["Diameter"].Activation = Activation.AllowEdit; ugr.Cells["Diameter"].IgnoreRowColActivation = true; ugr.Cells["Diameter"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["WeightM"].Activation = Activation.AllowEdit; ugr.Cells["WeightM"].IgnoreRowColActivation = true; ugr.Cells["WeightM"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["WeightGpOne"].Activation = Activation.AllowEdit; ugr.Cells["WeightGpOne"].IgnoreRowColActivation = true; ugr.Cells["WeightGpOne"].Appearance.BackColor = Color.FromArgb(255, 255, 128); ugr.Cells["MaterialName"].Activation = Activation.AllowEdit; ugr.Cells["MaterialName"].IgnoreRowColActivation = true; ugr.Cells["MaterialName"].Appearance.BackColor = Color.FromArgb(255, 255, 128); } } } private DataTable _data1; private void chcPlaned_CheckedChanged(object sender, EventArgs e) { UltraGridRow row = ultraGridCast.ActiveRow; if (row == null) return; ultraGridCast.UpdateData(); if (chcPlaned.Checked) { GridHelper.AddUlGridFilter(ultraGridCast); List Query = listSourceCast.Where(w => w.CanWgt > 0).ToList(); //var Query = from listSource in listSourceCast // where listSource.CanWgt > 0 Select; plnOrderCastSEntityBindingSource.DataSource = Query; } else { plnOrderCastSEntityBindingSource.DataSource = listSourceCast; } ultraGridCast.Refresh(); ultraGridCast.Update(); } /// /// 修改倍尺 /// private void doUpdateNumGp() { UltraGridRow row = ultraGridCast.ActiveRow; if (row == null) return; ultraGridCast.UpdateData(); ArrayList entityList = new ArrayList(); int countParn = 0; #region 铸造订单层 foreach (UltraGridRow ugr in ultraGridCast.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true) { ArrayList jsonList = new ArrayList(); countParn += 1; if (!ugr.Cells["ExeStatus"].Text.Equals("计划") && !ugr.Cells["ExeStatus"].Text.Equals("生产中")) { MessageUtil.ShowWarning("只有计划,生产中状态的订单才能调整倍尺数!"); return; } if (double.Parse(ugr.Cells["CanWgt"].Value.ToString()) < double.Parse(ugr.Cells["PlanWtS"].Value.ToString())) { MessageUtil.ShowWarning("存在组炉,请拆分数据后修改倍尺数!"); return; } if (ugr.Cells["Castingtype"].Value.ToString().Equals("模铸")) { MessageUtil.ShowWarning("请选择连铸订单信息!"); return; } jsonList.Add(ugr.Cells["CutNumGp"].Text.ToString()); jsonList.Add(ugr.Cells["ProPlanId"].Text.ToString()); jsonList.Add(ugr.Cells["GxPlanNo"].Text.ToString()); entityList.Add(jsonList); } } #endregion if (countParn == 0) { MessageUtil.ShowWarning("请选择铸造订单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("修改倍尺数?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.ControlOrderPlan"; ccp.MethodName = "doUpdateNumGp"; ccp.ServerParams = new object[] { entityList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("修改成功!")) { QueryOrder(); } } private void ugStove_MouseDown(object sender, MouseEventArgs e) { //UltraGridRow row = ugStove.ActiveRow; //if (row == null) return; //if (!row.HasParent()) //{ // ugStove.ContextMenuStrip = contextMenuStrip1; //} //else //{ // ugStove.ContextMenuStrip = contextMenuStrip3; //} if (e.Button == MouseButtons.Right) { var uieOver = ugStove.DisplayLayout.UIElement.ElementFromPoint(new Point(e.X, e.Y)); if (uieOver != null) { UltraGridRow ugrOver = uieOver.GetContext(typeof(UltraGridRow), true) as UltraGridRow; if (!ugrOver.HasParent()) { ugStove.ContextMenuStrip = contextMenuStrip1; } else { ugStove.ContextMenuStrip = contextMenuStrip3; } ugStove.ActiveRow = ugrOver; } } } private void MoveToCast_Click(object sender, EventArgs e) { UltraGridRow row = ugStove.ActiveRow; if (row == null) { //MessageUtil.ShowTips(""); return; } if (!row.HasParent()) { var targePlnSteelforfurnace = ugStove.ActiveRow.ListObject as PlnSteelforfurnaceOEntity1; if (targePlnSteelforfurnace == null) { MessageUtil.ShowError("找不到指定的位置"); return; } var list = (from UltraGridRow p in ugStove.Selected.Rows where p.ListObject is PlnSteelforfurnaceOEntity1 select p.ListObject as PlnSteelforfurnaceOEntity1).OrderBy(p => p.FurnacenoSeq).ToList(); if (!list.Any()) { MessageUtil.ShowError("无拖动的数据"); return; } if (list.Any(p => p.CastSeq == null)) { MessageUtil.ShowError("拖动的数据无浇次顺序号,无法调整"); return; } if (targePlnSteelforfurnace.CastStoveSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次内顺序,无法调整"); return; } if (targePlnSteelforfurnace.FurnacenoSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次顺序,无法调整"); return; } if (targePlnSteelforfurnace.Status != "已下发" && targePlnSteelforfurnace.Status != "编制中") { MessageUtil.ShowError("只能调至下发状态的炉计划之前"); return; } if (MessageUtil.ShowYesNoAndQuestion( string.Format("是否将选中炉次调整到炉次{0}之前", targePlnSteelforfurnace.Furnaceno) ) == DialogResult.No) return; var param1 = SteelHelper.SetData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustFurnaceSeq", new object[] { list.Select(p => p.Furnaceno).ToList(), targePlnSteelforfurnace.Furnaceno, }, ob); if (param1 != null) { MessageUtil.ShowTips("成功调整"); QueryCastTab(); } } } private void CastMoveOverCast_Click(object sender, EventArgs e) { UltraGridRow row = ugStove.ActiveRow; if (row == null)return; if (!row.HasParent()) { var targePlnSteelforfurnace = ugStove.ActiveRow.ListObject as PlnSteelforfurnaceOEntity1; if (targePlnSteelforfurnace == null) { MessageUtil.ShowError("找不到指定的位置"); return; } var list = (from UltraGridRow p in ugStove.Selected.Rows where p.ListObject is PlnSteelforfurnaceOEntity1 select p.ListObject as PlnSteelforfurnaceOEntity1).OrderBy(p => p.FurnacenoSeq).ToList(); if (!list.Any()) { MessageUtil.ShowError("无拖动的数据"); return; } if (list.Any(p => p.CastSeq == null)) { MessageUtil.ShowError("拖动的数据无浇次顺序号,无法调整"); return; } if (targePlnSteelforfurnace.CastStoveSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次内顺序,无法调整"); return; } if (targePlnSteelforfurnace.FurnacenoSeq == null) { MessageUtil.ShowError("无法识别目标位置的浇次顺序,无法调整"); return; } if (targePlnSteelforfurnace.Status != "已下发" && targePlnSteelforfurnace.Status != "编制中") { MessageUtil.ShowError("只能调至下发状态的炉计划之前"); return; } if (list.First().CastNo != targePlnSteelforfurnace.CastNo) { if (MessageUtil.ShowYesNoAndQuestion( string.Format("是否将浇次{0}调整到浇次{1}之前", list.First().CastNo, targePlnSteelforfurnace.CastNo) ) == DialogResult.No) return; var param1 = SteelHelper.SetData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustCastFurnaceSeq", new object[] { list.First().CastNo, targePlnSteelforfurnace.CastNo, targePlnSteelforfurnace.EfPlineCode, targePlnSteelforfurnace.FurnacenoSeq < list.First().FurnacenoSeq }, ob); if (param1 != null) { MessageUtil.ShowTips("成功调整"); QueryCastTab(); } } } } private void MoveOrder_Click(object sender, EventArgs e) { if (ugStove.ActiveRow == null) { MessageUtil.ShowError("找不到指定的位置"); return; } if (ugStove.ActiveRow.HasParent()) { var PlnSteelforOrdEntity = ugStove.ActiveRow.ListObject as PlnSteelforOrdEntity; if (PlnSteelforOrdEntity == null) { MessageUtil.ShowError("找不到指定的位置"); return; } var list = (from UltraGridRow p in ugStove.Selected.Rows where p.ListObject is PlnSteelforOrdEntity select p.ListObject as PlnSteelforOrdEntity).ToList(); if (!list.Any()) { MessageUtil.ShowError("无拖动的数据"); return; } if (list.Select(p => p.CastNo).Distinct().Count() != 1) { MessageUtil.ShowError("无法跨浇次调整"); return; } //List DataSource = // plnSteelforOrdNewEntityBindingSource.DataSource as List; //List furnacenos = list.Select(p => p.Furnaceno).Distinct().ToList(); //if (furnacenos.Count == 1 && furnacenos[0] == PlnSteelforOrdEntity.Furnaceno) //{ //} //else //{ // list = DataSource.Where(p => furnacenos.Contains(p.Furnaceno)).OrderBy(p => p.CcmSeq).ToList(); // var temlist = DataSource.Where(p => PlnSteelforOrdEntity.Furnaceno == p.Furnaceno).ToList(); // PlnSteelforOrdEntity = temlist.FirstOrDefault(); //} if (MessageUtil.ShowYesNoAndQuestion("是否调整选中铸造计划" ) == DialogResult.No) return; var param1 = SteelHelper.SetData( "com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.AdjustCcmSeq", new object[] { list.Select(JSONFormat.Format).ToList(), JSONFormat.Format(PlnSteelforOrdEntity) }, ob); if (param1 != null) { MessageUtil.ShowTips("成功调整"); QueryCastTab(); } } } /// /// 判定标准查询 /// /// /// private void craftImgPd_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ultraGridCast.ActiveRow; string desginKey = ""; string indexSeq = ""; DataTable dicdesikey = ServerHelper.GetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmCicIntersection.getQueryGraderCICDesgin", new object[] { row.Cells["ProPlanId"].Text.ToString() }, ob); if (dicdesikey.Rows.Count > 0) { desginKey = dicdesikey.Rows[0]["DESGIN_KEY"].ToString(); indexSeq = dicdesikey.Rows[0]["INDEX_SEQ"].ToString(); } else { MessageUtil.ShowTips("未找到轧管信息!"); return; } string cic = row.Cells["Cic"].Text.ToString(); string pic = row.Cells["Pic"].Text.ToString(); string sic = row.Cells["Sic"].Text.ToString(); string dic = row.Cells["Dic"].Text.ToString(); if (e.Button.Key.ToLower().Equals("select")) { string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepPlnLgStd.cpt&op=view" + "&DESGIN_KEY=" + desginKey + "&CIC=" + cic + "&PIC=" + pic + "&SIC=" + sic + "&DIC=" + dic; FrmRepExcel down = new FrmRepExcel(ob, strurl); down.Text = "炼钢判定标准"; down.Visible = false; down.Size = new Size(740, this.Height); down.WindowState = FormWindowState.Maximized; down.ShowDialog(); } } private void ugStove_InitializeRow(object sender, InitializeRowEventArgs e) { ////带颜色与特殊字段 // if (e.Row.Cells["PlnStarttime"].Appearance.BackColor == System.Drawing.Color.FromArgb(255, 255, 128)) // { // e.Row.Cells["PlnStarttime"].Activation = Activation.AllowEdit; // e.Row.Cells["PlnStarttime"].IgnoreRowColActivation = true; // } } private void craftImg2_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ugStove.ActiveRow; string craftNo = row.Cells["CraftNo"].Text.ToString(); string craftPath = row.Cells["CraftPath"].Text.ToString(); ArrayList list = new ArrayList(); list.Add(row.Cells["Cic"].Text.ToString()); list.Add(row.Cells["Furnaceno"].Text.ToString()); list.Add(row.Cells["EfPlineCode"].Text.ToString()); list.Add(row.Cells["EfPlineName"].Text.ToString()); list.Add(row.Cells["Gradecode"].Text.ToString()); list.Add(row.Cells["Gradename"].Text.ToString()); list.Add(row.Cells["PlanRoute"].Text.ToString()); list.Add(row.Cells["PlineCode"].Text.ToString()); list.Add(""); if (e.Button.Key.ToLower().Equals("select")) { //if (craftNo.Equals("")) //{ // MessageUtil.ShowTips(""); // return; //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLgSmeltingProcess.cpt&op=view" + "&CRAFT_NO=" + craftNo; FrmRepExcel down = new FrmRepExcel(ob, strurl); down.Text = "炼钢工艺卡打印"; down.ShowDialog(); } else { FrmSteelProcessCard steCard = new FrmSteelProcessCard(craftNo, ob, list, "1"); steCard.ShowDialog(); bool flag = steCard.Falg; if (flag) { QueryFurnaceByCastno(castno); } } } private void ugStove_CellDataError(object sender, CellDataErrorEventArgs e) { e.RaiseErrorEvent = false; } /// /// 修改去向 /// /// /// private void txtgowhere_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ultraGridFurName.ActiveRow; if (row == null) return; //if (entity.IfConfirm.Equals("是")) //{ // MessageUtil.ShowWarning("浇次号(" + entity.CastNo + "),已浇次确认,!"); // return; //} if (MessageUtil.ShowYesNoAndQuestion("是否修改炼钢去向") == DialogResult.No) return; int pran = ServerHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelMerge.updateGoWhereName", new object[] { row.Cells["Furnaceno"].Text.ToString(), row.Cells["Sequenceno"].Text.ToString(), row.Cells["GowhereName"].Text.ToString().Trim() }, ob); if (pran == 1) { MessageUtil.ShowTips("修改成功"); } } /// /// 轧管炉计划重新获取 /// private void doRefreshPln() { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; if (row == null) return; string[] furnaces = { row.Cells["Furnaceno"].Text.ToString().Trim()}; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; ccp.MethodName = "deletePlnSteelOrd"; ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; //MessageUtil.ShowTips(ccp.ReturnInfo); if (!ccp.ReturnInfo.Equals("成功")) { string[] message = SteelHelper.SetData("com.steering.pss.plnsaleord.stove.ComPlanFurnace.addMessage", new object[] { ccp.ReturnInfo }, ob); } PlanComm.WaitFromOpen(this.Cursor); ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.stove.ComPlanFurnace"; ccp.MethodName = "queryPlnSteelOrd"; ccp.ServerParams = new object[] { furnaces, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); //MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnCode == -1) return; if (!ccp.ReturnInfo.Equals("成功")) { string[] message = SteelHelper.SetData("com.steering.pss.plnsaleord.stove.ComPlanFurnace.addMessage", new object[] { ccp.ReturnInfo }, ob); } } /// /// 浇次确认,取消确认 /// /// private void CastConfirm(string flag) { ultraGrid1.UpdateData(); UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; ArrayList list = new ArrayList(); foreach (UltraGridRow ugr in ultraGrid1.Rows) { if (Convert.ToBoolean(ugr.Cells["CHC"].Text.ToString()) == true) { ArrayList jsonList = new ArrayList(); if (flag.Equals("0")) { if (row.Cells["IfConfirm"].Text.ToString().Equals("是")) { MessageUtil.ShowTips("浇次号" + row.Cells["CastNo"].Text + ",已确认,不能重复确认。"); } } else { if (row.Cells["IfConfirm"].Text.ToString().Equals("/")) { MessageUtil.ShowTips("浇次号" + row.Cells["CastNo"].Text + ",未确认,不能取消确认。"); } } jsonList.Add(row.Cells["CastNo"].Text); list.Add(jsonList); } } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.ControlOrderPlan"; ccp.MethodName = "updateCastConfirm"; ccp.ServerParams = new object[] { list, flag, this.UserInfo.GetUserName() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Contains("成功")) { QueryCast(); } } private void cmbPro_EditorButtonClick(object sender, EditorButtonEventArgs e) { this.ugStove.UpdateData(); UltraGridRow row = this.ugStove.ActiveRow; if (row == null) { return; } FrmProInformation fp = new FrmProInformation(ob, row.Cells["PrdcrNo"].Text, "", "A"); fp.ShowDialog(); } /// /// 刷新工艺卡 /// private void doLimitProcessAll() { ugStove.UpdateData(); UltraGridRow row = ugStove.ActiveRow; if (row == null) return; string castNo = row.Cells["CastNo"].Text.ToString().Trim(); PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.steelMarkingPlan.ControlOrderPlan"; ccp.MethodName = "doLimitProcessAll"; ccp.ServerParams = new object[] { castNo }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); } private void ultraTextEditor1_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ugStove.ActiveRow; if (row == null) return; ugStove.UpdateData(); ArrayList entityList = new ArrayList(); ArrayList jsonList = new ArrayList(); if (row.HasParent()) { entityList.Add((PlnSteelforOrdEntity)row.ListObject); if (entityList == null) return; foreach (PlnSteelforOrdEntity entity in entityList) { entity.TotWeightM = entity.WeightM * entity.TotMumM; jsonList.Add(JSONFormat.Format(entity)); } } if (MessageUtil.ShowYesNoAndQuestion("是否保存 ?,请确认!") == DialogResult.No) return; var param = SteelHelper.SetData("com.steering.pss.plnsaleord.steelMarkingPlan.FrmSteelManagement.doSave", new object[] { jsonList }, ob); if (param != null) { MessageUtil.ShowTips("修改成功"); QueryCastTab(); } } } }