From 5ebf805a2cc00415ace6be04c9e53bb0232f79b1 Mon Sep 17 00:00:00 2001 From: surenjun Date: Sat, 14 Sep 2024 09:10:11 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E6=B7=BB=E5=8A=A0jdzt=E5=B7=AE?= =?UTF-8?q?=E5=88=86=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/src/main/ets/pages/Judge.ets | 6 ++++-- entry/src/main/ets/pages/judgeSDK/judge.ts | 16 ++++++++-------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/entry/src/main/ets/pages/Judge.ets b/entry/src/main/ets/pages/Judge.ets index fe2d2b12..b6eeb57e 100644 --- a/entry/src/main/ets/pages/Judge.ets +++ b/entry/src/main/ets/pages/Judge.ets @@ -397,8 +397,10 @@ struct Index { // 断点续考判断 async goDdxkItems() { const judgeConfigObj = this.judgeConfigObj + const examSubject = this.examSubject - if (judgeConfigObj['432'] != 0) { + //科目二强制开始断点续考 + if (judgeConfigObj['432'] != 0 || examSubject == 2) { //断点续考判断 let currentParams: any = router.getParams(); const examItems: string = currentParams?.examItems; @@ -409,7 +411,7 @@ struct Index { const startTime = examItemsArrs[0] const ddxkKsxmArr = examItemsArrs[2]?.split(',').filter(item => item) || [] const ddxkKfArr = examItemsArrs[3]?.split('^').filter(item => item) || [] - if (judgeConfigObj['432'] == 2) { + if (judgeConfigObj['432'] == 2 || examSubject == 2) { //TODO 带项目带里程 if (ddxkKsxmArr?.length) { //断点续考 diff --git a/entry/src/main/ets/pages/judgeSDK/judge.ts b/entry/src/main/ets/pages/judgeSDK/judge.ts index b335e33f..4de66138 100644 --- a/entry/src/main/ets/pages/judgeSDK/judge.ts +++ b/entry/src/main/ets/pages/judgeSDK/judge.ts @@ -206,11 +206,11 @@ export default class Judge { } //实时计算gps经纬度距离 handDistance= async ()=>{ - const {jd,wd,hxj,dwzt} = this.tempData.gps; + const {jd,wd,hxj,dwzt,jdzt} = this.tempData.gps; const tJD = convertGpsCoord2(jd) const tWD = convertGpsCoord2(wd) const {prevJd,prevWd} = this - if(prevJd && dwzt == 4){ + if(prevJd && dwzt == 4 && jdzt == 3){ const distance = await examCalcGpsDistance({ jd1:prevJd, wd1:prevWd, @@ -248,7 +248,7 @@ export default class Judge { const sdkver = await examJudgeVersion(); const initInfo = { sdkver, - appven:globalThis.version, + appver:globalThis.version, kskm: examSubject * 1, kchp: plateNo, kchm: carId * 1, @@ -1445,13 +1445,13 @@ export default class Judge { const str = await senorToWXDataStr(msg); usbService.sendUSB(str) } - this.judgeUI.isDwztRight = plcData.gps.dwzt == 4; + this.judgeUI.isDwztRight = (plcData.gps.dwzt == 4 && plcData.gps.jdzt == 3); const param350 = judgeUI.judgeConfigObj['350'] //@ts-ignore this.judgeUI.sd = ((param350 == 0? plcData.gps.sd :plcData.sensor.cs) as number * 1.852).toFixed(0) + '' this.judgeUI.dw = (Math.floor(plcData.sensor.dw as number) || 0) + '' //TODO 暂时关闭差分检测异常 - await this.checkDwzt(plcData.gps.dwzt); + await this.checkDwzt(plcData.gps.dwzt,plcData.gps.jdzt); if(!isExamEnd){ await examJudgeRealExam(plcData) } @@ -1524,7 +1524,7 @@ export default class Judge { num++ // 4.过程数据 this.tempData = msg - this.judgeUI.isDwztRight = msg?.gps?.dwzt == 4; + this.judgeUI.isDwztRight = (msg?.gps?.dwzt == 4 && msg?.gps?.jdzt == 3); this.judgeUI.sd = Math.floor(msg?.gps?.sd * 1.852) + ''; this.judgeUI.dw = Math.floor(msg?.sensor?.dw) + '' this.plcData = msg @@ -1579,7 +1579,7 @@ export default class Judge { } // 检测差分状态 - checkDwzt = async (dwzt) => { + checkDwzt = async (dwzt,jdzt) => { const {avPlayer} = this; const judgeConfig = this.judgeUI.judgeConfig; // const param499 = judgeConfig['499'] @@ -1589,7 +1589,7 @@ export default class Judge { this.judgeUI.dwztErrorVisible = true; avPlayer.playAudio([`voice/差分状态异常.mp3`],true) } - if(dwzt != 4){ + if(dwzt != 4 || jdzt != 3){ this.dwztNum += 1 }else{ this.dwztNum = 0;