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.JGGXPln.Entity; using Core.StlMes.Client.PlnSaleOrd.工序排产; using Core.StlMes.Client.PlnSaleOrd.炉计划; using Core.StlMes.Client.PlnSaleOrd.炉计划.Entity; using Core.StlMes.Client.PlnSaleOrd.炉计划.Tool; 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.JGGXPln { public partial class FrmPlnZyJgWorkBill : FrmBase { public FrmPlnZyJgWorkBill() { InitializeComponent(); this.IsLoadUserView = true; } private string[] plineC = null;//获取产线代码 private DataTable dt1; private DataTable dt2; private ArrayList _entityList = null; private void FrmPlnZyJgWorkBill_Load(object sender, EventArgs e) { EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid3.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid4.DisplayLayout.Bands[0]); BaseHelper.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHC" }); BaseHelper.setUltraGridColumnMaxInput(ultraGrid1, new string[] { "PlanBlWt", "UseBlWt" }); BaseHelper.setUltraGridColumnBits(ultraGrid1, new string[] { "PlanBlNum", "PlanJgNum", "UseBlNum", "OutJgNum" }); BaseHelper.InitCellPosition(ultraGrid1, new string[] { "GxProSeq", "GxPlanNo","PlanBlWt", "Diameter", "SingleCutNun","PlanBlNum","PlanJgNum","Aimlength","CheckJVal","Outdiameter","Wallthick", "LengthMax","LengthMin","AimCutLen","AimlengthBl","MinH","MinD","UseBlNum", "UseBlWt", "OutJgNum"}); BaseHelper.GridColumnSum(ultraGrid1, new string[] { "UseBlWt" }); BaseHelper.GridColumnCount(ultraGrid1, new string[] { "OutJgNum", "UseBlNum" }); BaseHelper.SetGroupBySum(ultraGrid1, new string[] { "PlanBlWt", "PlanBlNum", "PlanJgNum" }, "HeatPlanNo"); plineC = PlanHelper.InitDropPlinePower("H", chcPlineCode, this.ValidDataPurviewIds, this.ob); PlanHelper.InitDropPlinePower("H", chcPlineBill, this.ValidDataPurviewIds, this.ob); BaseHelper.setOtherColumnReadOnly(ultraGrid2, new string[] { "CHC" }); BaseHelper.InitCellPosition(ultraGrid2, new string[] { "GroupNumS", "GroupWts", "PlansNum", "ExpectNum", "KcCount", "PlanNum", "PlanWt", "WorkNum", "WorkNumTrant", "WorkNumTranta" }); BaseHelper.setUltraGridColumnMaxInput(ultraGrid2, new string[] { "GroupWts", "PlanWt" }); BaseHelper.setUltraGridColumnBits(ultraGrid2, new string[] { "GroupNumS", "PlansNum", "ExpectNum", "KcCount", "PlanNum", "WorkNum", "WorkNumTrant", "WorkNumTranta" }); BaseHelper.setOtherColumnReadOnly(ultraGrid3, new string[] { "CHC" }); BaseHelper.setUltraGridColumnMaxInput(ultraGrid3, new string[] { "PlanBlWt", "RealBlWt", "OutWt" }); BaseHelper.setUltraGridColumnBits(ultraGrid3, new string[] { "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); BaseHelper.InitCellPosition(ultraGrid3, new string[] { "PlanBlWt", "RealBlWt", "OutWt", "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); BaseHelper.GridColumnSum(ultraGrid3, new string[] { "PlanBlWt", "RealBlWt", "OutWt" }); BaseHelper.GridColumnCount(ultraGrid3, new string[] { "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); BaseHelper.setOtherColumnReadOnly(ultraGrid4, new string[] { "CHC", "PlanBlNum", "PlanBlWt", "LatheGrpNm", "LatheCutNm" }); BaseHelper.setUltraGridColumnMaxInput(ultraGrid4, new string[] { "PlanBlWt", "RealBlWt", "OutWt" }); BaseHelper.setUltraGridColumnBits(ultraGrid4, new string[] { "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); BaseHelper.InitCellPosition(ultraGrid4, new string[] { "PlanBlWt", "RealBlWt", "OutWt", "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); BaseHelper.GridColumnSum(ultraGrid4, new string[] { "PlanBlWt", "RealBlWt", "OutWt" }); BaseHelper.GridColumnCount(ultraGrid4, new string[] { "PlanJgNum", "CsJgNum", "XqJgNum", "PlanBlNum", "RealBlNum", "OutNum" }); StoveHelper.ForbidSort(ultraGrid2); StoveHelper.ForbidSort(ultraGrid4); ultraGrid2.DisplayLayout.Bands[0].Columns["CraftNoJg2"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; ultraGrid3.DisplayLayout.Bands[0].Columns["CraftNoJg2"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; ultraGrid4.DisplayLayout.Bands[0].Columns["CraftNoJg2"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.EditButton; dt1 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryMach", new object[] { plineC, "700305" }, ob); ultraComboEditor2.DataSource = dt1; ultraComboEditor2.DisplayMember = "MACHINE_NAME"; ultraComboEditor2.ValueMember = "MACHINE_NO"; csMachine.DataSource = dt1; csMachine.DisplayMember = "MACHINE_NAME"; csMachine.ValueMember = "MACHINE_NO"; dt2 = ServerHelper.GetData("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryMachC", new object[] { plineC, "700302" }, ob); ultraComboEditor1.DataSource = dt2; ultraComboEditor1.DisplayMember = "MACHINE_NAME"; ultraComboEditor1.ValueMember = "MACHINE_NO"; cutMachine.DataSource = dt2; cutMachine.DisplayMember = "MACHINE_NAME"; cutMachine.ValueMember = "MACHINE_NO"; DateTime now = DateTime.Now; DateTime d1 = now; DateTime d2 = now; txtPlanTimeB1.Value = d1.ToString("yyyy-MM-dd") + " 00:00:00"; txtPlanTimeB2.Value = d2.ToString("yyyy-MM-dd") + " 23:59:59"; ultraGrid2.DisplayLayout.Bands[0].Columns["CodeJgBl"].CellAppearance.BackColor = Color.GreenYellow; ultraGrid2.DisplayLayout.Bands[0].Columns["CodeJg"].CellAppearance.BackColor = Color.GreenYellow; DateTime date = new DateTime(now.Year, now.Month, 1); cmbDate.Value = DateTime.Parse(date.ToString("yyyy-MM-dd 00:00")); cmbEndDate.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd HH:mm")); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query"://查询 Query(); break; case "QueryCp"://查询炉计划 QueryZyPln("","1"); break; case "Add"://新增 DoAdd(); break; case "Delete"://删除 DoDelete(); break; case "Issued"://下发 DoIssued("0"); break; case "CanIssued"://取消下发 DoIssued("1"); break; case "Outsourc"://委外处理 DoOutsourc("0"); break; case "OutsourcCancel"://取消委外处理 DoOutsourc("1"); break; case "BreakUp"://工单拆分 DoBreakUp(); break; case "UpdateOrder"://修改工单计划支 DoUpdateOrder(); break; case "UpdateMach"://修改机床 DoUpdateMach(); break; case "Close"://关闭 this.Close(); break; case "IssuedL"://下发 doFurnacePlan("0"); break; case "CanIssuedL"://取消下发 doFurnacePlan("1"); break; case "Export": ExportData(); break; case "DoPrint": Print(); break; case "UpdateStauts": updateStatus(); break; default: break; } } /// /// 打印计划单 /// private void Print() { this.ultraGrid4.UpdateData(); UltraGridRow uRow = this.ultraGrid4.ActiveRow; if (uRow == null) return; string woId = uRow.Cells["WoId"].Text.Trim(); string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepJgProductionPlan.cpt" + "&WO_ID=" + woId; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "计划单"; fBug.Show(); } /// /// 设置工单完成 /// private void updateStatus() { this.ultraGrid4.UpdateData(); IQueryable checkMagRows = this.ultraGrid4.Rows.AsQueryable().Where(" CHC = 'True'"); if (checkMagRows.Count() == 0) { MessageUtil.ShowTips("请选择需要操作的工单信息!"); return; } ArrayList parmList = new ArrayList(); foreach (UltraGridRow row in checkMagRows) { PlnZyJgWorkbillEntity plWorkBillEntity = (PlnZyJgWorkbillEntity)row.ListObject; string plWorkBill = JSONFormat.Format(plWorkBillEntity); parmList.Add(plWorkBill); } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "updateStatus"; 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 ExportData() { GridHelper.ulGridToExcel(ultraGrid4, "工单信息"); } private void Query() { if (ultraTabControl1.SelectedTab.Key.Equals("0")) { QueryZyPln("","0"); QueryJgOrder(""); } else { QueryWorkBillPln(); } } /// /// 查询炉计划 /// private void QueryZyPln(string proPlanId,string flag) { string cpJg = "0"; if (chkJg.Checked) { cpJg = "1"; } string heatPlanNo = ""; if (chkHeatPlanNo.Checked) { if (txtHeatPlanNo.Text.Equals("")) { MessageUtil.ShowTips("请输入炉计划ID!"); return; } else { heatPlanNo = txtHeatPlanNo.Text.ToString().Trim(); } } string judgeNo = ""; if (chkJudNo.Checked ) { if (txtJudNo.Text.Equals("")) { MessageUtil.ShowTips("请输入判定炉号!"); return; } else { judgeNo = txtJudNo.Text.ToString().Trim(); } } string plineCode = ""; if (chkPlineCode.Checked) { if (chcPlineCode.Text.Equals("")) { MessageUtil.ShowTips("请选择接箍产线!"); return; } else { plineCode = chcPlineCode.Value == null ? "" : chcPlineCode.Value.ToString(); } } string[] pcStart = { }; if (chkStrat.Checked && !chcStrat.Text.Equals("")) { pcStart = (chcStrat.Value as List).Select(p => p.ToString().Trim()).ToArray(); } string codeBl = ""; if (chkBlCode.Checked) { if (txtBlCode.Text.Equals("")) { MessageUtil.ShowTips("请输入备料码!"); return; } else { codeBl = txtBlCode.Text.ToString().Trim(); } } string str = "1"; if (ultraCheckEditor6.Checked) { str = "0"; } string timeB = txtPlanTimeB1.Value.ToString().ToString(); string timeE = txtPlanTimeB2.Value.ToString(); List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryPlnZyJg", new object[] { heatPlanNo, judgeNo, plineCode, plineC, pcStart, codeBl, str, proPlanId, timeB, timeE, cpJg, flag }, this.ob); plnZyJgReadyEntityBindingSource.DataSource = listSource; //GridHelper.RefreshAndAutoSize(ultraGrid1); foreach (UltraGridRow ugr in ultraGrid1.Rows) { //没有实际炉计划,主炉计划变颜色 if (ugr.Cells["HeatPlanSqe"].Value.ToString().Equals("")) { ugr.Appearance.BackColor = Color.Orange; } } } List listSource1 = null; /// /// 查询成品合同 /// /// private void QueryJgOrder(string proPlanId) { string cpJg = "0"; if (chkJg.Checked) { cpJg = "1"; } string day = "0"; if (cpJg.Equals("0")) { day = txtDay.Value.ToString(); } DateTime dTime = DateTime.Now; string timeB = txtPlanTimeB1.Value.ToString().ToString(); //dTime.Date.ToString("yyyy-MM-dd") + " 00:00:00"; string timeE = txtPlanTimeB2.Value.ToString();//dTime.Date.AddDays(+int.Parse(day)-1).ToString("yyyy-MM-dd") + " 23:59:59"; string[] pcStart = { }; if (chkStrat.Checked && !chcStrat.Text.Equals("")) { pcStart = (chcStrat.Value as List).Select(p => p.ToString().Trim()).ToArray(); } listSource1 = EntityHelper.GetData ("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryPlnZyJgOrder", new object[] { proPlanId, timeB, timeE, cpJg, pcStart }, this.ob); bindingSource1.DataSource = listSource1; //GridHelper.RefreshAndAutoSize(ultraGrid2); foreach (UltraGridRow item in ultraGrid2.Rows) { if (int.Parse(item.Cells["ExpectNum"].Value.ToString()) > 0) { item.Cells["WorkNum"].Value = int.Parse(item.Cells["ExpectNum"].Value.ToString()) - int.Parse(item.Cells["WorkNumTranta"].Value.ToString()) - int.Parse(item.Cells["KcCount"].Value.ToString()); } else { item.Cells["WorkNum"].Value = int.Parse(item.Cells["PlansNum"].Value.ToString()) - int.Parse(item.Cells["WorkNumTranta"].Value.ToString()) - int.Parse(item.Cells["KcCount"].Value.ToString()); } if (int.Parse(item.Cells["WorkNum"].Value.ToString()) <= 0) { item.Cells["WorkNum"].Value = 0; } } } /// /// 查询根据炉计划工单 /// /// private void QueryWorkBill(string heatPlanNo, string heatPlanSqe) { List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryPlnZyWorkBill", new object[] { heatPlanNo, heatPlanSqe }, this.ob); plnZyJgWorkbillEntitySource.DataSource = listSource; //GridHelper.RefreshAndAutoSize(ultraGrid3); } /// /// 查询工单信息 /// private void QueryWorkBillPln() { string date = ""; string endDate = ""; if (chkDate.Checked) { if (DataTimeUtil.JudgeTime(DateTime.Parse(cmbDate.Value.ToString()), DateTime.Parse(cmbEndDate.Value.ToString())) == 0) { MessageUtil.ShowTips("您所选择的日期区域不对,请重新选择!"); return; } else { date = cmbDate.Value.ToString(); endDate = cmbEndDate.Value.ToString(); } } string workBill = chcWorkBill.Text.ToString().Trim(); if (chkWorkBill.Checked) { if (workBill.Equals("")) { MessageUtil.ShowTips("请输入工单号!"); return; } } else { workBill = ""; } string judgeNoBill = txtBillJudgeNo.Text.ToString().Trim(); if (chkBillJudgeNo.Checked) { if (judgeNoBill.Equals("")) { MessageUtil.ShowTips("请输入判定炉号!"); return; } } else { judgeNoBill = ""; } string plineCode = chcPlineBill.Value == null ? "" : chcPlineBill.Value.ToString(); if (chkPlineBill.Checked) { if (chcPlineBill.Text.Equals("")) { MessageUtil.ShowTips("请选择接箍产线!"); return; } } else { plineCode = ""; } string[] pcStart = { }; if (chkStratBill.Checked && !chcStratBill.Text.Equals("")) { pcStart = (chcStratBill.Value as List).Select(p => p.ToString().Trim()).ToArray(); } List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.queryPlnZyWorkBillPln", new object[] { workBill, judgeNoBill, plineCode, plineC, pcStart, date, endDate }, this.ob); bindingSource2.DataSource = listSource; //GridHelper.RefreshAndAutoSize(ultraGrid4); //激活操作行代码 if ( _entityList != null) { foreach (UltraGridRow ugr in ultraGrid4.Rows) { if (_entityList != null) { for (int i = 0; i < _entityList.Count; i++) { PlnZyJgWorkbillEntity jgxsEntity = (PlnZyJgWorkbillEntity)_entityList[i]; if (ugr.Cells["WoId"].Text.Trim().Equals(jgxsEntity.WoId)) { ugr.Appearance.BackColor = Color.Wheat; ugr.Activate(); } } } } } _entityList = null; } /// /// 新增工单 /// private void DoAdd() { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; //if (!row.Cells["Planstatus"].Text.Equals("计划") && !row.Cells["Planstatus"].Text.Equals("下发")) //{ // MessageUtil.ShowTips("选中的该炉计划是不计划和下发状态不能新增工单!"); // return; //} string decision = "B"; if (chkJg.Checked) { decision = "A"; } int jgNum = int.Parse(row.Cells["UseBlNum"].Value.ToString()) - int.Parse(row.Cells["RealIndoubleNum"].Value.ToString()); if (jgNum == 0) { MessageUtil.ShowTips("选中的炉计划已全部生成工单,请重新选择炉计划!"); return; } int count = 0; string heatPlanNo = row.Cells["HeatPlanNo"].Text.ToString(); string heatPlanSeq = row.Cells["HeatPlanSqe"].Text.ToString(); string proPlanId = row.Cells["ProPlanId"].Text.ToString(); ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid2.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { count++; if (!proPlanId.Equals(item.Cells["ProPlanId"].Value.ToString())) { MessageUtil.ShowTips("请勾选订单号相同的接箍排产订单信息(7+4)"); return; } //if (int.Parse(item.Cells["WorkNum"].Value.ToString()) == 0) //{ // if (MessageUtil.ShowYesNoAndQuestion("可做工单支为零,是否继续新增?") == DialogResult.No) // { // return; // } //} if (int.Parse(ultraNumericEditor1.Value.ToString())<= 0) { MessageUtil.ShowTips("可做工单不能为零,请输入!"); return; } int singLenCutNum = (int)(double.Parse(row.Cells["AimlengthBl"].Value.ToString()) / ((double.Parse(row.Cells["Aimlength"].Value.ToString()) + 15) / 1000)) - 2; //if(ultraNumericEditor1.Value=) ArrayList list1 = new ArrayList(); list1.Add(item.Cells["Key"].Text.ToString()); list1.Add(item.Cells["ProPlanId"].Text.ToString()); list1.Add(item.Cells["WorkNum"].Value.ToString()); list1.Add(ultraNumericEditor1.Value.ToString()); list1.Add(singLenCutNum.ToString()); list1.Add(item.Cells["XqJgNum"].Value.ToString()); list.Add(list1); } } if (count == 0) { MessageUtil.ShowTips("请勾选接箍排产订单信息(7+4)"); return; } string latheGrpNo = ""; string latheGrpName = ""; if (ultraComboEditor2.Text.ToString().Equals("")) { if (MessageUtil.ShowYesNoAndQuestion("车丝机编号为空是否新增?") == DialogResult.No) return; } else { ArrayList listlat = new ArrayList((ultraComboEditor2.Value as List).Select(p => p.ToString().Trim()).ToArray()); latheGrpNo = string.Join(",", (string[])listlat.ToArray(typeof(string))); latheGrpName = ultraComboEditor2.Text.ToString().Trim(); } string latheCutName = ""; if (ultraComboEditor1.Text.ToString().Equals("")) { if (MessageUtil.ShowYesNoAndQuestion("切管机编号为空是否新增?") == DialogResult.No) return; } else { //ArrayList listlat = new ArrayList((ultraComboEditor2.Value as List).Select(p => p.ToString().Trim()).ToArray()); //latheGrpNo = string.Join(",", (string[])listlat.ToArray(typeof(string))); latheCutName = ultraComboEditor1.Text.ToString().Trim(); } string memo = txtMemo.Text.Trim().ToString(); if (MessageUtil.ShowYesNoAndQuestion("是否新增工单?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doAdd"; ccp.ServerParams = new object[] { list, this.UserInfo.GetUserName(), heatPlanNo, heatPlanSeq, latheGrpNo, latheGrpName, latheCutName, memo, decision, ultraNumericEditor1.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("新增成功!")) { Query(); } } /// /// 删除工单 /// private void DoDelete() { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int count = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { count++; if (!item.Cells["ZyBillStatus"].Text.Equals("计划")) { MessageUtil.ShowTips("选中的工单不是计划状态,不能删除!"); return; } ArrayList list1 = new ArrayList(); list1.Add(item.Cells["WoId"].Text.ToString()); list.Add(list1); } } if (count == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否删除工单?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; 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("删除成功!")) { Query(); } } /// /// 工单下发/取消下发 /// /// private void DoIssued(string flag) { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int count = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { count++; if (flag.Equals("0")) { if (!item.Cells["ZyBillStatus"].Text.Equals("计划")) { MessageUtil.ShowTips("选中的工单不是计划状态,不能下发!"); return; } } else { if (!item.Cells["ZyBillStatus"].Text.Equals("下发")) { MessageUtil.ShowTips("选中的工单不是下发状态,不能取消下发!"); return; } } ArrayList list1 = new ArrayList(); list1.Add(item.Cells["WoId"].Text.ToString()); list.Add(list1); } } if (count == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion(flag.Equals("0") ? "是否下发?" : "是否取消下发?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doIssued"; ccp.ServerParams = new object[] { list, this.UserInfo.GetUserName(), flag}; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("成功!")) { Query(); } } /// /// 委外处理 /// private void DoOutsourc(string flag) { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int count = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { count++; if (flag.Equals("0")) { if (!item.Cells["ZyBillStatus"].Text.Equals("计划")) { MessageUtil.ShowTips("选中的工单不是计划状态,不能委外!"); return; } } else { if (!item.Cells["ZyBillStatus"].Text.Equals("计划")) { MessageUtil.ShowTips("选中的工单不是下发状态,不能取消委外!"); return; } } ArrayList list1 = new ArrayList(); list1.Add(item.Cells["WoId"].Text.ToString()); list.Add(list1); } } if (count == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion(flag.Equals("0") ? "是否工单委外?" : "是否取消工单委外?") == DialogResult.No) { return; } PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doOutsourc"; ccp.ServerParams = new object[] { list, this.UserInfo.GetUserName(), flag }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("成功!")) { Query(); } } /// /// 修改机床 /// private void DoUpdateMach() { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int countM = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { countM++; ArrayList list1 = new ArrayList(); if (item.Cells["ZyBillStatus"].Text.ToString().Equals("关闭")) { MessageUtil.ShowTips("选中工单已关闭,不能修改机床!"); return; } list1.Add(item.Cells["LatheGrpNo"].Value.ToString()); list1.Add(item.Cells["LatheGrpNm"].Text.ToString()); list1.Add(item.Cells["LatheCutNm"].Text.ToString()); list1.Add(item.Cells["WoId"].Text.ToString().Trim()); list.Add(list1); } } if (countM == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否修改机床?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doUpdateMach"; 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("修改成功!")) { QueryWorkBillPln(); } } private void chkHeatPlanNo_CheckedChanged(object sender, EventArgs e) { if (chkHeatPlanNo.Checked) { txtHeatPlanNo.Enabled = true; } else { txtHeatPlanNo.Enabled = false; } if (chkPlineCode.Checked) { chcPlineCode.Enabled = true; } else { chcPlineCode.Enabled = false; } if (chkJudNo.Checked) { txtJudNo.Enabled = true; } else { txtJudNo.Enabled = false; } if (chkWorkBill.Checked) { chcWorkBill.Enabled = true; } else { chcWorkBill.Enabled = false; } if (chkBillJudgeNo.Checked) { txtBillJudgeNo.Enabled = true; } else { txtBillJudgeNo.Enabled = false; } if (chkPlineBill.Checked) { chcPlineBill.Enabled = true; } else { chcPlineBill.Enabled = false; } if (chkStratBill.Checked) { chcStratBill.Enabled = true; } else { chcStratBill.Enabled = false; } if (chkBlCode.Checked) { txtBlCode.Enabled = true; } else { txtBlCode.Enabled = false; } if (chkDate.Checked) { cmbDate.Enabled = true; } else { cmbDate.Enabled = false; } if (chkDate.Checked) { cmbEndDate.Enabled = true; } else { cmbEndDate.Enabled = false; } } private void radioButton1_CheckedChanged(object sender, EventArgs e) { if (chkJg.Checked) { txtDay.Enabled = false; } else { txtDay.Enabled = true; } } private string proPlanId1 = ""; private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; proPlanId1 = row.Cells["ProPlanId"].Text.ToString() + "/" + row.Cells["GxPlanNo"].Text.ToString(); string heatPlanNo = row.Cells["HeatPlanNo"].Text.ToString(); string heatPlanSqe = row.Cells["HeatPlanSqe"].Text.ToString(); string plineCode = row.Cells["PlineCode"].Text.ToString(); QueryWorkBill(heatPlanNo, heatPlanSqe); ////根据接箍产线过滤车丝机床编号 //DataRow[] rows = dt1.Select("PLINE_NO='" + plineCode + "'"); //if (rows.Count()>0) //{ // DataTable dt3 = rows[0].Table.Clone(); // foreach (DataRow drow in rows) // { // dt3.ImportRow(drow); // 将DataRow添加到DataTable中 // } // ultraComboEditor2.DataSource = dt3; // ultraComboEditor2.DisplayMember = "MACHINE_NAME"; // ultraComboEditor2.ValueMember = "MACHINE_NO"; //} ////根据接箍产线过切割机床编号 //DataRow[] rows1 = dt2.Select("PLINE_CODE='" + plineCode + "'"); //if (rows.Count() > 0) //{ // DataTable dt4 = rows[0].Table.Clone(); // foreach (DataRow drow in rows1) // { // dt4.ImportRow(drow); // 将DataRow添加到DataTable中 // } // ultraComboEditor1.DataSource = dt4; // ultraComboEditor1.DisplayMember = "MACHINE_NAME"; // ultraComboEditor1.ValueMember = "MACHINE_NO"; //} txtMemo.Text = ""; } 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("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].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("CanIssued")) { toolMenu.Toolbars[0].Tools["CanIssued"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("BreakUp")) { toolMenu.Toolbars[0].Tools["BreakUp"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateOrder")) { toolMenu.Toolbars[0].Tools["UpdateOrder"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("QueryCp")) { toolMenu.Toolbars[0].Tools["QueryCp"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMach")) { toolMenu.Toolbars[0].Tools["UpdateMach"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("IssuedL")) { toolMenu.Toolbars[0].Tools["IssuedL"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CanIssuedL")) { toolMenu.Toolbars[0].Tools["CanIssuedL"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateStauts")) { toolMenu.Toolbars[0].Tools["UpdateStauts"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DoPrint")) { toolMenu.Toolbars[0].Tools["DoPrint"].InstanceProps.Visible = DefaultableBoolean.False; } } else { if (toolMenu.Toolbars[0].Tools.Exists("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].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("CanIssued")) { toolMenu.Toolbars[0].Tools["CanIssued"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("BreakUp")) { toolMenu.Toolbars[0].Tools["BreakUp"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateOrder")) { toolMenu.Toolbars[0].Tools["UpdateOrder"].InstanceProps.Visible = DefaultableBoolean.True;} if (toolMenu.Toolbars[0].Tools.Exists("QueryCp")) { toolMenu.Toolbars[0].Tools["QueryCp"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMach")) { toolMenu.Toolbars[0].Tools["UpdateMach"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("IssuedL")) { toolMenu.Toolbars[0].Tools["IssuedL"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("CanIssuedL")) { toolMenu.Toolbars[0].Tools["CanIssuedL"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateStauts")) { toolMenu.Toolbars[0].Tools["UpdateStauts"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("DoPrint")) { toolMenu.Toolbars[0].Tools["DoPrint"].InstanceProps.Visible = DefaultableBoolean.True; } } } private void FrmPlnZyJgWorkBill_Shown(object sender, EventArgs e) { if (toolMenu.Toolbars[0].Tools.Exists("Add")) { toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Delete")) { toolMenu.Toolbars[0].Tools["Delete"].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("CanIssued")) { toolMenu.Toolbars[0].Tools["CanIssued"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("BreakUp")) { toolMenu.Toolbars[0].Tools["BreakUp"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateOrder")) { toolMenu.Toolbars[0].Tools["UpdateOrder"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("QueryCp")) { toolMenu.Toolbars[0].Tools["QueryCp"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateMach")) { toolMenu.Toolbars[0].Tools["UpdateMach"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("IssuedL")) { toolMenu.Toolbars[0].Tools["IssuedL"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("CanIssuedL")) { toolMenu.Toolbars[0].Tools["CanIssuedL"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("UpdateStauts")) { toolMenu.Toolbars[0].Tools["UpdateStauts"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("DoPrint")) { toolMenu.Toolbars[0].Tools["DoPrint"].InstanceProps.Visible = DefaultableBoolean.False; } } private void chkJg_TabIndexChanged(object sender, EventArgs e) { QueryJgOrder(proPlanId1); } private void ultraNumericEditor1_ValueChanged(object sender, EventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; int singLenCutNum = (int)(double.Parse(row.Cells["AimlengthBl"].Value.ToString()) / ((double.Parse(row.Cells["Aimlength"].Value.ToString()) + 15) / 1000)) - 2; ultraNumericEditor2.Value = int.Parse(ultraNumericEditor1.Value.ToString()) * singLenCutNum; } private void ultraGrid2_CellChange(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; UltraGridRow row1 = ultraGrid2.ActiveRow; if (row1 == null) return; int klnum = 0; int singLenCutNum = (int)(double.Parse(row.Cells["AimlengthBl"].Value.ToString()) / ((double.Parse(row.Cells["Aimlength"].Value.ToString()) + 15) / 1000)) - 2; int jhnum = (int.Parse(row.Cells["UseBlNum"].Value.ToString()) - int.Parse(row.Cells["RealIndoubleNum"].Value.ToString())) * singLenCutNum; if (e.Cell.Column.Key.Equals("CHC")) { foreach (UltraGridRow item in ultraGrid2.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { klnum += int.Parse(item.Cells["WorkNum"].Value.ToString()); } } if (klnum >= jhnum) { ultraNumericEditor1.Value = int.Parse(row.Cells["UseBlNum"].Value.ToString()) - int.Parse(row.Cells["RealIndoubleNum"].Value.ToString()); } else { ultraNumericEditor1.Value = Math.Ceiling(klnum / double.Parse(singLenCutNum.ToString())); } } } #region 查看工艺文件 private void ultraGrid2_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid2.ActiveRow; if (row == null) return; string orderNo = row.Cells["OrderNoSeq"].Text.ToString(); string codeJgBl = row.Cells["CodeJgBl"].Text.ToString(); string codeJg = row.Cells["CodeJg"].Text.ToString(); string jgOrderno = row.Cells["JgOrderno"].Text.ToString(); if (e.Cell.Column.Key.Equals("CraftNoJg2")) { //if (e.Cell.Column.Key.Equals("CraftNoJg2")) //{ // string filePath = row.GetValue("CraftPath"); // dlgOrderAskDown askDown = new dlgOrderAskDown(this.ob, filePath); // askDown.Show(); //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepMilCouplingProcess2.cpt" + "&ORDER_NO=" + orderNo; 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 if (e.Cell.Column.Key.Equals("CodeJgBl")) { FrmRollTubeLibraryJg down = new FrmRollTubeLibraryJg(ob,codeJgBl); down.Text = "接箍原料利库"; //down.Visible = false; // down.Size = new Size(740, this.Height); //down.WindowState = FormWindowState.Minimized; down.ShowDialog(); bool flag = down.Flaggd; if (flag) { QueryJgOrder(""); } } else if (e.Cell.Column.Key.Equals("CodeJg")) { FrmJgOrderLk down = new FrmJgOrderLk(ob, codeJg, jgOrderno); down.Text = "接箍合同利库"; //down.Visible = false; // down.Size = new Size(740, this.Height); //down.WindowState = FormWindowState.Minimized; down.ShowDialog(); bool flag = down.Flaggd; if (flag) { QueryJgOrder(""); } } } private void ultraGrid3_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid3.ActiveRow; if (row == null) return; string orderNo = row.Cells["OrderNoSeq"].Text.ToString(); //if (e.Cell.Column.Key.Equals("CraftNoJg2")) //{ // string filePath = row.GetValue("CraftPath"); // dlgOrderAskDown askDown = new dlgOrderAskDown(this.ob, filePath); // askDown.Show(); //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepMilCouplingProcess2.cpt" + "&ORDER_NO=" + orderNo; 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 ultraGrid4_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; string orderNo = row.Cells["OrderNoSeq"].Text.ToString(); //if (e.Cell.Column.Key.Equals("CraftNoJg2")) //{ // string filePath = row.GetValue("CraftPath"); // dlgOrderAskDown askDown = new dlgOrderAskDown(this.ob, filePath); // askDown.Show(); //} string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepMilCouplingProcess2.cpt" + "&ORDER_NO=" + orderNo; FrmRepExcel down = new FrmRepExcel(ob, strurl); down.Text = "接箍二级工艺"; down.Visible = false; down.Size = new Size(740, this.Height); down.WindowState = FormWindowState.Maximized; down.ShowDialog(); } #endregion private void ultraGrid4_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { foreach (UltraGridRow uRow in ultraGrid4.Selected.Rows) { if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow)) { uRow.Cells["CHC"].Value = true; } } } /// /// 拆分工单 /// private void DoBreakUp() { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int countM = 0; ArrayList list = new ArrayList(); int reaNum = 0;//上料支 int plnNum = 0;//装炉支 double reaWt = 0; double plnWt = 0; double spitRatio = 0; foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { countM++; ArrayList list1 = new ArrayList(); if (!item.Cells["RealBlNum"].Text.ToString().Equals("")) { reaNum = int.Parse(item.Cells["RealBlNum"].Value.ToString()); } if (!item.Cells["PlanBlNum"].Text.ToString().Equals("")) { plnNum = int.Parse(item.Cells["PlanBlNum"].Value.ToString()); } //if (item.Cells["ZyBillStatus"].Text.ToString().Equals("计划") || item.Cells["ZyBillStatus"].Text.ToString().Equals("下发")) //{ // MessageUtil.ShowTips("选中工单是计划/下发状态,不能拆分!"); // return; //} //if (reaNum == 0) //{ // MessageUtil.ShowTips("选中的炉计划无上料支,不能拆分!"); // return; //} if (plnNum - reaNum <= 0) { MessageUtil.ShowTips("选中的工单已全部上料,不能拆分!"); return; } plnWt = double.Parse(item.Cells["PlanBlWt"].Value.ToString()); reaWt=double.Parse(item.Cells["RealBlWt"].Value.ToString()); spitRatio = double.Parse(item.Cells["PlanBlWt"].Value.ToString()) / plnNum; list1.Add(item.Cells["WoId"].Text.ToString().Trim()); list.Add(list1); } } if (countM == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (countM > 1) { MessageUtil.ShowWarning("不能一次性拆分多个工单!"); return; } FrmSpitBill spBill = new FrmSpitBill(plnWt, plnNum, spitRatio, this.ob, reaWt, reaNum); spBill.ShowDialog(); double spitWgt = spBill.AlreadySpitWgt; int spitNum = spBill.AlreadySpitNum; if (MessageUtil.ShowYesNoAndQuestion("是否拆分?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doBreakUp"; ccp.ServerParams = new object[] { list, this.UserInfo.GetUserName(), spitWgt.ToString(), spitNum.ToString() }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals("拆分成功!")) { QueryWorkBillPln(); } } /// ///修改工单计划支 /// private void DoUpdateOrder() { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; int countM = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid4.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { countM++; ArrayList list1 = new ArrayList(); if (item.Cells["PlanBlNum"].Value.ToString().Equals("0")) { MessageUtil.ShowTips("计划支不能为零或空!"); return; } if (item.Cells["PlanBlWt"].Value.ToString().Equals("0")) { MessageUtil.ShowTips("计划吨不能为零或空!"); return; } if (item.Cells["ZyBillStatus"].Text.ToString().Equals("关闭")) { MessageUtil.ShowTips("选中工单已关闭,不能修改支吨!"); return; } list1.Add(item.Cells["PlanBlNum"].Value.ToString()); list1.Add(item.Cells["PlanBlWt"].Value.ToString()); list1.Add(item.Cells["WoId"].Text.ToString().Trim()); list.Add(list1); } } if (countM == 0) { MessageUtil.ShowTips("请勾选工单信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否修改计划支吨?") == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doUpdateOrder"; 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("修改成功!")) { QueryWorkBillPln(); } } private void ultraGrid4_CellChange(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; //计划支 if (e.Cell.Column.Key.Equals("PlanBlNum")) { if (e.Cell.Row.Cells["PlanBlNum"].Value == null) { e.Cell.Row.Cells["PlanBlNum"].Value = "0"; } else { ultraGrid4.UpdateData(); string hbConNum = e.Cell.Row.Cells["PlanBlNum"].Value.ToString(); if (!StringUtil.IsInt(hbConNum) || hbConNum == "0") { e.Cell.Row.Cells["PlanBlNum"].Value = "0"; } } } //计划吨 if (e.Cell.Column.Key.Equals("PlanBlWt")) { if (e.Cell.Row.Cells["PlanBlWt"].Value == null) { e.Cell.Row.Cells["PlanBlWt"].Value = "0"; } else { ultraGrid4.UpdateData(); string hbConWt = e.Cell.Row.Cells["PlanBlWt"].Value.ToString(); if (!StringUtil.IsFloat(hbConWt) || hbConWt == "0") { e.Cell.Row.Cells["PlanBlWt"].Value = "0"; } } } } /// /// 工单调整顺序 /// /// /// private void ultraGrid4_MouseDown(object sender, MouseEventArgs e) { try { ultraGrid4.UpdateData(); } catch (Exception) { MessageUtil.ShowWarning("数据异常,请刷新数据!"); return; } if (e.Button == MouseButtons.Right) { //移动行 ArrayList entityList = ProducHelper.GetChcRows(ultraGrid4); if (entityList == null || entityList.Count == 0) { return; } //定位行 UIElement myUIElement = ultraGrid4.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; } PlnZyJgWorkbillEntity entityD = (PlnZyJgWorkbillEntity)ugr.ListObject; //定位行计划 if (entityD.ZyBillStatus.Equals("生产完成") ||entityD.ZyBillStatus.Equals("关闭")) { return; } //定位行序号 string gxProSeqD = entityD.GxProSeq.ToString(); //移动行序号集合 ArrayList seqList = new ArrayList(); ArrayList list = new ArrayList(); //获取数据库服务器当前时间 //string time = DateTime.Now.ToString("yyyy-MM"); //DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.base.ProducHelper.selectSystemTime", null, ob); //if (dt.Rows.Count > 0) //{ // time = dt.Rows[0]["DATIME"].ToString().Substring(0, 7); //} foreach (object entityM in entityList) { PlnZyJgWorkbillEntity entity = (PlnZyJgWorkbillEntity)entityM; //调整行只能为计划中的 if (entity.ZyBillStatus.Equals("生产完成") || entity.ZyBillStatus.Equals("关闭")) { return; } seqList.Add(Convert.ToInt32(entity.GxProSeq)); list.Add(JSONFormat.Format(entity)); } seqList.Sort(); //如果鼠标坐标行在调整行的中间,则不允许调整 if (Convert.ToInt32(gxProSeqD) >= (int)seqList[0] && Convert.ToInt32(gxProSeqD) <= (int)seqList[seqList.Count - 1]) { return ; } if (MessageUtil.ShowYesNoAndQuestion("是否调整生产顺序至:" + entityD.GxProSeq + "位?") == DialogResult.No) { return ; } string[] param = PlanHelper.SetData("com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill.sortPlanOrder", new object[] { list, JSONFormat.Format(entityD) }, ob); if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); return; } else { _entityList = entityList; QueryWorkBillPln(); } } } private void ultraGrid4_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row = ultraGrid4.ActiveRow; if (row == null) return; ultraGrid4.UpdateData(); string plineCode = row.Cells["PlineCode"].Text.ToString(); //DataRow[] rows = dt1.Select("PLINE_NO='" + plineCode + "'"); //if (rows.Count() > 0) //{ // DataTable dt3 = rows[0].Table.Clone(); // foreach (DataRow drow in rows) // { // dt3.ImportRow(drow); // 将DataRow添加到DataTable中 // } // csMachine.DataSource = dt3; // csMachine.DisplayMember = "MACHINE_NAME"; // csMachine.ValueMember = "MACHINE_NO"; //} ////根据接箍产线过切割机床编号 //DataRow[] rows1 = dt2.Select("PLINE_CODE='" + plineCode + "'"); //if (rows.Count() > 0) //{ // DataTable dt4 = rows[0].Table.Clone(); // foreach (DataRow drow in rows1) // { // dt4.ImportRow(drow); // 将DataRow添加到DataTable中 // } // cutMachine.DataSource = dt4; // cutMachine.DisplayMember = "MACHINE_NAME"; // cutMachine.ValueMember = "MACHINE_NO"; //} } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row1 = ultraGrid2.ActiveRow; if (row1 == null) return; string proPlanId = row1.Cells["ProPlanId"].Text.ToString() + "/" + row1.Cells["GxPlanNo"].Text.ToString(); //QueryZyPln(proPlanId, "0"); UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; foreach (UltraGridRow item in ultraGrid2.Rows) { if (item == null) return; if (item.Cells["ProPlanId"].Value.ToString().Equals(row.Cells["ProPlanId"].Text.ToString())) { item.Appearance.BackColor = Color.Wheat; item.Activate(); string wasteRate = "0"; if (!row.Cells["WasteRate"].Text.Equals("")) { wasteRate = row.Cells["WasteRate"].Value.ToString(); } item.Cells["XqJgNum"].Value = (int)Math.Ceiling((1 + double.Parse(wasteRate) / 10000) * int.Parse(item.Cells["ExpectNum"].Value.ToString())); } else { item.Appearance.ResetBackColor(); item.Cells["XqJgNum"].Value = "0"; } //item.Cells["CHC"].Value = false; } } /// /// 炉计划下发 /// private void doFurnacePlan(string flag) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; int countM = 0; ArrayList list = new ArrayList(); foreach (UltraGridRow item in ultraGrid1.Rows) { if (Convert.ToBoolean(item.Cells["CHC"].Text) == true) { countM++; ArrayList list1 = new ArrayList(); if (flag.Equals("0") && !item.Cells["Planstatus"].Text.ToString().Equals("计划")) { MessageUtil.ShowTips("选中该炉计划已下发,不能重复下发!"); return; } if (flag.Equals("1") && item.Cells["Planstatus"].Text.ToString().Equals("计划")) { MessageUtil.ShowTips("选中该炉计划不处于下发状态,不能撤销!"); return; } list1.Add(item.Cells["HeatPlanNo"].Text.ToString().Trim()); list.Add(list1); } } if (countM == 0) { MessageUtil.ShowTips("请勾选接箍炉计划信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion((flag.Equals("0") ? "是否下发?" : "是否撤销下发?")) == DialogResult.No) return; PlanComm.WaitFromOpen(this.Cursor); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.plnsaleord.jggxpln.FrmPlnZyJgWorkBill"; ccp.MethodName = "doFurnacePlan"; ccp.ServerParams = new object[] { list, this.UserInfo.GetUserName(), flag }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); PlanComm.WaitFromColse(this.Cursor); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips(ccp.ReturnInfo); if (ccp.ReturnInfo.Equals(flag.Equals("0") ? "下发成功!" : "撤销成功!")) { Query(); } } private void ultraGrid1_ClickCellButton(object sender, CellEventArgs e) { UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; string proPlanId = row.Cells["ProPlanId"].Text.ToString() + "/" + row.Cells["GxPlanNo"].Text.ToString(); QueryJgOrder(proPlanId); foreach (UltraGridRow item in ultraGrid2.Rows) { if (item == null) return; if (item.Cells["ProPlanId"].Value.ToString().Equals(row.Cells["ProPlanId"].Text.ToString())) { item.Appearance.BackColor = Color.Wheat; item.Activate(); string wasteRate = "0"; if (!row.Cells["WasteRate"].Text.Equals("")) { wasteRate = row.Cells["WasteRate"].Value.ToString(); } item.Cells["XqJgNum"].Value = (int)Math.Ceiling((1 + double.Parse(wasteRate) / 10000) * int.Parse(item.Cells["ExpectNum"].Value.ToString())); } else { item.Appearance.ResetBackColor(); item.Cells["XqJgNum"].Value = "0"; } //item.Cells["CHC"].Value = false; } } private void ultraGrid2_AfterRowActivate_1(object sender, EventArgs e) { UltraGridRow row1 = ultraGrid2.ActiveRow; if (row1 == null) return; string proPlanId = row1.Cells["ProPlanId"].Text.ToString() + "/" + row1.Cells["GxPlanNo"].Text.ToString(); UltraGridRow row = ultraGrid1.ActiveRow; if (row == null) return; foreach (UltraGridRow item in ultraGrid1.Rows) { string proPlanId1 = item.Cells["ProPlanId"].Value.ToString() + "/" + item.Cells["GxPlanNo"].Value.ToString(); if (item == null) return; if (proPlanId1.Equals(proPlanId)) { item.Appearance.BackColor = Color.Wheat; item.Activate();} else { item.Appearance.ResetBackColor(); } //item.Cells["CHC"].Value = false; } } } }