using System; using System.Collections.Generic; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Common; namespace Core.LgMes.Client.LgIntegrationQuery { public partial class frmStationconMateriel : Core.Mes.Client.Common.frmStyleBase { string strMess = ""; public frmStationconMateriel() { InitializeComponent(); } #region "Function" private void QueryData() { dataTable1.Clear(); string szWhere = ""; if (this.radHJ.Checked == true) { szWhere = radHJ.Tag.ToString(); } else if (this.radFL.Checked == true) { szWhere = radFL.Tag.ToString(); } else if (this.radWS.Checked == true) { szWhere = radWS.Tag.ToString(); } else if (this.radBHZ.Checked == true) { szWhere = radBHZ.Tag.ToString(); } else if (this.radAllType.Checked == true) { szWhere = ""; } GetDataSource(szWhere); JJBStaticFunction.SetRowEdit(ultraGrid1); ultraGrid1.DisplayLayout.Bands[0].Columns["ERPITEMCODE"].Header.VisiblePosition = 1; GetStationconMateriel(); } /// /// 物料类型 /// /// private void SetColumnMode3( Infragistics.Win.UltraWinGrid.UltraGrid ultGrid ) { DataTable dt = new DataTable(); dt.TableName = "WLLX"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "HJ"; dr["BCNA"] = "合金"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "FL"; dr["BCNA"] = "辅料"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "WS"; dr["BCNA"] = "喂线"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "BH"; dr["BCNA"] = "保护渣"; dt.Rows.Add(dr); JJBStaticFunction.SetGridDropDownList("MATERIELTYPE", "Table1", "物料类型名称", 90, ultGrid, dt, "BCBM", "BCNA"); } /// /// 岗位 /// /// private void SetColumnMode(Infragistics.Win.UltraWinGrid.UltraGrid ultGrid) { DataTable dt = new DataTable(); dt.TableName = "WLLX"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "HMP"; dr["BCNA"] = "铁水预处理"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "BOF"; dr["BCNA"] = "转炉"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "CAS"; dr["BCNA"] = "吹氩站"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "LFS"; dr["BCNA"] = "精炼炉"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "RHS"; dr["BCNA"] = "RH炉"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "CCM"; dr["BCNA"] = "连铸机"; dt.Rows.Add(dr); JJBStaticFunction.SetGridDropDownList("CRAFTPOSID", "Table1", "岗位", 130, ultGrid, dt, "BCBM", "BCNA"); } /// /// 保存物料信息 /// private void SaveData() { try { string strCposid =""; string strMcode = ""; string strMtype = ""; string strMname = ""; string strMShort = ""; string strErr = ""; DataSet ds = null; string strCraftPosID = ""; bool blValue = false; if (ultraGrid1.Rows.Count > 0) { if (rdbHmp.Checked) strCraftPosID = "HMP"; if (rdbBOF.Checked) strCraftPosID = "BOF"; if (rdbCAS.Checked) strCraftPosID = "CAS"; if (rdbLFS.Checked) strCraftPosID = "LFS"; if (rdbRHS.Checked) strCraftPosID = "RHS"; if (rdbVDS.Checked) strCraftPosID = "VDS"; if (rdbCCM.Checked) strCraftPosID = "CCM"; DataTable dtAdd = new DataTable(); dtAdd.Columns.Add("CRAFTPOSID"); dtAdd.Columns.Add("MATERIELCODE"); dtAdd.Columns.Add("MATERIELTYPE"); dtAdd.Columns.Add("MATERIELNAME"); for (int i = 0; i < ultraGrid1.Rows.Count; i++) { if (Convert.ToBoolean(ultraGrid1.Rows[i].Cells["Flag"].Value) == true) { dtAdd.Rows.Add(new object[] { strCraftPosID, ultraGrid1.Rows[i].Cells["MATERIELCODE"].Value, ultraGrid1.Rows[i].Cells["MATERIELTYPE"].Value,ultraGrid1.Rows[i].Cells["MATERIELNAME"].Value }); blValue = true; ultraGrid1.Rows[i].Cells["Flag"].Value = false; } } if (blValue == false) { MessageBox.Show("没有为岗位选择物料!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return; } for (int i = 0; i < dtAdd.Rows.Count;i++ ) { strCposid =dtAdd.Rows[i]["CRAFTPOSID"].ToString(); strMcode = dtAdd.Rows[i]["MATERIELCODE"].ToString(); strMtype = dtAdd.Rows[i]["MATERIELTYPE"].ToString(); strMname = dtAdd.Rows[i]["MATERIELNAME"].ToString(); strMShort= dtAdd.Rows[i]["MATERIELNAME"].ToString(); //定义一个ArrayList集合存储变量[参数]值 ArrayList arry = new ArrayList(); arry.Add("frmSMateriel_AddPInfo.select"); arry.Add(strCposid); arry.Add(strMcode); arry.Add(strMtype); arry.Add(strMname); arry.Add(strMname); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBSave", "doSimpleSave", arry, out strErr); } if (strErr == "" && ds != null) { GetStationconMateriel(); MessageBox.Show("岗位物料配置成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show("保存失败!输入物料已经存在或数据无效。", "错误"); } } } catch (System.Exception ex) { Console.WriteLine(ex.ToString()); } } #endregion #region "Member Variable" /// /// 获取物料 /// /// private void GetDataSource(string strMType) { string strErr = ""; //定义一个ArrayList集合存储变量[参数]值 ArrayList arry = new ArrayList(); arry.Add("frmStoresProject.select"); arry.Add(strMType); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr); if (strErr == "" && ds != null) { int i; for (i = 0; i < ds.Tables[0].Rows.Count; i++) { DataRow dr = dataTable1.NewRow(); dr["Flag"] = false; dr["MaterielCode"] = ds.Tables[0].Rows[i]["MaterielCode"].ToString(); dr["MaterielName"] = ds.Tables[0].Rows[i]["MaterielName"].ToString(); dr["MaterielforShort"] = ds.Tables[0].Rows[i]["MaterielforShort"].ToString(); dr["MaterielType"] = ds.Tables[0].Rows[i]["MaterielType"].ToString(); dr["MaterielUnits"] = ds.Tables[0].Rows[i]["MaterielUnits"].ToString(); dr["JmType"] = ds.Tables[0].Rows[i]["JmType"].ToString(); //dr["ERPITEMCODE"] = dw.Rows[i]["ERPITEMCODE"]; dataTable1.Rows.Add(dr); } } } /// /// 获取岗位对应物料 /// private void GetStationconMateriel() { string strErr = ""; string strCPosid = ""; string strMType = ""; dataSet2.Tables[0].Clear(); if (this.rdbHmp.Checked == true) { strCPosid = rdbHmp.Tag.ToString(); } else if (this.rdbBOF.Checked == true) { strCPosid = rdbBOF.Tag.ToString(); } else if (this.rdbCAS.Checked == true) { strCPosid = rdbCAS.Tag.ToString(); } else if (this.rdbLFS.Checked == true) { strCPosid = rdbLFS.Tag.ToString(); } else if (this.rdbRHS.Checked == true) { strCPosid = rdbRHS.Tag.ToString(); } else if(this.rdbVDS.Checked==true) { strCPosid = rdbVDS.Tag.ToString(); } else if (this.rdbCCM.Checked == true) { strCPosid = rdbCCM.Tag.ToString(); } if (this.radHJ.Checked == true) { strMType = radHJ.Tag.ToString(); } else if (this.radFL.Checked == true) { strMType = radFL.Tag.ToString(); } else if (this.radWS.Checked == true) { strMType = radWS.Tag.ToString(); } else if (this.radBHZ.Checked == true) { strMType = radBHZ.Tag.ToString(); } //定义一个ArrayList集合存储变量[参数]值 ArrayList arry = new ArrayList(); arry.Add("frmStationconMateriel.select"); arry.Add(strCPosid); arry.Add(strMType); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr); if (strErr == "" && ds != null) { int i; for (i = 0; i < ds.Tables[0].Rows.Count; i++) { DataRow dr = dataSet2.Tables[0].NewRow(); dr["CRAFTPOSID"] = ds.Tables[0].Rows[i]["CRAFTPOSID"].ToString(); dr["MATERIELCODE"] = ds.Tables[0].Rows[i]["MATERIELCODE"].ToString(); dr["MATERIELTYPE"] = ds.Tables[0].Rows[i]["MATERIELTYPE"].ToString(); dr["MATERIELNAME"] = ds.Tables[0].Rows[i]["MATERIELNAME"].ToString(); dataSet2.Tables[0].Rows.Add(dr); } JJBStaticFunction.SetRowEdit(ultraGrid2); SetExistMaintenanceColor(); } } /// /// 删除岗位对应物料 /// private void DeleteMaintenance() { string strCraftposID = ""; string strMaterielCode = ""; string strErr = ""; if (ultraGrid2.ActiveRow != null) { strCraftposID = ultraGrid2.ActiveRow.Cells["CraftposID"].Value.ToString(); strMaterielCode = ultraGrid2.ActiveRow.Cells["MaterielCode"].Value.ToString(); //定义一个ArrayList集合存储变量[参数]值 ArrayList arry = new ArrayList(); arry.Add("frmSMateriel_DelPInfo.select"); arry.Add(strCraftposID); arry.Add(strMaterielCode); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBSave", "doSimpleSave", arry, out strErr); if (strErr == "" && ds != null) { MessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); GetStationconMateriel(); } else { MessageBox.Show("删除失败,请重新操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } else MessageBox.Show("请在右边岗位与物料对应列表选择要删除的记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } /// /// 标识已经配置的物料 /// private void SetExistMaintenanceColor() { for (int j = 0; j < ultraGrid1.Rows.Count; j++) { ultraGrid1.DisplayLayout.Rows[j].CellAppearance.ForeColor = Color.Black; } foreach (DataRow dr in dataSet2.Tables[0].Rows) { for (int i = 0; i < ultraGrid1.Rows.Count; i++) { if (dr["MATERIELCODE"].ToString() == ultraGrid1.Rows[i].Cells["MATERIELCODE"].Value.ToString()) { ultraGrid1.DisplayLayout.Rows[i].CellAppearance.ForeColor = Color.Red; } } } } private void radHJ_CheckedChanged(object sender, EventArgs e) { if (this.radHJ.Checked == true) { this.radAllType.Checked = false; this.radFL.Checked = false; this.radWS.Checked = false; this.radBHZ.Checked = false; } string szWhere = radHJ.Tag.ToString(); QueryData(); } private void radFL_CheckedChanged(object sender, EventArgs e) { if (this.radFL.Checked == true) { this.radHJ.Checked = false; this.radAllType.Checked = false; this.radWS.Checked = false; this.radBHZ.Checked = false; } string szWhere = radFL.Tag.ToString(); QueryData(); } private void radWS_CheckedChanged(object sender, EventArgs e) { if (this.radWS.Checked == true) { this.radHJ.Checked = false; this.radFL.Checked = false; this.radAllType.Checked = false; this.radBHZ.Checked = false; } string szWhere = radWS.Tag.ToString(); QueryData(); } private void radAllType_CheckedChanged(object sender, EventArgs e) { if (this.radAllType.Checked == true) { this.radHJ.Checked = false; this.radFL.Checked = false; this.radWS.Checked = false; this.radBHZ.Checked = false; } QueryData(); } #endregion public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Add": SaveData(); break; case "Delete": if ((MessageBox.Show("确认要删除所选记录!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk)) == DialogResult.Yes) { DeleteMaintenance(); } break; //"See": case "Query": GetStationconMateriel(); break; case "Exit": this.Close(); break; default: break; } } private void radBHZ_CheckedChanged(object sender, EventArgs e) { if (this.radBHZ.Checked == true) { this.radHJ.Checked = false; this.radFL.Checked = false; this.radWS.Checked = false; this.radAllType.Checked = false; } QueryData(); } private void frmStationconMateriel_Load(object sender, EventArgs e) { QueryData(); SetColumnMode3(ultraGrid1); GetStationconMateriel(); SetColumnMode3(ultraGrid2); SetColumnMode(ultraGrid2); } private void rdbHmp_CheckedChanged(object sender, EventArgs e) { GetStationconMateriel(); } private void ultraGrid1_AfterCellActivate(object sender, EventArgs e) { if (ultraGrid1.ActiveRow != null) { if (ultraGrid1.ActiveRow.CellAppearance.ForeColor == Color.Red) { MessageBox.Show("所选岗位已经存在该物料,物料不能重复", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return; } foreach (DataRow dr in dataSet2.Tables[0].Rows) { if (dr["MATERIELCODE"].ToString() == ultraGrid1.ActiveRow.Cells["MATERIELCODE"].Value.ToString()) { MessageBox.Show("所选岗位已经存在该物料,物料不能重复", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return; } } if (Convert.ToBoolean(ultraGrid1.ActiveRow.Cells["Flag"].Value) == true) { ultraGrid1.ActiveRow.Cells["Flag"].Value = false; } else { ultraGrid1.ActiveRow.Cells["Flag"].Value = true; } } } } }