Compare commits
31 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46c3825c59 | ||
|
|
198fa634fe | ||
|
|
8d6e6e3b6b | ||
| 4578177d37 | |||
| d1a1fc8b44 | |||
| 08e430f02f | |||
| 379f4c8778 | |||
| 273340189d | |||
| c796add419 | |||
| 670d6d20af | |||
| a602655278 | |||
|
|
d93f0adcaf | ||
|
|
098644f64b | ||
| 264e76d05d | |||
| c359ef0568 | |||
|
|
edb2ed2b45 | ||
|
|
b765676068 | ||
|
|
5732b62000 | ||
|
|
4c6f25ee3a | ||
|
|
8d7173c545 | ||
|
|
0c2715821d | ||
|
|
2d085b42bf | ||
|
|
2f524da992 | ||
|
|
7447ae3f4d | ||
|
|
5c9af2b914 | ||
|
|
818d2a775d | ||
|
|
5119c46963 | ||
|
|
bc8017ff71 | ||
|
|
45772f0b49 | ||
|
|
fc6f784db1 | ||
|
|
afa4983725 |
@ -5,9 +5,9 @@
|
|||||||
"name": "default",
|
"name": "default",
|
||||||
"material": {
|
"material": {
|
||||||
"certpath": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.cer",
|
"certpath": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.cer",
|
||||||
"storePassword": "0000001B0A8E97F78561FFE1B2E5B57C296BFC3D297047253237158BC25CD7077892C41C1C83FAFFDE4A0A",
|
"storePassword": "0000001BAC2A2242CBD30042192466419A8087398301FC1759A9BBCFD659DD68D4D6AC1F21A3C57322816D",
|
||||||
"keyAlias": "debugKey",
|
"keyAlias": "debugKey",
|
||||||
"keyPassword": "0000001B654E765B79C902CB9E3A6D97A40F5852412CEE5AC37E949F430C754DB02327838E925EDF861314",
|
"keyPassword": "0000001B6BC513F0EF12E88D402A699731288AA9D23B4A26CCDD08F4A6CBC6FDDBBCCEFBB2C5AFE4D3E3E8",
|
||||||
"profile": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.p7b",
|
"profile": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.p7b",
|
||||||
"signAlg": "SHA256withECDSA",
|
"signAlg": "SHA256withECDSA",
|
||||||
"storeFile": "/Users/wangzhongjie/.ohos/config/openharmony/default_subject-two_Kl4t-ZSvZeuUm9s8O-e6FIH2VFR_OaNyhDP8kPjIWgU=.p12"
|
"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.",
|
"ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.",
|
||||||
"specifiers": {
|
"specifiers": {
|
||||||
"@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6"
|
"@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6"
|
||||||
},
|
},
|
||||||
"packages": {
|
"packages": {
|
||||||
"@ohos/hypium@1.0.6": {
|
"@ohos/hypium@1.0.6": {
|
||||||
"resolved": "https://repo.harmonyos.com/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz",
|
"resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz",
|
||||||
"integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ=="
|
"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 absolutePath = '/mnt/hmdfs/100/account/device_view/local/files/duolun/logs'
|
||||||
const tempPath = globalThis.context.cacheDir + '/temp';
|
const tempPath = globalThis.context.cacheDir + '/temp';
|
||||||
|
|
||||||
@ -140,10 +140,12 @@ async function getCopyFiles() {
|
|||||||
const filenames = await fs.listFile('/data/log/hilog');
|
const filenames = await fs.listFile('/data/log/hilog');
|
||||||
for (let i = 0; i < filenames.length; i++) {
|
for (let i = 0; i < filenames.length; i++) {
|
||||||
if (filenames[i].split('.')[0] == 'hilog') {
|
if (filenames[i].split('.')[0] == 'hilog') {
|
||||||
const date = filenames[i].split('.')[2].split('-')[0]
|
try {
|
||||||
if (date == nowDate) {
|
|
||||||
fs.copyFileSync('/data/log/hilog/' + filenames[i], globalThis.context.cacheDir + '/temp/' + filenames[i])
|
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
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getChuankouFn()
|
||||||
reslove(true)
|
reslove(true)
|
||||||
router.pushUrl({
|
router.pushUrl({
|
||||||
url: 'pages/ExaminerLogin',
|
url: 'pages/ExaminerLogin',
|
||||||
@ -321,6 +324,7 @@ export async function getSingleCenterTable(param) {
|
|||||||
console.log('teststet0')
|
console.log('teststet0')
|
||||||
upDataZhongxinginitialization(param).then((result) => {
|
upDataZhongxinginitialization(param).then((result) => {
|
||||||
if (result === true) {
|
if (result === true) {
|
||||||
|
getChuankouFn()
|
||||||
resolve(true)
|
resolve(true)
|
||||||
} else {
|
} else {
|
||||||
console.log('联网更新失败,请检查网络后重新更新')
|
console.log('联网更新失败,请检查网络后重新更新')
|
||||||
@ -442,6 +446,7 @@ function openChuankouFn(callback) {
|
|||||||
if(carInfo.kscx == 'C1'){
|
if(carInfo.kscx == 'C1'){
|
||||||
testNapi.SerialOpenAsync(devPath, (fd) => {
|
testNapi.SerialOpenAsync(devPath, (fd) => {
|
||||||
globalThis.fd = fd;
|
globalThis.fd = fd;
|
||||||
|
globalThis.ChounkouInit = true;
|
||||||
globalThis.num = 0
|
globalThis.num = 0
|
||||||
let parity = 0x4e; // 'N'
|
let parity = 0x4e; // 'N'
|
||||||
let ret = testNapi.SerialSetAsync(globalThis.fd, 115200, 0, 8, 1, parity, (ret) => {
|
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
|
// @ts-ignore
|
||||||
// var snapResult = rtsp_server.getVideoSnapshot(context, video_uri, '', dir);
|
// var snapResult = rtsp_server.getVideoSnapshot(context, video_uri, '', dir);
|
||||||
if (flag == 0) {
|
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);
|
console.log("baohaowen_detectLoop round end size1:" + snapResult.fileSize);
|
||||||
callback({ fileSize: snapResult.fileSize, errorCode: snapResult.errorCode })
|
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())
|
// console.info('surenjun2','set message_1Fn=>' + newArr.toString())
|
||||||
callback && callback(newArr.toString())
|
callback && callback(newArr.toString())
|
||||||
console.info('surenjun 左方向灯=>', newArr.toString())
|
// console.info('surenjun 左方向灯=>', newArr.toString())
|
||||||
this.currentValue = newArr.toString();
|
this.currentValue = newArr.toString();
|
||||||
} else {
|
} else {
|
||||||
callback && callback('')
|
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 { tcpUtil } from '../common/utils/TcpRequest';
|
||||||
import DB from '../common/database/DbSql';
|
import DB from '../common/database/DbSql';
|
||||||
import { initTable } from '../common/service/initable';
|
import { initTable } from '../common/service/initable';
|
||||||
|
import appRecovery from '@ohos.app.ability.appRecovery';
|
||||||
|
|
||||||
export default class EntryAbility extends UIAbility {
|
export default class EntryAbility extends UIAbility {
|
||||||
async onCreate(want, launchParam) {
|
async onCreate(want, launchParam) {
|
||||||
|
appRecovery.enableAppRecovery(
|
||||||
|
appRecovery.RestartFlag.ALWAYS_RESTART,
|
||||||
|
appRecovery.SaveOccasionFlag.SAVE_WHEN_ERROR,
|
||||||
|
appRecovery.SaveModeFlag.SAVE_WITH_FILE
|
||||||
|
);
|
||||||
try {
|
try {
|
||||||
console.log("sql first")
|
console.log("sql first")
|
||||||
await DB.init(this.context)
|
await DB.init(this.context)
|
||||||
@ -23,6 +29,7 @@ export default class EntryAbility extends UIAbility {
|
|||||||
console.error('sql first error', e)
|
console.error('sql first error', e)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
|
hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -20,10 +20,10 @@ import { delPic } from '../common/service/videoService';
|
|||||||
import imageBtn from './compontents/imageBtn';
|
import imageBtn from './compontents/imageBtn';
|
||||||
import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements';
|
import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements';
|
||||||
import { updateModelAndCar } from '../common/autoUpdate/index'
|
import { updateModelAndCar } from '../common/autoUpdate/index'
|
||||||
// import {uploadLogFile} from '../common/service/indexService'
|
import { UsbUtils } from '../common/utils/UsbUtils'
|
||||||
import { getModalValueCdAndCar } from '../api';
|
import appRecovery from '@ohos.app.ability.appRecovery';
|
||||||
|
import PreferenceUtils from '../common/utils/PreferenceUtils';
|
||||||
// import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements';
|
import CozyMsgDialog from './compontents/CozyDialog';
|
||||||
|
|
||||||
@Entry
|
@Entry
|
||||||
@Component
|
@Component
|
||||||
@ -80,7 +80,23 @@ struct Index {
|
|||||||
Column() {
|
Column() {
|
||||||
Column() {
|
Column() {
|
||||||
Row() {
|
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() {
|
Row() {
|
||||||
Image($r('app.media.btn_setting')).width('16.7%').height('12.2%')
|
Image($r('app.media.btn_setting')).width('16.7%').height('12.2%')
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
@ -364,6 +380,7 @@ struct Index {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async aboutToAppear() {
|
async aboutToAppear() {
|
||||||
|
|
||||||
// setInterval(() => {
|
// setInterval(() => {
|
||||||
// let date = new Date();
|
// let date = new Date();
|
||||||
// console.info('jiangsong1:timeSynchronization begin ');
|
// 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() {
|
aboutToDisappear() {
|
||||||
|
|||||||
@ -566,7 +566,7 @@ struct Index {
|
|||||||
//上车准备&起步都开始时
|
//上车准备&起步都开始时
|
||||||
if (this.syssetParam386 == '3'
|
if (this.syssetParam386 == '3'
|
||||||
&& (this.projectsObj[1].type == '2' || this.projectsObj[1].type == '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.syssetParam386ET3
|
||||||
) {
|
) {
|
||||||
this.judge.rmndg = 2;
|
this.judge.rmndg = 2;
|
||||||
|
|||||||
@ -24,6 +24,9 @@ import errorMsgDialog from './compontents/errorMsgDialog';
|
|||||||
import imageBtn from './compontents/imageBtn';
|
import imageBtn from './compontents/imageBtn';
|
||||||
import FileUtil from '../common/utils/File';
|
import FileUtil from '../common/utils/File';
|
||||||
import DB, { ColumnType } from '../common/database/DbSql';
|
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
|
@Entry
|
||||||
@Component
|
@Component
|
||||||
@ -78,6 +81,7 @@ struct UserInfo {
|
|||||||
@State faceFlag: string = '0';
|
@State faceFlag: string = '0';
|
||||||
@State FaceOpenStatue: string = '0'; //是否开启人脸识别
|
@State FaceOpenStatue: string = '0'; //是否开启人脸识别
|
||||||
@State faceCatchImg: string = ''
|
@State faceCatchImg: string = ''
|
||||||
|
@State examCount: number = 0
|
||||||
@State systemParam: systemParam = {
|
@State systemParam: systemParam = {
|
||||||
'Param341': true, //是否按顺序考试
|
'Param341': true, //是否按顺序考试
|
||||||
'Param803Str': '0', //开始考试前必须解开安全带或关车门
|
'Param803Str': '0', //开始考试前必须解开安全带或关车门
|
||||||
@ -185,6 +189,10 @@ struct UserInfo {
|
|||||||
{ label: '考试员名', key: 'ksy2' },
|
{ label: '考试员名', key: 'ksy2' },
|
||||||
]
|
]
|
||||||
private fileUtil: FileUtil
|
private fileUtil: FileUtil
|
||||||
|
cozyDialog: CustomDialogController = new CustomDialogController({
|
||||||
|
builder: CozyMsgDialog(),
|
||||||
|
autoCancel: false
|
||||||
|
})
|
||||||
|
|
||||||
aboutToAppear() {
|
aboutToAppear() {
|
||||||
this.fileUtil = new FileUtil(this.context)
|
this.fileUtil = new FileUtil(this.context)
|
||||||
@ -192,6 +200,15 @@ struct UserInfo {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async onPageShow() {
|
async onPageShow() {
|
||||||
|
if (this.examCount > 5) {
|
||||||
|
PreferenceUtils.writeOtherData("1", "isRestart")
|
||||||
|
this.cozyDialog.open()
|
||||||
|
// 延迟关闭
|
||||||
|
setTimeout(() => {
|
||||||
|
this.cozyDialog.close()
|
||||||
|
appRecovery.restartApp()
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
this.isExamStart = false
|
this.isExamStart = false
|
||||||
this.startExam = false
|
this.startExam = false
|
||||||
this.updateTimeLimit = false
|
this.updateTimeLimit = false
|
||||||
@ -1326,6 +1343,21 @@ struct UserInfo {
|
|||||||
} else {
|
} else {
|
||||||
// Image($r('app.media.ksks_btn'))
|
// Image($r('app.media.ksks_btn'))
|
||||||
// .commStyle()
|
// .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') })
|
imageBtn({ btnWidth: 220 * this.ratio, btnHeight: 69 * this.ratio, imgSrc: $r('app.media.ksks_btn') })
|
||||||
.margin({ bottom: 12 * this.ratio })
|
.margin({ bottom: 12 * this.ratio })
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
@ -1338,7 +1370,8 @@ struct UserInfo {
|
|||||||
this.errorDialog.open()
|
this.errorDialog.open()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
this.examCount++
|
||||||
|
console.log("已经考了", this.examCount + "个学员")
|
||||||
await this.prePareExam()
|
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
|
this.base64 = this.imageBase64 + data.base64
|
||||||
faceCompare({
|
faceCompare({
|
||||||
sfzh: this.sfzh,
|
sfzh: this.sfzh,
|
||||||
secondImage: this.firstImage.substr(22),
|
secondImage:data.base64,
|
||||||
firstImage: data.base64,
|
firstImage: this.firstImage.substr(22),
|
||||||
type: 2,
|
type: 2,
|
||||||
verifyType: 1
|
verifyType: 1
|
||||||
})
|
})
|
||||||
|
|||||||
@ -267,9 +267,7 @@ export default class Judge {
|
|||||||
judgeUdp.send(bytes)
|
judgeUdp.send(bytes)
|
||||||
}
|
}
|
||||||
if (!isExamEnd) {
|
if (!isExamEnd) {
|
||||||
console.info(judgeTag, 'start examJudgeRealExam')
|
|
||||||
await examJudgeRealExam(plcData)
|
await examJudgeRealExam(plcData)
|
||||||
console.info(judgeTag, 'end examJudgeRealExam')
|
|
||||||
}
|
}
|
||||||
let [prevJd, preWd] = [0, 0]
|
let [prevJd, preWd] = [0, 0]
|
||||||
globalThis.udpIndex += 1
|
globalThis.udpIndex += 1
|
||||||
@ -1182,7 +1180,7 @@ export default class Judge {
|
|||||||
const time = await getCurrentTime();
|
const time = await getCurrentTime();
|
||||||
const project = getProjectInfo(ksxm);
|
const project = getProjectInfo(ksxm);
|
||||||
//科目三夜间行驶.模拟灯光、上车准备出现非本项目的扣分,ksxm需转换为为当前进行的项目
|
//科目三夜间行驶.模拟灯光、上车准备出现非本项目的扣分,ksxm需转换为为当前进行的项目
|
||||||
const checkProjects = ['17', '41', '1'];
|
const checkProjects = ['1', '41', '17'];
|
||||||
//获取正在进行的项目
|
//获取正在进行的项目
|
||||||
const inProjects = Reflect.ownKeys(projectsObj).filter(projectKey => projectsObj[projectKey].type == 2);
|
const inProjects = Reflect.ownKeys(projectsObj).filter(projectKey => projectsObj[projectKey].type == 2);
|
||||||
|
|
||||||
@ -1192,7 +1190,8 @@ export default class Judge {
|
|||||||
commonKsxm = projectCode
|
commonKsxm = projectCode
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
console.info(judgeTag, 'commonKsxm=>' + commonKsxm)
|
||||||
|
console.info(judgeTag, 'project=>' + project)
|
||||||
const data = {
|
const data = {
|
||||||
xtlb: '17', jkxlh: serialNumber, jkid: '17C53',
|
xtlb: '17', jkxlh: serialNumber, jkid: '17C53',
|
||||||
drvexam: {
|
drvexam: {
|
||||||
@ -1202,7 +1201,7 @@ export default class Judge {
|
|||||||
? (commonKsxm
|
? (commonKsxm
|
||||||
? (projectsObj[commonKsxm].projectCodeCenter)
|
? (projectsObj[commonKsxm].projectCodeCenter)
|
||||||
: (examSubject == 3 ? 30000 : (xmmcEndCode == undefined ? 10000 : xmmcEndCode)))
|
: (examSubject == 3 ? 30000 : (xmmcEndCode == undefined ? 10000 : xmmcEndCode)))
|
||||||
: (commonKsxm || project.projectCodeCenter),
|
: (projectsObj[commonKsxm]?.projectCodeCenter || project.projectCodeCenter),
|
||||||
kfxm: kf.markcatalog,
|
kfxm: kf.markcatalog,
|
||||||
kfxmmx: `${ksxm},${kf.markserial}`,
|
kfxmmx: `${ksxm},${kf.markserial}`,
|
||||||
sfzmhm: idCard,
|
sfzmhm: idCard,
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"module": {
|
"module": {
|
||||||
"name": "entry",
|
"name": "entry",
|
||||||
"type": "entry",
|
"type": "entry",
|
||||||
"description": "$string:module_desc",
|
"description": "$string:module_desc",
|
||||||
"mainElement": "EntryAbility",
|
"mainElement": "EntryAbility",
|
||||||
|
"srcEntry": "./ets/entryability/EntryAbility.ts",
|
||||||
"deviceTypes": [
|
"deviceTypes": [
|
||||||
"default",
|
"default",
|
||||||
"tablet",
|
"tablet",
|
||||||
@ -13,17 +13,16 @@
|
|||||||
"deliveryWithInstall": true,
|
"deliveryWithInstall": true,
|
||||||
"installationFree": false,
|
"installationFree": false,
|
||||||
"pages": "$profile:main_pages",
|
"pages": "$profile:main_pages",
|
||||||
|
|
||||||
"abilities": [
|
"abilities": [
|
||||||
{
|
{
|
||||||
"name": "EntryAbility",
|
"name": "EntryAbility",
|
||||||
"srcEntrance": "./ets/entryability/EntryAbility.ts",
|
"srcEntry": "./ets/entryability/EntryAbility.ts",
|
||||||
"description": "$string:EntryAbility_desc",
|
"description": "$string:EntryAbility_desc",
|
||||||
"icon": "$media:logo_app",
|
"icon": "$media:logo_app",
|
||||||
"label": "$string:EntryAbility_label",
|
"label": "$string:EntryAbility_label",
|
||||||
"startWindowIcon": "$media:icon",
|
"startWindowIcon": "$media:icon",
|
||||||
"startWindowBackground": "$color:start_window_background",
|
"startWindowBackground": "$color:start_window_background",
|
||||||
"visible": true,
|
"exported": true,
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"entities": [
|
"entities": [
|
||||||
@ -37,7 +36,11 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"requestPermissions":[
|
"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.CONNECTIVITY_INTERNAL"},
|
||||||
|
|
||||||
{"name": "ohos.permission.SET_TIME"},
|
{"name": "ohos.permission.SET_TIME"},
|
||||||
{
|
{
|
||||||
"name": "ohos.permission.INTERNET"
|
"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.",
|
"ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.",
|
||||||
"specifiers": {
|
"specifiers": {
|
||||||
"@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6"
|
"@ohos/hypium@1.0.6": "@ohos/hypium@1.0.6"
|
||||||
},
|
},
|
||||||
"packages": {
|
"packages": {
|
||||||
"@ohos/hypium@1.0.6": {
|
"@ohos/hypium@1.0.6": {
|
||||||
"resolved": "https://repo.harmonyos.com/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz",
|
"resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz",
|
||||||
"integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ=="
|
"integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ==",
|
||||||
|
"registryType": "ohpm",
|
||||||
|
"shasum": "3f5fed65372633233264b3447705b0831dfe7ea1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user