using Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm.Server;
using Core.Mes.Client.Comm.Tool;
using CoreFS.CA06;
using Infragistics.Win.UltraWinEditors;
using Infragistics.Win.UltraWinGrid;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
namespace Core.StlMes.Client.Qcm
{
///
/// 成分内控标准管理
///
public partial class frmInnerMSCRGRD2 : FrmBase
{
private string errMesage = "";
//成分基础表数据
private DataTable dtChem = null;
//扣型基础表数据
//private DataTable dtModel = null;
//接箍码基础表数据
private DataTable dtSCJG = null;
//钢种管理基础表数据
private DataTable dtGrade = null;
//标准基础表数据
private DataTable dtBaseStd = null;
//工序基础表数据
private DataTable dtProcess = null;
//成分索引号数字部分
private int _cic = 1;
//成分索引号与序号
private Dictionary _diction = new Dictionary();
public frmInnerMSCRGRD2()
{
InitializeComponent();
ExceptionHelper.RegistException();
this.StartPosition = FormStartPosition.Manual;
this.Location = new Point(210, 220);
}
private OpeBase _ob;
public OpeBase SetOb
{
get { return _ob; }
set { _ob = value; }
}
private string msc;
public string Msc
{
get { return msc; }
set { msc = value; }
}
private string msc_pline;
public string Msc_pline
{
get { return msc_pline; }
set { msc_pline = value; }
}
private string namerd;
public string NameOrd
{
get { return namerd; }
set { namerd = value; }
}
///
/// 查询
///
private void DoQuery()
{
ArrayList list = QueryCondition();
//主表查询
DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.queryMscStdCic", new Object[] { list }, this._ob);
dataTable2.Clear();
GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable1, true);
//从表查询
DataTable dt1 = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.queryMscStdChem", new Object[] { list }, this._ob);
GridHelper.CopyDataToDatatable(ref dt1, ref this.dataTable2, true);
RefreshMscGrade();
//初始化序号与索引号
_diction = new Dictionary();
_cic = 1;
}
private void RefreshMscGrade()
{
ArrayList list = new ArrayList();
list.Add(msc);
list.Add(msc_pline);
DataTable dt = null;
try
{
dt = ServerHelper.GetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.queryMscGrade",
new object[] { list }, _ob);
}
catch
{
return;
}
foreach (DataRow dr in dt.Rows)
{
UltraGridRow[] rows = GridHelper.GetRowsWithKey(ultraGridMSCRGRD,
new string[] { "CIC" }, new string[] { dr["CIC"].ToString() });
if (rows.Length > 0)
{
rows[0].Cells["CHC"].Value = true;
}
}
ultraGridMSCRGRD.UpdateData();
}
///
/// 查询条件
///
///
private ArrayList QueryCondition()
{
ArrayList list = new ArrayList();
string standName = "";
if (this.ultraCheckStand.Checked)
standName = this.NStandName.Text.Trim();
string processName = "";
if (this.ultraCheckProcess.Checked)
processName = this.ProcessName.Text.Trim();
string gradeName = "";
if (this.ultraCheckGrade.Checked)
gradeName = this.GradeName.Text.Trim();
list.Add(standName);
list.Add(standName);
list.Add(standName);
list.Add(processName);
list.Add(processName);
list.Add(processName);
list.Add(gradeName);
list.Add(gradeName);
list.Add(gradeName);
return list;
}
private void frmInnerChemcs_Load(object sender, EventArgs e)
{
InitAllDownList();
DoQuery();
}
///
/// 初始化下限符号
///
private void InitStdminSign()
{
DataTable dt = new DataTable();
dt.Columns.Add("STDMIN_SIGN");
DataRow dr1 = dt.NewRow();
dr1["STDMIN_SIGN"] = ">";
DataRow dr2 = dt.NewRow();
dr2["STDMIN_SIGN"] = ">=";
DataRow dr3 = dt.NewRow();
dr3["STDMIN_SIGN"] = "=";
DataRow dr4 = dt.NewRow();
dr4["STDMIN_SIGN"] = "";
dt.Rows.Add(dr1);
dt.Rows.Add(dr2);
dt.Rows.Add(dr3);
dt.Rows.Add(dr4);
ultraStdmin.DataSource = dt;
ultraStdmin.DisplayMember = "STDMIN_SIGN";
}
///
/// 初始化上限符号
///
private void InitStdmaxSign()
{
DataTable dt = new DataTable();
dt.Columns.Add("STDMAX_SIGN");
DataRow dr1 = dt.NewRow();
dr1["STDMAX_SIGN"] = "<";
DataRow dr2 = dt.NewRow();
dr2["STDMAX_SIGN"] = "<=";
DataRow dr3 = dt.NewRow();
dr3["STDMAX_SIGN"] = "";
dt.Rows.Add(dr1);
dt.Rows.Add(dr2);
dt.Rows.Add(dr3);
ultraStdmax.DataSource = dt;
ultraStdmax.DisplayMember = "STDMAX_SIGN";
}
///
/// 初始化所有下拉框
///
private void InitAllDownList()
{
try
{
//下限
InitStdminSign();
//上限
InitStdmaxSign();
//成分代码
InitDropList(ref dtChem, ultraChem, "com.steering.pss.qcm.ComBaseQuery.getCombaseChemA", "CHEM_NAME");
//结箍码
InitDropList(ref dtSCJG, ultraSCJG, "com.steering.pss.qcm.ComBaseQuery.getComMSCJG", "SPEC_JG_DESC");
//钢种代码
InitDropList(ref dtGrade, ultraGride, "com.steering.pss.qcm.ComBaseQuery.geComBaseGrade", "GRADENAME");
//标准
InitDropList(ref dtBaseStd, ultraBaseStd, "com.steering.pss.qcm.ComBaseQuery.geComBaseStdN", "STD_NAME");
//工序
InitDropList(ref dtProcess, ultraProcess, "com.steering.pss.qcm.ComBaseQuery.geComBaseProcess", "PROCESS_DESC");
//查询条件初始不可用
this.NStandName.Enabled = false;
this.GradeName.Enabled = false;
this.ProcessName.Enabled = false;
}
catch (Exception)
{
}
}
///
/// 初始下拉框
///
/// 数据表
/// 下拉框
/// 方法名
/// 描述
/// 代码
private void InitDropList(ref DataTable dt, UltraComboEditor uce, string methodId, string desc)
{
dt = ServerHelper.GetData(methodId, null, this._ob);
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
if (dt != null && dt.Rows.Count > 0)
{
uce.DataSource = dt;
uce.Text = desc;
uce.DisplayMember = desc;
}
}
///
/// 标准名称
///
///
///
private void ultraCheckStand_CheckedChanged(object sender, EventArgs e)
{
if (ultraCheckStand.Checked)
this.NStandName.Enabled = true;
else
this.NStandName.Enabled = false;
}
///
/// 适用工序
///
///
///
private void ultraCheckProcess_CheckedChanged(object sender, EventArgs e)
{
if (ultraCheckProcess.Checked)
this.ProcessName.Enabled = true;
else
this.ProcessName.Enabled = false;
}
///
/// 钢种
///
///
///
private void ultraCheckGrade_CheckedChanged(object sender, EventArgs e)
{
if (ultraCheckGrade.Checked)
this.GradeName.Enabled = true;
else
this.GradeName.Enabled = false;
}
public void SetModelText(string code, string desc)
{
this.ultraGridMSCRGRD.DisplayLayout.ActiveRow.Cells["MODEL_CODE"].Value = code;
this.ultraGridMSCRGRD.DisplayLayout.ActiveRow.Cells["MODEL_DESC"].Value = desc;
}
private void buttonQUERY_Click(object sender, EventArgs e)
{
DoQuery();
}
private void buttonEsc_Click(object sender, EventArgs e)
{
this.Close();
}
private void buttonInsert_Click(object sender, EventArgs e)
{
add();
}
public void add()
{
ultraGridMSCRGRD.UpdateData();
ArrayList list = new ArrayList();
foreach (UltraGridRow ugrs in this.ultraGridMSCRGRD.Rows)
{
bool chk = bool.Parse(ugrs.Cells["CHC"].Value.ToString());
ArrayList parm = new ArrayList();
parm.Add(chk ? "" : "DELETE");
parm.Add(this.msc);
parm.Add(this.msc_pline);
parm.Add(ugrs.Cells["CIC"].Value.ToString());
parm.Add(ugrs.Cells["GRADECODE"].Value.ToString() == "" ? " " : ugrs.Cells["GRADECODE"].Value.ToString());
parm.Add(ugrs.Cells["GRADENAME"].Value.ToString() == "" ? " " : ugrs.Cells["GRADENAME"].Value.ToString());
parm.Add(ugrs.Cells["GRADECODE"].Value.ToString() == "" ? " " : ugrs.Cells["GRADECODE"].Value.ToString());
parm.Add(ugrs.Cells["GRADENAME"].Value.ToString() == "" ? " " : ugrs.Cells["GRADENAME"].Value.ToString());
parm.Add(ugrs.Cells["STD_CODE_NK"].Value.ToString() == "" ? " " : ugrs.Cells["STD_CODE_NK"].Value.ToString());
parm.Add(ugrs.Cells["STD_NAME_NK"].Value.ToString() == "" ? " " : ugrs.Cells["STD_NAME_NK"].Value.ToString());
parm.Add(namerd);
parm.Add(ugrs.Cells["MEMO"].Value.ToString());
list.Add(parm);
}
try
{
ServerHelper.SetData("com.steering.pss.qcm.CoreInnerMSCRGRD2.insertMscGrade",
new object[] { list }, _ob);
}
catch
{
return;
}
MessageUtil.ShowTips("操作成功!");
this.DialogResult = DialogResult.OK;
}
private void ultraGridMSCRGRD_InitializeRow(object sender, InitializeRowEventArgs e)
{
if (e.Row.Cells["VALIDFLAGNAME"].Value.ToString() == "无效")
{
e.Row.Appearance.ForeColor = Color.Red;
}
}
}
}