夜考逻辑优化
界面现实问题优化
This commit is contained in:
		
							parent
							
								
									eded93bc62
								
							
						
					
					
						commit
						226f7afc53
					
				
										
											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  "2505132200b" | ||||
| #define JUDGE_VERSION_STAMP  "2505201042b" | ||||
| #if JUDGE_USE_OLD | ||||
| #   undef JUDGE_VERSION_STAMP | ||||
| #   define JUDGE_VERSION_STAMP  "2411121010b.old" | ||||
|  | ||||
| @ -635,27 +635,29 @@ bool ExamCarSub3::Init_KM3_Global() | ||||
|         //只有掉头项目才有右掉头一说  //20150516
 | ||||
|         examItem->bYdt = (itemNo == Sub3ItemType12Dtxx && parm1->TXT2 == "ydt" ? true : false); //是否右掉头
 | ||||
| 
 | ||||
|         //如果是满分学习的 czlx=1 m_stuInfo.czlx //满分学习非必考项目,一开始考试就通知外壳合格变绿
 | ||||
|         //满分学习,如果都没配默认都要做,   如果配了就是配哪个做哪个没配不做
 | ||||
|         //大车夜考,如果都没配默认都算完成,  如果配了就是配哪个做哪个没配不做
 | ||||
|         //如果是满分学习的 czlx=1 m_stuInfo.czlx
 | ||||
|         if(m_stuInfo.mfxx && itemNo != Sub3ItemType13Yjxs && IS_A1A2A3B1B2C6(cartype)) | ||||
|         { | ||||
|             std::string s  = "," + std::to_string(itemNo) + ","; | ||||
|             std::string ss = "," + m_car.MFXX_KSXM + ","; | ||||
|             if(!Tools::pos(s, ss)) //非必考直接算完成变绿
 | ||||
|             if(m_car.MFXX_KSXM != "") | ||||
|             { | ||||
|                 examItem->NoID = true; | ||||
|                 KM3EndItem(itemNo,true,false); | ||||
|                 std::string s  = "," + std::to_string(itemNo) + ","; | ||||
|                 std::string ss = "," + m_car.MFXX_KSXM + ","; | ||||
|                 if(!Tools::pos(s, ss)) | ||||
|                 { | ||||
|                     examItem->NoID = true; | ||||
|                     KM3EndItem(itemNo,true,false); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         //对夜考项目进行特殊处理 //大车夜考非必考项目,一开始考试就通知外壳合格变绿
 | ||||
|         //对夜考项目进行特殊处理
 | ||||
|         if(m_car.Night_ID == true && itemNo != Sub3ItemType13Yjxs) | ||||
|         { | ||||
|             std::string s  = "," + std::to_string(itemNo) + ","; | ||||
|             std::string ss = "," + m_car.DC_YK_Must + ","; | ||||
|             if(!Tools::pos(s, ss)) //非必考直接算完成变绿
 | ||||
|             if(!Tools::pos(s, ss)) | ||||
|             { | ||||
|                 //examItem->Item_Color = itemStateHg;
 | ||||
|                 //examItem->TestPro = ItemProFlagIdle;
 | ||||
|                 //examItem->FinishFlag = true;
 | ||||
|                 examItem->NoID = true; | ||||
|                 KM3EndItem(itemNo,isReplay(),false); //轨迹回放工具回放模式要发时间,不然项目不好变绿
 | ||||
|             } | ||||
| @ -3230,22 +3232,23 @@ void ExamCarSub3::Km3NewEnterItem() | ||||
|     TChuanGan* cg = m_cg; | ||||
|     //1、非前进状态忽略
 | ||||
|     TChuanGan* his1 = historyChuanGan(1); | ||||
|     if(cg->move != moveForward || his1->move != moveForward) | ||||
|     if(cg->move == moveBackward || his1->move == moveBackward) | ||||
|     { | ||||
|         return; | ||||
|     } | ||||
|     if(cg->move == moveStop && his1->move == moveStop && | ||||
|        cg->real.gps.sd < 0.1 && his1->real.gps.sd < 0.1) | ||||
|     { | ||||
|         return; | ||||
|     } | ||||
|     //if(cg->move != moveForward || his1->move != moveForward)
 | ||||
|     //{
 | ||||
|     //    return;
 | ||||
|     //}
 | ||||
| 
 | ||||
|     //2、速度是0也退出
 | ||||
|     //if(cg->real.gps.sd < 0.1 || his1->real.gps.sd < 0.1) return; //ai_CS_GPS
 | ||||
|     //3、非差分状态忽略//非差分状态不允许进项目
 | ||||
|     //417参数为1,在差分状态才能进入自动评判项目 417没设的话,不判断是不是差分状态 20250428
 | ||||
|     if(TableSysSet->get417() == "1") | ||||
|     { | ||||
|         if(!cg->real.gps.rtkEnabled) | ||||
|         { | ||||
|             return; | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     if(!cg->real.gps.valid()) return; | ||||
| 
 | ||||
|     static constexpr double KK0 = GPS_DIV; | ||||
| @ -3412,7 +3415,14 @@ void ExamCarSub3::Km3NewEnterItem() | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             ReadItemByPoint(crossPointNo); | ||||
|             //417参数为1,在差分状态才能进入自动评判项目 417没设的话,不判断是不是差分状态 20250428
 | ||||
|             if(TableSysSet->get417() == "1" && !cg->real.gps.rtkEnabled) | ||||
|             { | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 ReadItemByPoint(crossPointNo); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         //(*2024-03-05*)
 | ||||
|  | ||||
| @ -3,7 +3,14 @@ | ||||
| 
 | ||||
| #define ENTER_ITEM_AND_MARK(mark) \ | ||||
| { \ | ||||
|     if(doEnterItem()) { loginfo("enter item %d-%s", itemNo(), itemName().c_str()); }  \ | ||||
|     if(doEnterMark(true)) { loginfo("enter item %d-%s", itemNo(), itemName().c_str()); }  \ | ||||
|     m_existMark = true; \ | ||||
|     { mark; };      \ | ||||
| } | ||||
| 
 | ||||
| #define ENTER_COMM_AND_MARK(mark) \ | ||||
| { \ | ||||
|     if(doEnterMark(false)) { loginfo("enter item %d-%s", itemNo(), itemName().c_str()); }  \ | ||||
|     m_existMark = true; \ | ||||
|     { mark; };      \ | ||||
| } | ||||
| @ -107,11 +114,11 @@ JUDGE_STAGE_IMPL(Sub2Judge03Cftc, Sub2CftcStage0) | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     //中停扣分(前进状态中停的)
 | ||||
|     if(cgcu->move == moveForward && cg01->move == moveStop && cg05->move == moveStop && cg10->move == moveStop) | ||||
|     { | ||||
|         ENTER_ITEM_AND_MARK(JUDGE_MARK_ITEM_MUST_MORE(MARK_SUB2_CFTC_02)); //add enter
 | ||||
|     } | ||||
|     //中停扣分(前进状态中停的) //侧方只有在开始后退以后才扣中停
 | ||||
|     //if(cgcu->move == moveForward && cg01->move == moveStop && cg05->move == moveStop && cg10->move == moveStop)
 | ||||
|     //{
 | ||||
|     //    ENTER_ITEM_AND_MARK(JUDGE_MARK_ITEM_MUST_MORE(MARK_SUB2_CFTC_02)); //add enter
 | ||||
|     //}
 | ||||
| 
 | ||||
|     //穿越结束线了
 | ||||
|     if(m_endLineFlag == true && cgcu->move == moveForward) | ||||
| @ -353,6 +360,15 @@ bool Sub2Judge03Cftc::doEnterItem() | ||||
|     return false; | ||||
| } | ||||
| 
 | ||||
| bool Sub2Judge03Cftc::doEnterMark(bool isItemMark) | ||||
| { | ||||
|     if(isItemMark) //只有项目扣分才会进项目事件,压线通用评判不会触发进项目
 | ||||
|     { | ||||
|         return doEnterItem(); | ||||
|     } | ||||
|     return true; | ||||
| } | ||||
| 
 | ||||
| void Sub2Judge03Cftc::calcCrossLine() | ||||
| { | ||||
|     TChuanGan* cgcu = m_car->historyChuanGan(); | ||||
| @ -530,18 +546,18 @@ void Sub2Judge03Cftc::touchLineMark(LineNum num) | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 ENTER_ITEM_AND_MARK(JUDGE_MARK_COMM_MUST_MORE(MARK_SUB2_COMM_91)); //标准的
 | ||||
|                 ENTER_COMM_AND_MARK(JUDGE_MARK_COMM_MUST_MORE(MARK_SUB2_COMM_91)); //标准的
 | ||||
|             } | ||||
|         } | ||||
|         else if(m_stage == Sub2CftcStage1 || m_stage == Sub2CftcStage2) | ||||
|         { | ||||
|             if(s609_2 == 1) | ||||
|             { | ||||
|                 ENTER_ITEM_AND_MARK(JUDGE_MARK_COMM_MUST_MORE(MARK_SUB2_COMM_91)); | ||||
|                 ENTER_COMM_AND_MARK(JUDGE_MARK_COMM_MUST_MORE(MARK_SUB2_COMM_91)); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                ENTER_ITEM_AND_MARK(JUDGE_MARK_ITEM_MUST_MORE(MARK_SUB2_CFTC_03)); //标准的
 | ||||
|                 ENTER_ITEM_AND_MARK(JUDGE_MARK_ITEM_MUST_MORE(MARK_SUB2_CFTC_03)); //标准的
 | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @ -56,6 +56,7 @@ private: | ||||
|     void calcCrossLine(); | ||||
|     //执行进项目
 | ||||
|     bool doEnterItem(); | ||||
|     bool doEnterMark(bool isItemMark); | ||||
|     //判断是否非标准测绘项目L23线 非标准返回false
 | ||||
|     bool isStandard(); | ||||
| 
 | ||||
|  | ||||
| @ -175,6 +175,7 @@ void Sub3Judge12Lkdt::dealJudgeItem() | ||||
|                 ctl->ZXD_GuanBi = true; | ||||
|             } | ||||
|             m_exam->TestPro = ItemProFlagEnd; | ||||
|             JudgeFlagEnd(); | ||||
|             return; | ||||
|         } | ||||
|     } | ||||
| @ -236,6 +237,7 @@ void Sub3Judge12Lkdt::dealJudgeItem() | ||||
|             if(cg->ai_ljjl_cm - m_itemv.StopLine_JLCM >= dis2) | ||||
|             { | ||||
|                 m_exam->TestPro = ItemProFlagEnd; | ||||
|                 JudgeFlagEnd(); | ||||
|                 return; | ||||
|             } | ||||
|         } | ||||
| @ -326,6 +328,7 @@ void Sub3Judge12Lkdt::dealJudgeItem() | ||||
|         if(cg->ai_ljjl_cm - m_itemv.Start_JL_CM > m_itemv.XMJL_Mi * 100) | ||||
|         { | ||||
|             m_exam->TestPro = ItemProFlagEnd; | ||||
|             JudgeFlagEnd(); | ||||
|             return; | ||||
|         } | ||||
|     } | ||||
| @ -394,6 +397,7 @@ void Sub3Judge12Lkdt::dealJudgeItem() | ||||
|                 if(OKFlag == true) | ||||
|                 { | ||||
|                     m_exam->TestPro = ItemProFlagEnd; | ||||
|                     JudgeFlagEnd(); | ||||
|                     return; | ||||
|                 } | ||||
|             } | ||||
| @ -429,22 +433,6 @@ void Sub3Judge12Lkdt::dealJudgeItem() | ||||
|         str += buf; | ||||
|     } | ||||
| 
 | ||||
|     if(m_exam->TestPro == ItemProFlagEnd) | ||||
|     { | ||||
|         if(m_itemv.LuK_Fx_PointNo > 0) | ||||
|         { | ||||
|             if(m_itemv.OKFangXiangPt_SuccessFlag == false && m_itemv.ReadNextLuDuanFlag == true) | ||||
|             { | ||||
|                 JUDGE_MARK_SUB3(12, "41", true); | ||||
|             } | ||||
|         } | ||||
|         if(m_itemv.slowDown.Js_Passed == false) | ||||
|         { | ||||
|             //对可能出现危险的情形未采取减速、鸣喇叭等安全措施
 | ||||
|             JUDGE_MARK_SUB3(12, "46", false); //20170505
 | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     str += msg; | ||||
|     showStatus(JUDGE_UTF8S("[大路口掉头]") + str); | ||||
| 
 | ||||
| @ -465,6 +453,25 @@ void Sub3Judge12Lkdt::JudgeFXD() | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| void Sub3Judge12Lkdt::JudgeFlagEnd() | ||||
| { | ||||
|     if(m_exam->TestPro == ItemProFlagEnd) | ||||
|     { | ||||
|         if(m_itemv.LuK_Fx_PointNo > 0) | ||||
|         { | ||||
|             if(m_itemv.OKFangXiangPt_SuccessFlag == false && m_itemv.ReadNextLuDuanFlag == true) | ||||
|             { | ||||
|                 JUDGE_MARK_SUB3(12, "41", true); | ||||
|             } | ||||
|         } | ||||
|         if(m_itemv.slowDown.Js_Passed == false) | ||||
|         { | ||||
|             //对可能出现危险的情形未采取减速、鸣喇叭等安全措施
 | ||||
|             JUDGE_MARK_SUB3(12, "46", false); //20170505
 | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| void Sub3Judge12Lkdt::NS3JudgeVision_41501(bool opportunity) | ||||
| { | ||||
|     //不观察左、右方交通情况,转弯通过路口时,未观察侧前方交通情况,
 | ||||
|  | ||||
| @ -36,6 +36,7 @@ public: | ||||
| 
 | ||||
| protected: | ||||
|     void JudgeFXD(); | ||||
|     void JudgeFlagEnd(); | ||||
| private: | ||||
|     TSub3Item12Lkdt m_itemv; | ||||
| 
 | ||||
|  | ||||
| @ -54,34 +54,34 @@ export const GPSData = [ | ||||
|   { key: '海拔高', value: '0' }, | ||||
|   { key: '高度差', value: '0' }, | ||||
|   { key: '龄期', value: '0' }, | ||||
|   { key: '维度因子', value: '0' }, | ||||
|   { key: '纬度因子', value: '0' }, | ||||
|   { key: '经度因子', value: '0' }, | ||||
|   { key: '航向角', value: '0' }, | ||||
|   { key: '俯仰角', value: '0' }, | ||||
|   { key: '航向角状态-收星数', value: '0' }, | ||||
|   { key: '年月日', value: '0' }, | ||||
|   { key: '时分秒', value: '0' }, | ||||
|   { key: '经度', value: '0' }, | ||||
|   { key: '纬度', value: '0' }, | ||||
|   { key: '经度', value: '0' }, | ||||
|   { key: '速度', value: '0' }, | ||||
| ] | ||||
| 
 | ||||
| export const RoadData = [ | ||||
|   {name:'路段组号',key:'MapRoad_Code_No'}, | ||||
|   {name:'路段编码',key:'MapRoad_Name'}, | ||||
|   {name:'车轮压线',key:['TouchLineType','TouchDir']}, | ||||
|   {name:'车身碰线',key:['TouchLineTypeCS','TouchLineDirCS']}, | ||||
|   {name:'基准车道',key:['BasePointInLaneNo','BaseLaneCount']}, | ||||
|   {name:'前点车道',key:['FrontPointLaneNo','FrontPointLaneCount']}, | ||||
|   {name:'后车点道',key:[]}, | ||||
|   {name:'左前/后车身距离',key:['Body_LF_ToLeftEdge','Body_LB_ToLeftEdge']}, | ||||
|   {name:'右前/后车身距离',key:['Body_RF_ToRightEdge','Body_RB_ToRightEdge']}, | ||||
|   {name:'右前/后车身边线',key:[]}, | ||||
|   {name:'右前/后轮距离',key:['Wheel_RF_ToRightEdge','Wheel_RB_ToRightEdge']}, | ||||
|   {name:'右前/后轮边线',key:['Wheel_RF_ToBaseLine','Wheel_RF_ToBaseLine']}, | ||||
|   {name:'左前/后轮距离',key:['Wheel_LF_ToRightEdge','Wheel_LB_ToRightEdge']}, | ||||
|   {name:'左前/后轮边线',key:['Wheel_LF_ToBaseLine','Wheel_LB_ToBaseLine']}, | ||||
|   {name:'车道属性',key:['BasePointInLaneDir','CrossLineAttr']}, | ||||
|   {name:'形状',key:['InShapeAttr','ShapeNo','']}, | ||||
|   {name:'路段点',key:['CrossPointNo']}, | ||||
|   { name: '路段组号', key: 'MapRoad_Code_No' }, | ||||
|   { name: '路段编码', key: 'MapRoad_Name' }, | ||||
|   { name: '车轮压线', key: ['TouchLineType', 'TouchDir'] }, | ||||
|   { name: '车身碰线', key: ['TouchLineTypeCS', 'TouchLineDirCS'] }, | ||||
|   { name: '基准车道', key: ['BasePointInLaneNo', 'BaseLaneCount'] }, | ||||
|   { name: '前点车道', key: ['FrontPointLaneNo', 'FrontPointLaneCount'] }, | ||||
|   { name: '后车点道', key: [] }, | ||||
|   { name: '左前/后车身距离', key: ['Body_LF_ToLeftEdge', 'Body_LB_ToLeftEdge'] }, | ||||
|   { name: '右前/后车身距离', key: ['Body_RF_ToRightEdge', 'Body_RB_ToRightEdge'] }, | ||||
|   { name: '右前/后车身边线', key: [] }, | ||||
|   { name: '右前/后轮距离', key: ['Wheel_RF_ToRightEdge', 'Wheel_RB_ToRightEdge'] }, | ||||
|   { name: '右前/后轮边线', key: ['Wheel_RF_ToBaseLine', 'Wheel_RF_ToBaseLine'] }, | ||||
|   { name: '左前/后轮距离', key: ['Wheel_LF_ToRightEdge', 'Wheel_LB_ToRightEdge'] }, | ||||
|   { name: '左前/后轮边线', key: ['Wheel_LF_ToBaseLine', 'Wheel_LB_ToBaseLine'] }, | ||||
|   { name: '车道属性', key: ['BasePointInLaneDir', 'CrossLineAttr'] }, | ||||
|   { name: '形状', key: ['InShapeAttr', 'ShapeNo', ''] }, | ||||
|   { name: '路段点', key: ['CrossPointNo'] }, | ||||
| ] | ||||
|  | ||||
| @ -369,6 +369,7 @@ struct Index { | ||||
|     let kStringArr: string[] = (currentParams.kString?.split(',') || []).filter(item => item); | ||||
|     // 单机模式下增驾进模拟灯光 | ||||
|     this.mockLight = kStringArr.includes("41700") || (globalThis.singlePlay && this.mode === 3) | ||||
| 
 | ||||
|     console.log("lixiao mockLight", this.mockLight) | ||||
|     console.info('lixiao kStringArr', JSON.stringify(kStringArr)) | ||||
| 
 | ||||
| @ -376,17 +377,8 @@ struct Index { | ||||
|     const {isTrajectoryOpen} = judgeConfig | ||||
|     let carNo = '', allItems = []; | ||||
|     systemParms.forEach((systemParm) => { | ||||
|       if (isTrajectoryOpen) { | ||||
|         systemParm.no1 = systemParm.NO1; | ||||
|         systemParm.no2 = systemParm.NO2; | ||||
|         systemParm.no3 = systemParm.NO3; | ||||
|         systemParm.txt1 = systemParm.TXT1; | ||||
|         systemParm.txt2 = systemParm.TXT2; | ||||
|         systemParm.txt3 = systemParm.TXT3; | ||||
|       } | ||||
|       const {no1,no2,no3,} = systemParm; | ||||
|       const txt1 = decodeURI(systemParm.txt1) | ||||
|       const txt2 = decodeURI(systemParm.txt2) | ||||
|       //获取当前考车的no2 | ||||
|       if (no1 == 3 && no3 == 1 && txt1 === carName) { | ||||
|         carNo = no2 + '' | ||||
| @ -422,19 +414,37 @@ struct Index { | ||||
|       } else if (this.mode == 5 && no1 == 3 && no2 == Number(carNo) && no3 == 63) { | ||||
|         // 满分学习项目 | ||||
|         let data = decodeURI(systemParm.txt1)?.split("^") | ||||
|         allItems = data[0]?.split(",") || [] | ||||
|         allItems = data[0]?.split(",").filter(item => item !== "") || [] | ||||
|       } | ||||
|       // 满分学习单独做灯光判断 | ||||
|       if (this.mode === 5) { | ||||
|         this.mockLight = (allItems.length === 0) || allItems.includes(41 + '') | ||||
|       } | ||||
|     }) | ||||
|     console.log("lixiao mockLight", JSON.stringify(allItems), this.mockLight) | ||||
|     systemParms.forEach((systemParm) => { | ||||
|       if (isTrajectoryOpen) { | ||||
|         systemParm.no1 = systemParm.NO1; | ||||
|         systemParm.no2 = systemParm.NO2; | ||||
|         systemParm.no3 = systemParm.NO3; | ||||
|         systemParm.txt1 = systemParm.TXT1; | ||||
|         systemParm.txt2 = systemParm.TXT2; | ||||
|         systemParm.txt3 = systemParm.TXT3; | ||||
|       } | ||||
|       const {no1,no2,no3} = systemParm; | ||||
|       const txt2 = decodeURI(systemParm.txt2) | ||||
| 
 | ||||
|       if (no1 == 6) { | ||||
|         const name = decodeURI(systemParm.txt1) | ||||
|         // 白考过滤掉夜间行驶 | ||||
|         if (this.mode !== 2 && no2 == 13) { | ||||
|           return | ||||
|         } | ||||
|         // 模拟夜间驾驶 | ||||
|         // 模拟夜间驾驶(灯光) | ||||
|         if (!this.mockLight && no2 == 41) { | ||||
|           return | ||||
|         } | ||||
|         let isRequired = allItems.includes(no2 + '') | ||||
|         let isRequired = (this.mode === 5 && allItems.length === 0) || allItems.includes(no2 + '') | ||||
|         let isEnd = false | ||||
|         let isUpload = false | ||||
| 
 | ||||
| @ -487,8 +497,6 @@ struct Index { | ||||
|         'TXT3': decodeURIComponent(systemParm.txt3), | ||||
|       }) | ||||
|     }) | ||||
|     console.log("lixiao allItems", JSON.stringify(allItems)) | ||||
|     console.log("lixiao carNo examMileage", carNo, this.examMileage) | ||||
|     const projects = this.projects; | ||||
|     if (!projects.length) { | ||||
|       Prompt.showToast({ | ||||
| @ -1384,5 +1392,4 @@ struct Index { | ||||
|       return false | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| } | ||||
|  | ||||
| @ -3,6 +3,7 @@ import RealTime from '../compontents/judge/RealTime'; | ||||
| import { GPSData, SignalData } from '../../mock'; | ||||
| import { SignalDataType } from '../../model'; | ||||
| import { getSyncData } from '../../common/service/initable'; | ||||
| import { convertGpsCoord2 } from '../../common/utils/tools'; | ||||
| 
 | ||||
| @Component | ||||
| export default struct SignDisplayCom { | ||||
| @ -198,8 +199,8 @@ export default struct SignDisplayCom { | ||||
|               Text('收星数:' + this.signArr[84]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('海拔高:' + this.signArr[85]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('高度差:' + this.signArr[86]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('龄期:' + this.signArr[87]).fontColor(Color.Red).fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('维度因子:' + this.signArr[88]) | ||||
|               Text('龄期:' + this.signArr[87]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('纬度因子:' + this.signArr[88]) | ||||
|                 .fontColor('#FFB433') | ||||
|                 .fontSize(14 * this.ratio) | ||||
|                 .height(18 * this.ratio) | ||||
| @ -215,8 +216,14 @@ export default struct SignDisplayCom { | ||||
|                 .height(18 * this.ratio) | ||||
|               Text('年月日:' + this.signArr[93]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('时分秒:' + this.signArr[94]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('经度:' + this.signArr[95]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('纬度:' + this.signArr[96]).fontColor('#FFB433').fontSize(14 * this.ratio).height(18 * this.ratio) | ||||
|               Text('经度:' + Number(convertGpsCoord2(Number(this.signArr[96])).toFixed(6))) | ||||
|                 .fontColor('#FFB433') | ||||
|                 .fontSize(14 * this.ratio) | ||||
|                 .height(18 * this.ratio) | ||||
|               Text('纬度:' + Number(convertGpsCoord2(Number(this.signArr[95])).toFixed(6))) | ||||
|                 .fontColor('#FFB433') | ||||
|                 .fontSize(14 * this.ratio) | ||||
|                 .height(18 * this.ratio) | ||||
|               Text('速度:' + ((Number((this.signArr[97] || 0)) * 1.852).toFixed(2)).toString()) | ||||
|                 .fontColor('#FFB433') | ||||
|                 .fontSize(14 * this.ratio) | ||||
| @ -300,16 +307,16 @@ export default struct SignDisplayCom { | ||||
|                 if (item.key === '龄期') { | ||||
|                   Column() { | ||||
|                     Text(`${item.key}:${item.value}`) | ||||
|                       .fontSize(20 * this.ratio) | ||||
|                       .fontSize(12 * this.ratio) | ||||
|                       .lineHeight(20 * this.ratio) | ||||
|                       .fontColor("#6b96f2") | ||||
|                       .fontColor((Number(item.value) == 0 || Number(item.value) > 10) ? "#ff5e5e" : '#fff') | ||||
|                   }.height(20 * this.ratio).justifyContent(FlexAlign.Start).width('100%') | ||||
|                 } else if (item.key === "状态") { | ||||
|                   Column() { | ||||
|                     Text(`${item.key}:${item.value}`) | ||||
|                       .fontSize(20 * this.ratio) | ||||
|                       .fontSize(12 * this.ratio) | ||||
|                       .lineHeight(20 * this.ratio) | ||||
|                       .fontColor(item.value != '4' ? "#ff5e5e" : "#6b96f2") | ||||
|                       .fontColor(item.value != '4' ? item.value == '5' ? "#fc8c2c" : "#ff5e5e" : "#fff") | ||||
|                   }.height(20 * this.ratio).justifyContent(FlexAlign.Start).width('100%') | ||||
|                 } else { | ||||
|                   Column() { | ||||
| @ -467,9 +474,15 @@ export default struct SignDisplayCom { | ||||
|     for (let i = 34; i <= 46; i++) { | ||||
|       this.sjxhColum[i].value = this.signArr[i+2] | ||||
|     } | ||||
|     const hours = Number(this.signArr[94].substr(0, 2)) + 8 | ||||
|     this.signArr[94] = (hours > 9 ? hours : '0' + hours) + this.signArr[94].substr(2, this.signArr[94].length - 2) | ||||
|     let t = 0 | ||||
|     for (let i = 83; i <= 97; i++) { | ||||
|       this.GPSColum[t].value = this.signArr[i] | ||||
|       if ([95, 96].includes(i)) { | ||||
|         this.GPSColum[t].value = Number(convertGpsCoord2(Number(this.signArr[i])).toFixed(6)) + ""; | ||||
|       } else { | ||||
|         this.GPSColum[t].value = this.signArr[i] | ||||
|       } | ||||
|       t++ | ||||
|     } | ||||
|     this.GPSColum[14].value = ((Number((this.signArr[97] || 0)) * 1.852).toFixed(2)).toString() | ||||
| @ -478,8 +491,6 @@ export default struct SignDisplayCom { | ||||
|     const str2 = this.signArr[93].substr(4.2) | ||||
|     this.signArr[93] = str2 + str1 + str0 | ||||
|     this.GPSColum[10].value = this.signArr[93] | ||||
| 
 | ||||
|     // this.signArr[53]=192.168.7.170' | ||||
|     this.sjxhColum = JSON.parse(JSON.stringify((this.sjxhColum))) | ||||
|     that.signArr = JSON.parse(JSON.stringify((this.signArr))) | ||||
|     that.GPSColum = JSON.parse(JSON.stringify((this.GPSColum))) | ||||
|  | ||||
| @ -13,7 +13,7 @@ import { takePhoto } from '../../common/service/videoService' | ||||
| import { GlobalConfig } from '../../config/index' | ||||
| 
 | ||||
| @Component | ||||
| struct FaceCompare { | ||||
| export default struct FaceCompare { | ||||
|   constructor() { | ||||
|     super() | ||||
|   } | ||||
| @ -350,4 +350,3 @@ struct FaceCompare { | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| export default FaceCompare | ||||
| @ -1222,12 +1222,14 @@ export default class Judge { | ||||
|         examJudgeSoundEnd({ | ||||
|           itemno: xmdm, code: code[0], type | ||||
|         }) | ||||
|         fileLog.setExamJudgeData({ | ||||
|           method: 'examJudgeSoundEnd', | ||||
|           itemno: xmdm, | ||||
|           code: code[0], | ||||
|           type, | ||||
|         }) | ||||
|         if (!this.isExamEnd) { | ||||
|           fileLog.setExamJudgeData({ | ||||
|             method: 'examJudgeSoundEnd', | ||||
|             itemno: xmdm, | ||||
|             code: code[0], | ||||
|             type, | ||||
|           }) | ||||
|         } | ||||
|       }) | ||||
|     } else { | ||||
|       if (code[0] == 'zhpp') { | ||||
| @ -1795,7 +1797,9 @@ export default class Judge { | ||||
|     console.info(judgeTag, '1.进入评判入口') | ||||
|     await examJudgeSetLogCallback(3, async (level, info, len) => { | ||||
|       console.log('评判日志:' + info) | ||||
|       await fileLog.setExamJudgeLogData(info); | ||||
|       if (!this.isExamEnd) { | ||||
|         await fileLog.setExamJudgeLogData(info); | ||||
|       } | ||||
|     }) | ||||
| 
 | ||||
|     console.info(judgeTag, '2.注册日志回调完成') | ||||
|  | ||||
| @ -107,6 +107,7 @@ export default class FileLog { | ||||
| 
 | ||||
|   //关闭所有文件写入
 | ||||
|   public closeAllFiles = async () => { | ||||
|     console.log("lixiao close file") | ||||
|     const {fileUtil,folderPath,fourAndOneLogDataFd} = this; | ||||
|     ['exam_progress_data', 'wuxi_exam_data', 'wuxi_progress_data', 'plc_data', 'judge_exam_data', 'judge_progress_callback_data', 'judge_log_data', 'four_one_log_data', 'four_one_log_byte_data'].forEach(path => { | ||||
|       fileUtil.closeFile(`${folderPath}/${path}.txt`); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user