Compare commits
	
		
			32 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 46c3825c59 | ||
|  | 198fa634fe | ||
|  | 8d6e6e3b6b | ||
| 4578177d37 | |||
| d1a1fc8b44 | |||
| 08e430f02f | |||
| 379f4c8778 | |||
| 273340189d | |||
| c796add419 | |||
| 670d6d20af | |||
| a602655278 | |||
|  | d93f0adcaf | ||
|  | 098644f64b | ||
| 264e76d05d | |||
| c359ef0568 | |||
|  | edb2ed2b45 | ||
|  | b765676068 | ||
|  | 5732b62000 | ||
|  | 4c6f25ee3a | ||
|  | 2ff07dd2fb | ||
|  | 8d7173c545 | ||
|  | 0c2715821d | ||
|  | 2d085b42bf | ||
|  | 2f524da992 | ||
|  | 7447ae3f4d | ||
|  | 5c9af2b914 | ||
|  | 818d2a775d | ||
|  | 5119c46963 | ||
|  | bc8017ff71 | ||
|  | 45772f0b49 | ||
|  | fc6f784db1 | ||
|  | afa4983725 | 
| @ -5,9 +5,9 @@ | ||||
|         "name": "default", | ||||
|         "material": { | ||||
|           "certpath": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.cer", | ||||
|           "storePassword": "0000001B0A8E97F78561FFE1B2E5B57C296BFC3D297047253237158BC25CD7077892C41C1C83FAFFDE4A0A", | ||||
|           "storePassword": "0000001BAC2A2242CBD30042192466419A8087398301FC1759A9BBCFD659DD68D4D6AC1F21A3C57322816D", | ||||
|           "keyAlias": "debugKey", | ||||
|           "keyPassword": "0000001B654E765B79C902CB9E3A6D97A40F5852412CEE5AC37E949F430C754DB02327838E925EDF861314", | ||||
|           "keyPassword": "0000001B6BC513F0EF12E88D402A699731288AA9D23B4A26CCDD08F4A6CBC6FDDBBCCEFBB2C5AFE4D3E3E8", | ||||
|           "profile": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.p7b", | ||||
|           "signAlg": "SHA256withECDSA", | ||||
|           "storeFile": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.p12" | ||||
|  | ||||
| @ -1,13 +1,15 @@ | ||||
| { | ||||
|   "lockfileVersion": 1, | ||||
|   "lockfileVersion": 2, | ||||
|   "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", | ||||
|   "specifiers": { | ||||
|     "@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6" | ||||
|   }, | ||||
|   "packages": { | ||||
|     "@ohos/hypium@1.0.6": { | ||||
|       "resolved": "https://repo.harmonyos.com/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz", | ||||
|       "integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ==" | ||||
|       "resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz", | ||||
|       "integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ==", | ||||
|       "registryType": "ohpm", | ||||
|       "shasum": "3f5fed65372633233264b3447705b0831dfe7ea1" | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @ -105,7 +105,7 @@ export async function uploadLogFile() { | ||||
| 
 | ||||
| 
 | ||||
| // 将要上传的文件拷贝到缓存目录并压缩
 | ||||
| async function getCopyFiles() { | ||||
| export async function getCopyFiles() { | ||||
|   const absolutePath = '/mnt/hmdfs/100/account/device_view/local/files/duolun/logs' | ||||
|   const tempPath = globalThis.context.cacheDir + '/temp'; | ||||
| 
 | ||||
| @ -140,10 +140,12 @@ async function getCopyFiles() { | ||||
|   const filenames = await fs.listFile('/data/log/hilog'); | ||||
|   for (let i = 0; i < filenames.length; i++) { | ||||
|     if (filenames[i].split('.')[0] == 'hilog') { | ||||
|       const date = filenames[i].split('.')[2].split('-')[0] | ||||
|       if (date == nowDate) { | ||||
|       try { | ||||
|         fs.copyFileSync('/data/log/hilog/' + filenames[i], globalThis.context.cacheDir + '/temp/' + filenames[i]) | ||||
|       } catch (e) { | ||||
|         console.error(TAG, e); | ||||
|       } | ||||
| 
 | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
| @ -307,6 +309,7 @@ export async function getDoubleCeneterTable(param) { | ||||
|         return | ||||
|       } | ||||
|     } | ||||
|     getChuankouFn() | ||||
|     reslove(true) | ||||
|     router.pushUrl({ | ||||
|       url: 'pages/ExaminerLogin', | ||||
| @ -321,6 +324,7 @@ export async function getSingleCenterTable(param) { | ||||
|     console.log('teststet0') | ||||
|     upDataZhongxinginitialization(param).then((result) => { | ||||
|       if (result === true) { | ||||
|         getChuankouFn() | ||||
|         resolve(true) | ||||
|       } else { | ||||
|         console.log('联网更新失败,请检查网络后重新更新') | ||||
| @ -442,6 +446,7 @@ function openChuankouFn(callback) { | ||||
|     if(carInfo.kscx == 'C1'){ | ||||
|       testNapi.SerialOpenAsync(devPath, (fd) => { | ||||
|         globalThis.fd = fd; | ||||
|         globalThis.ChounkouInit = true; | ||||
|         globalThis.num = 0 | ||||
|         let parity = 0x4e; // 'N'
 | ||||
|         let ret = testNapi.SerialSetAsync(globalThis.fd, 115200, 0, 8, 1, parity, (ret) => { | ||||
|  | ||||
| @ -218,7 +218,8 @@ export async function takePhoto(param, context, dir, flag = 1, callback?) { | ||||
|   // @ts-ignore
 | ||||
|   // var snapResult = rtsp_server.getVideoSnapshot(context, video_uri, '', dir);
 | ||||
|   if (flag == 0) { | ||||
|     rtsp_server.detectVideoSnapshotSize(video_uri, fileName, (err, snapResult) => { | ||||
|     // @ts-ignore
 | ||||
|     rtsp_server.detectVideoSnapshotSize(video_uri, fileName, false,(err, snapResult) => { | ||||
|       console.log("baohaowen_detectLoop round end size1:" + snapResult.fileSize); | ||||
|       callback({ fileSize: snapResult.fileSize, errorCode: snapResult.errorCode }) | ||||
|     }); | ||||
|  | ||||
							
								
								
									
										63
									
								
								entry/src/main/ets/common/utils/PreferenceUtils.ets
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								entry/src/main/ets/common/utils/PreferenceUtils.ets
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,63 @@ | ||||
| import dataPreferences from '@ohos.data.preferences'; | ||||
| 
 | ||||
| let context = getContext(this); | ||||
| let preference: dataPreferences.Preferences; | ||||
| const SYSTEM_DB: string = 'system.db' //其他信息 | ||||
| const USER_DB: string = 'user.db' //用户信息 | ||||
| 
 | ||||
| class PreferenceUtils { | ||||
|   // 写入其他缓存数据 | ||||
|   async writeOtherData(value: dataPreferences.ValueType, key: string) { | ||||
|     // if (value === null) { | ||||
|     //   return; | ||||
|     // } | ||||
|     if (!preference) { | ||||
|       await this.getPreferencesFromStorage(SYSTEM_DB); | ||||
|     } | ||||
|     try { | ||||
|       await preference.put(key, value); | ||||
|     } catch (err) { | ||||
|       console.info(`Failed to put value, Cause: ${err}`); | ||||
|     } | ||||
|     await preference.flush(); | ||||
|   } | ||||
| 
 | ||||
|   // 获取其他缓存数据 | ||||
|   async getOtherModel<T extends dataPreferences.ValueType>(key: string) { | ||||
|     let value: dataPreferences.ValueType = 1; | ||||
|     if (!preference) { | ||||
|       await this.getPreferencesFromStorage(SYSTEM_DB); | ||||
|     } | ||||
| 
 | ||||
|     try { | ||||
|       value = (await preference.get(key, '')); | ||||
|     } catch (err) { | ||||
|       console.info(`Failed to get value, Cause: ${err}`); | ||||
|     } | ||||
|     if (value === '') { | ||||
|       return; | ||||
|     } | ||||
|     return value as T; | ||||
|   } | ||||
| 
 | ||||
|   // 删除登录数据 | ||||
|   async deletePreferences() { | ||||
|     try { | ||||
|       await dataPreferences.deletePreferences(context, USER_DB); | ||||
|     } catch (err) { | ||||
|       console.info(`Failed to delete preferences, Cause: ${err}`); | ||||
|     } | ||||
|     ; | ||||
|   } | ||||
| 
 | ||||
|   // 创建登录数据preference | ||||
|   async getPreferencesFromStorage(name: string) { | ||||
|     try { | ||||
|       preference = await dataPreferences.getPreferences(context, name); | ||||
|     } catch (err) { | ||||
|       console.info(`Failed to get preferences, Cause: ${err}`); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| export default new PreferenceUtils(); | ||||
| @ -380,7 +380,7 @@ export default class UdpClientByCenter { | ||||
|       } | ||||
|       // console.info('surenjun2','set message_1Fn=>' + newArr.toString())
 | ||||
|       callback && callback(newArr.toString()) | ||||
|       console.info('surenjun 左方向灯=>', newArr.toString()) | ||||
|       // console.info('surenjun 左方向灯=>', newArr.toString())
 | ||||
|       this.currentValue = newArr.toString(); | ||||
|     } else { | ||||
|       callback && callback('') | ||||
|  | ||||
							
								
								
									
										41
									
								
								entry/src/main/ets/common/utils/UsbUtils.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								entry/src/main/ets/common/utils/UsbUtils.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,41 @@ | ||||
| import common from '@ohos.app.ability.common' | ||||
| import fs from '@ohos.file.fs'; | ||||
| import zlib from '@ohos.zlib'; | ||||
| import { getCurrentTime } from './tools' | ||||
| import {getCopyFiles} from '../service/indexService' | ||||
| const TAG = '[usbUtils]' | ||||
| 
 | ||||
| export class UsbUtils { | ||||
|   private context: common.UIAbilityContext | ||||
| 
 | ||||
|   constructor(context: common.UIAbilityContext) { | ||||
|     this.context = context | ||||
|   } | ||||
| 
 | ||||
|   getUsbDiskPath(): Promise<string> { | ||||
|     return new Promise((resolve, reject) => { | ||||
|       let path = "" | ||||
|       try { | ||||
|         path = fs.listFileSync("/mnt/data/external")[0] | ||||
|       } catch (error) { | ||||
|         console.log("err", JSON.stringify(error)) | ||||
|         reject(error) | ||||
|         return | ||||
|       } | ||||
|       resolve('/mnt/data/external' + '/' + path) | ||||
|     }) | ||||
|   } | ||||
| 
 | ||||
|   async copyFilesToUsb() { | ||||
|     const time = await getCurrentTime(0) | ||||
|     const date = time.split(' ')[0] | ||||
|     const output = await this.getUsbDiskPath(); | ||||
|     const filename = await getCopyFiles(); | ||||
|     const filePath = globalThis.context.cacheDir + '/' + filename | ||||
|     let stat = fs.statSync(filePath) | ||||
|     console.log(TAG,`压缩包文件${globalThis.carInfo?.carNo}-${date}大小:` + (Math.ceil(stat.size / 1024 / 1024)) + 'M') | ||||
|     fs.copyFileSync(filePath, `${output}/${globalThis.carInfo?.carNo}-${date}.zip`) | ||||
|     console.log(TAG,'转移压缩包完成:' ,output) | ||||
|     fs.rmdirSync(filePath); | ||||
|   } | ||||
| } | ||||
| @ -10,9 +10,15 @@ import { GlobalConfig } from '../config/global' | ||||
| import { tcpUtil } from '../common/utils/TcpRequest'; | ||||
| import DB from '../common/database/DbSql'; | ||||
| import { initTable } from '../common/service/initable'; | ||||
| import appRecovery from '@ohos.app.ability.appRecovery'; | ||||
| 
 | ||||
| export default class EntryAbility extends UIAbility { | ||||
|   async onCreate(want, launchParam) { | ||||
|     appRecovery.enableAppRecovery( | ||||
|       appRecovery.RestartFlag.ALWAYS_RESTART, | ||||
|       appRecovery.SaveOccasionFlag.SAVE_WHEN_ERROR, | ||||
|       appRecovery.SaveModeFlag.SAVE_WITH_FILE | ||||
|     ); | ||||
|     try { | ||||
|       console.log("sql first") | ||||
|       await DB.init(this.context) | ||||
| @ -23,6 +29,7 @@ export default class EntryAbility extends UIAbility { | ||||
|       console.error('sql first error', e) | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
|     hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); | ||||
|   } | ||||
| 
 | ||||
| @ -38,7 +45,7 @@ export default class EntryAbility extends UIAbility { | ||||
|     // Main window is created, set main page for this ability
 | ||||
|     hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); | ||||
|     await tcpUtil.init() | ||||
|     globalThis.tcpStep=0 | ||||
|     globalThis.tcpStep = 0 | ||||
| 
 | ||||
|     globalThis.carInfo = {} | ||||
|     globalThis.examinerInfo = {} | ||||
|  | ||||
| @ -10,7 +10,7 @@ import { getUDP, getUDP2 } from '../common/utils/GlobalUdp'; | ||||
| import { initJudgeUdp } from '../common/utils/UdpJudge'; | ||||
| import { judgeConfig } from './judgeSDK/utils/judgeConfig'; | ||||
| import { getTCP } from '../common/utils/GlobalTcp'; | ||||
| import { getSingleCenterTable, setliushuiNum, takePhotoFn ,uploadLogFile} from '../common/service/indexService'; | ||||
| import { getSingleCenterTable, setliushuiNum, takePhotoFn, uploadLogFile } from '../common/service/indexService'; | ||||
| import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl'; | ||||
| import promptAction from '@ohos.promptAction'; | ||||
| import errorMsgDialog from './compontents/errorMsgDialog'; | ||||
| @ -19,11 +19,11 @@ import UdpEvent from '../common/utils/UdpEvent'; | ||||
| import { delPic } from '../common/service/videoService'; | ||||
| import imageBtn from './compontents/imageBtn'; | ||||
| import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements'; | ||||
| import {updateModelAndCar} from '../common/autoUpdate/index' | ||||
| // import  {uploadLogFile} from '../common/service/indexService' | ||||
| import { getModalValueCdAndCar } from '../api'; | ||||
| 
 | ||||
| // import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements'; | ||||
| import { updateModelAndCar } from '../common/autoUpdate/index' | ||||
| import { UsbUtils } from '../common/utils/UsbUtils' | ||||
| import appRecovery from '@ohos.app.ability.appRecovery'; | ||||
| import PreferenceUtils from '../common/utils/PreferenceUtils'; | ||||
| import CozyMsgDialog from './compontents/CozyDialog'; | ||||
| 
 | ||||
| @Entry | ||||
| @Component | ||||
| @ -80,7 +80,23 @@ struct Index { | ||||
|     Column() { | ||||
|       Column() { | ||||
|         Row() { | ||||
|           Image($r('app.media.logo')).width('30%').height('5.5%').margin({ left: 24 }) | ||||
|           Image($r('app.media.logo')).width('30%').height('5.5%').margin({ left: 24 }).gesture( | ||||
|             GestureGroup(GestureMode.Exclusive, | ||||
|               TapGesture({ count: 2 }) | ||||
|                 .onAction(async () => { | ||||
|                   const usbUtils = new UsbUtils(this.context) | ||||
|                   this.loading = true | ||||
|                   this.loadingText = '正在导出日志和轨迹,请稍候……' | ||||
|                   try { | ||||
|                     await usbUtils.copyFilesToUsb() | ||||
|                   } catch (e) { | ||||
| 
 | ||||
|                   } | ||||
|                   this.loading = false | ||||
|                   this.loadingText = '' | ||||
|                 }) | ||||
|             ) | ||||
|           ) | ||||
|           Row() { | ||||
|             Image($r('app.media.btn_setting')).width('16.7%').height('12.2%') | ||||
|               .onClick(async () => { | ||||
| @ -342,7 +358,7 @@ struct Index { | ||||
|             .width(80 * globalThis.ratio) | ||||
|             .height(80 * globalThis.ratio) | ||||
|             .position({ x: 288 * globalThis.ratio, y: 89 * globalThis.ratio }) | ||||
|           Text(this.loadingText ||'获取考车信息,请稍候……') | ||||
|           Text(this.loadingText || '获取考车信息,请稍候……') | ||||
|             .fontSize(24 * globalThis.ratio) | ||||
|             .margin({ top: 20 * globalThis.ratio }) | ||||
|             .fontWeight(400) | ||||
| @ -364,6 +380,7 @@ struct Index { | ||||
|   } | ||||
| 
 | ||||
|   async aboutToAppear() { | ||||
| 
 | ||||
|     // setInterval(() => { | ||||
|     //   let date = new Date(); | ||||
|     //   console.info('jiangsong1:timeSynchronization begin '); | ||||
| @ -407,7 +424,18 @@ struct Index { | ||||
|         } | ||||
|       }) | ||||
|     }); | ||||
| 
 | ||||
|     const isRestart = await PreferenceUtils.getOtherModel("isRestart") | ||||
|     if (isRestart === "1") { | ||||
|       PreferenceUtils.writeOtherData("0", "isRestart") | ||||
|       setTimeout(() => { | ||||
|         router.pushUrl({ | ||||
|           url: 'pages/UserInfo', | ||||
|           params: { | ||||
|             type: 1 | ||||
|           } | ||||
|         }, router.RouterMode.Single); | ||||
|       }, 2000) | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   aboutToDisappear() { | ||||
| @ -438,9 +466,9 @@ struct Index { | ||||
|     this.loading = true | ||||
|     console.log("sql 1111") | ||||
| 
 | ||||
|     getSingleCenterTable(param).then(async (ret:any) => { | ||||
|     getSingleCenterTable(param).then(async (ret: any) => { | ||||
| 
 | ||||
|       if(!this.isModelInit){ | ||||
|       if (!this.isModelInit) { | ||||
|         this.loading = true | ||||
|         this.loadingText = '正在下载考车模型,请稍候……' | ||||
|         await updateModelAndCar(false) | ||||
| @ -449,7 +477,7 @@ struct Index { | ||||
|         this.isModelInit = true | ||||
|       } | ||||
| 
 | ||||
|       if(typeof ret == 'object' && ret.resultCode == '3'){ | ||||
|       if (typeof ret == 'object' && ret.resultCode == '3') { | ||||
|         this.loadingText = '正在下载考车最新版本,请稍候……' | ||||
|         this.loading = true | ||||
|         await updateModelAndCar(true) | ||||
| @ -469,7 +497,7 @@ struct Index { | ||||
|         if (globalThis.singlePlay) { | ||||
|           router.pushUrl({ | ||||
|             url: 'pages/userInfo' | ||||
|           },router.RouterMode.Single) | ||||
|           }, router.RouterMode.Single) | ||||
|           return | ||||
|         } | ||||
|         if (globalThis.singlePlay) { | ||||
|  | ||||
| @ -566,7 +566,7 @@ struct Index { | ||||
|     //上车准备&起步都开始时 | ||||
|     if (this.syssetParam386 == '3' | ||||
|       && (this.projectsObj[1].type == '2' || this.projectsObj[1].type == '3') | ||||
|       && this.projectsObj[2].type == '2' | ||||
|       && (this.projectsObj[2].type !== '1' && this.projectsObj[2].type !== undefined) | ||||
|       && !this.syssetParam386ET3 | ||||
|     ) { | ||||
|       this.judge.rmndg = 2; | ||||
|  | ||||
| @ -24,6 +24,9 @@ import errorMsgDialog from './compontents/errorMsgDialog'; | ||||
| import imageBtn from './compontents/imageBtn'; | ||||
| import FileUtil from '../common/utils/File'; | ||||
| import DB, { ColumnType } from '../common/database/DbSql'; | ||||
| import CozyMsgDialog from './compontents/CozyDialog'; | ||||
| import PreferenceUtils from '../common/utils/PreferenceUtils'; | ||||
| import appRecovery from '@ohos.app.ability.appRecovery'; | ||||
| 
 | ||||
| @Entry | ||||
| @Component | ||||
| @ -78,6 +81,7 @@ struct UserInfo { | ||||
|   @State faceFlag: string = '0'; | ||||
|   @State FaceOpenStatue: string = '0'; //是否开启人脸识别 | ||||
|   @State faceCatchImg: string = '' | ||||
|   @State examCount: number = 0 | ||||
|   @State systemParam: systemParam = { | ||||
|     'Param341': true, //是否按顺序考试 | ||||
|     'Param803Str': '0', //开始考试前必须解开安全带或关车门 | ||||
| @ -185,6 +189,10 @@ struct UserInfo { | ||||
|     { label: '考试员名', key: 'ksy2' }, | ||||
|   ] | ||||
|   private fileUtil: FileUtil | ||||
|   cozyDialog: CustomDialogController = new CustomDialogController({ | ||||
|     builder: CozyMsgDialog(), | ||||
|     autoCancel: false | ||||
|   }) | ||||
| 
 | ||||
|   aboutToAppear() { | ||||
|     this.fileUtil = new FileUtil(this.context) | ||||
| @ -192,6 +200,15 @@ struct UserInfo { | ||||
|   } | ||||
| 
 | ||||
|   async onPageShow() { | ||||
|     if (this.examCount > 5) { | ||||
|       PreferenceUtils.writeOtherData("1", "isRestart") | ||||
|       this.cozyDialog.open() | ||||
|       //   延迟关闭 | ||||
|       setTimeout(() => { | ||||
|         this.cozyDialog.close() | ||||
|         appRecovery.restartApp() | ||||
|       }, 3000) | ||||
|     } | ||||
|     this.isExamStart = false | ||||
|     this.startExam = false | ||||
|     this.updateTimeLimit = false | ||||
| @ -210,7 +227,7 @@ struct UserInfo { | ||||
|     if (!globalThis.singlePlay) { | ||||
|       // @ts-ignore | ||||
|       if (routerParam.type != 1) { | ||||
|         console.info('surenjun','Judge返回到UserInfo界面') | ||||
|         console.info('surenjun', 'Judge返回到UserInfo界面') | ||||
|         // @ts-ignore | ||||
|         this.list = await getSyncData('USERLIST') | ||||
|         // @ts-ignore | ||||
| @ -219,7 +236,7 @@ struct UserInfo { | ||||
|         console.log('surenjun useruser1=>,', JSON.stringify(data)) | ||||
| 
 | ||||
|         const user = data[0] | ||||
|         if(!Number(user.kssycs)){ | ||||
|         if (!Number(user.kssycs)) { | ||||
|           this.list = this.list.filter(res => { | ||||
|             return res.sfzmhm != user.sfzmhm | ||||
|           }) | ||||
| @ -538,7 +555,7 @@ struct UserInfo { | ||||
|         if (sys.v_no === '770') { | ||||
|           that.systemParam.Param770Str = sys.v_value; | ||||
|         } | ||||
|         if(sys.v_no === '853'){ | ||||
|         if (sys.v_no === '853') { | ||||
|           that.systemParam.Param853 = sys.v_value; | ||||
|         } | ||||
|         if (sys.v_no === '835') { | ||||
| @ -969,7 +986,7 @@ struct UserInfo { | ||||
|       const ygd = msgArr[8]; | ||||
|       const ssc = msgArr[13]; | ||||
|       const dw = msgArr[28]; | ||||
|       if(Param853Str == '1'){ | ||||
|       if (Param853Str == '1' && fdjzs * 1 > 0) { | ||||
|         this.avPlayer.playAudio(['voice/熄火.mp3']) | ||||
|         promptAction.showToast({ | ||||
|           message: '请熄火', | ||||
| @ -1157,12 +1174,12 @@ struct UserInfo { | ||||
|                 CommText({ | ||||
|                   ratio: this.ratio, | ||||
|                   color: item.sfzmhm != this.currentUser.sfzmhm ? '#FFFFFF' : '#000000', | ||||
|                   text: this.systemParam.Param850&&Number(this.systemParam.Param850)>0?"*****":item.lsh | ||||
|                   text: this.systemParam.Param850 && Number(this.systemParam.Param850) > 0 ? "*****" : item.lsh | ||||
|                 }) | ||||
|                 CommText({ | ||||
|                   ratio: this.ratio, | ||||
|                   color: item.sfzmhm != this.currentUser.sfzmhm ? '#FFFFFF' : '#000000', | ||||
|                   text: this.systemParam.Param850&&Number(this.systemParam.Param850)>0?"*****":decodeURIComponent(item.xm) | ||||
|                   text: this.systemParam.Param850 && Number(this.systemParam.Param850) > 0 ? "*****" : decodeURIComponent(item.xm) | ||||
|                 }) | ||||
|               } | ||||
|             } | ||||
| @ -1231,39 +1248,39 @@ struct UserInfo { | ||||
| 
 | ||||
|           Column() { | ||||
|             ForEach(this.labelBlocks, (item) => { | ||||
|               if(this.systemParam.Param850=='1'){ | ||||
|                 LabelBlock({ label: item.label, ratio: this.ratio, value:'*****'}) | ||||
|               if (this.systemParam.Param850 == '1') { | ||||
|                 LabelBlock({ label: item.label, ratio: this.ratio, value: '*****' }) | ||||
|               } | ||||
|               else if(this.systemParam.Param850=='2'){ | ||||
|                 if(item.key=='xm'){ | ||||
|               else if (this.systemParam.Param850 == '2') { | ||||
|                 if (item.key == 'xm') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser.xh }) | ||||
|                 }else if(item.key=='ksxl'){ | ||||
|                 } else if (item.key == 'ksxl') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser[item.key] }) | ||||
|                 }else{ | ||||
|                 } else { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: '*****' }) | ||||
|                 } | ||||
|               }else if(this.systemParam.Param850=='4'){ | ||||
|                 if(item.key=='ksxl'){ | ||||
|               } else if (this.systemParam.Param850 == '4') { | ||||
|                 if (item.key == 'ksxl') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: '*****' }) | ||||
|                 }else{ | ||||
|                 } else { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser[item.key] }) | ||||
|                 } | ||||
|               }else if(this.systemParam.Param850=='5'){ | ||||
|                 if(item.key=='xm'){ | ||||
|               } else if (this.systemParam.Param850 == '5') { | ||||
|                 if (item.key == 'xm') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser.xh }) | ||||
|                 }else{ | ||||
|                 } else { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: '*****' }) | ||||
|                 } | ||||
|               }else if(this.systemParam.Param850=='6'){ | ||||
|                 if(item.key=='ksxl'||item.key=='kssycs'){ | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser[item.key]  }) | ||||
|                 }else if(item.key=='sfzmhm'){ | ||||
|               } else if (this.systemParam.Param850 == '6') { | ||||
|                 if (item.key == 'ksxl' || item.key == 'kssycs') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser[item.key] }) | ||||
|                 } else if (item.key == 'sfzmhm') { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser.sfzmhm.slice(-6) }) | ||||
|                 }else{ | ||||
|                 } else { | ||||
|                   LabelBlock({ label: item.label, ratio: this.ratio, value: '*****' }) | ||||
|                 } | ||||
|               } | ||||
|               else{ | ||||
|               else { | ||||
|                 LabelBlock({ label: item.label, ratio: this.ratio, value: this.currentUser[item.key] }) | ||||
| 
 | ||||
|               } | ||||
| @ -1281,7 +1298,7 @@ struct UserInfo { | ||||
|           //   .commStyle() | ||||
|           imageBtn({ btnWidth: 220 * this.ratio, btnHeight: 69 * this.ratio, imgSrc: $r('app.media.yydj_btn') }) | ||||
|             .margin({ bottom: 12 * this.ratio }) | ||||
|             .onClick(()=>{ | ||||
|             .onClick(() => { | ||||
|               globalThis.judgeUdp.askVoice() | ||||
|             }) | ||||
| 
 | ||||
| @ -1326,19 +1343,35 @@ struct UserInfo { | ||||
|           } else { | ||||
|             // Image($r('app.media.ksks_btn')) | ||||
|             //   .commStyle() | ||||
|             // Button(){ | ||||
|             //   Text("add") | ||||
|             // }.width(100).height(30).onClick(()=>{ | ||||
|             //   this.examCount++ | ||||
|             //   if (this.examCount > 2) { | ||||
|             //     PreferenceUtils.writeOtherData("1", "isRestart") | ||||
|             //     this.cozyDialog.open() | ||||
|             //     //   延迟关闭 | ||||
|             //     setTimeout(() => { | ||||
|             //       this.cozyDialog.close() | ||||
|             //       appRecovery.restartApp() | ||||
|             //     }, 3000) | ||||
|             //   } | ||||
|             // | ||||
|             // }) | ||||
|             imageBtn({ btnWidth: 220 * this.ratio, btnHeight: 69 * this.ratio, imgSrc: $r('app.media.ksks_btn') }) | ||||
|               .margin({ bottom: 12 * this.ratio }) | ||||
|               .onClick(async () => { | ||||
|                 if (this.systemParam.Param612Str == '1') { | ||||
|                   return | ||||
|                 } | ||||
|                 if(!globalThis.singlePlay&&Number(this.systemParam.Param835)&&Number(this.currentUser.yycs)&&Number(this.systemParam.Param835)<=Number(this.currentUser.yycs)){ | ||||
|                   this.type='4' | ||||
|                   this.title='当前考生预约考试次数为'+this.currentUser.yycs | ||||
|                 if (!globalThis.singlePlay && Number(this.systemParam.Param835) && Number(this.currentUser.yycs) && Number(this.systemParam.Param835) <= Number(this.currentUser.yycs)) { | ||||
|                   this.type = '4' | ||||
|                   this.title = '当前考生预约考试次数为' + this.currentUser.yycs | ||||
|                   this.errorDialog.open() | ||||
|                   return | ||||
|                 } | ||||
| 
 | ||||
|                 this.examCount++ | ||||
|                 console.log("已经考了", this.examCount + "个学员") | ||||
|                 await this.prePareExam() | ||||
|               }) | ||||
|           } | ||||
|  | ||||
							
								
								
									
										18
									
								
								entry/src/main/ets/pages/compontents/CozyDialog.ets
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								entry/src/main/ets/pages/compontents/CozyDialog.ets
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| @CustomDialog | ||||
| export default struct CozyMsgDialog { | ||||
|   private controller?: CustomDialogController | ||||
| 
 | ||||
|   build() { | ||||
|     Column() { | ||||
|       Column() { | ||||
|         Text("温馨提示").fontSize(50) | ||||
|         Row() { | ||||
|           Text("设备已经进行过6次考试,马上进入内存以及数据优化过,请稍等片刻,请勿对机器进行操作,感谢配合!") | ||||
|             .fontSize(30).lineHeight(40) | ||||
|         }.width("100%").margin({ | ||||
|           top: 20 | ||||
|         }).padding(20) | ||||
|       } | ||||
|     }.width("100%").height(300).padding(20) | ||||
|   } | ||||
| } | ||||
| @ -187,8 +187,8 @@ export default struct FaceCompare { | ||||
|     this.base64 = this.imageBase64 + data.base64 | ||||
|     faceCompare({ | ||||
|       sfzh: this.sfzh, | ||||
|       secondImage: this.firstImage.substr(22), | ||||
|       firstImage: data.base64, | ||||
|       secondImage:data.base64, | ||||
|       firstImage: this.firstImage.substr(22), | ||||
|       type: 2, | ||||
|       verifyType: 1 | ||||
|     }) | ||||
|  | ||||
| @ -267,9 +267,7 @@ export default class Judge { | ||||
|       judgeUdp.send(bytes) | ||||
|     } | ||||
|     if (!isExamEnd) { | ||||
|       console.info(judgeTag, 'start examJudgeRealExam') | ||||
|       await examJudgeRealExam(plcData) | ||||
|       console.info(judgeTag, 'end examJudgeRealExam') | ||||
|     } | ||||
|     let [prevJd, preWd] = [0, 0] | ||||
|     globalThis.udpIndex += 1 | ||||
| @ -528,7 +526,7 @@ export default class Judge { | ||||
|       const bytes = await this.getMessageHeartbeat(); | ||||
|       bytes && globalThis.judgeUdp.send(bytes) | ||||
| 
 | ||||
|     }, 50) | ||||
|     }, 1000) | ||||
| 
 | ||||
|     globalThis.judgeTimer = judgeTimer; | ||||
|   } | ||||
| @ -1181,8 +1179,8 @@ export default class Judge { | ||||
|     const {lsh,idCard,serialNumber,ksdd,projectsObj} = judgeUI | ||||
|     const time = await getCurrentTime(); | ||||
|     const project = getProjectInfo(ksxm); | ||||
|     //科目三夜间行驶.模拟灯光、上车准备出现通用评判,ksxm为当前进行的项目
 | ||||
|     const checkProjects = ['17', '41', '1']; | ||||
|     //科目三夜间行驶.模拟灯光、上车准备出现非本项目的扣分,ksxm需转换为为当前进行的项目
 | ||||
|     const checkProjects = ['1', '41', '17']; | ||||
|     //获取正在进行的项目
 | ||||
|     const inProjects = Reflect.ownKeys(projectsObj).filter(projectKey => projectsObj[projectKey].type == 2); | ||||
| 
 | ||||
| @ -1192,7 +1190,8 @@ export default class Judge { | ||||
|         commonKsxm = projectCode | ||||
|       } | ||||
|     }) | ||||
| 
 | ||||
|     console.info(judgeTag, 'commonKsxm=>' + commonKsxm) | ||||
|     console.info(judgeTag, 'project=>' + project) | ||||
|     const data = { | ||||
|       xtlb: '17', jkxlh: serialNumber, jkid: '17C53', | ||||
|       drvexam: { | ||||
| @ -1202,7 +1201,7 @@ export default class Judge { | ||||
|           ? (commonKsxm | ||||
|             ? (projectsObj[commonKsxm].projectCodeCenter) | ||||
|             : (examSubject == 3 ? 30000 : (xmmcEndCode == undefined ? 10000 : xmmcEndCode))) | ||||
|           : project.projectCodeCenter, | ||||
|           : (projectsObj[commonKsxm]?.projectCodeCenter || project.projectCodeCenter), | ||||
|         kfxm: kf.markcatalog, | ||||
|         kfxmmx: `${ksxm},${kf.markserial}`, | ||||
|         sfzmhm: idCard, | ||||
|  | ||||
| @ -1,11 +1,11 @@ | ||||
| 
 | ||||
| 
 | ||||
| { | ||||
|   "module": { | ||||
|     "name": "entry", | ||||
|     "type": "entry", | ||||
|     "description": "$string:module_desc", | ||||
|     "mainElement": "EntryAbility", | ||||
|     "srcEntry": "./ets/entryability/EntryAbility.ts", | ||||
|     "deviceTypes": [ | ||||
|       "default", | ||||
|       "tablet", | ||||
| @ -13,17 +13,16 @@ | ||||
|     "deliveryWithInstall": true, | ||||
|     "installationFree": false, | ||||
|     "pages": "$profile:main_pages", | ||||
| 
 | ||||
|     "abilities": [ | ||||
|       { | ||||
|         "name": "EntryAbility", | ||||
|         "srcEntrance": "./ets/entryability/EntryAbility.ts", | ||||
|         "srcEntry": "./ets/entryability/EntryAbility.ts", | ||||
|         "description": "$string:EntryAbility_desc", | ||||
|         "icon": "$media:logo_app", | ||||
|         "label": "$string:EntryAbility_label", | ||||
|         "startWindowIcon": "$media:icon", | ||||
|         "startWindowBackground": "$color:start_window_background", | ||||
|         "visible": true, | ||||
|         "exported": true, | ||||
|         "skills": [ | ||||
|           { | ||||
|             "entities": [ | ||||
| @ -37,7 +36,11 @@ | ||||
|       } | ||||
|     ], | ||||
|     "requestPermissions":[ | ||||
|       {"name": "ohos.permission.INSTALL_BUNDLE"}, | ||||
|       {"name": "ohos.permission.UNINSTALL_BUNDLE"}, | ||||
|       {"name": "ohos.permission.ACCESS_SERVICE_DM"}, | ||||
|       {"name": "ohos.permission.CONNECTIVITY_INTERNAL"}, | ||||
| 
 | ||||
|       {"name": "ohos.permission.SET_TIME"}, | ||||
|       { | ||||
|         "name": "ohos.permission.INTERNET" | ||||
|  | ||||
										
											Binary file not shown.
										
									
								
							| @ -1,13 +1,15 @@ | ||||
| { | ||||
|   "lockfileVersion": 1, | ||||
|   "lockfileVersion": 2, | ||||
|   "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", | ||||
|   "specifiers": { | ||||
|     "@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6" | ||||
|   }, | ||||
|   "packages": { | ||||
|     "@ohos/hypium@1.0.6": { | ||||
|       "resolved": "https://repo.harmonyos.com/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz", | ||||
|       "integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ==" | ||||
|       "resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz", | ||||
|       "integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ==", | ||||
|       "registryType": "ohpm", | ||||
|       "shasum": "3f5fed65372633233264b3447705b0831dfe7ea1" | ||||
|     } | ||||
|   } | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user