Compare commits

...

2 Commits

Author SHA1 Message Date
b42f9c2251 Merge remote-tracking branch 'origin/dev' into dev 2024-09-14 09:10:22 +08:00
5ebf805a2c feat:添加jdzt差分判断 2024-09-14 09:10:11 +08:00
2 changed files with 12 additions and 10 deletions

View File

@ -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) {
//断点续考

View File

@ -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;