新评判
This commit is contained in:
		
							parent
							
								
									da3b0dbc13
								
							
						
					
					
						commit
						9496bc25ef
					
				| @ -5,9 +5,9 @@ | ||||
|         "name": "default", | ||||
|         "material": { | ||||
|           "certpath": "C:\\Users\\93218\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.cer", | ||||
|           "storePassword": "0000001B7CC00976B4DC275EF809F1208139DC3D299795B987E25735A90BA25E0281359B779149F37F25CB", | ||||
|           "storePassword": "0000001B506B2A36F5061652E84DA29003CACEDDCE520572D4070878BE43BB261D6E415822EE2CC5E29829", | ||||
|           "keyAlias": "debugKey", | ||||
|           "keyPassword": "0000001B4799B0C20722DE7A448875A3F176D6CB8285B0C00ACBAD55E6B458EC8710E4794E5EE87B49582A", | ||||
|           "keyPassword": "0000001BDEE0EE8B2C50BC5AAA8DD074192F3E77D412A6D72EAF123FFEF0867B12BDE41DD4DE67A9D51775", | ||||
|           "profile": "C:\\Users\\93218\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p7b", | ||||
|           "signAlg": "SHA256withECDSA", | ||||
|           "storeFile": "C:\\Users\\93218\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p12" | ||||
|  | ||||
										
											Binary file not shown.
										
									
								
							| @ -27,7 +27,7 @@ | ||||
| #define JUDGE_VERSION_MAJOR  1 | ||||
| #define JUDGE_VERSION_MINOR  0 | ||||
| #define JUDGE_VERSION_PATCH  3 | ||||
| #define JUDGE_VERSION_STAMP  "2503241700b" | ||||
| #define JUDGE_VERSION_STAMP  "2503270900b" | ||||
| #if JUDGE_USE_OLD | ||||
| #   undef JUDGE_VERSION_STAMP | ||||
| #   define JUDGE_VERSION_STAMP  "2411121010b.old" | ||||
|  | ||||
| @ -134,6 +134,26 @@ ExamItemCodes SysParmTable::findSub2ExamItems(int carCode) const | ||||
|     return items; | ||||
| } | ||||
| 
 | ||||
| int SysParmTable::findQiBuGear(int carCode) | ||||
| { | ||||
|     //NO1=3 NO2=车型代码 NO3=4条件 TXT1
 | ||||
|     int gear = INVALID_INDEX; | ||||
|     int size = parm3Size(); | ||||
|     for(int i = 0; i < size; i++) | ||||
|     { | ||||
|         const TSystemparm* parm3 = parm3By(i); | ||||
|         if(parm3->NO2 == carCode && parm3->NO3 == 4) | ||||
|         { | ||||
|             if(!parm3->TXT1.empty()) | ||||
|             { | ||||
|                 gear = std::atoi(parm3->TXT1.data()); | ||||
|                 break; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     return gear; | ||||
| } | ||||
| 
 | ||||
| TItemCodes SysParmTable::findItemCodes(ExamItemCodes items) const | ||||
| { | ||||
|     TItemCodes codes; | ||||
|  | ||||
| @ -57,6 +57,12 @@ public: | ||||
|      */ | ||||
|     ExamItemCodes findSub2ExamItems(int carCode) const; | ||||
| 
 | ||||
|     /*
 | ||||
|      * 查找起步档位 NO1=3 NO2=车型代码 NO3=4条件 TXT1 | ||||
|      * | ||||
|      */ | ||||
|     int findQiBuGear(int carCode); | ||||
| 
 | ||||
|     /*
 | ||||
|      * 科二科三通用,通过我们公司自定义的项目代码,获取到无锡所定义的标准项目代码和项目名称(简称)等 | ||||
|      * NO1=6 NO2=公司自定义的项目代码  查出来 NO2:我们公司的项目代码  TXT1:项目名称全称  TXT2:无锡所代码  TXT3:项目名称简称 | ||||
|  | ||||
| @ -257,6 +257,7 @@ class JUDGE_API SysSetTable : public IDBTable | ||||
|     SYSSET_DECLARE(615);                             //侧方停车读卡前进时碰6线不合格 0
 | ||||
|     SYSSET_DECLARE(617, type_int);                   //参数617:语音实时播报项目是否合格(0-否 1-是)语音码:xmhg,xmbhg
 | ||||
|     SYSSET_DECLARE(624);                             //考试评判车门模式
 | ||||
|     SYSSET_DECLARE(641, type_int);                   //641=1 是车尾过5-6延长线结束
 | ||||
|     SYSSET_DECLARE(660);                             //侧方停车项目 停车距离判断阈值控制参数
 | ||||
|     SYSSET_DECLARE(668);                             //安全带评判模式
 | ||||
|     SYSSET_DECLARE(671);                             //停车距离判断阈值控制参数
 | ||||
| @ -397,6 +398,7 @@ class JUDGE_API SysSetTable : public IDBTable | ||||
|         SYSSET_ASSIGN(615); | ||||
|         SYSSET_ASSIGN(617); | ||||
|         SYSSET_ASSIGN(624); | ||||
|         SYSSET_ASSIGN(641); | ||||
|         SYSSET_ASSIGN(660); | ||||
|         SYSSET_ASSIGN(668); | ||||
|         SYSSET_ASSIGN(671); | ||||
|  | ||||
| @ -873,6 +873,8 @@ struct TSub3Item20Comm_XLG    //标准科目三综合评判 TKm3Itm20_XLG | ||||
|     bool qdysFlag = false; //启动钥匙标志
 | ||||
|     bool aqd_kfid = false; //安全带扣分
 | ||||
|     int CGD_Nums = 0; //达到次高挡的次数
 | ||||
| 
 | ||||
|     bool rmndg2 = false; //无锡地区在发动机未启动点切换,提示启动发动机,启动发动机之后播报模拟灯光
 | ||||
| }; | ||||
| 
 | ||||
| struct TSub3Item20Comm_NS3  //新科目三
 | ||||
|  | ||||
| @ -116,8 +116,8 @@ JUDGE_STAGE_IMPL(Sub2Judge03Cftc, Sub2CftcStage0) | ||||
|     //穿越结束线了
 | ||||
|     if(m_endLineFlag == true && cgcu->move == moveForward) | ||||
|     { | ||||
|         int syset = TableSysSet->asInt606(); | ||||
|         if(syset == 1 || m_existMark == true)  //不可以取消项目,或者侧方已经扣过分了
 | ||||
|         int s606 = TableSysSet->asInt606(); | ||||
|         if(s606 == 1 || m_existMark == true)  //不可以取消项目,或者侧方已经扣过分了
 | ||||
|         { | ||||
|             ENTER_ITEM_AND_MARK(JUDGE_MARK_ITEM_MUST_ONCE(MARK_SUB2_CFTC_41)); | ||||
|         } | ||||
| @ -371,6 +371,27 @@ void Sub2Judge03Cftc::calcCrossLine() | ||||
| 
 | ||||
|             //后轮没有穿越结束线
 | ||||
|             if(m_endLineFlag == false) | ||||
|             { | ||||
|                 int s641 = TableSysSet->asInt641(); | ||||
|                 if(s641 == 1) | ||||
|                 { | ||||
|                     if(m_stage >= Sub2CftcStage2) //641=1 是车尾过5-6延长线结束 2025-03-26 add
 | ||||
|                     { | ||||
|                         if(pureCarTouchSoloSegment(L56, II(13), history)) | ||||
|                         { | ||||
|                             m_endLineFlag = true; | ||||
|                         } | ||||
|                     } | ||||
|                     else if(m_stage == Sub2CftcStage0) | ||||
|                     { | ||||
|                         const TGPSLine& L78 = m_model->L78(); //606参数是0可能会取消项目所以要加这个逻辑
 | ||||
|                         if(pureCarTouchSoloSegment(L78, II(13), history)) | ||||
|                         { | ||||
|                             m_endLineFlag = true; | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     const TGPSLine& L78 = m_model->L78(); | ||||
|                     #if JUDGE_USE_INSPECT | ||||
| @ -385,6 +406,7 @@ void Sub2Judge03Cftc::calcCrossLine() | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| void Sub2Judge03Cftc::judgeTouchLine() | ||||
|  | ||||
| @ -103,6 +103,12 @@ void Sub3Judge01Sczb::dealJudgeItem() | ||||
|     //超声波评判跟差分信号没有关系,所以不做差分信号状态的判断
 | ||||
|     //if(!m_car->rtkEnabled() || !m_car->rtkEnabled(1)) return;
 | ||||
| 
 | ||||
|     const std::string& s386 = TableSysSet->get386(); | ||||
|     if(s386 == "3") //无锡地区模式只要发动机启动了,点切换就上车准备自动完成播报模拟灯光
 | ||||
|     { | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|     //有这种考试模式,上车准备是外壳完成的,这种少数,兼容 windows是这种做法
 | ||||
|     const TStuInfo& stuInfo = m_car->stuInfo(); | ||||
|     if(stuInfo.sczb)  //StuInfo.CS_Finish_SCZB_Flag
 | ||||
| @ -197,8 +203,6 @@ void Sub3Judge01Sczb::dealJudgeItem() | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|     const std::string& s386 = TableSysSet->get386(); | ||||
| 
 | ||||
|     if(m_itemv.newtype == 1) | ||||
|     { | ||||
|         //当前时刻的累计用时秒
 | ||||
|  | ||||
| @ -410,14 +410,16 @@ void Sub3Judge02Qbxx::Judge_QiBu_GuaCuoDang() | ||||
|     if(cg->move == moveForward && his1->move == moveForward) | ||||
|     { | ||||
|         const TSensorInfo& sor = cg->real.sensor; | ||||
|         //小车1档起步, 大车1、2档起步
 | ||||
|         static const int gear = TableSysParm->findQiBuGear(m_car->carCode()); | ||||
| 
 | ||||
| #if JUDGE_USE_INSPECT | ||||
|         if(sor.dw_plc >= 2)  //无锡所用原始档位
 | ||||
|         if(sor.dw_plc > gear)  //无锡所用原始档位
 | ||||
|         { | ||||
|             JUDGE_MARK_SUB3(2, "44", false); | ||||
|         } | ||||
| #else | ||||
|         if(sor.dw >= 2) | ||||
|         if(sor.dw > gear) | ||||
|         { | ||||
|             JUDGE_MARK_SUB3(2, "44", false); | ||||
|         } | ||||
|  | ||||
| @ -769,7 +769,6 @@ void Sub3Judge20Comm::doCheck_ZuoYi() | ||||
| //加载模拟灯光项目
 | ||||
| void Sub3Judge20Comm::CallMoNiDengGuang() | ||||
| { | ||||
| 
 | ||||
| #if JUDGE_USE_INSPECT | ||||
|     return;  //屏蔽模拟灯光
 | ||||
| #endif | ||||
| @ -784,6 +783,19 @@ void Sub3Judge20Comm::CallMoNiDengGuang() | ||||
|     const TSensorInfo& sor3 = his3->real.sensor; | ||||
| 
 | ||||
|     const std::string& ksdd = TableSysSet->get211(); | ||||
|     const std::string& s386 = TableSysSet->get386(); | ||||
|     if(s386 == "3") | ||||
|     { | ||||
|         //无锡地区模式只要发动机启动了,点切换就上车准备自动完成播报模拟灯光  //2025-03-21 yhy add
 | ||||
|         //无锡地区在发动机未启动点切换,提示启动发动机,启动发动机之后播报模拟灯光
 | ||||
|         if(m_itemvXLG.rmndg2 == false) | ||||
|         { | ||||
|             if(sor.rmndg == 2 && sor1.rmndg == 0 && sor2.rmndg == 0) | ||||
|             { | ||||
|                 m_itemvXLG.rmndg2 = true; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     if(m_car->disForward() + m_car->disBackward() < 50 && | ||||
|             sor.fdjzs == SNOT && sor1.fdjzs == SNOT && sor2.fdjzs == SNOT && sor3.fdjzs == SNOT) | ||||
| @ -889,23 +901,15 @@ void Sub3Judge20Comm::CallMoNiDengGuang() | ||||
|     { | ||||
|         return; | ||||
|     } | ||||
|     const std::string& s386 = TableSysSet->get386(); | ||||
| 
 | ||||
|     //模拟灯光:参数386=0,开始考试后,就触发模拟灯光
 | ||||
|     if(s386 != "0") | ||||
|     if(s386 != "0" && s386 != "3") | ||||
|     { | ||||
|         TKM3Item* item01 = m_car->findExamItem(Sub3ItemType01Sczb); //上车准备
 | ||||
|         if(item01 && item01->FinishFlag == false) | ||||
|         { | ||||
|             return; | ||||
|         } | ||||
|         if(s386 == "3") //无锡地区在做完上车准备时需要人工点下才能触发模拟灯光 //2025-03-21 yhy add
 | ||||
|         { | ||||
|             if(sor.rmndg == 2 && sor1.rmndg == 0 && sor2.rmndg == 0) | ||||
|             { | ||||
|                 m_car->setEnterItem(item41); | ||||
|             } | ||||
|             return; | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     //322参数0:模拟灯光开始和结束都要检查 1:只检查结束 2:只检查开始  默认不配置都检查
 | ||||
| @ -917,7 +921,7 @@ void Sub3Judge20Comm::CallMoNiDengGuang() | ||||
|             (s386 == "5" && sor.dh1 == SYES) || | ||||
|             (s386 == "6" && sor.aqd == SYES && sor1.aqd == SYES) ) //20170314 训练模式 只要有dh1就可以进行模拟灯光
 | ||||
|     { | ||||
|         //关闭灯光  20180809
 | ||||
|         //关闭灯光提示 20180809
 | ||||
|         if((s322 != "1") && (sor.shtd + sor.skd + sor.ygd + sor.jgd + sor.zfxd + sor.yfxd > 0 || ksdd == siteof::nj)) | ||||
|         { | ||||
|             if(!m_itemvCJH.Gbdg_ID) | ||||
| @ -977,9 +981,19 @@ void Sub3Judge20Comm::CallMoNiDengGuang() | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             //开始模拟灯光
 | ||||
|             if(item41 && item41->Item_Color == itemStateWk) | ||||
|             if(s386 == "3") | ||||
|             { | ||||
|                 //无锡地区模式只要发动机启动了,点切换就上车准备自动完成播报模拟灯光  //2025-03-21 yhy add
 | ||||
|                 //无锡地区在发动机未启动点切换,提示启动发动机,启动发动机之后播报模拟灯光
 | ||||
|                 if(m_itemvXLG.rmndg2 && sor.fdjzs > 100 && sor1.fdjzs > 100 && sor2.fdjzs > 100) | ||||
|                 { | ||||
|                     m_car->KM3EndItem(Sub3ItemType01Sczb,true,false); | ||||
|                     m_car->setEnterItem(item41); | ||||
|                 } | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 //开始模拟灯光
 | ||||
|                 m_car->setEnterItem(item41); | ||||
|             } | ||||
|         } | ||||
| @ -4540,16 +4554,16 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|     // 加减档位操作挂一个挡位要松一次离合器(项目,全程)(0-否 1-是)()
 | ||||
|     // *)
 | ||||
|     const std::vector<std::string>& s425 = TableSysSet->asArray425(); | ||||
|     std::string ss = s425.size() > 1 ? s425[1] : ""; | ||||
|     std::string ss425 = s425.size() > 1 ? s425[1] : ""; | ||||
|     TKM3Item* item14 = m_car->findExamItem(Sub3ItemType14Jjdw);//加减挡
 | ||||
|     if(item14 && item14->TestPro == ItemProFlagIdle && ss == "1") | ||||
|     if(item14 && item14->TestPro == ItemProFlagIdle && ss425 == "1") | ||||
|     { | ||||
|         const TSensorInfo& sor3 = m_car->historySensor(3); | ||||
|         if(sor.dw == sor1.dw && sor.dw != sor2.dw && sor.dw != sor3.dw && sor.dw > 0) | ||||
|         { | ||||
|             int dw = sor.dw; | ||||
|             int k = 0; | ||||
|             int count =m_car->historyCount(); | ||||
|             int count = m_car->historyCount(); | ||||
|             for(int i = 1; i <= 25; i++) | ||||
|             { | ||||
|                 if(i >= count || i + 6 >= count) | ||||
| @ -4558,6 +4572,7 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|                 } | ||||
| 
 | ||||
|                 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; | ||||
| @ -4566,9 +4581,9 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|                 int dw_i6 = m_car->historySensor(i + 6).dw; | ||||
| 
 | ||||
|                 if(sori.lhq == SNOT) break; | ||||
|                 if(sori.dw == SNOT) continue; | ||||
|                 if(dw != sori.dw && sori.dw == dw_i1 && sori.dw  == dw_i2 && sori.dw  == dw_i3 && | ||||
|                         sori.dw  == dw_i4 && sori.dw == dw_i5 && sori.dw == dw_i6) | ||||
|                 if(dw_i0 == SNOT) continue; | ||||
|                 if(dw != dw_i0 && dw_i0 == dw_i1 && dw_i0  == dw_i2 && dw_i0 == dw_i3 && | ||||
|                         dw_i0  == dw_i4 && dw_i0 == dw_i5 && dw_i0 == dw_i6) | ||||
|                 { | ||||
|                     k = k + 1; | ||||
|                     dw = sori.dw; | ||||
| @ -4588,22 +4603,26 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|         if(sor.dw == sor1.dw && sor.dw == sor2.dw && sor.dw > 0 && sor.dw < 9 && | ||||
|            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++) | ||||
|             { | ||||
|                 if(i >= count || i + 1 >= count) | ||||
|                 if(i >= count || i + 2 >= count) | ||||
|                 { | ||||
|                     break; | ||||
|                 } | ||||
|                 const TChuanGan* hisi = m_car->historyChuanGan(i); | ||||
|                 const TSensorInfo& sori = hisi->real.sensor; | ||||
|                 int dw_i1 = m_car->historySensor(i + 1).dw; | ||||
|                 int dw_i0 = sori.dw; | ||||
|                 if(dw_i0 != 0) break; | ||||
| 
 | ||||
|                 if(sori.dw >= sor.dw && sori.lhq == SNOT)  break; | ||||
|                 if(sori.dw + 1 == sor.dw && sori.lhq == SNOT)  break; | ||||
|                 if(sori.dw < sor.dw && dw_i1 == sori.dw && sori.dw > 0) | ||||
|                 int dw_i1 = m_car->historySensor(i + 1).dw; | ||||
|                 int dw_i2 = m_car->historySensor(i + 2).dw; | ||||
| 
 | ||||
|                 if(dw_i1 >= sor.dw && sori.lhq == SNOT) break; | ||||
|                 if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; | ||||
| 
 | ||||
|                 if(dw_i1 < sor.dw  && dw_i1 > 0 && dw_i1 == dw_i2) | ||||
|                 { | ||||
|                     if(sor.dw - sori.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     { | ||||
|                         bool FindFlag = false; | ||||
|                         if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1) | ||||
| @ -4642,25 +4661,29 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|         { | ||||
|             for(int i = 5; i <= 55; i++) | ||||
|             { | ||||
|                 if(i >= count || i + 4 >= count) | ||||
|                 if(i >= count || i + 5 >= count) | ||||
|                 { | ||||
|                     break; | ||||
|                 } | ||||
| 
 | ||||
|                 const TChuanGan* hisi = m_car->historyChuanGan(i); | ||||
|                 const TSensorInfo& sori  = hisi->real.sensor; | ||||
|                 int dw_i0 = sori.dw; | ||||
|                 if(dw_i0 != 0) break; | ||||
| 
 | ||||
|                 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; | ||||
| 
 | ||||
|                 if(sori.dw > sor.dw && sori.lhq == SNOT)  break; | ||||
|                 if(sori.dw + 1 == sor.dw && sori.lhq == SNOT)  break; | ||||
|                 if(sori.dw < sor.dw && dw_i1 == sori.dw && dw_i2 == sori.dw && | ||||
|                         dw_i3 == sori.dw && dw_i4 == sori.dw && sori.dw > 0) | ||||
|                 if(dw_i1 > sor.dw && sori.lhq == SNOT) break; | ||||
|                 if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; | ||||
| 
 | ||||
|                 if(dw_i1 < sor.dw && dw_i1 > 0 && | ||||
|                    dw_i2 == dw_i1 && dw_i3 == dw_i1 && dw_i4 == dw_i1 && dw_i5 == dw_i1) | ||||
|                 { | ||||
|                     if((sor.dw - sori.dw) > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     { | ||||
|                         bool FindFlag = false; | ||||
|                         if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1) | ||||
| @ -4705,12 +4728,14 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|         { | ||||
|             for(int i = 9; i < 59; i++) | ||||
|             { | ||||
|                 if(i >= count || i + 9 >= count) | ||||
|                 if(i >= count || i + 10 >= count) | ||||
|                 { | ||||
|                     break; | ||||
|                 } | ||||
|                 const TChuanGan* hisi = m_car->historyChuanGan(i); | ||||
|                 const TSensorInfo& sori = hisi->real.sensor; | ||||
|                 int dw_i0 = sori.dw; | ||||
|                 if(dw_i0 != 0) break; | ||||
| 
 | ||||
|                 int dw_i1 = m_car->historySensor(i + 1).dw; | ||||
|                 int dw_i2 = m_car->historySensor(i + 2).dw; | ||||
| @ -4721,14 +4746,16 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|                 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(sori.dw > sor.dw && sori.lhq == SNOT)  break; | ||||
|                 if(sori.dw + 1 == sor.dw && sori.lhq == SNOT) break; | ||||
|                 if(sori.dw < sor.dw && dw_i1 == sori.dw && dw_i2 == sori.dw && dw_i3 == sori.dw && | ||||
|                         dw_i4 == sori.dw && dw_i5 == sori.dw && dw_i6 == sori.dw && | ||||
|                         dw_i7 == sori.dw && dw_i8 == sori.dw && dw_i9 == sori.dw && sori.dw > 0) | ||||
|                 if(dw_i1 > sor.dw && sori.lhq == SNOT) break; | ||||
|                 if(dw_i1 + 1 == sor.dw && sori.lhq == SNOT) break; | ||||
| 
 | ||||
|                 if(dw_i1 < sor.dw && dw_i1 > 0 && dw_i2 == dw_i1 && dw_i3 == dw_i1 && | ||||
|                    dw_i4 == dw_i1 && dw_i5 == dw_i1 && dw_i6 == dw_i1 && dw_i7 == dw_i1 && | ||||
|                         dw_i8 == dw_i1 && dw_i9 == dw_i1 && dw_i10 == dw_i1) | ||||
|                 { | ||||
|                     if(sor.dw - sori.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     if(sor.dw - dw_i1 > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                     { | ||||
|                         bool FindFlag = false; | ||||
|                         if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1) | ||||
| @ -4743,6 +4770,8 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|                         } | ||||
|                         if(FindFlag == true) | ||||
|                         { | ||||
|                             //安卓档位评判好像逻辑上做了优化,比方说越级加档,中间必须出现 0 才判,1 跳 3 的情况,没出现 0 不判
 | ||||
|                             //项目经理吉说的先按照这样做
 | ||||
|                             JUDGE_MARK_SUB3(14, "01", true); | ||||
|                         } | ||||
|                         else | ||||
| @ -4766,6 +4795,7 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
| 
 | ||||
|                     const TChuanGan* hisi = m_car->historyChuanGan(i); | ||||
|                     const TSensorInfo& sori = hisi->real.sensor; | ||||
|                     int dw_i0 = sori.dw; | ||||
| 
 | ||||
|                     int dw_i1 = m_car->historySensor(i + 1).dw; | ||||
|                     int dw_i2 = m_car->historySensor(i + 2).dw; | ||||
| @ -4777,19 +4807,17 @@ void Sub3Judge20Comm::Judge_YueJi_JiaJianDang() | ||||
|                     int dw_i8 = m_car->historySensor(i + 8).dw; | ||||
|                     int dw_i9 = m_car->historySensor(i + 9).dw; | ||||
| 
 | ||||
|                     if(sori.dw == 9)  break; | ||||
|                     if(dw_i0 == 9)  break; | ||||
|                     if(hisi->move != moveForward) break; | ||||
|                     if(sori.dw < sor.dw && sori.lhq == SNOT) break; | ||||
|                     if(sori.dw - 1 == sor.dw && sori.lhq == SNOT) break; | ||||
|                     if(dw_i0 < sor.dw && sori.lhq == SNOT) break; | ||||
|                     if(dw_i0 - 1 == sor.dw && sori.lhq == SNOT) break; | ||||
| 
 | ||||
|                     if(sori.dw > sor.dw && dw_i1 == sori.dw | ||||
|                             && dw_i2 == sori.dw && dw_i3 == sori.dw | ||||
|                             && dw_i4 == sori.dw && dw_i5 == sori.dw | ||||
|                             && dw_i6 == sori.dw && dw_i7 == sori.dw | ||||
|                             && dw_i8 == sori.dw && dw_i9 == sori.dw | ||||
|                             && sori.dw > 0) | ||||
|                     if(dw_i0 > sor.dw && dw_i0 > 0 && | ||||
|                             dw_i1 == dw_i0 && dw_i2 == dw_i0 && dw_i3 == dw_i0 && | ||||
|                             dw_i4 == dw_i0 && dw_i5 == dw_i0 && dw_i6 == dw_i0 && | ||||
|                             dw_i7 == dw_i0 && dw_i8 == dw_i0 && dw_i9 == dw_i0) | ||||
|                     { | ||||
|                         if((sori.dw - sor.dw) > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                         if(dw_i0 - sor.dw > 1 && m_itemvCJH.yjjdkfjs != hisi->tkCnt) | ||||
|                         { | ||||
|                             bool FindFlag = false; | ||||
|                             if(ksdd == siteof::JXNC || m_itemvCJH.qcyjjdkf == 1) | ||||
|  | ||||
| @ -1,15 +1,14 @@ | ||||
| -----BEGIN CERTIFICATE----- | ||||
| MIICFTCCAZugAwIBAgIILMaFkNm3ERAwCgYIKoZIzj0EAwMwYzELMAkGA1UEBhMC | ||||
| MIICFTCCAZugAwIBAgIIDwIlwC9KCAgwCgYIKoZIzj0EAwMwYzELMAkGA1UEBhMC | ||||
| Q04xFDASBgNVBAoTC09wZW5IYXJtb255MRkwFwYDVQQLExBPcGVuSGFybW9ueSBU | ||||
| ZWFtMSMwIQYDVQQDExpPcGVuSGFybW9ueSBBcHBsaWNhdGlvbiBDQTAeFw0yNTAz | ||||
| MjUwMjAxNTRaFw0zNTAzMjMwMjAxNTRaMEoxFTATBgNVBAMMDGlkZV9kZW1vX2Fw | ||||
| MjcwMTM0MzFaFw0zNTAzMjUwMTM0MzFaMEoxFTATBgNVBAMMDGlkZV9kZW1vX2Fw | ||||
| cDENMAsGA1UECxMEVW5pdDEVMBMGA1UEChMMT3JnYW5pemF0aW9uMQswCQYDVQQG | ||||
| EwJDTjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG6rysrqoOf2+cP4SYL6gOAW | ||||
| Tcr0/W2q4vG2HuBm/pXUL4PA6sPtHLGhaQSmj10YTyetLBGx1/dqFyEYwyvZ2bqj | ||||
| UjBQMB0GA1UdDgQWBBRbwVqb1UxZNU2Zo0gag/hDmnwhgDAOBgNVHQ8BAf8EBAMC | ||||
| EwJDTjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABOFM709v5dpRw1u42nrUPbxe | ||||
| UZ2iCXWEgpO3ySIfLdm+t5b23QqTp5cSPu1faM9Exy6PqxaO2zzGFt2Eb3AKqLyj | ||||
| UjBQMB0GA1UdDgQWBBSubxhAdyUr8mSVCpjOak70J/8yoTAOBgNVHQ8BAf8EBAMC | ||||
| B4AwHwYDVR0jBBgwFoAU24a3IhbVC6FLt90le7nxBX2iLUcwCgYIKoZIzj0EAwMD | ||||
| aAAwZQIwWDPoHq6xG4pZRrwo+fXDVPUtLySiRw5fCQyrTo4SLA2ydg2P34zRMOen | ||||
| zEbobqKGAjEAmoxrQAZlBhAtrs9skI+6c2Cf1PazBb2HeZDpPyyE5RRK0CgxiZh0 | ||||
| Auju0akp9ooB | ||||
| aAAwZQIwevtGwM7A4Cj5foXfOCAV8RU0o3NAKBIxXIWbnk2h+BPiwHRvV9BvHv+T | ||||
| k4Qssp04AjEAwPaguX2Iu6DY8Y+u0lq1gEc62lnSjzAHDr7SItcAOjHd0IWwubpK | ||||
| JD1PtKpp/POt | ||||
| -----END CERTIFICATE----- | ||||
| FD1F7A14FAB136A9A68ABECE1E0612B148E3A2FB5A8CEA31C2FAC26C54452665 | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user