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;
}
}
}
}
}