using System; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; using System.Windows.Forms; using CoreFS.CA06; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.PlnSaleOrd.PlanStove.entity; using Core.StlMes.Client.PlnSaleOrd.PlanStove.Dlg; using Core.Mes.Client.Comm.Format; using Core.StlMes.Client.PlnSaleOrd.工序排产; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Comm.Server; namespace Core.StlMes.Client.PlnSaleOrd.PlanStove.frm { /// /// 镦拔扩炉计划 /// public partial class FrmPlanStovecs : FrmBase { private bool IsFirstTimeLoadTapZy = true; string login(CoreFS.SA06.CoreUserInfo userinfo) { UserInfo.GetDeptid(); return ""; } Boolean IsfirstLoad = true; public FrmPlanStovecs() { InitializeComponent(); } /// /// 重写父类窗体事件 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": if (this.ultraTabControl1.SelectedTab.Key == "orderzy") { queryAll(); } else { query_Tab2_ZY(); } break; case "Issue": ChangeStatus(1); break; case "Cancel": var rows = ultraGrid1.Rows.Where(c => !string.IsNullOrEmpty(c.Cells["ChooseMaterial"].Text)); foreach (Infragistics.Win.UltraWinGrid.UltraGridRow row in rows) { row.Cells["ChooseMaterial"].Value = ""; } ChangeStatus(0); break; case "Update": Update(); break; case "matsep": showMatSepDlg(); break; case "Delete": DeleteZY(); break; case "Close": this.Close(); break; } //base.ToolBar_Click(sender, ToolbarKey); } #region Grid控件数据初始化 private void Init_Comm() { //AddMateriaStatus(); //queryOrder(); CommHelper.SetGridColNoEdit(this.ultraGrid1.DisplayLayout.Bands[0], new string[] { "MaterialChoose" }); CommHelper.SetGridColNoEdit(this.ultraGrid2.DisplayLayout.Bands[0], new string[] { "ChooseZY" }); CommHelper.SetColumsHide(this.ultraGrid1.DisplayLayout.Bands[0], new List() { "InwlId", "OutwlId", "PlineCode" }); this.ultraGrid1.DisplayLayout.Bands[0].Columns["Mcount"].CellAppearance.BackColor = Color.Pink; this.ultraGrid1.DisplayLayout.Bands[0].Columns["Mstatus"].CellAppearance.BackColor = Color.Pink; this.ultraGrid1.DisplayLayout.Bands[0].Columns["GxProSeq"].Header.Caption = "生产顺序号"; this.ultraGrid1.DisplayLayout.Bands[0].Columns["OrderSource"].Header.Caption = "主合同来源"; this.ultraGrid1.DisplayLayout.Bands[0].Columns["ExeStatus"].Header.Caption = "执行状态"; if (CustomInfo != CustomInfoDef.DEFINE_CUSTOMER_JG) { this.ultraGrid2.DisplayLayout.Bands[0].Columns["Isendgx"].Header.Caption = "是否末工序"; } CommHelper.SetColumnAutoFitSize1(this.ultraGrid1.DisplayLayout.Bands[0]); CommHelper.SetColumnAutoFitSize1(this.ultraGrid2.DisplayLayout.Bands[0]); CommHelper.init_Zy_Col(this.ultraGrid2.DisplayLayout.Bands[0]); } private void init_DBK() { this.ultraGrid1.DataSource = this.plnOrderDbkSEntityBindingSource; this.ultraGrid2.DataSource = this.plnZyDbkMEntityBindingSource; this.ultraGrid1.DataBind(); this.ultraGrid2.DataBind(); AddMaterialChooseColumn(); AddZYChooseColumn(0); #region Excel2Code 2016/6/14 19:01:00 setColumnPosition("PlineName", 0); setColumnPosition("GxProSeq", 1); setColumnPosition("ProPlanId", 3); setColumnPosition("GxPlanNo", 4); setColumnPosition("ExeStatus", 5); setColumnPosition("Mcount", 6); setColumnPosition("Mstatus", 7); setColumnPosition("IsRepairPln", 8); setColumnPosition("RepairType", 9); setColumnPosition("WeigthS", 10); setColumnPosition("NumS", 11); setColumnPosition("PlanTimeB", 12); setColumnPosition("PlanTimeE", 13); setColumnPosition("InwlDesc", 14); setColumnPosition("OutwlDesc", 15); setColumnPosition("OrderSource", 16); setColumnPosition("OrderNo", 17); setColumnPosition("OrderSeq", 18); setColumnPosition("DeliveryNo", 19); setColumnPosition("Outdiameter", 20); setColumnPosition("Wallthick", 21); setColumnPosition("OutdiameterIn", 22); setColumnPosition("WallthickIn", 23); setColumnPosition("Aimwallthick", 24); setColumnPosition("Aimoutdiameter", 25); setColumnPosition("Aimlength", 26); setColumnPosition("Lengthdisc", 27); setColumnPosition("LengthIn", 28); setColumnPosition("LengthmaxIn", 29); setColumnPosition("LengthminIn", 30); setColumnPosition("LenCuthead", 31); setColumnPosition("LenCutend", 32); setColumnPosition("InWeightS", 33); setColumnPosition("InNumS", 34); setColumnPosition("MatchWtIn", 35); setColumnPosition("MatchNumIn", 36); setColumnPosition("IfMonitorDbk", 37); setColumnPosition("MonitorPoint", 38); setColumnPosition("PrdcrNo", 39); setColumnPosition("ProMonth", 40); setColumnPosition("PreviousGx", 41); setColumnPosition("PrevGxplanId", 42); setColumnPosition("CraftFileNo", 43); setColumnPosition("CraftSeq", 44); setColumnPosition("CraftFileMan", 45); setColumnPosition("StationRoad", 46); setColumnPosition("BatchedWt", 47); setColumnPosition("BatchedNum", 48); setColumnPosition("PlanGroupId", 49); setColumnPosition("ProOrderNo", 50); setColumnPosition("PlnDivideId", 51); setColumnPosition("Finishweight", 52); setColumnPosition("Finishnum", 53); setColumnPosition("ReqBlId", 54); setColumnPosition("Isendgx", 55); setColumnPosition("IsPlanOk", 56); setColumnPosition("AddWtIn", 57); setColumnPosition("AddNumIn", 58); setColumnPosition("ZyBatchId", 59); setColumnPosition("Cic", 60); setColumnPosition("Pic", 61); setColumnPosition("Sic", 62); setColumnPosition("Dic", 63); setColumnPosition("Wic", 64); setColumnPosition("Gic", 65); #endregion EntityHelper.ShowGridCaption(this.ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[0]); Init_Comm(); } private void setColumnPosition(string key, int position) { CommHelper.SetColumnPosition(this.ultraGrid1.DisplayLayout.Bands[0], key, position); } private void init_Tab2_ZY() { switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: this.ultraGrid3.DataSource = this.plnZyDbkMEntityBindingSource1; EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[0]); break; case CustomInfoDef.DEFINE_CUSTOMER_JG: this.ultraGrid3.DataSource = this.plnZyJgxMEntityBindingSource1; EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[1]); CommHelper.SetColumnAutoFitSize1(this.ultraGrid3.DisplayLayout.Bands[1]); break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: this.ultraGrid3.DataSource = this.plnZyRclMEntityBindingSource1; EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[0]); break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: this.ultraGrid3.DataSource = this.plnZyZgMEntityBindingSource1; EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid3.DisplayLayout.Bands[1]); CommHelper.SetColumnAutoFitSize1(this.ultraGrid3.DisplayLayout.Bands[1]); break; } CommHelper.init_Zy_Col(this.ultraGrid3.DisplayLayout.Bands[0]); } private void query_Tab2_ZY() { string PLINE = CB_2_PLINE.Checked ? (this.DDL_2_PLINE.Value==null?"":this.DDL_2_PLINE.Value.ToString()) : ""; string ORDERNO = CB_2_ORDERNO.Checked ? this.TB_2_ORDERNO.Text : ""; string CreateTimeFrom = CB_2_CREATETIME.Checked ? this.DATE_2_CREATETIME.DateTime.ToString() : ""; string CreateTimeTo = CB_2_CREATETIME.Checked ? this.DATE_2_CREATETIME_END.DateTime.ToString() : ""; string[] statusArr = new string[5] { "", "", "", "","" }; if (chc2status1.Checked) { statusArr[0] = "0"; } if (chc2status2.Checked) { statusArr[1] = "1"; } if (chc2status3.Checked) { statusArr[2] = "2"; } if (chc2status3.Checked) { statusArr[3] = "3"; } if (chc2status3.Checked) { statusArr[4] = "4"; } switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: var datasourcedbkM= EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] {SqlIDDef.PlanLuDBK.queryZYDBK,PLINE,CreateTimeFrom,CreateTimeTo,ORDERNO,statusArr }, this.ob); this.plnZyDbkMEntityBindingSource1.DataSource = datasourcedbkM; break; case CustomInfoDef.DEFINE_CUSTOMER_JG: var datasourcejgM= EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] {SqlIDDef.PlanLuJGX.queryZYJGXM,PLINE,CreateTimeFrom,CreateTimeTo,ORDERNO,statusArr }, this.ob); var datasourcejgC = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuJGX.queryZYJGXC}, this.ob); EntityHelper.AddEntityRelation(datasourcejgM, datasourcejgC, "HeatPlanNo", "HeatPlanNo"); this.ultraGrid3.DisplayLayout.Bands[0].RowLayoutStyle = RowLayoutStyle.GroupLayout; this.plnZyJgxMEntityBindingSource1.DataSource = datasourcejgM; break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: var datasourcerclM= EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] {SqlIDDef.PlanLuRCL.queryZyRCL,PLINE,CreateTimeFrom,CreateTimeTo,ORDERNO,statusArr }, this.ob); this.plnZyRclMEntityBindingSource1.DataSource = datasourcerclM; break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: var datasourcezgM= EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] {SqlIDDef.PlanLuZG.queryZYZGM,PLINE,CreateTimeFrom,CreateTimeTo,ORDERNO,statusArr }, this.ob); var datasourcezgC = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuZG.queryZYZGC }, this.ob); EntityHelper.AddEntityRelation(datasourcezgM, datasourcezgC, "HeatPlanNo", "HeatPlanNo"); this.ultraGrid3.DisplayLayout.Bands[0].RowLayoutStyle = RowLayoutStyle.GroupLayout; this.plnZyZgMEntityBindingSource1.DataSource = datasourcezgM; break; } if (IsFirstTimeLoadTapZy) { CommHelper.SetColumnAutoFitSize1(this.ultraGrid3.DisplayLayout.Bands[0]); IsFirstTimeLoadTapZy = false; } } private void init_RCL() { this.ultraGrid1.DataSource = this.plnOrderRclSEntityBindingSource; this.ultraGrid1.DataBind(); this.ultraGrid2.DataSource = this.plnZyRclMEntityBindingSource; this.ultraGrid2.DataBind(); AddMaterialChooseColumn(); AddZYChooseColumn(0); #region Excel2Code 2016/6/14 19:01:27 setColumnPosition("PlineName", 0); setColumnPosition("GxProSeq", 1); setColumnPosition("ProPlanId", 3); setColumnPosition("GxPlanNo", 4); setColumnPosition("IsRepairPln", 5); setColumnPosition("Mcount", 6); setColumnPosition("Mstatus", 7); setColumnPosition("RepairType", 8); setColumnPosition("ExeStatus", 9); setColumnPosition("WeigthS", 10); setColumnPosition("NumS", 11); setColumnPosition("PlanUsetime", 12); setColumnPosition("PlanTimeB", 13); setColumnPosition("PlanTimeE", 14); setColumnPosition("InwlDesc", 15); setColumnPosition("OutwlDesc", 16); setColumnPosition("OrderSource", 17); setColumnPosition("OrderNo", 18); setColumnPosition("OrderSeq", 19); setColumnPosition("DeliveryNo", 20); setColumnPosition("Steelname", 21); setColumnPosition("Wallthick", 22); setColumnPosition("Outdiameter", 23); setColumnPosition("Aimlength", 24); setColumnPosition("Gradename", 25); setColumnPosition("LengthmaxIn", 26); setColumnPosition("LengthminIn", 27); setColumnPosition("IfMonitorRcl", 28); setColumnPosition("MonitorPoint", 29); setColumnPosition("PrdcrNo", 30); setColumnPosition("ProMonth", 31); setColumnPosition("PreviousGx", 32); setColumnPosition("PrevGxPlanId", 33); setColumnPosition("CraftFileNo", 34); setColumnPosition("CraftFileMan", 35); setColumnPosition("CraftSeq", 36); setColumnPosition("Lengthdisc", 37); setColumnPosition("ProOrderNo", 38); setColumnPosition("Finishweight", 39); setColumnPosition("LengthIn", 40); setColumnPosition("InWeightS", 41); setColumnPosition("InNumS", 42); setColumnPosition("PlanGroupId", 43); setColumnPosition("PlnDivideId", 44); setColumnPosition("MatchWtIn", 45); setColumnPosition("ReqBlId", 46); setColumnPosition("MatchNumIn", 47); setColumnPosition("StationRoad", 48); setColumnPosition("BatchedWt", 49); setColumnPosition("BatchedNum", 50); setColumnPosition("Finishnum", 51); setColumnPosition("ZyBatchId", 52); setColumnPosition("Cic", 53); setColumnPosition("Pic", 54); setColumnPosition("Sic", 55); setColumnPosition("Dic", 56); setColumnPosition("Wic", 57); setColumnPosition("Gic", 58); #endregion EntityHelper.ShowGridCaption(this.ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[0]); Init_Comm(); } private void init_ZG() { this.ultraGrid1.DataSource = this.plnOrderZgSEntityBindingSource; this.ultraGrid1.DataBind(); this.ultraGrid2.DataSource = this.plnZyZgMEntityBindingSource; this.ultraGrid2.DataBind(); AddMaterialChooseColumn(); AddZYChooseColumn(1); EntityHelper.ShowGridCaption(this.ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[1]); #region Excel2Code 2016/6/14 19:02:19 setColumnPosition("PlineName", 0); setColumnPosition("GxProSeq", 1); setColumnPosition("ProPlanId", 3); setColumnPosition("GxPlanNo", 4); setColumnPosition("RepairType", 5); setColumnPosition("Mcount", 6); setColumnPosition("Mstatus", 7); setColumnPosition("IsRepairPln", 8); setColumnPosition("ExeStatus", 9); setColumnPosition("NumS", 10); setColumnPosition("WeigthS", 11); setColumnPosition("PlanUsetime", 12); setColumnPosition("PlanTimeB", 13); setColumnPosition("PlanTimeE", 14); setColumnPosition("InwlDesc", 15); setColumnPosition("OutwlDesc", 16); setColumnPosition("OrderSource", 17); setColumnPosition("OrderNo", 18); setColumnPosition("OrderSeq", 19); setColumnPosition("DeliveryNo", 20); setColumnPosition("Steelname", 21); setColumnPosition("Gradename", 22); setColumnPosition("Outdiameter", 23); setColumnPosition("Wallthick", 24); setColumnPosition("Aimwallthick", 25); setColumnPosition("Aimlength", 26); setColumnPosition("RollLength", 27); setColumnPosition("DiameterMandrel", 28); setColumnPosition("DiameterGp", 29); setColumnPosition("Lengthdisc", 30); setColumnPosition("LenRollMax", 31); setColumnPosition("LenRollMin", 32); setColumnPosition("Aimoutdiameter", 33); setColumnPosition("LenGpSingle", 34); setColumnPosition("Isendgx", 35); setColumnPosition("IfMonitorZg", 36); setColumnPosition("LenCuthead", 37); setColumnPosition("LenCutend", 38); setColumnPosition("OutnumCut", 39); setColumnPosition("PrdcrNo", 40); setColumnPosition("CraftFileNo", 41); setColumnPosition("MonitorPoint", 42); setColumnPosition("CraftSeq", 43); setColumnPosition("PassName", 44); setColumnPosition("CraftFileMan", 45); setColumnPosition("ReqBlId", 46); setColumnPosition("InNumS", 47); setColumnPosition("InWeightS", 48); setColumnPosition("PlanGroupId", 49); setColumnPosition("ProMonth", 50); setColumnPosition("AddWtIn", 51); setColumnPosition("AddNumIn", 52); setColumnPosition("MatchWtIn", 53); setColumnPosition("StationRoad", 54); setColumnPosition("BatchedNum", 55); setColumnPosition("Finishweight", 56); setColumnPosition("Finishnum", 57); setColumnPosition("IsPlanOk", 58); setColumnPosition("GpreqIfOk", 59); setColumnPosition("GpreqId", 60); setColumnPosition("ZyBatchId", 61); setColumnPosition("PlnDivideId", 62); setColumnPosition("Cic", 63); setColumnPosition("Pic", 64); setColumnPosition("Sic", 65); setColumnPosition("Dic", 66); setColumnPosition("Wic", 67); setColumnPosition("Gic", 68); #endregion Init_Comm(); CommHelper.SetGridColNoEdit(this.ultraGrid2.DisplayLayout.Bands[1], new String[] { }); } private void init_JGX() { this.ultraGrid1.DataSource = this.plnOrderJgxSEntityBindingSource; this.ultraGrid1.DataBind(); this.ultraGrid2.DataSource = this.plnZyJgxMEntityBindingSource; this.ultraGrid2.DataBind(); AddMaterialChooseColumn(); AddZYChooseColumn(1); EntityHelper.ShowGridCaption(this.ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(this.ultraGrid2.DisplayLayout.Bands[1]); #region Excel2Code 2016/6/14 19:01:47 setColumnPosition("PlineName", 0); setColumnPosition("GxProSeq", 1); setColumnPosition("ProPlanId", 3); setColumnPosition("GxplanNo", 4); setColumnPosition("IsRepair", 5); setColumnPosition("Mcount", 6); setColumnPosition("Mstatus", 7); setColumnPosition("RepairType", 8); setColumnPosition("ExeStatus", 9); setColumnPosition("NumS", 10); setColumnPosition("PlanUsetime", 11); setColumnPosition("PlanTimeB", 12); setColumnPosition("PlanTimeE", 13); setColumnPosition("InwlDesc", 14); setColumnPosition("OutwlDesc", 15); setColumnPosition("OrderSource", 16); setColumnPosition("OrderNo", 17); setColumnPosition("OrderSeq", 18); setColumnPosition("DeliveryNo", 19); setColumnPosition("Steelname", 20); setColumnPosition("ModelDesc", 21); setColumnPosition("Outdiameter", 22); setColumnPosition("Wallthick", 23); setColumnPosition("Aimwallthick", 24); setColumnPosition("Lengthmax", 25); setColumnPosition("Lengthmin", 26); setColumnPosition("Aimlength", 27); setColumnPosition("Lengthdisc", 28); setColumnPosition("ShrtLenRato", 29); setColumnPosition("LongLenRato", 30); setColumnPosition("Shortest", 31); setColumnPosition("Longest", 32); setColumnPosition("ShrtStove", 33); setColumnPosition("SiglLen", 34); setColumnPosition("AvgLenMin", 35); setColumnPosition("DifrncLenMax", 36); setColumnPosition("EndlenSpecstd", 37); setColumnPosition("LengthmaxIn", 38); setColumnPosition("LengthminIn", 39); setColumnPosition("IfMonitorJgx", 40); setColumnPosition("MonitorPoint", 41); setColumnPosition("PrdcrNo", 42); setColumnPosition("ProMonth", 43); setColumnPosition("PreviousGx", 44); setColumnPosition("PrevGxplanId", 45); setColumnPosition("CraftFileNo", 46); setColumnPosition("CraftFileMan", 47); setColumnPosition("CraftSeq", 48); setColumnPosition("InWeghtS", 49); setColumnPosition("InNumS", 50); setColumnPosition("LengthIn", 51); setColumnPosition("StationRoad", 52); setColumnPosition("BatchedNum", 53); setColumnPosition("BatchedWt", 54); setColumnPosition("Finishweight", 55); setColumnPosition("Finishnum", 56); setColumnPosition("IsPlanOk", 57); setColumnPosition("ZyBatchId", 58); setColumnPosition("MatchWtIn", 59); setColumnPosition("PlanGroupId", 60); setColumnPosition("PlnDivideId", 61); setColumnPosition("ReqBlId", 62); setColumnPosition("MatchNumIn", 63); setColumnPosition("Cic", 64); setColumnPosition("Pic", 65); setColumnPosition("Sic", 66); setColumnPosition("Dic", 67); setColumnPosition("Wic", 68); setColumnPosition("Gic", 69); #endregion Init_Comm(); CommHelper.SetGridColNoEdit(this.ultraGrid2.DisplayLayout.Bands[1], new String[] { }); } private void init_Control_Text(string strGxChinese) { CB_PLINE.Text = string.Format("{0}产线",strGxChinese); CB_ProPlanId.Text = string.Format("{0}订单编号",strGxChinese); this.Text = string.Format("{0}炉计划",strGxChinese); this.CB_2_PLINE.Text = string.Format("{0}产线", strGxChinese); } /// /// 往作业计划表中加入选择列,如果有子表,insertIndex应为1 /// /// private void AddZYChooseColumn(int insertIndex) { Infragistics.Win.UltraWinGrid.UltraGridColumn col = CommHelper.InsertColumn("ChooseZY","",this.ultraGrid2.DisplayLayout.Bands[0],insertIndex); col.DataType = typeof(bool); col.Style = Infragistics.Win.UltraWinGrid.ColumnStyle.CheckBox; col.CellAppearance.BackColor = Color.Yellow; col.Header.CheckBoxVisibility = Infragistics.Win.UltraWinGrid.HeaderCheckBoxVisibility.Always; } /// /// 订单时序表添加选择列 /// private void AddMaterialChooseColumn() { Infragistics.Win.UltraWinGrid.UltraGridColumn col = CommHelper.InsertColumn("ChooseMaterial", "物料选择", this.ultraGrid1.DisplayLayout.Bands[0], 2); col.Width = 150; col.DataType = typeof(Object); col.Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Button; col.CellAppearance.BackColor = Color.Yellow; col.CellButtonAppearance.BackColor = Color.Yellow; } private void AddMateriaStatus() { UltraGridColumn col = CommHelper.InsertColumn("Status","库存状态",this.ultraGrid1.DisplayLayout.Bands[0],6); col.CellAppearance.BackColor = Color.Pink; UltraGridColumn col1 = CommHelper.InsertColumn("Count", "库存行数", this.ultraGrid1.DisplayLayout.Bands[0], 7); col1.CellAppearance.BackColor = Color.Pink; } private void showMatSepDlg() { FrmMaterialSeparate frm = null; frm = new FrmMaterialSeparate(this.CustomInfo,this.ob,this.UserInfo.GetUserName()); frm.OnDataChange += frm_OnDataChange; frm.Show(); } void frm_OnDataChange() { queryAll(); //throw new NotImplementedException(); } private void Update() { var rows = this.ultraGrid2.Rows.Where(c => c.Cells["ChooseZY"].Text == "True"); if (rows.Count() != 1) { MessageUtil.ShowTips("未勾选作业计划,或者勾选了多条作业计划!"); return; } var row = rows.First(); FrmMaterialChoose frmmatchs=null; if (CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_DBK) { frmmatchs = new FrmMaterialChoose(this.ob, row.Cells["InwlId"].Text, row.Cells["ProPlanId"].Text, row.Cells["GxPlanNo"].Text, CustomInfo, row.Cells["HeatnoLast"].Text, row.Cells["ZgBatchNo"].Text, row.Cells["BatchGroudNo"].Text, row.Cells["HeatPlanNo"].Text, Convert.ToInt32(row.Cells["OutNum"].Text), row.Cells["Planstatus"].Text, UserInfo.GetUserName()); frmmatchs.OnDataChange += materialChoose_OnDataChange; } else if (CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_ZG) { frmmatchs = new FrmMaterialChoose(this.ob, row.Cells["InwlId"].Text, row.Cells["ProPlanId"].Text, row.Cells["GxPlanNo"].Text, CustomInfo, row.Cells["HeatnoLast"].Text, "", "", row.Cells["HeatPlanNo"].Text, Convert.ToInt32(row.Cells["PlanGpNum"].Value), row.Cells["Planstatus"].Text, UserInfo.GetUserName()); //throw new NotImplementedException(); } else { frmmatchs = new FrmMaterialChoose(this.ob, row.Cells["InwlId"].Text, row.Cells["ProPlanId"].Text, row.Cells["GxPlanNo"].Text, CustomInfo, row.Cells["HeatnoLast"].Text, row.Cells["LastBatchNo"].Text, row.Cells["BatchGroudNo"].Text, row.Cells["HeatPlanNo"].Text, Convert.ToInt32(row.Cells["OutNum"].Text), row.Cells["Planstatus"].Text, UserInfo.GetUserName()); frmmatchs.OnDataChange += materialChoose_OnDataChange; } frmmatchs.Show(); } #endregion #region 数据库操作 /// /// 删除炉计划 /// private void DeleteZY() { this.ultraGrid2.UpdateData(); //throw new NotImplementedException(); var rows = this.ultraGrid2.Rows.Where(c => c.Cells["ChooseZY"].Text == "True" && (c.Cells["Planstatus"].Text == "计划" || c.Cells["Planstatus"].Text == "下发")); if (rows.Count() <= 0) { MessageUtil.ShowTips("未勾选作业计划,或者所选作业计划的计划状态不为“计划”或“下发”!"); return; } string strMethod = MethodDef.MaterialChoose.UpdateMAT_ZC_M_BACK; string strSqlID_M_Back = SqlIDDef.MaterialChoose.updateMaterialBack; string strSqlID_ORDER_MATCH = ""; string strSqlID_Order_Wt_Num=""; string sqlDeleteZyM = ""; string sqlDeleteZyC = ""; string processcode = ""; string processdesc = ""; switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: processcode = "E"; processdesc = "镦拔扩"; strSqlID_Order_Wt_Num = SqlIDDef.PlanLuDBK.UpdateOrderDBK_WT_NUM; strSqlID_ORDER_MATCH = SqlIDDef.PlanLuDBK.UpdateOrderDBK_MATCH_WT_NUM; sqlDeleteZyM = SqlIDDef.PlanLuDBK.deleteZyDbkM; break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: processcode = "F"; processdesc = "热处理"; strSqlID_Order_Wt_Num = SqlIDDef.PlanLuRCL.UpdateRCLORDER_WT_NUM; strSqlID_ORDER_MATCH=SqlIDDef.PlanLuRCL.UpdateOrderRCL_MATCH_WT_NUM; sqlDeleteZyM = SqlIDDef.PlanLuRCL.deleteZyRclM; break; case CustomInfoDef.DEFINE_CUSTOMER_JG: processcode = "G"; processdesc = "加工线"; strSqlID_Order_Wt_Num = SqlIDDef.PlanLuJGX.UpdateOrderJGX_WT_NUM; strSqlID_ORDER_MATCH = SqlIDDef.PlanLuJGX.UpdateOrderJGX_MATCH_WT_NUM; sqlDeleteZyM = SqlIDDef.PlanLuJGX.deleteZyJgxM; sqlDeleteZyC = SqlIDDef.PlanLuJGX.deleteZyJgxC; break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: processcode = "D"; processdesc = "轧管"; strSqlID_Order_Wt_Num = SqlIDDef.PlanLuZG.UpdateOrderZG_WT_NUM; strSqlID_ORDER_MATCH = SqlIDDef.PlanLuZG.UpdateOrderZG_MATCH_WT_NUM; sqlDeleteZyM = SqlIDDef.PlanLuZG.deleteZyZgM; sqlDeleteZyC = SqlIDDef.PlanLuZG.deleteZyZgC; break; } if(CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_ZG) { strMethod = MethodDef.MaterialChoose.UpdateMAT_GP_M_BACK; strSqlID_M_Back = SqlIDDef.MaterialChoose.updateGPBack; } this.ultraGrid1.UpdateData(); List> Paramters = new List>(); List SqlIDs = new List(); var OrderRow = this.ultraGrid1.Rows.FirstOrDefault(e => e.Cells["ProPlanId"].Text == rows.First().Cells["ProPlanId"].Text && e.Cells["GxPlanNo"].Text == rows.First().Cells["GxPlanNo"].Text); if (OrderRow == null) { MessageUtil.ShowWarning("数据不匹配,无法根据工序订单号和工序排产序号找到对应的工序订单"); return; } int Batchednum = 0; double Batchedwt = 0; try { Batchedwt = Convert.ToDouble(OrderRow.Cells["BatchedWt"].Text); Batchednum = Convert.ToInt32(OrderRow.Cells["BatchedNum"].Text); } catch { } int matchnum = 0; double matchwt = 0; try { matchnum = Convert.ToInt32(OrderRow.Cells["MatchNumIn"].Value); matchwt = Convert.ToDouble(OrderRow.Cells["MatchWtIn"].Value); } catch { } string Message = ""; foreach (var row in rows) { DataTable dt = ServerHelper.GetData(MethodDef.StoveBase.queryPlanStatus, new Object[] { CommHelper.GetZYMtablename(CustomInfo),row.Cells["HeatPlanNo"].Text }, this.ob); if(dt.Rows.Count > 0) { if (dt.Rows[0][0].ToString().CompareTo("1") > 0) { Message += string.Format("执行删除动作时发现{0}计划状态已变更,本次删除将忽略该项计划。\r\n",row.Cells["HeatPlanNo"].Text); continue; } } else { Message += string.Format("未找到计划{0},可能已删除。\r\n", row.Cells["HeatPlanNo"].Text); } bool isMatMatch = false; string materialNo = row.Cells["InwlId"].Text; string stoveNo = row.Cells["HeatnoLast"].Text; string batchNo = ""; string batchGroupNo = ""; if (CustomInfo != CustomInfoDef.DEFINE_CUSTOMER_ZG) { batchNo= CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_DBK ? row.Cells["ZgBatchNo"].Text : row.Cells["LastBatchNo"].Text; batchGroupNo= row.Cells["BatchGroudNo"].Text; } string proPlanId = row.Cells["ProPlanId"].Text; string gxPlanNo = row.Cells["GxPlanNo"].Text; int outNum = 0; double outWt = 0; try { outNum = Convert.ToInt32(row.Cells["OutNum"].Text); outWt = Convert.ToDouble(row.Cells["OutWt"].Text); } catch { } Batchednum -= outNum; Batchedwt -= outWt; Batchedwt = Batchedwt < 0 ? 0 : Batchedwt; Batchednum = Batchednum < 0 ? 0 : Batchednum; //物料回退 if (CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_ZG) { //逐子表行回退物料 var zyzgcObjs = EntityHelper.GetData(MethodDef.StoveBase.queryZyC, new Object[] { SqlIDDef.PlanLuZG.queryZYZGC, row.Cells["HeatPlanNo"].Text }, this.ob); if (zyzgcObjs.Count > 0) { foreach (PlnZyZgCEntity zyzgc in zyzgcObjs) { SqlIDs.Add(strSqlID_M_Back);//row.Cells["InwlId"].Text Paramters.Add(new List() { materialNo, stoveNo, proPlanId, gxPlanNo, zyzgc.LengthGp, processcode, processdesc, processcode, zyzgc.InGpNum, UserInfo.GetUserName() }); } } } else { SqlIDs.Add(strSqlID_M_Back);//row.Cells["InwlId"].Text Paramters.Add(new List() { materialNo, stoveNo, gxPlanNo, batchNo, batchGroupNo, processcode, processdesc, proPlanId, processcode, row.Cells["InNum"].Text, 0, UserInfo.GetUserName() }); } //冲减炉计划已排量 SqlIDs.Add(strSqlID_Order_Wt_Num); Paramters.Add(new List() { Batchedwt.ToString(), Batchednum.ToString(), proPlanId, gxPlanNo }); // BaseEntityDAL.UpdateOrder_WT_NUM(GetOrdertableName(), wt.ToString(), num.ToString(), row.Cells["ProPlanId"].Text, row.Cells["GxPlanNo"].Text, this.ob); // ServerHelper.SetData(strMethod, new Object[] { processcode, processdesc, row.Cells["InwlId"].Text, row.Cells["HeatnoLast"].Text, row.Cells["OutNum"].Text, row.Cells["ProPlanId"].Text }, this.ob); int nLiku = DBComm.queryLockLiku(stoveNo, batchNo, batchGroupNo, proPlanId, gxPlanNo, this.ob); if (nLiku == 1) { isMatMatch = true; matchnum -= outNum; matchwt -= outWt; matchnum = matchnum < 0 ? 0 : matchnum; matchwt = matchwt < 0 ? 0 : matchwt; } else { isMatMatch = false; } //s删除作业计划 SqlIDs.Add(sqlDeleteZyM); Paramters.Add(new List() { row.Cells["HeatPlanNo"].Text }); if(CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_JG || CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_ZG) { SqlIDs.Add(sqlDeleteZyC); Paramters.Add(new List() { row.Cells["HeatPlanNo"].Text }); } //冲减投入利库量 if (isMatMatch) { SqlIDs.Add(strSqlID_ORDER_MATCH); Paramters.Add(new List() { matchwt, matchnum, proPlanId, gxPlanNo }); } Message += string.Format("操作成功{0}\r\n", row.Cells["HeatPlanNo"].Text); } MessageUtil.ShowError(Message); int nRet = ServerHelper.SetData(MethodDef.StoveBase.ExeTransction, new Object[] { SqlIDs, Paramters }, this.ob); if (nRet <= 0) { MessageUtil.ShowTips("执行失败"+"\r\n"); } queryAll(); } /// /// 下发或者取消下发 /// /// 1为下发,0为取消下发 private void ChangeStatus(int Status) { string strStatus = ""; this.ultraGrid2.UpdateData(); var rows = this.ultraGrid2.Rows.Where(c => c.Cells["ChooseZY"].Text == "True" ); if (rows.Count() <= 0) { return; } //var rows1 = from n in this.ultraGrid2.Rows where n.Cells["ChooseZY"].Text.Equals("True") select n; string Message = ""; foreach (var row in rows) { DataTable dt = ServerHelper.GetData(MethodDef.StoveBase.queryPlanStatus, new Object[] { CommHelper.GetZYMtablename(CustomInfo), row.Cells["HeatPlanNo"].Text }, this.ob); if (dt.Rows.Count <= 0) { Message += string.Format("计划{0}可能已被删除,请检查数据。\r\n", row.Cells["HeatPlanNo"].Text); } switch (Status) { case 1: strStatus = "下发"; if (!dt.Rows[0][0].ToString().Equals("0")) { Message += string.Format("{0}操作失败,下发的动作只针对计划状态的作业计划。\r\n", row.Cells["HeatPlanNo"].Text); continue; } break; case 0: strStatus = "计划"; if (!dt.Rows[0][0].ToString().Equals("1")) { Message += string.Format("{0}操作失败,取消下发的动作只针对下发状态的作业计划。\r\n", row.Cells["HeatPlanNo"].Text); continue; } break; case 2: strStatus = "生产中"; break; case 3: strStatus = "生产完成"; break; case 4: strStatus = "关闭A"; break; } if (row.Cells["Planstatus"].Text.Equals(strStatus)) { Message += string.Format("{0}操作失败,所选的计划无法进行状态变更,可能是因为执行的操作与状态冲突。\r\n", row.Cells["HeatPlanNo"].Text); continue; } int nret = BaseEntityDAL.UpdateZYPlanStatus(CommHelper.GetZYMtablename(CustomInfo), Status.ToString(), row.Cells["HeatPlanNo"].Text, this.UserInfo.GetUserName(), this.ob); Message += string.Format("{0}操作成功", row.Cells["HeatPlanNo"].Text); } MessageUtil.ShowError(Message); ultraGrid1_AfterRowActivate(null,null); } private void queryAll() { if (this.ultraTabControl1.SelectedTab.Key.Equals("orderzy")) { queryOrder(); } else { query_Tab2_ZY(); } } private void queryOrder() { string strPline = ""; string strCBOrdNo = ""; string strCBProPlanId = ""; if (this.CB_PLINE.Checked) { strPline = this.DDL_PLINE.Value == null ? "" : this.DDL_PLINE.Value.ToString(); } if (this.CB_Ord_No.Checked) { strCBOrdNo = this.TB_Ord_No.Text == null ? "" : this.TB_Ord_No.Text; } if (this.CB_ProPlanId.Checked) { strCBProPlanId = this.TB_ProPlanId.Text == null ? "" : this.TB_ProPlanId.Text; } string[] statusArr = new string[4] { "", "", "", "" }; if (chcStatus1.Checked) { statusArr[0] = chcStatus1.Text; } if (chcStatus2.Checked) { statusArr[1] = chcStatus2.Text; } if (chcStatus3.Checked) { statusArr[2] = chcStatus3.Text; } if (chcStatus4.Checked) { statusArr[3] = chcStatus4.Text; } switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: this.plnZyDbkMEntityBindingSource.Clear(); this.plnOrderDbkSEntityBindingSource.DataSource =DBComm.queryOrderDBK(strPline, strCBOrdNo, strCBProPlanId,"", statusArr,this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_JG: this.plnZyJgxMEntityBindingSource.Clear(); this.plnOrderJgxSEntityBindingSource.DataSource = DBComm.QueryOrderJG(strPline, strCBOrdNo, strCBProPlanId, "", statusArr, this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: this.plnZyRclMEntityBindingSource.Clear(); this.plnOrderRclSEntityBindingSource.DataSource = DBComm.QueryOrderRCL(strPline, strCBOrdNo, strCBProPlanId, "", statusArr, this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: this.plnZyZgMEntityBindingSource.Clear(); this.plnOrderZgSEntityBindingSource.DataSource = DBComm.QueryOrderZG(strPline, strCBOrdNo, strCBProPlanId, "", statusArr, this.ob); break; } } private void queryZy(string Pro_Plan_ID, string Gx_Plan_No) { switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: queryZYDBK(Pro_Plan_ID, Gx_Plan_No); break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: QueryZyRCL(Pro_Plan_ID, Gx_Plan_No); break; case CustomInfoDef.DEFINE_CUSTOMER_JG: QueryZyJG(Pro_Plan_ID, Gx_Plan_No); break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: QueryZyZG(Pro_Plan_ID, Gx_Plan_No); break; } } /// /// 查询镦拔扩作业计划(炉计划)表,并将其内容绑定到grid2 /// private DataSourceList queryZYDBK(string Pro_Plan_ID,string Gx_Plan_No) { var datasource = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new object[] { SqlIDDef.PlanLuDBK.queryZYDBK,Pro_Plan_ID,Gx_Plan_No}, this.ob); this.plnZyDbkMEntityBindingSource.DataSource = datasource; return datasource; } private DataSourceList QueryZyRCL(string Pro_Plan_ID, string Gx_Plan_No) { var datasource = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuRCL.queryZyRCL, Pro_Plan_ID, Gx_Plan_No }, this.ob); this.plnZyRclMEntityBindingSource.DataSource = datasource; return datasource; } private DataSourceList QueryZyZG(string Pro_Plan_ID, string Gx_Plan_No) { DataSourceList datasourceM = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new object[] { SqlIDDef.PlanLuZG.queryZYZGM, Pro_Plan_ID, Gx_Plan_No }, this.ob); DataSourceList datasourceC = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuZG.queryZYZGC }, this.ob); EntityHelper.AddEntityRelation(datasourceM, datasourceC, "HeatPlanNo", "HeatPlanNo"); this.plnZyZgMEntityBindingSource.DataSource = datasourceM; this.plnZyZgCEntityBindingSource.DataSource = datasourceC; this.ultraGrid2.DisplayLayout.Bands[0].RowLayoutStyle = RowLayoutStyle.GroupLayout; return datasourceM; //throw new NotImplementedException(); } private DataSourceList QueryZyJG(string Pro_Plan_ID, string Gx_Plan_No) { DataSourceList datasourceM = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuJGX.queryZYJGXM, Pro_Plan_ID, Gx_Plan_No }, this.ob); DataSourceList datasourceC = EntityHelper.GetData(MethodDef.StoveBase.queryZy, new Object[] { SqlIDDef.PlanLuJGX.queryZYJGXC }, this.ob); EntityHelper.AddEntityRelation(datasourceM, datasourceC, "HeatPlanNo", "HeatPlanNo"); this.plnZyJgxMEntityBindingSource.DataSource = datasourceM; this.plnZyJgxCEntityBindingSource.DataSource = datasourceC; this.ultraGrid2.DisplayLayout.Bands[0].RowLayoutStyle = RowLayoutStyle.GroupLayout; return datasourceM; } /// /// 泛型的更新数据行的方法,理论上可以执行插入,更新,删除,未测试,该方法 暂时废弃 /// /// /// /// /// /// private int UpdateRows(T obj,string sqlID,string javaEntityMethodID,List paramList) { int nret = 0; string jsonObj = JSONFormat.Format(obj); nret = Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.StoveBase.ExcuteNonQuery , new Object[] { jsonObj, sqlID, javaEntityMethodID, paramList }, this.ob); return nret; } /// /// 向镦拔扩作业计划表插入数据 /// /// 镦拔扩作业计划实体类的对象 /// 操作结果 private int insertZYDBK(PlnZyDbkMEntity plnzydbk) { string jsonObj = JSONFormat.Format(plnzydbk); return Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.StoveBase.addNewRow, new object[] { jsonObj, SqlIDDef.PlanLuDBK.insertZYDBK, ClassDef.PlnZyDbkMEntity }, this.ob); } /// /// 向热处理作业计划表中插入数据 /// /// /// private int InsertZYRCL(PlnZyRclMEntity plnzyrcl) { string jsonObj = JSONFormat.Format(plnzyrcl); return Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.StoveBase.addNewRow, new Object[] { jsonObj, SqlIDDef.PlanLuRCL.AddNewRows, ClassDef.PlnZyRclMEntity }, this.ob); } /// /// 更新拔扩订单排产顺序耗时表的炉计划排产重量和排产支数 /// /// 已经更新过排产重量和排产支数的炉计划实体类对象 /// private int UpdateOrderDBK_WT_NUM(PlnOrderDbkSEntity plnOrderDBK) { return Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.PlanLuDBK.UpdateOrderDBK_WT_NUM, new object[] { plnOrderDBK.BatchedWt.ToString(), plnOrderDBK.BatchedNum.ToString(), plnOrderDBK.ProPlanId.ToString(), plnOrderDBK.GxPlanNo.ToString() }, this.ob); } private int UpdateOrderRCL_WT_NUM(PlnOrderRclSEntity plnOrderRcl) { try { BaseEntityDAL.UpdateOrder_WT_NUM("PLN_ORDER_RCL_S", plnOrderRcl.BatchedWt.ToString(), plnOrderRcl.BatchedNum.ToString(), plnOrderRcl.ProPlanId.ToString(), plnOrderRcl.GxPlanNo.ToString(), this.ob); return 0; } catch { return -1; } } /// /// 通过实体类更新镦拔扩时序表 /// /// /// private int UpdateOrderDBK_WT_NUM_Entity(PlnOrderDbkSEntity plnOrderDBK) { string JsonObj = JSONFormat.Format(plnOrderDBK); return Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.PlanLuDBK.UpdateOrderDBK_WT_NUM, new object[] { JsonObj, new List() { plnOrderDBK.ProPlanId.ToString(), plnOrderDBK.GxPlanNo.ToString() } }, this.ob); } /// /// 更新镦拔扩时序表 /// /// /// private int UpdateRows(PlnOrderDbkSEntity plnOrderDBK) { return BaseEntityDAL.ExcuteNonQuery(plnOrderDBK,SqlIDDef.StoveBase.UpdateOrderRows, ClassDef.PlnOrderDbkSEntity, new List() { plnOrderDBK.ProPlanId.ToString(), plnOrderDBK.GxPlanNo.ToString() },this.ob); } private DataTable GetMaterialInfo(UltraGridRow Row) { DataTable dt = new DataTable(); if (CustomInfo == CustomInfoDef.DEFINE_CUSTOMER_ZG) { dt = Core.Mes.Client.Comm.Server.ServerHelper.GetData(MethodDef.MaterialChoose.getGPInfo, new Object[] { Row.Cells["InwlId"].Value.ToString() }, this.ob); } else { dt = Core.Mes.Client.Comm.Server.ServerHelper.GetData(MethodDef.MaterialChoose.getMaterialInfo, new Object[] { Row.Cells["InwlId"].Value.ToString() }, this.ob); } return dt; } /// /// 根据物料编码更新MAT_ZC_M表的前Usercount条数据的Process_Code和Process_DESC /// /// /// /// /// /// private int UpdateMAT_ZC_M(String PROCESS_CDOE, String PROCESS_DESC, String MATERIAL_NO,String JUDGE_STOVE_NO, int USERCOUNT,string PRO_ORDER_ID) { int nret = 0; nret = Core.Mes.Client.Comm.Server.ServerHelper.SetData(MethodDef.MaterialChoose.UpdateMAT_ZC_M, new Object[] { PROCESS_CDOE, PROCESS_DESC, MATERIAL_NO, JUDGE_STOVE_NO, USERCOUNT,PRO_ORDER_ID }, this.ob); return nret; } #endregion #region 控件事件 /// /// 窗体加载事件 /// /// /// private void FrmPlanStovecs_Load(object sender, EventArgs e) { // this.ultraGrid1.ClickCellButton+=ultraGrid1_ClickCellButton; // this.ultraGrid1.AfterRowActivate+= ultraGrid1_AfterRowActivate; this.DDL_PLINE.ValueChanged += chcStatus1_CheckedChanged; this.chcStatus2.CheckedChanged += chcStatus1_CheckedChanged; this.chcStatus3.CheckedChanged += chcStatus1_CheckedChanged; this.chcStatus4.CheckedChanged += chcStatus1_CheckedChanged; this.CB_PLINE.CheckedChanged += chcStatus1_CheckedChanged; this.ultraGrid2.AfterHeaderCheckStateChanged +=ultraGrid2_AfterHeaderCheckStateChanged; this.ultraGrid2.CellChange +=ultraGrid2_CellChange; this.IsLoadUserView = true; this.DATE_2_CREATETIME.DateTime = DateTime.Now.AddDays(-1); this.DATE_2_CREATETIME_END.DateTime = DateTime.Now; this.CB_2_PLINE.CheckedChanged += DDL_2_PLINE_ValueChanged; this.chc2status1.CheckedChanged += DDL_2_PLINE_ValueChanged; this.chc2status2.CheckedChanged += DDL_2_PLINE_ValueChanged; this.chc2status3.CheckedChanged += DDL_2_PLINE_ValueChanged; switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: init_DBK(); init_Control_Text("镦拔扩"); PlanHelper.InitDropPline("E","",this.DDL_PLINE,this.ob); PlanHelper.InitDropPline("E","",this.DDL_2_PLINE,this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: init_RCL(); init_Control_Text("热处理"); PlanHelper.InitDropPline("F", "", this.DDL_PLINE, this.ob); PlanHelper.InitDropPline("F", "", this.DDL_2_PLINE, this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_JG: init_Control_Text("加工线"); init_JGX(); PlanHelper.InitDropPline("G", "", this.DDL_PLINE, this.ob); PlanHelper.InitDropPline("G", "", this.DDL_2_PLINE, this.ob); break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: init_ZG(); init_Control_Text("轧管"); PlanHelper.InitDropPline("D", "", this.DDL_PLINE, this.ob); PlanHelper.InitDropPline("D", "", this.DDL_2_PLINE, this.ob); break; } } /// /// grid1的单元格单击事件方法,主要是弹出物料选择框,并且从数据库获取该单元格对应的行的物料信息,以及grid1的单元格事件,传入物料选择框 /// /// /// private void ultraGrid1_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { this.ultraGrid1.UpdateData(); if (!e.Cell.Row.Cells["ExeStatus"].Text.Equals("计划") && !e.Cell.Row.Cells["ExeStatus"].Text.Equals("生产中")) { MessageUtil.ShowTips("只有执行状态为计划或生产中的订单才能选择物料!"); return; } DataTable dt = DBComm.queryMaterial(e.Cell.Row.Cells["InwlId"].Value.ToString(),CustomInfo,this.ob); if (dt.Rows.Count > 0) { FrmMaterialChoose materialChoose; switch (CustomInfo) { case CustomInfoDef.DEFINE_CUSTOMER_DBK: PlnOrderDbkSEntity _orderdbk = (PlnOrderDbkSEntity)e.Cell.Row.ListObject; materialChoose = new FrmMaterialChoose(this.ob, _orderdbk.InwlId.ToString(),_orderdbk.ProPlanId.ToString(),_orderdbk.GxPlanNo.ToString(),CustomInfo,UserInfo.GetUserName()); materialChoose.OnDataChange+=materialChoose_OnDataChange; materialChoose.Show(); break; case CustomInfoDef.DEFINE_CUSTOMER_RCL: PlnOrderRclSEntity _orderrcl = (PlnOrderRclSEntity)e.Cell.Row.ListObject; materialChoose = new FrmMaterialChoose(this.ob, _orderrcl.InwlId.ToString(), _orderrcl.ProPlanId.ToString(), _orderrcl.GxPlanNo.ToString(), CustomInfo, UserInfo.GetUserName()); materialChoose.OnDataChange += materialChoose_OnDataChange; materialChoose.Show(); break; case CustomInfoDef.DEFINE_CUSTOMER_JG: PlnOrderJgxSEntity _orderjgx = (PlnOrderJgxSEntity)e.Cell.Row.ListObject; materialChoose = new FrmMaterialChoose(this.ob, _orderjgx.InwlId.ToString(), _orderjgx.ProPlanId.ToString(), _orderjgx.GxPlanNo.ToString(), CustomInfo, UserInfo.GetUserName()); materialChoose.OnDataChange += materialChoose_OnDataChange; materialChoose.Show(); break; case CustomInfoDef.DEFINE_CUSTOMER_ZG: PlnOrderZgSEntity _orderzg = (PlnOrderZgSEntity)e.Cell.Row.ListObject; materialChoose = new FrmMaterialChoose(this.ob, _orderzg.InwlId.ToString(), _orderzg.ProPlanId.ToString(), _orderzg.GxPlanNo.ToString(), CustomInfo, UserInfo.GetUserName()); materialChoose.OnDataChange += materialChoose_OnDataChange; materialChoose.Show(); break; } } else { Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("没有对应的物料可供选择!"); } } void materialChoose_OnDataChange() { queryAll(); //throw new NotImplementedException(); } /// /// grid1的行激活事件,行激活时,会去grid2里去查询相同的订单编号和订单排产序号的行,并把它们的颜色标粉 /// /// /// private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { this.ultraGrid1.UpdateData(); queryZy(this.ultraGrid1.ActiveRow.Cells["ProPlanId"].Text, this.ultraGrid1.ActiveRow.Cells["GxPlanNo"].Text); } private void ultraGrid2_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { this.ultraGrid2.UpdateData(); if (e.Cell.Column.Key == "ChooseZY" && e.Cell.Value.ToString() == "True") { var rows = this.ultraGrid2.Rows.Where(c => c.Cells["ChooseZY"].Text == "True"); foreach (var row in rows) { if (row.Cells["Planstatus"].Text != e.Cell.Row.Cells["Planstatus"].Text) { MessageUtil.ShowWarning("请勾选选择状态一致的行"); e.Cell.Value = false; break; } } } } private void ultraGrid2_AfterHeaderCheckStateChanged(object sender, Infragistics.Win.UltraWinGrid.AfterHeaderCheckStateChangedEventArgs e) { this.ultraGrid2.UpdateData(); if (this.ultraGrid2.Rows.Count > 0 && e.Column.GetHeaderCheckedState(e.Rows)==CheckState.Checked) { string strPlnstatus = this.ultraGrid2.Rows[0].Cells["Planstatus"].Text; foreach (var row in this.ultraGrid2.Rows) { if (!row.Cells["Planstatus"].Text.Equals(strPlnstatus)) { row.Selected = true; row.Activated = true; e.Column.SetHeaderCheckedState(e.Rows, false); MessageUtil.ShowWarning("存在状态不一样的行,无法执行多选"); break; } } } } private void chcStatus1_CheckedChanged(object sender, EventArgs e) { queryOrder(); } private void CB_PLINE_CheckedChanged(object sender, EventArgs e) { if (this.CB_PLINE.Checked) { this.DDL_PLINE.Enabled = true; } else { this.DDL_PLINE.Enabled = false; } } private void CB_ProPlanId_CheckedChanged(object sender, EventArgs e) { if (this.CB_ProPlanId.Checked) { this.TB_ProPlanId.Enabled = true; } else { this.TB_ProPlanId.Enabled = false; } } private void CB_Ord_No_CheckedChanged(object sender, EventArgs e) { if (this.CB_Ord_No.Enabled) { this.TB_Ord_No.Enabled = true; } else { this.TB_Ord_No.Enabled = false; } } private void CB_2_CREATETIME_CheckedChanged(object sender, EventArgs e) { if (CB_2_CREATETIME.Checked) { this.DATE_2_CREATETIME.Enabled = true; this.DATE_2_CREATETIME_END.Enabled = true; } else { this.DATE_2_CREATETIME.Enabled = false; this.DATE_2_CREATETIME_END.Enabled = false; } } private void CB_2_ORDERNO_CheckedChanged(object sender, EventArgs e) { if (CB_2_ORDERNO.Checked) { this.TB_2_ORDERNO.Enabled = true; } else { this.TB_2_ORDERNO.Enabled = false; } } private void CB_2_PLINE_CheckedChanged(object sender, EventArgs e) { if (CB_2_PLINE.Checked) { this.DDL_2_PLINE.Enabled = true; } else { this.DDL_2_PLINE.Enabled = false; } } private void DATE_2_CREATETIME_ValueChanged(object sender, EventArgs e) { if (DATE_2_CREATETIME.DateTime >= DATE_2_CREATETIME_END.DateTime) { DATE_2_CREATETIME.DateTime = DATE_2_CREATETIME_END.DateTime.AddDays(-1); } } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (e.Tab.Key == "queryzy") { this.toolMenu.Tools["Issue"].SharedProps.Visible = false; this.toolMenu.Tools["Cancel"].SharedProps.Visible = false; this.toolMenu.Tools["Delete"].SharedProps.Visible = false; this.toolMenu.Tools["Update"].SharedProps.Visible = false; } else if (e.Tab.Key == "orderzy" && !IsfirstLoad) { this.toolMenu.Tools["Issue"].SharedProps.Visible = true; this.toolMenu.Tools["Cancel"].SharedProps.Visible = true; this.toolMenu.Tools["Delete"].SharedProps.Visible = true; this.toolMenu.Tools["Update"].SharedProps.Visible = true; } if (e.Tab.Key == "queryzy" && IsfirstLoad) { init_Tab2_ZY(); IsfirstLoad = false; } } private void DDL_PLINE_ValueChanged(object sender, EventArgs e) { } private void DDL_2_PLINE_ValueChanged(object sender, EventArgs e) { query_Tab2_ZY(); } #endregion } }