using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.PlnSaleOrd.BaseMethod; using Core.StlMes.Client.PlnSaleOrd.工序排产; using Core.StlMes.Client.PlnSaleOrd.工序排产.entity; using Core.StlMes.Client.PlnSaleOrd.炼钢计划; using Core.StlMes.Client.PlnSaleOrd.炉计划.Entity; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Core.StlMes.Client.PlnSaleOrd.炉计划 { public partial class FrmRollTubeLibraryJg : FrmBase { private string[] plineCode = null;//获取产线代码 DataTable dtPlinGroup = null; private string _ProPlanId = ""; private string _GxPlanNo = ""; private string flag = "0"; private string codeJgBl = ""; private bool flaggd = false; public bool Flaggd { get { return flaggd; } set { flaggd = value; } } public FrmRollTubeLibraryJg() { InitializeComponent(); this.IsLoadUserView = true; } public FrmRollTubeLibraryJg(OpeBase _ob,string _codeJgBl) { InitializeComponent(); this.ob = _ob; flag = "1"; codeJgBl = _codeJgBl; this.IsLoadUserView = true; } private void FrmRollTubeLibraryJg_Load(object sender, EventArgs e) { EntityHelper.ShowGridCaption(entityGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGridJgs.DisplayLayout.Bands[0]); BaseHelper.setUltraGridColumnMaxInput(ultraGridJgs, new string[] { "GroupBlWtS"}); BaseHelper.InitCellPosition(ultraGridJgs, new string[] { "JgGroupId", "GxPlanNo", "PlanSeqNo", "MinD", "MinH", "AimlengthBl", "AimCutLen", "LengthMin", "LengthMax", "GroupNumS", "SingleCutNun", "GroupBlNumS", "GroupBlWtS", "MatchnumJg", "MatchwtBl","MatchnumBl","BatchedWt","BatchedNum" , "BatchedNumOut","RealBatchedWt","RealBatchedNum","ProducedNum","GroupWtS","StockNumLiku"}); BaseHelper.GridColumnSum(ultraGridJgs, new string[] { "GroupBlWtS" }); BaseHelper.GridColumnCount(ultraGridJgs, new string[] { "GroupBlNumS" }); BaseHelper.setUltraGridColumnColor(ultraGridJgs, new string[] { "CraftFileNo" }, Color.GreenYellow); plineCode = PlanHelper.InitDropPlinePower("H", comPline, this.ValidDataPurviewIds, this.ob); PlanHelper.InitRepairType(ultraGridJgs, this); PlanHelper.InitEditPline("H", "", ultraGridJgs, this); BaseHelper.setOtherColumnReadOnly(ultraGridJgs, new string[] { "CHC","Memo" }); BaseHelper.setColumnBackColor(ultraGridJgs, new string[] { "StockNumLiku" }); ultraGridJgs.DisplayLayout.Bands[0].Columns["StockNumLiku"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Button; EntityHelper.ShowGridCaption(ultraGridZyD.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGridZyD.DisplayLayout.Bands[1]); BaseHelper.setOtherColumnReadOnly(ultraGridZyD, new string[] { "CHC" }); BaseHelper.setUltraGridColumnMaxInput(ultraGridZyD, new string[] { "PlanBlWt"}); BaseHelper.setUltraGridColumnBits(ultraGridZyD, new string[] { "PlanJgNum", "PlanBlNum"}); BaseHelper.InitCellPosition(ultraGridZyD, new string[] { "GxProSeq", "GxPlanNo","PlanBlWt", "PlanJgNum", "PlanBlNum", "CraftSeq"}); BaseHelper.GridColumnSum(ultraGridZyD, new string[] { "PlanBlWt"}); BaseHelper.GridColumnCount(ultraGridZyD, new string[] { "PlanJgNum", "PlanBlNum" }); SteelHelper.ForbidSort(ultraGridZyD); BaseHelper.InitCellPositionC(ultraGridZyD, new string[] { "GxPlanNo", "OutJgNum", "UseBlNum", "UseBlWt"}); if (flag.Equals("1")) { Query(); } } public override void ToolBar_Click(object sender, string ToolbarKey) { base.ToolBar_Click(sender, ToolbarKey); switch (ToolbarKey) { case "Query"://查询 Query(); break; case "TakeSingle"://删除 DoDelete(); //DoTakeSingle(); break; case"UpdateMemo": updateMemo(); break; case "Close": //关闭 this.Close(); break; case "Export": GridHelper.ulGridToExcel(entityGrid2, "利库记录数据"); break; default: break; } } /// /// 修改备注 /// private void updateMemo() { this.ultraGridJgs.UpdateData(); IQueryable checkMagRows = this.ultraGridJgs.Rows.AsQueryable().Where(" CHC = 'True'"); if (checkMagRows.Count() == 0) { return; } ArrayList parmList = new ArrayList(); foreach(UltraGridRow row in checkMagRows) { PlnGxJgPropSEntity plnEntity = (PlnGxJgPropSEntity)row.ListObject; string plnEntitys = JSONFormat.Format(plnEntity); parmList.Add(plnEntitys); } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg"; ccp.MethodName = "updateMemo"; ccp.ServerParams = new object[] { parmList }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("修改成功!")) { Query(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "Query"://查询 Query(); break; case "TakeSingle"://删除 DoDelete(); //DoTakeSingle(); break; case "Close": //关闭 this.Close(); break; case "Export": GridHelper.ulGridToExcel(entityGrid2, "利库记录数据"); break; default: break; } } private void chcPline_CheckedChanged(object sender, EventArgs e) { if (chcPline.Checked) { comPline.Enabled = true; } else { comPline.Enabled = false; } if (chcOrderNo.Checked) { txtOrderNo.Enabled = true; } else { txtOrderNo.Enabled = false; } if (chcProPlanId.Checked) { txtProPlanId.Enabled = true; } else { txtProPlanId.Enabled = false; } if (chcSyte.Checked) { txtSyte.Enabled = true; } else { txtSyte.Enabled = false; } if (chcJudgeNo.Checked) { txtJudgeNo.Enabled = true; } else { txtJudgeNo.Enabled = false; } } //查询 private void Query() { if (ultraTabControl1.SelectedTab.Key.Equals("0")) { QueryZg(); } else { QueryLk(); } } private List listSource = null; private void QueryZg() { //产线 string comPlineCode = ""; if (chcPline.Checked) { comPlineCode = comPline.Value == null ? "" : comPline.Value.ToString(); } WaitingForm2 wf3 = new WaitingForm2("正在刷新,请稍候...."); try { this.Cursor = Cursors.WaitCursor; //执行状态 string[] statusArr = contorlPlanStatus1.statusArr; //合同号 string orderNo = ""; if (chcOrderNo.Checked) { orderNo = txtOrderNo.Text.Trim(); } string proPlanId = ""; if (chcProPlanId.Checked) { proPlanId = txtProPlanId.Text.Trim(); } if (plineCode == null) { MessageUtil.ShowTips("该用户没有接箍产线查看权限!"); return; } listSource = null; listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg.queryPlanOrderD", new object[] { plineCode, proPlanId, orderNo, statusArr, comPlineCode, codeJgBl }, this.ob); plnOrderJgSOEntityBindingSource.DataSource = listSource; //激活操作行代码 foreach (UltraGridRow ugr in ultraGridJgs.Rows) { if (!_ProPlanId.Equals("") && !_GxPlanNo.Equals("")) { if (ugr.Cells["ProPlanId"].Text.Trim().Equals(_ProPlanId) && ugr.Cells["GxPlanNo"].Text.Trim().Equals(_GxPlanNo)) { ugr.Activate(); break; } } if (int.Parse(ugr.Cells["WorkBill"].Value.ToString()) <= 0) { ugr.Cells["WorkBill"].Value = 0; } } _ProPlanId = ""; _GxPlanNo = ""; } finally { wf3.Close(); this.Cursor = Cursors.Default; } } /// /// 利库日志查询 /// private void QueryLk() { string styeSj = ""; string judgeNo = ""; if (chcSyte.Checked) { if (txtSyte.Text.ToString().Trim().Equals("")) { MessageUtil.ShowTips("事件类型不能为空,请选择!"); return; }else { styeSj = txtSyte.Text.ToString(); } } if (chcJudgeNo.Checked) { if (txtJudgeNo.Text.ToString().Trim().Equals("")) { MessageUtil.ShowTips("判定炉号不能为空,请选择!"); return; } else { judgeNo = txtJudgeNo.Text.ToString(); } } List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg.queryMatGpTrack", new object[] { styeSj, judgeNo }, this.ob); matBcTrackEntityBindingSource.DataSource = listSource; GridHelper.RefreshAndAutoSize(entityGrid1); } /// /// 删除炉计划 /// private void DoDelete() { UltraGridRow row = ultraGridZyD.ActiveRow; if (row == null) { MessageUtil.ShowTips("无炉计划信息!"); return; } UltraGridRow rowzG = ultraGridJgs.ActiveRow; _ProPlanId = rowzG.Cells["ProPlanId"].Text.ToString(); _GxPlanNo = rowzG.Cells["GxPlanNo"].Text.ToString(); ArrayList list = new ArrayList(); int countChc = 0; foreach (UltraGridRow urg in ultraGridZyD.Rows) { ArrayList list1 = new ArrayList(); if (Convert.ToBoolean(urg.Cells["CHC"].Text) == true && !urg.HasParent()) { countChc++; if (!urg.Cells["Planstatus"].Text.ToString().Trim().Equals("计划")) { MessageUtil.ShowTips("您选择炉计划已不是计划状态,不能删除炉计划!"); return; } list1.Add(urg.Cells["HeatPlanNo"].Text.ToString().Trim()); list.Add(list1); } } if (countChc == 0) { MessageUtil.ShowTips("请勾选炉计划主信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认删除炉计划?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg"; ccp.MethodName = "doDelete"; ccp.ServerParams = new object[] { list, 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("删除成功!")) { QueryZg(); Flaggd = true; //QueryPlnZgM(_ProPlanId, _GxPlanNo); } } /// /// 订单信息触发事件 /// /// /// private void ultraGridDbks_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row = ultraGridJgs.ActiveRow; if (row == null) return; QueryPlnZgM(row.Cells["ProPlanId"].Value.ToString(), row.Cells["GxPlanNo"].Value.ToString()); } /// /// 查询订单对应炉计划 /// /// /// private void QueryPlnZgM(string proPlanId, string gxPlanNo) { List listSourceM = EntityHelper.GetData ("com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg.queryPlanStoveD", new object[] { proPlanId, gxPlanNo }, ob); List listSourceC = EntityHelper.GetData ("com.steering.pss.plnsaleord.planStove.FrmRollTubeLibraryJg.queryPlanStoveDc", new object[] { proPlanId, gxPlanNo }, ob); EntityHelper.AddEntityRelation(listSourceM, listSourceC, "HeatPlanNo", "HeatPlanNo"); plnZyJgEOntityBindingSource.DataSource = listSourceM; GridHelper.RefreshAndAutoSize(ultraGridZyD); } private void ultraGridDbks_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGridJgs.ActiveRow; if (row == null) return; if (e.Cell.Column.Key.Equals("StockNumLiku")) { string exeStatus = row.GetValue("ExeStatus"); //if (!exeStatus.Equals("计划")&& !exeStatus.Equals("生产中")) //{ // return; //} string proPlanId = row.GetValue("ProPlanId"); string gxPlanNo = row.GetValue("GxPlanNo"); FrmPlanMaterialJg frmPlanMat = new FrmPlanMaterialJg(proPlanId, gxPlanNo, this.UserInfo.GetUserName(), this.ob, exeStatus); frmPlanMat.ShowDialog(); bool flag = frmPlanMat.Flag; if (flag) { Flaggd = flag; Query(); }//如果有修改数据,则刷新页面 } if (e.Cell.Column.Key.Equals("CraftFileNo")) { string filePath = row.GetValue("CraftPath"); dlgOrderAskDown askDown = new dlgOrderAskDown(this.ob, filePath); askDown.Show(); } } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (flag.Equals("0")) { if (toolMenu == null) return; if (e.Tab.TabControl.SelectedTab.Key.Equals("0")) { if (toolMenu.Toolbars[0].Tools.Exists("TakeSingle")) { toolMenu.Toolbars[0].Tools["TakeSingle"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } } else { if (toolMenu.Toolbars[0].Tools.Exists("TakeSingle")) { toolMenu.Toolbars[0].Tools["TakeSingle"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.True; } } } } private void FrmRollTubeLibraryJg_Shown(object sender, EventArgs e) { if (flag.Equals("0")) { if (toolMenu.Toolbars[0].Tools.Exists("TakeSingle")) { toolMenu.Toolbars[0].Tools["TakeSingle"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } } } private void ultraGridZyD_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { foreach (UltraGridRow uRow in ultraGridZyD.Selected.Rows) { if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow)) { uRow.Cells["CHC"].Value = true; } } } /// /// 过滤可排产量 /// /// /// private void chcPlaned_CheckedChanged(object sender, EventArgs e) { UltraGridRow row = ultraGridJgs.ActiveRow; if (row == null) return; ultraGridJgs.UpdateData(); if (chcPlaned.Checked) { GridHelper.AddUlGridFilter(ultraGridJgs); plnOrderJgSOEntityBindingSource.DataSource = listSource.Where(w => w.ReallWt > 0).ToList(); } else { plnOrderJgSOEntityBindingSource.DataSource = listSource; } ultraGridJgs.Refresh(); ultraGridJgs.Update(); } } }