using System;
using System.Collections;
using System.Data;
using System.Drawing;
using System.Reflection;
using System.Windows.Forms;
using Core.StlMes.Client.LgClassModel;
using CoreFS.CA06;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
namespace Core.StlMes.Client.LgCommon
{
public partial class ucChemelEment : UserControl
{
private DataTable _dtCraftElement = null; // 工艺化学成分信息表
private CraftElement _tmpObjCraftEle; // 存放工艺化学成分信息的类
private CraftElement _objCraftEleBuffer; // 用于实时刷新工艺化学成分信息的缓冲区
private DataTable _dtEleStd = null; // 标准元素值表
private string[] Columns = new string[] { "TYPESYMBOL", "C", "Si", "Mn", "P", "S", "Ni", "Cr", "Cu", "V", "Mo", "Nb", "Ceq", "Als", "Asn", "Sn", "Ca" };
public ucChemelEment()
{
InitializeComponent();
GenerateTableFrame(); //初始化
}
///
/// 生成铁水成分的表架构
///
private void GenerateTableFrame()
{
try
{
_dtCraftElement = new DataTable("CraftElement");
DataColumn col;
for (int i = 0; i < Columns.Length; i++)
{
try
{
col = new DataColumn(Columns[i], typeof(string));
if (Columns[i] == "TYPESYMBOL") col.Caption = "项目名";
else if (Columns[i] == "Asn") col.Caption = "As";
_dtCraftElement.Columns.Add(col);
}
catch { }
}
ulgridElement.DataSource = _dtCraftElement;
SetReadOnly();
ClsControlPack.SetUltraGridAppearance(this);
ulgridElement.DisplayLayout.Override.ActiveRowAppearance.FontData.ResetBold();
ulgridElement.DisplayLayout.Override.RowSelectors = DefaultableBoolean.False;
}
catch { }
}
private void ucChemelEment_Load(object sender, EventArgs e)
{
_tmpObjCraftEle = new CraftElement();
_objCraftEleBuffer = new CraftElement();
}
private void SetReadOnly()
{
try
{
for (int i = 0; i < ulgridElement.DisplayLayout.Bands[0].Columns.Count; i++)
{
ulgridElement.DisplayLayout.Bands[0].Columns[i].CellActivation = Activation.NoEdit;
}
}
catch { }
}
///
/// 获取总貌图混铁炉样
///
/// 混铁炉号
public void GetMapEleInfo(string strWsid, OpeBase ob)
{
try
{
if (string.IsNullOrEmpty(strWsid.Trim())) return;
string strErr = "";
ArrayList arry = new ArrayList();
arry.Add(strWsid == "1" ? "A01" : "A00");
arry.Add(strWsid == "1" ? "A01" : "A00");
CommonClientToServer ccTos = new CommonClientToServer();
ccTos.ob = ob;
DataSet ds = ccTos.ExecuteQueryFunctionsSqlID("Core.Mes.Server.Common.ComDataAccess",
"QueryWithParameter", "STL_MAP0005", 5, arry, out strErr);
DataSetToCraftElement(ref ds, ref _tmpObjCraftEle);
}
catch { }
}
///
/// 获取化学成分样
///
/// 熔炼号
/// 岗位例:C01 1#转炉
/// 样类型(1铁水、2钢水、3渣样)
public void GetCraftEleInfo(string HeatNo, string _DEVICE_POS, string CheckNo, OpeBase ob)
{
try
{
if (string.IsNullOrEmpty(HeatNo.Trim()) || HeatNo.Trim().Length <= 1) return;
// HeatNo = HeatNo.Trim().Substring(1);
bool bSuccess = false;
String station = "A00"; //A00代表二体系铁水,A01代表一体系铁水
try
{
String code = HeatNo.Trim().Substring(2, 1);
if (code == "1" || code == "2")
{
station = "A01";
}
}
catch { }
string strMsg = "";
string strSql = "";
strSql += Convert.ToString(" select t.checkno,'TS' assaytypecode,t.c, t.si, t.mn, t.p, t.s,").Trim() + " ";
strSql += Convert.ToString(" '" + HeatNo + "' heatno ").Trim() + " ";
strSql += Convert.ToString(" from stl_chemelement t").Trim() + " ";
strSql += Convert.ToString(" where t.heatno =").Trim() + " ";
strSql += Convert.ToString("(select max(m.heatno) heatno").Trim() + " ";
strSql += Convert.ToString("from (select heatno").Trim() + " ";
strSql += Convert.ToString("from STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString("where stationcode = '" + station + "'").Trim() + " ";
strSql += Convert.ToString("union").Trim() + " ";
strSql += Convert.ToString(" select heatno").Trim() + " ";
strSql += Convert.ToString(" from j#STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString(" where stationcode = '" + station + "') m)").Trim() + " ";
DataSet ds1 = ClsDataAccessPack.GetData(strSql, out bSuccess, out strMsg, ob);
strMsg = "";
bSuccess = false;
string SqlID = "ReceiveCraftElement.Select";
ArrayList Args = new ArrayList();
Args.Add(HeatNo);
Args.Add(_DEVICE_POS.Substring(0, 1));
Args.Add(_DEVICE_POS.Substring(0, 1));
Args.Add(CheckNo);
DataSet ds = ClsDataAccessPack.GetData(SqlID, Args, out bSuccess, out strMsg, ob);
if (ds1 != null && ds1.Tables[0].Rows.Count > 0)
{
DataRow dr = ds.Tables[0].NewRow();
DataRow Dr = ds1.Tables[0].Rows[0];
dr["CHECKNO"] = Dr["CHECKNO"].ToString();
dr["HEATNO"] = Dr["HEATNO"].ToString();
dr["ASSAYTYPECODE"] = Dr["ASSAYTYPECODE"].ToString();
dr["C"] = Dr["C"].ToString();
dr["SI"] = Dr["SI"].ToString();
dr["MN"] = Dr["MN"].ToString();
dr["P"] = Dr["P"].ToString();
dr["S"] = Dr["S"].ToString();
dr["ASSAYDATE"] = DBNull.Value;
ds.Tables[0].Rows.Add(dr);
}
if (bSuccess) DataSetToCraftElement(ref ds, ref _tmpObjCraftEle);
}
catch { }
}
public void GetHmpEleInfo_RES(string HeatNo, string _DEVICE_POS, string CheckNo, OpeBase ob)
{
try
{
if (string.IsNullOrEmpty(HeatNo.Trim()) || HeatNo.Trim().Length <= 1) return;
// HeatNo = HeatNo.Trim().Substring(1);
bool bSuccess = false;
string strMsg = "";
string strSql = "";
strSql += Convert.ToString("SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM (SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString(" WHERE HEATNO = '" + HeatNo + "'").Trim() + " ";
strSql += Convert.ToString(" AND STATIONCODE = '" + _DEVICE_POS + "'").Trim() + " ";
strSql += Convert.ToString(" OR (CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '1'").Trim() + " ";
strSql += Convert.ToString(" END = CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" '" + CheckNo + "'").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '2'").Trim() + " ";
strSql += Convert.ToString(" END)").Trim() + " ";
strSql += Convert.ToString(" UNION ALL").Trim() + " ";
strSql += Convert.ToString(" SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM J#STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString(" WHERE HEATNO = '" + HeatNo + "'").Trim() + " ";
strSql += Convert.ToString(" AND STATIONCODE = '" + _DEVICE_POS + "'").Trim() + " ";
strSql += Convert.ToString(" OR (CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '1'").Trim() + " ";
strSql += Convert.ToString(" END = CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" '" + CheckNo + "'").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '2'").Trim() + " ";
strSql += Convert.ToString(" END))").Trim() + " ";
strSql += Convert.ToString(" ORDER BY DECODE(ASSAYTYPECODE,").Trim() + " ";
strSql += Convert.ToString(" 'GT',").Trim() + " ";
strSql += Convert.ToString(" '1',").Trim() + " ";
strSql += Convert.ToString(" 'TS',").Trim() + " ";
strSql += Convert.ToString(" '2',").Trim() + " ";
strSql += Convert.ToString(" 'LD',").Trim() + " ";
strSql += Convert.ToString(" '3',").Trim() + " ";
strSql += Convert.ToString(" 'AR',").Trim() + " ";
strSql += Convert.ToString(" '4',").Trim() + " ";
strSql += Convert.ToString(" 'LF',").Trim() + " ";
strSql += Convert.ToString(" '5',").Trim() + " ";
strSql += Convert.ToString(" 'CC',").Trim() + " ";
strSql += Convert.ToString(" '6',").Trim() + " ";
strSql += Convert.ToString(" '7'),").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim();
DataSet ds = ClsDataAccessPack.GetData(strSql, out bSuccess, out strMsg, ob);
if (bSuccess) DataSetToCraftElement(ref ds, ref _tmpObjCraftEle);
}
catch { }
}
//查询化学检验值表
public void GetCraftEleInfo_RES(string HeatNo, string _DEVICE_POS, string CheckNo, OpeBase ob)
{
try
{
if (string.IsNullOrEmpty(HeatNo.Trim()) || HeatNo.Trim().Length <= 1) return;
// HeatNo = HeatNo.Trim().Substring(1);
bool bSuccess = false;
string strMsg = "";
string strSql = "";
strSql += Convert.ToString("SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM (SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString(" WHERE STOVE_NO = '" + HeatNo + "'").Trim() + " ";
strSql += Convert.ToString(" OR (CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '1'").Trim() + " ";
strSql += Convert.ToString(" END = CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" '" + CheckNo + "'").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '2'").Trim() + " ";
strSql += Convert.ToString(" END)").Trim() + " ";
strSql += Convert.ToString(" UNION ALL").Trim() + " ";
strSql += Convert.ToString(" SELECT *").Trim() + " ";
strSql += Convert.ToString(" FROM J#STL_CHEMELEMENT").Trim() + " ";
strSql += Convert.ToString(" WHERE STOVE_NO = '" + HeatNo + "'").Trim() + " ";
strSql += Convert.ToString(" OR (CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '1'").Trim() + " ";
strSql += Convert.ToString(" END = CASE").Trim() + " ";
strSql += Convert.ToString(" WHEN UPPER('" + _DEVICE_POS.Substring(0, 1) + "') = 'C' THEN").Trim() + " ";
strSql += Convert.ToString(" '" + CheckNo + "'").Trim() + " ";
strSql += Convert.ToString(" ELSE").Trim() + " ";
strSql += Convert.ToString(" '2'").Trim() + " ";
strSql += Convert.ToString(" END))").Trim() + " ";
strSql += Convert.ToString(" ORDER BY DECODE(ASSAYTYPECODE,").Trim() + " ";
strSql += Convert.ToString(" 'GT',").Trim() + " ";
strSql += Convert.ToString(" '1',").Trim() + " ";
strSql += Convert.ToString(" 'TS',").Trim() + " ";
strSql += Convert.ToString(" '2',").Trim() + " ";
strSql += Convert.ToString(" 'LD',").Trim() + " ";
strSql += Convert.ToString(" '3',").Trim() + " ";
strSql += Convert.ToString(" 'AR',").Trim() + " ";
strSql += Convert.ToString(" '4',").Trim() + " ";
strSql += Convert.ToString(" 'LF',").Trim() + " ";
strSql += Convert.ToString(" '5',").Trim() + " ";
strSql += Convert.ToString(" 'CC',").Trim() + " ";
strSql += Convert.ToString(" '6',").Trim() + " ";
strSql += Convert.ToString(" '7'),").Trim() + " ";
strSql += Convert.ToString(" CHECKNO").Trim();
DataSet ds = ClsDataAccessPack.GetData(strSql, out bSuccess, out strMsg, ob);
if (bSuccess) DataSetToCraftElement(ref ds, ref _tmpObjCraftEle);
}
catch { }
}
///
/// 填充化学成分信息界面数据
///
public void FillCraftElement()
{
int iCurr = 0;
if (ulgridElement.ActiveRow != null) iCurr = ulgridElement.ActiveRow.Index;
ulgridElement.BeginUpdate();
try
{
lock (this)
{
int iRows = _objCraftEleBuffer.hList.Count + 3; //加3行标准
try
{
_dtCraftElement.Rows.Clear();
DataRow row = null;
for (int i = 0; i < iRows; i++)
{
row = _dtCraftElement.NewRow();
_dtCraftElement.Rows.Add(row);
}
_dtCraftElement.Rows[iRows - 2]["TYPESYMBOL"] = "国标";
_dtCraftElement.Rows[0]["TYPESYMBOL"] = "内控";
_dtCraftElement.Rows[iRows - 1]["TYPESYMBOL"] = "客户";
//_dtCraftElement.Rows[0]["TYPESYMBOL"] = "国标";
//_dtCraftElement.Rows[1]["TYPESYMBOL"] = "内控";
//_dtCraftElement.Rows[2]["TYPESYMBOL"] = "客户";
}
catch { }
#region " C标准"
if (_dtEleStd != null && this._dtEleStd.Rows.Count > 0)
{
for (int i = 0; i < this._dtEleStd.Rows.Count; i++)
{
DataRow dr = this._dtEleStd.Rows[i];
ClsBusinessPack.SetStandardElemData(Convert.ToInt32(dr["STD_DC"].ToString()) - 2, dr, ref _dtCraftElement);
}
}
#endregion
int idx = 1;
#region " 实时值"
for (int i = 0; i < _objCraftEleBuffer.hList.Count; i++, idx++)
{
JOB_CHEMELEMENT obj = (JOB_CHEMELEMENT)_objCraftEleBuffer.hList[i];
ClsBusinessPack.SetCraftElemGridData(idx, obj, GetItemName(obj.ASSAYTYPECODE), ref _dtCraftElement);
}
#endregion
ulgridElement.DataBind();
ulgridElement.Rows[0].Fixed = true;
ulgridElement.Rows[1].Fixed = true;
ulgridElement.DisplayLayout.Bands[0].Override.FixedRowStyle = Infragistics.Win.UltraWinGrid.FixedRowStyle.Top;
ulgridElement.DisplayLayout.UseFixedHeaders = true;
ulgridElement.DisplayLayout.Bands[0].Columns["TYPESYMBOL"].Header.Fixed = true;
ulgridElement.DisplayLayout.Bands[0].Override.FixedHeaderIndicator = Infragistics.Win.UltraWinGrid.FixedHeaderIndicator.None;
proc_CompareChemEle();
}
}
catch { }
finally
{
ClsControlPack.RefreshAndAutoSize(ulgridElement);
if (iCurr > 0 && ulgridElement.Rows.Count >= iCurr + 1)
{
ulgridElement.Rows[iCurr].Activated = true;
ulgridElement.Rows[iCurr].Selected = false;
}
ulgridElement.EndUpdate();
}
}
///
/// 铁水预处理填充化学成分信息界面数据
///
public void HmpFillCraftElement()
{
int iCurr = 0;
if (ulgridElement.ActiveRow != null) iCurr = ulgridElement.ActiveRow.Index;
ulgridElement.BeginUpdate();
try
{
lock (this)
{
int iRows = _objCraftEleBuffer.hList.Count + 3; //加2行标准
try
{
_dtCraftElement.Rows.Clear();
DataRow row = null;
for (int i = 0; i < iRows; i++)
{
row = _dtCraftElement.NewRow();
_dtCraftElement.Rows.Add(row);
}
_dtCraftElement.Rows[0]["TYPESYMBOL"] = "国标";
_dtCraftElement.Rows[1]["TYPESYMBOL"] = "内控";
_dtCraftElement.Rows[2]["TYPESYMBOL"] = "客户";
}
catch { }
#region " C标准"
if (_dtEleStd != null && this._dtEleStd.Rows.Count > 0)
{
for (int i = 0; i < this._dtEleStd.Rows.Count; i++)
{
DataRow dr = this._dtEleStd.Rows[i];
ClsBusinessPack.SetStandardElemData(Convert.ToInt32(dr["STD_DC"].ToString()) - 1, dr, ref _dtCraftElement);
}
}
#endregion
int idx = 3;
#region " 实时值"
for (int i = 0; i < _objCraftEleBuffer.hList.Count; i++, idx++)
{
JOB_CHEMELEMENT obj = (JOB_CHEMELEMENT)_objCraftEleBuffer.hList[i];
ClsBusinessPack.SetCraftElemGridData(idx, obj, GetItemName(obj.ASSAYTYPECODE), ref _dtCraftElement);
}
#endregion
ulgridElement.DataBind();
ulgridElement.Rows[0].Fixed = true;
ulgridElement.Rows[1].Fixed = true;
ulgridElement.DisplayLayout.Bands[0].Override.FixedRowStyle = Infragistics.Win.UltraWinGrid.FixedRowStyle.Top;
ulgridElement.DisplayLayout.UseFixedHeaders = true;
ulgridElement.DisplayLayout.Bands[0].Columns["TYPESYMBOL"].Header.Fixed = true;
ulgridElement.DisplayLayout.Bands[0].Override.FixedHeaderIndicator = Infragistics.Win.UltraWinGrid.FixedHeaderIndicator.None;
proc_CompareChemEle();
ulgridElement.Rows[0].Hidden = true;
ulgridElement.Rows[1].Hidden = true;
ulgridElement.Rows[2].Hidden = true;
}
}
catch { }
finally
{
ClsControlPack.RefreshAndAutoSize(ulgridElement);
if (iCurr > 0 && ulgridElement.Rows.Count >= iCurr + 1)
{
ulgridElement.Rows[iCurr].Activated = true;
ulgridElement.Rows[iCurr].Selected = false;
}
ulgridElement.EndUpdate();
}
}
private string GetItemName(string strCode)
{
switch (strCode.Trim().ToUpper().Substring(0,1))
{
case "GT":
return "高炉铁水";
case "T":
return "铁水样";
case "B":
return "脱硫铁水";
case "C":
return "炉前样";
case "D":
return "吹氩样";
case "P":
return "平台样";
case "E":
return "精炼样";
case "G":
return "成品样";
case "ZP":
return "铸坯样";
}
return "";
}
private void proc_CompareChemEle() //add on 2009-04-20
{
try
{
string strElementType = "", strStdFX = "", strStdNK = "", strReal = "";
int iRetFX, iRetNK;
Color clrOutFX = Color.Red, clrOutNK = Color.Blue, clrNormal = Color.Black;
for (int i = 1; i < ulgridElement.Rows.Count; i++)
{
string assaytypecode = ulgridElement.Rows[i].Cells["TYPESYMBOL"].Value.ToString();
if (assaytypecode == "成品样")
{
strElementType = Convert.ToString(ulgridElement.Rows[i].Cells["TYPESYMBOL"].Value);
if (strElementType.Contains("GT") || strElementType.Contains("TS") || strElementType == "")
{
for (int j = 1; j < ulgridElement.DisplayLayout.Bands[0].Columns.Count; j++)
{
ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrNormal;
}
continue;
}
for (int j = 1; j < ulgridElement.DisplayLayout.Bands[0].Columns.Count; j++)
{
strStdNK = Convert.ToString(ulgridElement.Rows[ulgridElement.Rows.Count - 2].Cells[j].Value);
strStdFX = Convert.ToString(ulgridElement.Rows[0].Cells[j].Value);
strReal = Convert.ToString(ulgridElement.Rows[i].Cells[j].Value);
iRetNK = sValue(strStdNK, strReal);
iRetFX = sValue(strStdFX, strReal);
if (iRetFX == -1) ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrOutFX;
else if (iRetNK == -1) ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrOutNK;
else ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrNormal;
}
}
}
}
catch (Exception ex)
{
string meg = ex.Message;
}
}
private int sValue(string Svalue, string SCHvalue) //add on 2009-04-20
{
if (SCHvalue.Length < 1)
{
return 0;
}
if (Svalue.Length > 0)
{
string BValue = "-1";
string EValue = "-1";
if (Svalue.IndexOf("~") > 0)
{
BValue = Svalue.Substring(0, Svalue.IndexOf("~"));
EValue = Svalue.Substring(Svalue.IndexOf("~") + 1, Svalue.Length - Svalue.IndexOf("~") - 1);
if (double.Parse(SCHvalue) >= double.Parse(BValue) && double.Parse(SCHvalue) <= double.Parse(EValue))
{
return 0; //正确
}
else
{
return -1;
}
}
else
{
if (Svalue.IndexOf("≤") > -1)
{
EValue = Svalue.Substring(Svalue.IndexOf("≤") + 2, Svalue.Length - Svalue.IndexOf("≤") - 2);
if (double.Parse(SCHvalue) <= double.Parse(EValue))
{
return 0; //正确
}
else
{
return -1;
}
}
else
{
if (Svalue.IndexOf("<") > -1 && Svalue.IndexOf("=") == -1)
{
EValue = Svalue.Substring(Svalue.IndexOf("<") + 1, Svalue.Length - Svalue.IndexOf("<") - 1);
if (double.Parse(SCHvalue) < double.Parse(EValue))
{
return 0; //正确
}
else
{
return -1;
}
}
else
{
if (Svalue.IndexOf("≥") > -1)
{
EValue = Svalue.Substring(Svalue.IndexOf("≥") + 1, Svalue.Length - Svalue.IndexOf("≥") - 1);
if (double.Parse(SCHvalue) >= double.Parse(EValue))
{
return 0; //正确
}
else
{
return -1;
}
}
else
{
if (Svalue.IndexOf(">") > -1 && Svalue.IndexOf("=") == -1)
{
EValue = Svalue.Substring(Svalue.IndexOf(">") + 1, Svalue.Length - Svalue.IndexOf(">") - 1);
if (double.Parse(SCHvalue) > double.Parse(EValue))
{
return 0; //正确
}
else
{
return -1;
}
}
else
{
EValue = Svalue;
try
{
if (double.Parse(SCHvalue) == double.Parse(EValue))
{
return 0; //正确
}
}
catch { }
return -1;
}
}
}
}
}
}
return 0;
}
///
/// 获取标准元素值
///
/// 钢种(暂不用)
/// 虚拟炉号
public void GetStandardElement(string strHeatID, OpeBase ob)
{
try
{
if (string.IsNullOrEmpty(strHeatID)) return;
DataSet ds = ClsDataAccessPack.GetChemElementStandard(strHeatID, ob);
if (ds != null && ds.Tables.Count > 0) _dtEleStd = ds.Tables[0];
}
catch { }
}
///
/// 序列化化学成分
///
/// 作业化学成分
///
public void DataSetToCraftElement(ref DataSet ds, ref CraftElement obj)
{
try
{
obj.ClearElement();
PropertyInfo[] PropertyInfos = null;
foreach (DataRow dr in ds.Tables[0].Rows)
{
JOB_CHEMELEMENT detail = new JOB_CHEMELEMENT();
if (PropertyInfos == null)
{
PropertyInfos = detail.GetType().GetProperties();
}
//给各个属性赋值
foreach (PropertyInfo oPropertyInfo in PropertyInfos)
{
try
{
if (dr.Table.Columns.Contains(oPropertyInfo.Name))
{
if (dr[oPropertyInfo.Name] != System.DBNull.Value)
{
oPropertyInfo.SetValue(detail, dr[oPropertyInfo.Name.ToString()], null);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
obj.Add(ref detail);
}//end foreach
_objCraftEleBuffer.DataHarmonize(ref obj);
}
catch { }
}
public void ResetData()
{
try
{
_tmpObjCraftEle.ClearElement();
_objCraftEleBuffer.ClearElement();
_dtCraftElement.Rows.Clear();
}
catch { }
}
}
}