//开始测试 private void StartTest() { VehilceQueue vehilceQueue = CGridHelper.GetCurrentData <VehilceQueue>(dgvVehicle); if (vehilceQueue != null) { TaskQueue.ClearQueue(); TaskQueue.WaitResult = false; string sql = $"SELECT * FROM YTH_V_CLLSXXB WHERE JCLSH = @JCLSH "; Hashtable paraHashtable = new Hashtable(); paraHashtable.Add("JCLSH", vehilceQueue.jclsh); YTH_V_CLLSXXB cllsxxb = MssqlHelper.GetInstance().Query <YTH_V_CLLSXXB>(sql, paraHashtable); TaskQueue.JCLSH = vehilceQueue.jclsh; if (cllsxxb.zjjyxm.ToLower().Contains("hw")) { SelectMethodForm selectForm = new SelectMethodForm(); GlobalVar.IsShowForm = true; selectForm.ShowDialog(this); GlobalVar.IsShowForm = false; if (selectForm.DialogResult == DialogResult.OK) { string jyxm = selectForm.GetMethod(); if ("15".Equals(jyxm)) { GlobalVar.IsShowForm = true; AlterStandardForm alterStandardForm = new AlterStandardForm(); alterStandardForm.ShowDialog(this); GlobalVar.IsShowForm = false; } if (!string.IsNullOrEmpty(jyxm)) { TaskQueue.AddTask(CreateTxt(cllsxxb, jyxm)); } } } if (cllsxxb.zjjyxm.ToLower().Contains("nj") || cllsxxb.zjjyxm.ToLower().Contains("yh") || cllsxxb.zjjyxm.ToLower().Contains("s1")) { TaskQueue.AddTask(CreateTxt(cllsxxb, "40", cllsxxb.zjjyxm.ToLower().Contains("nj"), cllsxxb.zjjyxm.ToLower().Contains("yh"), cllsxxb.zjjyxm.ToLower().Contains("s1"))); } } }
//创建开始测试文本 private string CreateTxt(YTH_V_CLLSXXB cllsxxb, string jcff, bool testDLX = false, bool testYH = false, bool testSD = false) { m_stringBuilder.Clear(); m_stringBuilder.Append("[FILE_STATUS]"); m_stringBuilder.Append("\r\nSTATUS=0"); // 文件写完后把状态改为1,为1是说明文件写完毕 m_stringBuilder.Append("\r\n[VEHICLEINFO]"); m_stringBuilder.Append($"\r\nJCLSH={cllsxxb.jclsh}"); //检测流水号 m_stringBuilder.Append($"\r\nCLHM={cllsxxb.hphm}"); // 车辆号码 m_stringBuilder.Append($"\r\nCLZL=" + (cllsxxb.cllx.ToUpper().Contains("K") ? "客车" : "货车")); // 车辆种类(轿车、客车、货车、三轮汽车或低速货车) m_stringBuilder.Append("\r\nDJRQ=" + cllsxxb.ccdjrq.ToCustomerDate("yyyy-MM-dd")); // 初次登记日期 m_stringBuilder.Append($"\r\nZKRS=" + (cllsxxb.zkrs.ToInt() == 0 ? 5 : cllsxxb.zkrs.ToInt())); // 载客员数 m_stringBuilder.Append($"\r\nRYZL=" + getRLZL(cllsxxb.rlzl)); // 燃油种类(汽油、柴油、天然气、甲醇或乙醇、液化石油气、 插电式混合动力) m_stringBuilder.Append($"\r\nEDZS=" + (cllsxxb.edzs.ToInt() <= 1000 ? "5000" : cllsxxb.edzs)); //额定转速 m_stringBuilder.Append($"\r\nZZL={cllsxxb.zzl}"); //总质量 m_stringBuilder.Append($"\r\nZBZL={cllsxxb.zbzl}"); // 整备质量 m_stringBuilder.Append($"\r\nQDZS={getQDZS(cllsxxb.qdxs)}"); //(单轴驱动、双轴驱动) m_stringBuilder.Append($"\r\nEDNJ={cllsxxb.EDNJ}"); //额定扭矩 m_stringBuilder.Append($"\r\nEDNJZS={cllsxxb.EDNJZS}"); // 额定扭矩转速 if ("40".Equals(jcff)) { m_stringBuilder.Append($"\r\nEDGL={cllsxxb.EDGL}"); // 额定功率 } else { m_stringBuilder.Append($"\r\nEDGL={cllsxxb.gl}"); } m_stringBuilder.Append($"\r\nJQFS={cllsxxb.jqfs}"); // 进气方式(自然进气、涡轮增压) m_stringBuilder.Append($"\r\nLTGGLX={cllsxxb.ltgglx}"); //轮胎规格类型(0子午线 1斜交轮) m_stringBuilder.Append($"\r\nQDZKZZL={cllsxxb.qdzkzzl}"); //驱动轴空载质量(kg) m_stringBuilder.Append($"\r\nSYXZ={cllsxxb.syxz}"); //使用性质(危险品运输、其他) m_stringBuilder.Append($"\r\nJYLB=等级评定"); //检验类别(等级评定、其他) m_stringBuilder.Append($"\r\nYCY={cllsxxb.YCY}"); //引车员 m_stringBuilder.Append($"\r\nCHZHQ=" + (cllsxxb.sychzhq ?? "0")); //三元催化(无、有) m_stringBuilder.Append($"\r\nGYXTXS={cllsxxb.gyxtxs}"); //供油系统形式(化油器、开环电喷、闭环电喷) m_stringBuilder.Append($"\r\nJCFF={jcff}"); // 检测方法(15双怠速,14自由加速,40底盘测功,25ASM ,28VMAS , 26lugdown) if (testDLX) { m_TestArr[0] = 1; } else { m_TestArr[0] = 0; } if (testYH) { m_TestArr[6] = 1; } else { m_TestArr[6] = 0; } if (testSD) { m_TestArr[3] = 1; } else { m_TestArr[3] = 0; } m_stringBuilder.Append($"\r\nJCXM=" + string.Join("", m_TestArr)); //检测项目(测功机的检验项目)(检测项目=40时,需要填写 ,第一位表示动力性测试例如:10000000,第四位表示速度表效验,第7位表示油耗,当JCXM=10010010表示测试动力性,速度表和油耗) m_stringBuilder.Append($"\r\nstdCO_L=0.6"); //怠速CO标准 (不检测可以不填) m_stringBuilder.Append($"\r\nstdHC_L=80"); //怠速HC标准 (不检测可以不填) m_stringBuilder.Append($"\r\nstdCO_H=0.3"); //高怠速CO标准 (不检测可以不填) m_stringBuilder.Append($"\r\nstdHC_H=50"); //高怠速HC标准 (不检测可以不填) m_stringBuilder.Append($"\r\nRPM_XZ=200"); // 转速波动范围限值 (不检测可以不填) m_stringBuilder.Append($"\r\nR_x={GlobalVar.GLKQXSXX}"); //过量空气系数标准下限 (不检测可以不填) m_stringBuilder.Append($"\r\nR_s={GlobalVar.GLKQXSSX}"); //过量空气系数标准上限 (不检测可以不填) m_stringBuilder.Append($"\r\nstdK=1.2"); //自由加速标准 (不检测可以不填) m_stringBuilder.Append($"\r\nCO5025=0.50 "); //ASM 5025CO (不检测可以不填) m_stringBuilder.Append($"\r\nHC5025=90"); //ASM 5025HC (不检测可以不填) m_stringBuilder.Append($"\r\nNO5025=700"); //ASM5025NO (不检测可以不填) m_stringBuilder.Append($"\r\nCO2540=0.40"); //ASM2540CO (不检测可以不填) m_stringBuilder.Append($"\r\nHC2540=80"); // ASM2540HC(不检测可以不填) m_stringBuilder.Append($"\r\nNO2540=650"); // ASM2540NO(不检测可以不填) m_stringBuilder.Append($"\r\nVMASCO=8.0"); // VMAS CO 限值(不检测可以不填) m_stringBuilder.Append($"\r\nVMASHC=1.6"); // VMAS HC 限值(不检测可以不填) m_stringBuilder.Append($"\r\nVMASNO=1.3"); // VMAS NO 限值(不检测可以不填) m_stringBuilder.Append($"\r\nLGDNK=1.2"); // LUGDOWN K 限值(不检测可以不填) m_stringBuilder.Append($"\r\nLGDNNO=1500"); // LUGDOWN NO 限值(不检测可以不填) m_stringBuilder.Append($"\r\nLGDNHP=0.4"); // 达标功率限值系数 信息中车辆的额定功率必须有(不检测可以不填 m_stringBuilder.Append($"\r\nYH_BZ={cllsxxb.EDYH}"); m_stringBuilder.Append($"\r\nYH_SD={cllsxxb.YHSDD}"); return(m_stringBuilder.ToString()); }