private static void ReadResult() { bool IsSave = false; string jcff = IniHelper.ReadIni("RESULT", "JCFF", AppHelper.AppSetting.ShareFilePath + "DevResult.txt"); Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", string.Join(" ", File.ReadAllLines(AppHelper.AppSetting.ShareFilePath + "DevResult.txt", Encoding.GetEncoding("GB2312")))); if ("40".Equals(jcff)) { Task.Factory.StartNew(() => { Capture(JCLSH); }); Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", $"读取测功结果[{JCLSH}]"); YTH_CHECKDATA_ZJ zj = null; DPCG dpcg = new DPCG(); FillEntityByIni(dpcg); zj = new YTH_CHECKDATA_ZJ(); zj.GK_Judge = dpcg.GK_Judge.ChangePD(); zj.GK_DBGL = dpcg.GK_DBGL; zj.GK_EDCS = dpcg.GK_EDCS; zj.GK_JZL = dpcg.GK_JZL; zj.GK_WDCS = dpcg.GK_WDCS; zj.CSPD = dpcg._SU_Judge.ChangePD(); zj.CSZ = dpcg._SU_Speed; zj.YH_PD = dpcg.YH_PD.ChangePD(); zj.YH_SCZ = dpcg.YH_SCZ; zj.YH_SD = dpcg.YH_SD; zj.YH_JZL = dpcg.YH_JZL; zj.YH_LC = dpcg.YH_LC; zj.JCLSH = JCLSH; zj.YH_BZ = dpcg.YH_BZ; zj.YCY = YCY; hashtable.Clear(); string[] ignoreField = zj.GetType().GetProperties().Where(p => p.GetValue(zj, null) == null || string.IsNullOrEmpty(p.GetValue(zj, null).ToString())).Select(p => p.Name).ToArray(); zj.GetType().GetProperties().Where(p => p.GetValue(zj, null) != null && !string.IsNullOrEmpty(p.GetValue(zj, null).ToString())).ToList().ForEach(p => hashtable.Add($"{p.Name}", p.GetValue(zj, null))); IsSave = MssqlHelper.GetInstance().InsertOrUpdate(zj, hashtable, new string[] { "JCLSH" }, ignoreField); } else if ("15".Equals(jcff)) //双怠速 { Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", "读取双怠速结果"); SDS sds = new SDS(); FillEntityByIni(sds); YTH_CHECKDATA yth = new YTH_CHECKDATA(); yth.JCFFID = "15"; yth.GLKQXSXX = GlobalVar.GLKQXSXX; yth.GLKQXSSX = GlobalVar.GLKQXSSX; yth.GLKQXSJG = sds.R_H; yth.GLKQXSPD = sds.R_H_Judge.ChangePD(); yth.DDSCOXZ = sds.stdCO_L; yth.DDSCOJG = sds.CO_L; yth.DDSCOPD = sds.CO_L_Judge.ChangePD(); yth.DDSHCXZ = sds.stdHC_L;; yth.DDSHCJG = sds.HC_L; yth.DDSHCPD = sds.HC_L_Judge.ChangePD(); yth.DDSZS = sds.rev_L; yth.GDSZS = sds.rev_H; yth.GDSCOXZ = sds.stdCO_H; yth.GDSCOJG = sds.CO_H_Judge.ChangePD(); yth.GDSCOPD = sds.CO_H_Judge; yth.GDSHCXZ = sds.stdHC_H; yth.GDSHCJG = sds.HC_H; yth.GDSHCPD = sds.HC_H_Judge.ChangePD(); yth.IGHJWD = sds.OilTempAver; yth.IGHJSD = sds.humidity; yth.IGHJDQY = sds.pressure; yth.JCZT = sds.All_Judge.ChangePD(); yth.YCY = YCY; yth.JCLSH = JCLSH; yth.KSJCSJ = sds.RunStartTime; yth.JSJCSJ = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); hashtable.Clear(); string[] ignoreField = yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) == null || string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).Select(p => p.Name).ToArray(); yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) != null && !string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).ToList().ForEach(p => hashtable.Add($"{p.Name}", p.GetValue(yth, null))); IsSave = MssqlHelper.GetInstance().InsertOrUpdate(yth, hashtable, new string[] { "JCLSH" }, ignoreField); GlobalVar.GLKQXSSX = "1.05"; GlobalVar.GLKQXSXX = "0.95"; } else if ("14".Equals(jcff)) //不透光 { Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", "读取不透光结果"); ZYJS zyjs = new ZYJS(); FillEntityByIni(zyjs); YTH_CHECKDATA yth = new YTH_CHECKDATA(); yth.JCLSH = JCLSH; yth.YCY = YCY; yth.JCFFID = "14"; yth.BTGPFXZ = zyjs.stdVelK; yth.BTGPFJG1 = zyjs.VelK1; yth.BTGPFJG2 = zyjs.VelK2; yth.BTGPFJG3 = zyjs.VelK3; yth.BTGPFPJZ = zyjs.VelKAver; yth.BTGDSZS = zyjs.dsRev; yth.IGHJWD = zyjs.temperature; yth.IGHJSD = zyjs.humidity; yth.IGHJDQY = zyjs.pressure; yth.JCZT = zyjs.All_Judge.ChangePD(); yth.YCY = YCY; yth.JCLSH = JCLSH; yth.KSJCSJ = zyjs.RunStartTime; yth.JSJCSJ = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); hashtable.Clear(); string[] ignoreField = yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) == null || string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).Select(p => p.Name).ToArray(); yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) != null && !string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).ToList().ForEach(p => hashtable.Add($"{p.Name}", p.GetValue(yth, null))); IsSave = MssqlHelper.GetInstance().InsertOrUpdate(yth, hashtable, new string[] { "JCLSH" }, ignoreField); } else if ("28".Equals(jcff)) //VMAS { Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", "读取VMAS"); VMAS vmas = new VMAS(); FillEntityByIni(vmas); YTH_CHECKDATA yth = new YTH_CHECKDATA(); yth.JCFFID = "28"; if ("0".Equals(vmas.IS_HC_NOX)) { yth.HCPFXZ = vmas.stdHC; yth.HCPFJG = vmas.HC; yth.HCPFPD = vmas.HC_Judge.ChangePD(); yth.NOXPFXZ = vmas.stdNox; yth.NOXPFJG = vmas.Nox; yth.NOXPFPD = vmas.Nox_Judge.ChangePD(); } else { yth.HCPFJG = vmas.HC; yth.HCPFPD = vmas.HC_Judge.ChangePD(); yth.NOXPFJG = vmas.Nox; yth.NOXPFPD = vmas.Nox_Judge.ChangePD(); yth.HC_NOXXZ = vmas.stdHC_Nox; yth.HC_NOXJG = vmas.HC_Nox; yth.HC_NOXPD = vmas.HC_Nox_Judge.ChangePD(); } yth.JUDGETYPE = vmas.IS_HC_NOX; yth.COPFXZ = vmas.stdCO; yth.COPFJG = vmas.CO; yth.COPFPD = vmas.CO_Judge.ChangePD(); yth.IGHJWD = vmas.temperature; yth.IGHJSD = vmas.humidity; yth.IGHJDQY = vmas.pressure; yth.JCZT = vmas.All_Judge.ChangePD(); yth.YCY = YCY; yth.JCLSH = JCLSH; yth.KSJCSJ = DateTime.Now.AddMinutes(-3).ToString("yyyy-MM-dd HH:mm:ss"); yth.JSJCSJ = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); hashtable.Clear(); string[] ignoreField = yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) == null || string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).Select(p => p.Name).ToArray(); yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) != null && !string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).ToList().ForEach(p => hashtable.Add($"{p.Name}", p.GetValue(yth, null))); IsSave = MssqlHelper.GetInstance().InsertOrUpdate(yth, hashtable, new string[] { "JCLSH" }, ignoreField); } else if ("13".Equals(jcff)) //LD { Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", "读取LD"); LD ld = new LD(); FillEntityByIni(ld); YTH_CHECKDATA yth = new YTH_CHECKDATA(); yth.JCFFID = "13"; yth.ZDLBGLXZ = ld.stdMaxHP; yth.SCZDLBGL = ld.MaxHP; //yth.FDJEDZSSX = ld.MaxHP; //yth.FDJEDZSXX = ld.MaxHP; yth.SCFDJEDZS = ld.DSZS; yth.LDPFXZ = ld.stdVelK; yth.PFJG100 = ld.VelK100; yth.PFJG80 = ld.VelK80; yth.PFJG90 = ld.NO80; yth.LDHJWD = ld.temperature; yth.LDHJSD = ld.humidity; yth.LDHJDQY = ld.pressure; yth.JCZT = ld.All_Judge.ChangePD(); yth.YCY = YCY; yth.JCLSH = JCLSH; yth.KSJCSJ = DateTime.Now.AddMinutes(-3).ToString("yyyy-MM-dd HH:mm:ss"); yth.JSJCSJ = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); hashtable.Clear(); string[] ignoreField = yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) == null || string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).Select(p => p.Name).ToArray(); yth.GetType().GetProperties().Where(p => p.GetValue(yth, null) != null && !string.IsNullOrEmpty(p.GetValue(yth, null).ToString())).ToList().ForEach(p => hashtable.Add($"{p.Name}", p.GetValue(yth, null))); IsSave = MssqlHelper.GetInstance().InsertOrUpdate(yth, hashtable, new string[] { "JCLSH" }, ignoreField); } Live0xUtils.LogUtils.TxtLog.Append(AppHelper.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", "保存结果" + IsSave); }
/// <summary> /// 用检测编号和次数查询一条检测数据 /// </summary> /// <param name="jcbh">检测编号</param> /// <param name="jccs">检测次数</param> /// <returns>ASM检测数据Model</returns> public VMAS Get_VMAS(string CLID) { DateTime a; string sql = "select * from vmas where CLID=@CLID"; SqlParameter[] spr = { new SqlParameter("@CLID", CLID) }; try { VMAS vmas = new VMAS(); DataTable dt = DBHelperSQL.GetDataTable(sql, CommandType.Text, spr); if (dt.Rows.Count > 0) { vmas.CLID = dt.Rows[0]["CLID"].ToString();//1 vmas.CLPH = dt.Rows[0]["CLPH"].ToString(); vmas.COZL = dt.Rows[0]["COZL"].ToString(); vmas.COXZ = dt.Rows[0]["COXZ"].ToString(); vmas.COPD = dt.Rows[0]["COPD"].ToString(); vmas.NOXZL = dt.Rows[0]["NOXZL"].ToString();//6 vmas.NOXXZ = dt.Rows[0]["NOXXZ"].ToString(); vmas.NOXPD = dt.Rows[0]["NOXPD"].ToString(); vmas.HCZL = dt.Rows[0]["HCZL"].ToString(); vmas.HCXZ = dt.Rows[0]["HCXZ"].ToString(); vmas.HCPD = dt.Rows[0]["HCPD"].ToString();//11 vmas.ZHPD = dt.Rows[0]["ZHPD"].ToString(); DateTime.TryParse(dt.Rows[0]["JCRQ"].ToString(), out a); if (a != null) { vmas.JCRQ = a; } else { vmas.JCRQ = DateTime.Today; } vmas.WD = dt.Rows[0]["WD"].ToString(); vmas.SD = dt.Rows[0]["SD"].ToString(); vmas.DQY = dt.Rows[0]["DQY"].ToString();//16 vmas.SBMC = dt.Rows[0]["SBMC"].ToString(); vmas.SBXH = dt.Rows[0]["SBXH"].ToString(); vmas.SBZZC = dt.Rows[0]["SBZZC"].ToString(); vmas.CGJXH = dt.Rows[0]["CGJXH"].ToString(); vmas.CGJBH = dt.Rows[0]["CGJBH"].ToString();//21 vmas.CGJZZC = dt.Rows[0]["CGJZZC"].ToString(); vmas.FXYXH = dt.Rows[0]["FXYXH"].ToString(); vmas.FXYBH = dt.Rows[0]["FXYBH"].ToString(); vmas.FXYZZC = dt.Rows[0]["FXYZZC"].ToString(); vmas.LLJXH = dt.Rows[0]["LLJXH"].ToString(); vmas.LLJBH = dt.Rows[0]["LLJBH"].ToString(); vmas.LLJZZC = dt.Rows[0]["LLJZZC"].ToString(); vmas.BEFORE = dt.Rows[0]["BEFORE"].ToString(); } else { vmas.CLID = "-2"; } return(vmas); } catch (Exception) { throw; } }
/// <summary> /// 用ASM对象插入或更新条检测数据 /// </summary> /// <param name="asm">ASM</param> /// <returns>int 0为失败,1为插入成功,2为更新成功</returns> public int Save_VMAS(VMAS vmas) { string sqli = "insert into vmas(CLID,CLPH,COZL,COXZ,COPD,NOXZL,NOXXZ,NOXPD,HCZL,HCXZ,HCPD,ZHPD,JCRQ,WD,SD,DQY,SBMC,SBXH,SBZZC,CGJXH,CGJBH,CGJZZC,FXYXH,FXYBH,FXYZZC,LLJXH,LLJBH,LLJZZC,BEFORE) values(@CLID,@CLPH,@COZL,@COXZ,@COPD,@NOXZL,@NOXXZ,@NOXPD,@HCZL,@HCXZ,@HCPD,@ZHPD,@JCRQ,@WD,@SD,@DQY,@SBMC,@SBXH,@SBZZC,@CGJXH,@CGJBH,@CGJZZC,@FXYXH,@FXYBH,@FXYZZC,@LLJXH,@LLJBH,@LLJZZC,@BEFORE)"; string sqlu = "update vmas set CLPH=@CLPH,COZL=@COZL,COXZ=@COXZ,COPD=@COPD,NOXZL=@NOXZL,NOXXZ=@NOXXZ,NOXPD=@NOXPD,HCZL=@HCZL,HCXZ=@HCXZ,HCPD=@HCPD,ZHPD=@ZHPD,JCRQ=@JCRQ,WD=@WD,SD=@SD,DQY=@DQY,SBMC=@SBMC,SBXH=@SBXH,SBZZC=@SBZZC,CGJXH=@CGJXH,CGJBH=@CGJBH,CGJZZC=@CGJZZC,FXYXH=@FXYXH,FXYBH=@FXYBH,FXYZZC=@FXYZZC,LLJXH=@LLJXH,LLJBH=@LLJBH,LLJZZC=@LLJZZC,BEFORE=@BEFORE where CLID=@CLID"; SqlParameter[] spr = { new SqlParameter("@CLID", vmas.CLID), //1 new SqlParameter("@CLPH", vmas.CLPH), new SqlParameter("@COZL", vmas.COZL), new SqlParameter("@COXZ", vmas.COXZ), new SqlParameter("@COPD", vmas.COPD), new SqlParameter("@NOXZL", vmas.NOXZL), //6 new SqlParameter("@NOXXZ", vmas.NOXXZ), new SqlParameter("@NOXPD", vmas.NOXPD), new SqlParameter("@HCZL", vmas.HCZL), new SqlParameter("@HCXZ", vmas.HCXZ), new SqlParameter("@HCPD", vmas.HCPD), //11 new SqlParameter("@ZHPD", vmas.ZHPD), new SqlParameter("@JCRQ", vmas.JCRQ), new SqlParameter("@WD", vmas.WD), new SqlParameter("@SD", vmas.SD), new SqlParameter("@DQY", vmas.DQY), //16 new SqlParameter("@SBMC", vmas.SBMC), new SqlParameter("@SBXH", vmas.SBXH), new SqlParameter("@SBZZC", vmas.SBZZC), new SqlParameter("@CGJXH", vmas.CGJXH), new SqlParameter("@CGJBH", vmas.CGJBH), //21 new SqlParameter("@CGJZZC", vmas.CGJZZC), new SqlParameter("@FXYXH", vmas.FXYXH), new SqlParameter("@FXYBH", vmas.FXYBH), new SqlParameter("@FXYZZC", vmas.FXYZZC), //47 new SqlParameter("@LLJXH", vmas.FXYXH), new SqlParameter("@LLJBH", vmas.FXYBH), new SqlParameter("@LLJZZC", vmas.FXYZZC), //47 new SqlParameter("@BEFORE", vmas.BEFORE) }; try { if (Have_VMAS(vmas.CLID)) { if (DBHelperSQL.Execute(sqlu, spr) > 0) { return(2); } else { return(0); } } else { if (DBHelperSQL.Execute(sqli, spr) > 0) { return(1); } else { return(0); } } } catch (Exception) { throw; } }
public void init_data(string jcbh, string jcff) { if (jcff == "简易瞬态工况法") { VMAS vmasdata = vmasdal.Get_VMAS(jcbh); label_cp.Text = vmasdata.JCCLPH; label_bh.Text = vmasdata.JCBH; label_ff.Text = jcff; string[] vmas_cs = vmasdata.MMCS.Split(','); string[] vmas_o2 = vmasdata.MMO2.Split(','); string[] vmas_co = vmasdata.MMCO.Split(','); string[] vmas_co2 = vmasdata.MMCO2.Split(','); string[] vmas_hc = vmasdata.MMHC.Split(','); string[] vmas_no = vmasdata.MMNO.Split(','); string[] vmas_xisio2 = vmasdata.MMXSO2.Split(','); string[] vmas_lljll = vmasdata.MMBZLL.Split(','); string[] vmas_sjll = vmasdata.MMSJLL.Split(','); string[] vmas_xsb = vmasdata.MMXSXS.Split(','); string[] vmas_cozl = vmasdata.MMCOZL.Split(','); string[] vmas_hczl = vmasdata.MMHCZL.Split(','); string[] vmas_nozl = vmasdata.MMNOZL.Split(','); string[] vmas_lljyl = vmasdata.MMLLJYL.Split(','); string[] vmas_lljwd = vmasdata.MMLLJWD.Split(','); if (vmasdata.GKSJ != "") { for (int i = 0; i < int.Parse(vmasdata.GKSJ); i++) { DataRow dr = dt.NewRow(); dr["工况时间(s)"] = i.ToString(); if (vmas_cs.Length > i) { dr["车速(m/s)"] = vmas_cs[i]; } if (vmas_o2.Length > i) { dr["O2浓度(%)"] = vmas_o2[i]; } if (vmas_co.Length > i) { dr["CO浓度(%)"] = vmas_co[i]; } if (vmas_co2.Length > i) { dr["CO2浓度(%)"] = vmas_co2[i]; } if (vmas_hc.Length > i) { dr["HC浓度(10-6)"] = vmas_hc[i]; } if (vmas_no.Length > i) { dr["NO浓度(10-6)"] = vmas_no[i]; } if (vmas_xisio2.Length > i) { dr["稀释O2浓度(%)"] = vmas_xisio2[i]; } if (vmas_lljll.Length > i) { dr["流量计流量(L/s)"] = vmas_lljll[i]; } if (vmas_sjll.Length > i) { dr["尾气实际流量(L/s)"] = vmas_sjll[i]; } if (vmas_xsb.Length > i) { dr["稀释比"] = vmas_xsb[i]; } if (vmas_cozl.Length > i) { dr["CO质量(mg)"] = vmas_cozl[i]; } if (vmas_nozl.Length > i) { dr["NO质量(mg)"] = vmas_nozl[i]; } if (vmas_hczl.Length > i) { dr["HC质量(mg)"] = vmas_hczl[i]; } if (vmas_lljwd.Length > i) { dr["流量计温度(℃)"] = vmas_lljwd[i]; } if (vmas_lljyl.Length > i) { dr["流量计压力(kPa)"] = vmas_lljyl[i]; } dt.Rows.Add(dr); dataGridView1.DataSource = dt; } } } else if (jcff == "加载减速法") { JZJS jzjsdata = jzjsdal.Get_JZJS(jcbh); label_cp.Text = jzjsdata.JCCLPH; label_bh.Text = jzjsdata.JCBH; label_ff.Text = jcff; string[] jzjs_cs = jzjsdata.MMZGXSD.Split(','); string[] jzjs_zs = jzjsdata.MMFDJZS.Split(','); string[] jzjs_btg = jzjsdata.MMXGK.Split(','); string[] jzjs_nl = jzjsdata.MMZGZDL.Split(','); string[] jzjs_power = jzjsdata.MMCGJFH.Split(','); if (jzjsdata.GKSJ != null && jzjsdata.GKSJ != 0) { for (int i = 0; i < jzjsdata.GKSJ; i++) { DataRow dr = dt.NewRow(); dr["工况时间(s)"] = i.ToString(); if (jzjs_cs.Length > i) { dr["车速(m/s)"] = jzjs_cs[i]; } if (jzjs_nl.Length > i) { dr["扭力(N)"] = jzjs_nl[i]; } if (jzjs_power.Length > i) { dr["功率(KW)"] = jzjs_power[i]; } if (jzjs_zs.Length > i) { dr["转速(转/分)"] = jzjs_zs[i]; } if (jzjs_btg.Length > i) { dr["烟度值(m-1)"] = jzjs_btg[i]; } dt.Rows.Add(dr); dataGridView1.DataSource = dt; } } } }