using System; using System.Collections.Generic; using System.Linq; using System.Text; using CoreFS.CA06; using System.Data; using System.Collections; using Core.Mes.Client.Common; using Core.LgMes.Client.lgDbMgt; namespace Core.LgMes.Client.lgServiceMgt.SqMesService { /// /// 三期牌号成分基础信息 /// public class Tbb01FacIngrService : Core.LgMes.Client.lgServiceMgt.BaseService.LgBaseService { // 内控 private const string SQL_STR_CHEME = @"select fac_stl_grd, fac_code, chem_cd, comp_yn, chem_aim, chem_min, chem_max, reg_pgm_id, reg_id, reg_dtime, mod_pgm_id, mod_id, mod_dtime, fac_detail from tbb01_fac_ingr t where 1 = 1 and t.fac_stl_grd = '{0}'"; //放行 private const string SQL_STR_LGCHEME = @"select TAFAC_STL_GRD, chem_cd, comp_yn, chem_aim, chem_min, chem_max, reg_pgm_id, reg_id, reg_dtime, mod_pgm_id, mod_id, mod_dtime from tbb01_tafac_ingr@xg3q t where t.tafac_stl_grd = '{0}'"; //放行所有 private const string SQL_STR_LGCHEMEALL = @"select TAFAC_STL_GRD, chem_cd, comp_yn, chem_aim, chem_min, chem_max, reg_pgm_id, reg_id, reg_dtime, mod_pgm_id, mod_id, mod_dtime from tbb01_tafac_ingr@xg3q t where 1 = 1 {0} "; /// /// 获取三期牌号的内控标准 /// /// /// public DataSet ReturnDsTbb01FacIngr(ClientParamWithSqlConditionAndOpenBase param) { string sqlStr = string.Format(SQL_STR_CHEME, param.sqlCondition); DataSet ds = new DataSet(); try { ds = base.ReturnDbCommondByCommondType(DbCommandType.TqMes).ExecuteReader(new DbClientParam(sqlStr, param.ob)); } catch { } return ds; } /// /// 获取三期牌号的放行标准 /// /// /// public DataSet ReturnDsTbb01TaFacIngr(ClientParamWithSqlConditionAndOpenBase param) { string sqlStr = string.Format(SQL_STR_LGCHEME, param.sqlCondition); DataSet ds = new DataSet(); try { ds = base.ReturnDbCommondByCommondType(DbCommandType.TqMes).ExecuteReader(new DbClientParam(sqlStr, param.ob)); } catch { } return ds; } /// /// 获取放行所有信息 /// /// /// public DataSet ReturnDsTbb01TaFacIngrWithConditon(ClientParamWithSqlConditionAndOpenBase param) { string sqlStr = string.Format(SQL_STR_LGCHEMEALL, param.sqlCondition); DataSet ds = new DataSet(); try { ds = base.ReturnDbCommondByCommondType(DbCommandType.TqMes).ExecuteReader(new DbClientParam(sqlStr, param.ob)); } catch { } return ds; } /// /// 将三期的成分标准按现有2.5级通用返回格式组合成一个数据集 /// 格式见ReturnStructDs 的组合 /// /// public DataSet ReturStandSteelChemeBySteelCode(ClientParamWithSqlConditionAndOpenBase param) { DataSet ds = ReturnStructDs(); DataSet dsStand01 = ReturnDsTbb01FacIngr(param); DataSet dsStand02 = ReturnDsTbb01TaFacIngr(param); DataRow dr = null; ArrayList chemList = new ArrayList(); try { // 该成分标准存在H,P,Z情况,对2.5级同成分取一个即可 foreach (DataRow drs01 in dsStand01.Tables[0].Rows) { if (chemList.Contains(drs01["CHEM_CD"])) continue; dr = ds.Tables[0].NewRow(); dr["CIC"] = ""; dr["STDSTYLE"] = "1"; dr["STEEL"] = drs01["FAC_STL_GRD"]; dr["STD"] = drs01["CHEM_AIM"].ToString(); dr["STDMIN"] = drs01["CHEM_MIN"].ToString(); dr["STDMAX"] = drs01["CHEM_MAX"].ToString(); dr["STDSIGN"] = ""; dr["ITEMCODE"] = drs01["CHEM_CD"]; ds.Tables[0].Rows.Add(dr); chemList.Add(drs01["CHEM_CD"]); } chemList = null; foreach (DataRow drs02 in dsStand02.Tables[0].Rows) { dr = ds.Tables[0].NewRow(); dr["CIC"] = ""; dr["STDSTYLE"] = "2"; dr["STEEL"] = drs02["TAFAC_STL_GRD"]; dr["STD"] = drs02["CHEM_AIM"].ToString(); dr["STDMIN"] = drs02["CHEM_MIN"].ToString(); dr["STDMAX"] = drs02["CHEM_MAX"].ToString(); dr["STDSIGN"] = ""; dr["ITEMCODE"] = drs02["CHEM_CD"]; ds.Tables[0].Rows.Add(dr); } } catch(Exception ex) { } return ds; } private DataSet ReturnStructDs() { DataSet ds = new DataSet(); string[] columnList = new string[] { "CIC", "STDSTYLE", "STEEL", "STD", "STDMIN", "STDMAX", "STDSIGN", "ITEMCODE" }; DataTable dt = new DataTable(); foreach(string s in columnList) { dt.Columns.Add(new DataColumn(s, System.Type.GetType("System.String"))); } ds.Tables.Add(dt); return ds; } } }