using CoreFS.CA06;
using Infragistics.Win.UltraWinEditors;
using Infragistics.Win.UltraWinGrid;
using System;
using System.Collections;
using System.Data;
using System.Windows.Forms;
namespace Core.StlMes.Client.Qcm
{
public partial class CtrlMscChem : UserControl
{
public FrmChemStandard _frmChemStd;
private bool isLoaded = false;
private string _customInfo;
public OpeBase Ob
{
get { return _frmChemStd.ob; }
set { _frmChemStd.ob = value; }
}
public event BeforeRowInsertEventHandler BeforeRowInsert;
public UltraGrid Grid
{
get { return _frmChemStd.UltraGrid1; }
}
public DataTable ChemDataTable1
{
get { return _frmChemStd.DataTable1; }
}
public DataTable ChemDataTable2
{
get { return _frmChemStd.DataTable2; }
}
public bool IsQueryValidData
{
get { return _frmChemStd.UltraCheckValid.Checked; }
set { _frmChemStd.UltraCheckValid.Checked = value; }
}
public CtrlMscChem(System.Windows.Forms.Control container)
{
InitializeComponent();
this.Dock = DockStyle.Fill;
_frmChemStd = new FrmChemStandard();
_frmChemStd.UltraGrid1.BeforeRowInsert += new BeforeRowInsertEventHandler(UltraGrid1_BeforeRowInsert);
_frmChemStd.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert);
this.Controls.Add(_frmChemStd.UltraGrid1);
container.Controls.Add(this);
this.BringToFront();
}
///
/// 显示以MSC为查询条件的交付标准
///
///
///
public void ShowGrid(string msc, OpeBase ob)
{
if (isLoaded == false)
{
//_frmChemStd = new FrmChemStandard();
//_frmChemStd.Msc = msc;
_frmChemStd.Msc = msc;
_frmChemStd.PopupLoad("1", ob);
_customInfo = "1";
isLoaded = true;
}
else
{
if (_frmChemStd.Msc != "" && _frmChemStd.Msc != msc)
{
_frmChemStd.Msc = msc;
this.RefreshData();
}
}
}
///
/// 显示以标准为查询条件的内控标准
///
public void ShowStdGrid(string stdCode, string produccodeNk, ArrayList steelCodes,
string steelcodeNk, string processCode, OpeBase ob)
{
if (isLoaded == false)
{
//_frmChemStd = new FrmChemStandard();
//_frmChemStd.Msc = msc;
_frmChemStd.StdCode = stdCode;
_frmChemStd.ProduccodeNk = produccodeNk;
_frmChemStd.SteelCodes = steelCodes;
_frmChemStd.SteelcodeNk = steelcodeNk;
_frmChemStd.ProcessCodeNk = processCode;
_frmChemStd.PopupLoad("2", ob);
_customInfo = "2";
isLoaded = true;
}
else
{
if (_frmChemStd.StdCode != "" && _frmChemStd.StdCode != stdCode)
{
_frmChemStd.StdCode = stdCode;
_frmChemStd.ProduccodeNk = produccodeNk;
_frmChemStd.SteelcodeNk = steelcodeNk;
_frmChemStd.SteelCodes = steelCodes;
_frmChemStd.ProcessCodeNk = processCode;
//this.RefreshData();
_frmChemStd.PopupRefresh();
}
}
}
public void ShowPurchaseGrid(OpeBase ob)
{
if (isLoaded)
{
_frmChemStd.PopupRefresh();
}
else
{
_frmChemStd.PopupLoad("2", ob);
isLoaded = true;
}
}
public void Query(string msc, string codeJg)
{
_frmChemStd.Msc = msc;
_frmChemStd.CodeJg = codeJg;
_frmChemStd.ToolBar_Click(null, "Query");
}
public void QueryStd(string stdCode, string produccodeNk, ArrayList steelCodes, string modelCode)
{
_frmChemStd.StdCode = stdCode;
_frmChemStd.ProduccodeNk = produccodeNk;
_frmChemStd.SteelCodes = steelCodes;
_frmChemStd.ModelCode = modelCode;
_frmChemStd.ToolBar_Click(null, "Query");
}
public void QueryPurchaseAgreement(string stdCodeNk)
{
_frmChemStd.QueryPurchaseAgreement(stdCodeNk);
}
public void Save()
{
_frmChemStd.ToolBar_Click(null, "Save");
}
public void Delete()
{
_frmChemStd.ToolBar_Click(null, "Delete");
}
public void Resume()
{
_frmChemStd.ToolBar_Click(null, "Resume");
}
public void Copy()
{
_frmChemStd.ToolBar_Click(null, "Copy");
}
public void Paste()
{
_frmChemStd.ToolBar_Click(null, "Paste");
}
public void RefreshData()
{
_frmChemStd.ToolBar_Click(null, "Refresh");
}
public void Group()
{
_frmChemStd.ToolBar_Click(null, "Group");
}
public void CancelGroup()
{
_frmChemStd.ToolBar_Click(null, "CancelGroup");
}
public void Clear()
{
_frmChemStd.DataTable1.Clear();
_frmChemStd.DataTable2.Clear();
}
public void ExpandFirstRow()
{
if (_frmChemStd.UltraGrid1.Rows.Count > 0)
{
_frmChemStd.UltraGrid1.Rows[0].ExpandAll();
}
}
private void UltraGrid1_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e)
{
if (e.Row.HasParent()) return;
if (_customInfo == "1")
{
e.Row.SetValue("MSC", _frmChemStd.Msc);
DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["MSC"].EditorComponent).DataSource;
DataRow[] drs = dt.Select("MSC = '" + _frmChemStd.Msc + "'");
if (drs.Length > 0)
{
e.Row.Cells["PSC"].Value = drs[0][2];
e.Row.Cells["PSC_DESC"].Value = drs[0][3];
e.Row.Cells["PRODUCNAME"].Value = drs[0][4];
if (e.Row.Cells.Exists("STD_NAME_B"))
{
e.Row.Cells["STD_NAME_B"].Value = drs[0][5];
}
else
{
e.Row.Cells["STD_NAME"].Value = drs[0][5];
}
e.Row.Cells["STEELNAME"].Value = drs[0][6];
e.Row.Cells["STD_STYLE_DESC"].Value = drs[0][7];
e.Row.Cells["STDSTYLE"].Value = drs[0][8];
}
}
else if (_customInfo == "2")
{
e.Row.Cells["STD_CODE_NK"].Value = _frmChemStd.StdCode;
DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE_NK"].EditorComponent).DataSource;
DataRow[] drs = dt.Select("STD_CODE = '" + _frmChemStd.StdCode + "'");
if (drs.Length > 0)
{
e.Row.Cells["STD_NAME_NK"].Value = drs[0][1];
e.Row.Cells["STDSTYLE"].Value = drs[0][2];
}
}
e.Row.Update();
}
private void UltraGrid1_BeforeRowInsert(object sender, BeforeRowInsertEventArgs e)
{
if (BeforeRowInsert != null)
{
BeforeRowInsert(sender, e);
}
}
}
}