新评判打包

This commit is contained in:
lixiao 2025-04-21 09:14:30 +08:00
parent 773f7af44b
commit bd4c88be60
12 changed files with 176 additions and 152 deletions

View File

@ -27,7 +27,7 @@
#define JUDGE_VERSION_MAJOR 1 #define JUDGE_VERSION_MAJOR 1
#define JUDGE_VERSION_MINOR 0 #define JUDGE_VERSION_MINOR 0
#define JUDGE_VERSION_PATCH 3 #define JUDGE_VERSION_PATCH 3
#define JUDGE_VERSION_STAMP "2504171042b" #define JUDGE_VERSION_STAMP "2504191100b"
#if JUDGE_USE_OLD #if JUDGE_USE_OLD
# undef JUDGE_VERSION_STAMP # undef JUDGE_VERSION_STAMP
# define JUDGE_VERSION_STAMP "2411121010b.old" # define JUDGE_VERSION_STAMP "2411121010b.old"

View File

@ -121,6 +121,7 @@ namespace siteof
siteof_declare(JXYTSF001); siteof_declare(JXYTSF001);
siteof_declare(hnzzkm3); siteof_declare(hnzzkm3);
siteof_declare(jswxbz); siteof_declare(jswxbz);
siteof_declare(scms);
siteof_declare(tcrx); //无锡所检测地点版本特殊 siteof_declare(tcrx); //无锡所检测地点版本特殊

View File

@ -135,7 +135,8 @@ ErrorCode ExamCarSub2::examGoonExam()
} }
//已经不合格了 如果是考试模式,只要分数不合格就立即结束考试 //已经不合格了 如果是考试模式,只要分数不合格就立即结束考试
if( (isExamMode() && !isQualified()) || allItemFinish() ) //20250418无锡科目二考试结束的地方网络不好存在考试结束无法上传需要支持ykxm项目全部做完了评判初始化、开始考试能调用成功问过工程wins是这么操作的。
if( (isExamMode() && !isQualified()) /*|| allItemFinish()*/ )
{ {
//createEventExamFinish(ExamFinishAuto); //杨 20240724 都由苏那边控制 //createEventExamFinish(ExamFinishAuto); //杨 20240724 都由苏那边控制
return QE(errorBeginNotQual); //已经不合格了 return QE(errorBeginNotQual); //已经不合格了
@ -347,7 +348,7 @@ void ExamCarSub2::dealJudgeExam()
} }
if(allItemFinish()) //如果所有项目都做过了,就不用再读项目了 if(allItemFinish()) //如果所有项目都做过了,就不用再读项目了
{ {
logdebug("allItemFinish"); //logdebug("allItemFinish");
return; return;
} }

View File

@ -1045,6 +1045,14 @@ void ExamCarSub3::UpdateCarParmWithSystemParm()
} }
}; };
const auto PARM_NO3_70 = [&](const TSystemparm* parm)->void
{
if(parm->TXT1 != "")
{
m_car.XiHuo = std::atoi(parm->TXT1.c_str());
}
};
//得到考车参数 //得到考车参数
int parm3Size = TableSysParm->parm3Size(); int parm3Size = TableSysParm->parm3Size();
for(int i = 0; i < parm3Size; i++) for(int i = 0; i < parm3Size; i++)
@ -1094,6 +1102,7 @@ void ExamCarSub3::UpdateCarParmWithSystemParm()
PARM_CASE_WITH(61); //61:按车型设置的靠边停车参数 PARM_CASE_WITH(61); //61:按车型设置的靠边停车参数
PARM_CASE_WITH(62); //62:按车型设置的夜间模拟灯光触发条件 PARM_CASE_WITH(62); //62:按车型设置的夜间模拟灯光触发条件
PARM_CASE_WITH(63); //63:满分学习的学员考试必考项目(非正常的科目三学员),目前可以暂不考虑这种学员 PARM_CASE_WITH(63); //63:满分学习的学员考试必考项目(非正常的科目三学员),目前可以暂不考虑这种学员
PARM_CASE_WITH(70); //同500熄火参数
PARM_SWITCH_END; PARM_SWITCH_END;
} }

View File

@ -282,6 +282,10 @@ void Sub3Judge20Comm::Init_ZongHe()
//自动熄火评判方式:熄火次数扣分,1:根据PLC熄火次数 2根据点火2其它值根据发动机转速为0或点火2+转速大于100 //自动熄火评判方式:熄火次数扣分,1:根据PLC熄火次数 2根据点火2其它值根据发动机转速为0或点火2+转速大于100
m_itemvCJH.zdxhkf = s500.size() > 1 && s500[1] != "" ? std::atoi(s500[1].c_str()) : 0; m_itemvCJH.zdxhkf = s500.size() > 1 && s500[1] != "" ? std::atoi(s500[1].c_str()) : 0;
if(tcar->XiHuo != INVALID_INDEX) //优先以车型代码参数NO3=70,同500参数
{
m_itemvCJH.zdxhkf = tcar->XiHuo;
}
//踩副刹时长 //踩副刹时长
m_itemvCJH.fscys = s500.size() > 2 && s500[2] != "" ? std::atoi(s500[2].c_str()) : 5; m_itemvCJH.fscys = s500.size() > 2 && s500[2] != "" ? std::atoi(s500[2].c_str()) : 5;
//挡位扣分间隔 //挡位扣分间隔
@ -1316,9 +1320,23 @@ void Sub3Judge20Comm::Judge_KongDangHuaXing()
//空挡滑行30115 相关评判 //空挡滑行30115 相关评判
if(m_itemvCJH.kdhx_tk > 0) if(m_itemvCJH.kdhx_tk > 0)
{ {
if(sor.dw > 0 || cg->move != moveForward || Tools::isZero(gps.sd) || sor.lhq == SYES || bool i = false;
(ksdd == siteof::changzhoukm3 && sor.lhq == SYES) || if(sor.dw > 0 || cg->move != moveForward || Tools::isZero(gps.sd))
(ksdd == siteof::zjhz && sor.lhq == SYES)) {
i = true;
}
if(ksdd != siteof::scms && sor.lhq == SYES)
{
i = true;
}
const std::vector<std::string>& s507 = TableSysSet->asArray507();
std::string ss507 = s507.size() > 11 ? s507[11] : "";
if(ss507 != "1" && sor.lhq == SYES)
{
i = true;
}
if(i)
{ {
m_itemvCJH.kdhx_tk = 0; m_itemvCJH.kdhx_tk = 0;
} }
@ -4557,6 +4575,7 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
if(gps.sd < 5.0 && gps1.sd < 5.0 && gps2.sd < 5.0) return; if(gps.sd < 5.0 && gps1.sd < 5.0 && gps2.sd < 5.0) return;
#define HIS(x) m_car->historySensor(x).dw
//SysSet[425] 一档一离合相关 //SysSet[425] 一档一离合相关
// (* // (*
// 加减档位操作挂一个挡位要松一次离合器(项目,全程0-否 1-是)() // 加减档位操作挂一个挡位要松一次离合器(项目,全程0-否 1-是)()
@ -4566,8 +4585,7 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw);//加减挡 TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw);//加减挡
if(item14 && item14->TestPro == ItemProFlagIdle && ss425 == "1") if(item14 && item14->TestPro == ItemProFlagIdle && ss425 == "1")
{ {
const TSensorInfo& sor3 = m_car->historySensor(3); if(sor.dw == HIS(1) && sor.dw != HIS(2) && sor.dw != HIS(3) && sor.dw > 0)
if(sor.dw == sor1.dw && sor.dw != sor2.dw && sor.dw != sor3.dw && sor.dw > 0)
{ {
int dw = sor.dw; int dw = sor.dw;
int k = 0; int k = 0;
@ -4580,18 +4598,12 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
const TSensorInfo& sori = m_car->historySensor(i); const TSensorInfo& sori = m_car->historySensor(i);
int dw_i0 = sori.dw;
int dw_i1 = m_car->historySensor(i + 1).dw;
int dw_i2 = m_car->historySensor(i + 2).dw;
int dw_i3 = m_car->historySensor(i + 3).dw;
int dw_i4 = m_car->historySensor(i + 4).dw;
int dw_i5 = m_car->historySensor(i + 5).dw;
int dw_i6 = m_car->historySensor(i + 6).dw;
if(sori.lhq == SNOT) break; if(sori.lhq == SNOT) break;
if(dw_i0 == SNOT) continue; if(sori.dw == 0) continue;
if(dw != dw_i0 && dw_i0 == dw_i1 && dw_i0 == dw_i2 && dw_i0 == dw_i3 && if(dw != sori.dw &&
dw_i0 == dw_i4 && dw_i0 == dw_i5 && dw_i0 == dw_i6) sori.dw == HIS(i+1) && sori.dw == HIS(i+2) && sori.dw == HIS(i+3) &&
sori.dw == HIS(i+4) && sori.dw == HIS(i+5) && sori.dw == HIS(i+6))
{ {
k = k + 1; k = k + 1;
dw = sori.dw; dw = sori.dw;
@ -4604,11 +4616,45 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
} }
/*
if Ctl.ksdd = 'wuxijiance' then
begin
if (cg.di_lhq = 1) and (cg.ai_dw = 3) then
begin
for i := 1 to 100 do
begin
if lscg[zj(i)].di_lhq = 0 then
Break;
if lscg[zj(i)].ai_dw > 3 then
Break;
if lscg[zj(i)].ai_dw = 1 then
begin
Mark(14, '01', True);
Break;
end;
end;
end;
end;
*/
int count = m_car->historyCount(); int count = m_car->historyCount();
bool btempkf = false;
bool btemp1 = false;
bool btemp2 = false;
//越级加减档持续时间 //越级加减档持续时间
if(m_itemvCJH.yjjdcxsj == 0) if(m_itemvCJH.yjjdcxsj == 0)
{ {
if(sor.dw == sor1.dw && sor.dw == sor2.dw && sor.dw > 0 && sor.dw < 9 && bool ix = 0;
if(sor.lhq == SNOT)
{
ix = 1;
}
if(ksdd == siteof::lfgakm3)
{
ix = 1;
}
if(sor.dw == HIS(1) && sor.dw == HIS(2) && sor.dw > 0 && sor.dw < 9 &&
sor.lhq == SNOT && gps.sd > 5 && !IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214 sor.lhq == SNOT && gps.sd > 5 && !IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214
{ {
for(int i = 3; i < 53; i++) for(int i = 3; i < 53; i++)
@ -4619,31 +4665,27 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
const TChuanGan* hisi = m_car->historyChuanGan(i); const TChuanGan* hisi = m_car->historyChuanGan(i);
const TSensorInfo& sori = hisi->real.sensor; const TSensorInfo& sori = hisi->real.sensor;
int dw_i0 = sori.dw;
if(dw_i0 != 0) continue;
int dw_i1 = m_car->historySensor(i + 1).dw; if(sori.dw >= sor.dw && sori.lhq == SNOT) break;
int dw_i2 = m_car->historySensor(i + 2).dw; if(sori.dw + 1 == sor.dw && sori.lhq == SNOT) break;
if(dw_i1 >= sor.dw && sori.lhq == SNOT) break; if(sori.dw == 0)
if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; btemp1 = true;
if(sori.lhq == SYES)
btemp2 = true;
if(ksdd == siteof::shandong)
btemp2 = true;
if(ksdd == siteof::scms || ksdd == siteof::hnay || ksdd == siteof::lfgakm3)
btemp1 = true;
if(btemp1 && btemp2)
btempkf = true;
if(dw_i1 < sor.dw && dw_i1 > 0 && dw_i1 == dw_i2) if(sori.dw < sor.dw && HIS(i+1) == sori.dw && sori.dw > 0)
{ {
if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) if(sor.dw - sori.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt && btempkf)
{ {
bool FindFlag = false;
if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡 TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡
if(item14 && item14->TestPro > ItemProFlagIdle) if((item14 && item14->TestPro > ItemProFlagIdle) || ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
if(FindFlag == true)
{ {
JUDGE_MARK_SUB3(14, "01", true); JUDGE_MARK_SUB3(14, "01", true);
} }
@ -4660,12 +4702,18 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
else if(m_itemvCJH.yjjdcxsj == 1) else if(m_itemvCJH.yjjdcxsj == 1)
{ {
const TSensorInfo& sor2 = m_car->historySensor(2); bool ix = 0;
const TSensorInfo& sor3 = m_car->historySensor(3); if(sor.lhq == SNOT && sor1.lhq == SNOT)
const TSensorInfo& sor4 = m_car->historySensor(4); {
if(sor.dw == sor1.dw && sor.dw == sor2.dw && sor.dw == sor3.dw && sor.dw == sor4.dw && ix = 1;
sor.dw > 0 && sor.dw < 9 && sor.lhq == SNOT && sor4.lhq == SNOT && gps.sd > 5 && }
!IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214 if(ksdd == siteof::lfgakm3)
{
ix = 1;
}
if(sor.dw == HIS(1) && sor.dw == HIS(2) && sor.dw == HIS(3) && sor.dw == HIS(4) &&
sor.dw > 0 && sor.dw < 9 && sor.lhq == SNOT && sor1.lhq == SNOT &&
gps.sd > 5 && !IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214
{ {
for(int i = 5; i <= 55; i++) for(int i = 5; i <= 55; i++)
{ {
@ -4676,35 +4724,29 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
const TChuanGan* hisi = m_car->historyChuanGan(i); const TChuanGan* hisi = m_car->historyChuanGan(i);
const TSensorInfo& sori = hisi->real.sensor; const TSensorInfo& sori = hisi->real.sensor;
int dw_i0 = sori.dw;
if(dw_i0 != 0) continue;
int dw_i1 = m_car->historySensor(i + 1).dw; if(sori.dw > sor.dw && sori.lhq == SNOT) break;
int dw_i2 = m_car->historySensor(i + 2).dw; if(sori.dw + 1 == sor.dw && sori.lhq == SNOT) break;
int dw_i3 = m_car->historySensor(i + 3).dw;
int dw_i4 = m_car->historySensor(i + 4).dw;
int dw_i5 = m_car->historySensor(i + 5).dw;
if(dw_i1 > sor.dw && sori.lhq == SNOT) break; if(sori.dw == 0)
if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; btemp1 = true;
if(sori.lhq == SYES)
btemp2 = true;
if(ksdd == siteof::shandong)
btemp2 = true;
if(ksdd == siteof::scms || ksdd == siteof::hnay || ksdd == siteof::lfgakm3)
btemp1 = true;
if(btemp1 && btemp2)
btempkf = true;
if(dw_i1 < sor.dw && dw_i1 > 0 && if(sori.dw < sor.dw &&
dw_i2 == dw_i1 && dw_i3 == dw_i1 && dw_i4 == dw_i1 && dw_i5 == dw_i1) HIS(i+1) == sori.dw && HIS(i+2) == sori.dw &&
HIS(i+3) == sori.dw && HIS(i+4) == sori.dw && sori.dw > 0)
{ {
if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) if(sor.dw - sori.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt && btempkf)
{ {
bool FindFlag = false;
if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡 TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡
if(item14 && item14->TestPro > ItemProFlagIdle) if((item14 && item14->TestPro > ItemProFlagIdle) || ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
if(FindFlag == true)
{ {
JUDGE_MARK_SUB3(14, "01", true); JUDGE_MARK_SUB3(14, "01", true);
} }
@ -4721,18 +4763,20 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
else if(m_itemvCJH.yjjdcxsj == 2) else if(m_itemvCJH.yjjdcxsj == 2)
{ {
const TSensorInfo& sor3 = m_car->historySensor(3); bool ix = 0;
const TSensorInfo& sor4 = m_car->historySensor(4); if(sor.lhq == SNOT && sor2.lhq == SNOT)
const TSensorInfo& sor5 = m_car->historySensor(5); {
const TSensorInfo& sor6 = m_car->historySensor(6); ix = 1;
const TSensorInfo& sor7 = m_car->historySensor(7); }
const TSensorInfo& sor8 = m_car->historySensor(8); if(ksdd == siteof::lfgakm3)
{
ix = 1;
}
if(sor.dw == sor1.dw && sor.dw == sor2.dw && sor.dw == sor3.dw && if(sor.dw == HIS(1) && sor.dw == HIS(2) && sor.dw == HIS(3) &&
sor.dw == sor4.dw && sor.dw == sor5.dw && sor.dw == sor6.dw && sor.dw == HIS(4) && sor.dw == HIS(5) && sor.dw == HIS(6) &&
sor.dw == sor7.dw && sor.dw == sor8.dw && sor.dw > 0 && sor.dw == HIS(7) && sor.dw == HIS(8) && sor.dw > 0 && sor.dw < 9 &&
sor.dw < 9 && sor.lhq == SNOT && sor2.lhq == SNOT && ix == 1 && gps.sd > 5 && !IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214
gps.sd > 5 && !IS_C2(m_carType) && !IS_C5(m_carType)) //增加了车速>5 20151214
{ {
for(int i = 9; i < 59; i++) for(int i = 9; i < 59; i++)
{ {
@ -4742,44 +4786,31 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
} }
const TChuanGan* hisi = m_car->historyChuanGan(i); const TChuanGan* hisi = m_car->historyChuanGan(i);
const TSensorInfo& sori = hisi->real.sensor; const TSensorInfo& sori = hisi->real.sensor;
int dw_i0 = sori.dw;
if(dw_i0 != 0) continue;
int dw_i1 = m_car->historySensor(i + 1).dw; if(sori.dw > sor.dw && sori.lhq == SNOT) break;
int dw_i2 = m_car->historySensor(i + 2).dw; if(sori.dw + 1 == sor.dw && sori.lhq == SNOT) break;
int dw_i3 = m_car->historySensor(i + 3).dw;
int dw_i4 = m_car->historySensor(i + 4).dw;
int dw_i5 = m_car->historySensor(i + 5).dw;
int dw_i6 = m_car->historySensor(i + 6).dw;
int dw_i7 = m_car->historySensor(i + 7).dw;
int dw_i8 = m_car->historySensor(i + 8).dw;
int dw_i9 = m_car->historySensor(i + 9).dw;
int dw_i10 = m_car->historySensor(i + 10).dw;
if(dw_i1 > sor.dw && sori.lhq == SNOT) break; if(sori.dw == 0)
if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; btemp1 = true;
if(sori.lhq == SYES)
btemp2 = true;
if(ksdd == siteof::shandong)
btemp2 = true;
if(ksdd == siteof::scms || ksdd == siteof::hnay || ksdd == siteof::lfgakm3)
btemp1 = true;
if(btemp1 && btemp2)
btempkf = true;
if(dw_i1 < sor.dw && dw_i1 > 0 && dw_i2 == dw_i1 && dw_i3 == dw_i1 && if(sori.dw < sor.dw &&
dw_i4 == dw_i1 && dw_i5 == dw_i1 && dw_i6 == dw_i1 && dw_i7 == dw_i1 && HIS(i+1) == sori.dw && HIS(i+2) == sori.dw && HIS(i+3) == sori.dw &&
dw_i8 == dw_i1 && dw_i9 == dw_i1 && dw_i10 == dw_i1) HIS(i+4) == sori.dw && HIS(i+5) == sori.dw && HIS(i+6) == sori.dw &&
HIS(i+7) == sori.dw && HIS(i+8) == sori.dw && HIS(i+9) == sori.dw && sori.dw > 0)
{ {
if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) if(sor.dw - sori.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt && btempkf)
{ {
bool FindFlag = false;
if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡 TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡
if(item14 && item14->TestPro > ItemProFlagIdle) if((item14 && item14->TestPro > ItemProFlagIdle) || ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{ {
FindFlag = true;
}
if(FindFlag == true)
{
//安卓档位评判好像逻辑上做了优化,比方说越级加档,中间必须出现 0 才判1 跳 3 的情况,没出现 0 不判
//项目经理吉说的先按照这样做
JUDGE_MARK_SUB3(14, "01", true); JUDGE_MARK_SUB3(14, "01", true);
} }
else else
@ -4800,44 +4831,23 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang()
{ {
break; break;
} }
const TChuanGan* hisi = m_car->historyChuanGan(i); const TChuanGan* hisi = m_car->historyChuanGan(i);
const TSensorInfo& sori = hisi->real.sensor; const TSensorInfo& sori = hisi->real.sensor;
int dw_i0 = sori.dw;
int dw_i1 = m_car->historySensor(i + 1).dw; if(sori.dw == 9) break;
int dw_i2 = m_car->historySensor(i + 2).dw;
int dw_i3 = m_car->historySensor(i + 3).dw;
int dw_i4 = m_car->historySensor(i + 4).dw;
int dw_i5 = m_car->historySensor(i + 5).dw;
int dw_i6 = m_car->historySensor(i + 6).dw;
int dw_i7 = m_car->historySensor(i + 7).dw;
int dw_i8 = m_car->historySensor(i + 8).dw;
int dw_i9 = m_car->historySensor(i + 9).dw;
if(dw_i0 == 9) break;
if(hisi->move != moveForward) break; if(hisi->move != moveForward) break;
if(dw_i0 < sor.dw && sori.lhq == SNOT) break; if(sori.dw < sor.dw && sori.lhq == SNOT) break;
if(dw_i0 - 1 == sor.dw && sori.lhq == SNOT) break; if(sori.dw - 1 == sor.dw && sori.lhq == SNOT) break;
if(dw_i0 > sor.dw && dw_i0 > 0 && if(sori.dw > sor.dw &&
dw_i1 == dw_i0 && dw_i2 == dw_i0 && dw_i3 == dw_i0 && HIS(i+1) == sori.dw && HIS(i+2) == sori.dw && HIS(i+3) == sori.dw &&
dw_i4 == dw_i0 && dw_i5 == dw_i0 && dw_i6 == dw_i0 && HIS(i+4) == sori.dw && HIS(i+5) == sori.dw && HIS(i+6) == sori.dw &&
dw_i7 == dw_i0 && dw_i8 == dw_i0 && dw_i9 == dw_i0) HIS(i+7) == sori.dw && HIS(i+8) == sori.dw && HIS(i+9) == sori.dw && sori.dw > 0)
{ {
if(dw_i0 - sor.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) if(sori.dw - sor.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt)
{ {
bool FindFlag = false;
if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡 TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw); //加减挡
if(item14 && item14->TestPro > ItemProFlagIdle) if((item14 && item14->TestPro > ItemProFlagIdle) || ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1)
{
FindFlag = true;
}
if(FindFlag == true)
{ {
JUDGE_MARK_SUB3(14, "01", true); JUDGE_MARK_SUB3(14, "01", true);
} }

View File

@ -1468,6 +1468,8 @@ struct TCar
std::string XSJL_Parm; std::string XSJL_Parm;
int XiHuo = INVALID_INDEX;
//档位转速比 2014111 //档位转速比 2014111
struct TCarZsBl { int CarZsBmin = -1; int CarZsBMax = -1; }; struct TCarZsBl { int CarZsBmin = -1; int CarZsBMax = -1; };
std::array<TCarZsBl, 7> DwZsBl; //20141111 档位转速比 档位转速比 array[1..5] std::array<TCarZsBl, 7> DwZsBl; //20141111 档位转速比 档位转速比 array[1..5]

View File

@ -71,15 +71,15 @@ void MainWindow::init()
KIT_CONNECT(updateNextDoing()); KIT_CONNECT(updateNextDoing());
KIT_CONNECT(updateCheckVersion(int, const QString&)); KIT_CONNECT(updateCheckVersion(int, const QString&));
connect(&m_audio, SIGNAL(QMediaPlayer::error(QMediaPlayer::Error)), //connect(&m_audio, SIGNAL(QMediaPlayer::error(QMediaPlayer::Error)),
SLOT([&](QMediaPlayer::Error error) // SLOT([&](QMediaPlayer::Error error)
{ // {
QMediaPlayer::Error err = m_audio.error(); // QMediaPlayer::Error err = m_audio.error();
QString errStr = m_audio.errorString(); // QString errStr = m_audio.errorString();
//
logwarning("paly-audio file:%s, err:%d-%s ", // logwarning("paly-audio file:%s, err:%d-%s ",
filepath.toUtf8().data(), err, errStr.toUtf8().data()); // filepath.toUtf8().data(), err, errStr.toUtf8().data());
})); // }));
m_ui->loop->clear(); m_ui->loop->clear();
m_ui->loop->addItem(CL8(""), false); m_ui->loop->addItem(CL8(""), false);

View File

@ -413,7 +413,7 @@ p, li { white-space: pre-wrap; }
<rect> <rect>
<x>600</x> <x>600</x>
<y>180</y> <y>180</y>
<width>101</width> <width>111</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>
@ -426,7 +426,7 @@ p, li { white-space: pre-wrap; }
<rect> <rect>
<x>600</x> <x>600</x>
<y>163</y> <y>163</y>
<width>101</width> <width>111</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>

View File

@ -60,7 +60,7 @@ struct Index {
private context = getContext(this) as common.UIAbilityContext; private context = getContext(this) as common.UIAbilityContext;
private serviceExtProxy: IdlServiceExtProxy private serviceExtProxy: IdlServiceExtProxy
@State judgeVersion: string = "" @State judgeVersion: string = ""
private version: string = "2025.04.17.01" private version: string = "2025.04.21.01"
@Styles @Styles
commStyle(){ commStyle(){

View File

@ -111,7 +111,7 @@ struct Index {
FLAG: carInfo.flag, FLAG: carInfo.flag,
BK1: carInfo.bk1, BK1: carInfo.bk1,
BK2: carInfo.bk2, BK2: carInfo.bk2,
X_MCH:carInfo.x_mch, X_MCH: carInfo.x_mch,
}) })
console.info('surenjun =>carinfoArrr',JSON.stringify( this.carinfoArr)) console.info('surenjun =>carinfoArrr',JSON.stringify( this.carinfoArr))
} }

View File

@ -73,6 +73,7 @@ export interface CARINFO {
FLAG: string, FLAG: string,
BK1: string, BK1: string,
BK2: string BK2: string
X_MCH: string
} }
export interface MAPPOINT { export interface MAPPOINT {