Compare commits
4 Commits
f03ace7f04
...
883807298b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
883807298b | ||
|
|
a52a13e6d9 | ||
|
|
7bd3689593 | ||
|
|
af8b11250b |
2
Makefile
2
Makefile
@ -1,2 +1,2 @@
|
||||
gitLog:
|
||||
git log --since="2025-06-30 17:14" --until="2025-07-1 17:14" --pretty=format:"<details>%n <summary>%s</summary>%n <span style=\"color: #888;\">[提交人]:</span><span style=\"color: #333;\">%an</span><br>%n <span style=\"color: #888;\">[提交时间]:</span><span style=\"color: #333;\">%ad</span><br>%n <span style=\"color: #888;\">[提交版本]:</span><span style=\"color: #333;\">%h</span>%n</details>%n" --date=format:"%Y-%m-%d %H:%M" > release_note.md
|
||||
git log --since="2025-06-30 17:14" --until="2025-07-2 17:35" --pretty=format:"<details>%n <summary>%s</summary>%n <span style=\"color: #888;\">[提交人]:</span><span style=\"color: #333;\">%an</span><br>%n <span style=\"color: #888;\">[提交时间]:</span><span style=\"color: #333;\">%ad</span><br>%n <span style=\"color: #888;\">[提交版本]:</span><span style=\"color: #333;\">%h</span>%n</details>%n" --date=format:"%Y-%m-%d %H:%M" > release_note.md
|
||||
@ -64,4 +64,7 @@ export const ExaminerLoginTag = '[ExaminerLogin]';
|
||||
export const UserInfoTag = '[UserInfo]';
|
||||
|
||||
//SignDisplay
|
||||
export const SignDisplayTag = '[SignDisplay]';
|
||||
export const SignDisplayTag = '[SignDisplay]';
|
||||
|
||||
//开始考试
|
||||
export const StartExamTag = '[StartExam]'
|
||||
@ -59,8 +59,6 @@ import { InitMapPoint, InitMapPointItem } from './Judge/TableUtils';
|
||||
@Entry
|
||||
@Component
|
||||
struct JudgePage {
|
||||
scroller: Scroller = new Scroller()
|
||||
//页面通用字体大小
|
||||
@State wayno: number = 0
|
||||
@State isDdxk: boolean = false;
|
||||
//开始时间
|
||||
@ -197,6 +195,7 @@ struct JudgePage {
|
||||
})
|
||||
|
||||
async aboutToDisappear() {
|
||||
this.generateExamRecordsDialogController.close()
|
||||
clearInterval(this.mileageTimer)
|
||||
}
|
||||
|
||||
@ -218,7 +217,6 @@ struct JudgePage {
|
||||
//初始化相关数据库表
|
||||
async initDb() {
|
||||
this.examSubject = this.carInfo.examSubject!;
|
||||
// const { isTrajectoryOpen, trajectoryPath } = judgeConfig
|
||||
await this.initStudent();
|
||||
await this.initCar();
|
||||
|
||||
@ -308,8 +306,6 @@ struct JudgePage {
|
||||
})
|
||||
}
|
||||
|
||||
// 考试项目是否全部完成
|
||||
|
||||
// 获取sysset表信息
|
||||
async initSysset(sysset?: SYSSET[]) {
|
||||
const syssetParams: SYSSET[] | MASYSSETTableType[] = sysset || await GetSyncData<MASYSSETTableType>('MA_SYSSET')
|
||||
@ -757,11 +753,11 @@ struct JudgePage {
|
||||
this.isDeductedPopShow = false;
|
||||
this.defaultTabIndex = 0;
|
||||
},
|
||||
confirmMark: async (itemno: string, serial: string) => {
|
||||
confirmMark: async (item: string, serial: string) => {
|
||||
clearTimeout(this.popTimer)
|
||||
this.popTimer = setTimeout(async () => {
|
||||
const judge = this.judge
|
||||
await judge.setJudgeMark(itemno, serial);
|
||||
await judge.setJudgeMark(item, serial);
|
||||
this.isDeductedPopShow = false
|
||||
this.popTimer = null;
|
||||
}, 500)
|
||||
|
||||
@ -35,6 +35,7 @@ export async function examJudgeSetLogCallback(level: number, handleLog: Function
|
||||
* @desc评判初始化
|
||||
*/
|
||||
export async function examJudgeInit(data: JudgeInitObj) {
|
||||
|
||||
const str = JSON.stringify(data);
|
||||
const temp: number = libJudgeSdk.examJudgeInit(str, str.length);
|
||||
return await handle(temp, 'examJudgeInit')
|
||||
|
||||
@ -41,7 +41,7 @@ import { GetCurrentTime, NumberToByteArray } from '../utils/Common';
|
||||
import DB from '../utils/DbSql';
|
||||
import { CenterUDPBusinessInstance } from '../utils/business/CenterUdpBusiness';
|
||||
import { JudgeEmitterInstance } from '../utils/business/UdpEvent';
|
||||
import { JudgeConfig } from '../config';
|
||||
import { JudgeConfig, StartExamTag } from '../config';
|
||||
import { dConsole } from '../utils/LogWorker';
|
||||
import HeaderComponent from './compontents/Header';
|
||||
import AvatarComponent from './UserInfo/Avatar';
|
||||
@ -997,10 +997,12 @@ struct UserInfoPage {
|
||||
|
||||
// 开始考试
|
||||
async beginExam(): Promise<BeginExamRequest> {
|
||||
dConsole.log(StartExamTag, "开始考试")
|
||||
const startHourTime = dayTs().format("HHmmssSSS")
|
||||
AppStorage.setOrCreate('startHourTime', startHourTime)
|
||||
const photoBase64 = await this.getPhoto();
|
||||
if (photoBase64 == '') {
|
||||
dConsole.log(StartExamTag, "拍照失败")
|
||||
this.startExamDialogController.close()
|
||||
return { code: -200 }
|
||||
}
|
||||
@ -1016,6 +1018,7 @@ struct UserInfoPage {
|
||||
kchp: decodeURI(this.carInfo.plateNo || ""),
|
||||
Ksy2sfzmhm: this.currentUser.ksy2sfzmhm || ''
|
||||
}
|
||||
dConsole.log(StartExamTag, "开始考试参数", drvexam)
|
||||
const param: RegulatoryInterfaceParams = {
|
||||
drvexam,
|
||||
xtlb: '17',
|
||||
|
||||
@ -34,7 +34,7 @@ export default struct DeductedPopup {
|
||||
}
|
||||
|
||||
aboutToAppear() {
|
||||
this.universalMarkRules = this.markRules.filter(item => (this.currentItems.includes((item.itemno||0).toString()) ||
|
||||
this.universalMarkRules = this.markRules.filter(item => (this.currentItems.includes((item.itemno || 0).toString()) ||
|
||||
this.currentItems.includes(item.itemno + '')));
|
||||
this.currentIndex = this.defaultTabIndex
|
||||
if (this.currentIndex == 1) {
|
||||
@ -45,7 +45,7 @@ export default struct DeductedPopup {
|
||||
|
||||
changeCurrentItems() {
|
||||
if (this.currentItems?.length && (this.currentItems?.length >= this.preCurrentItemsLength)) {
|
||||
this.universalMarkRules = this.markRules.filter(item => (this.currentItems.includes((item.itemno||0).toString()) ||
|
||||
this.universalMarkRules = this.markRules.filter(item => (this.currentItems.includes((item.itemno || 0).toString()) ||
|
||||
this.currentItems.includes(item.itemno + '')));
|
||||
this.currentIndex = this.defaultTabIndex
|
||||
if (this.currentIndex == 1) {
|
||||
@ -84,7 +84,6 @@ export default struct DeductedPopup {
|
||||
|
||||
//获取当前页的数据
|
||||
getCurrentMarkRuleList() {
|
||||
// const { currentIndex, currentUniversalPageIndex, currentPageIndex, markRules, universalMarkRules } = this;
|
||||
if (this.currentIndex) {
|
||||
//通用评判
|
||||
return this.universalMarkRules.slice(this.currentUniversalPageIndex * 7, (this.currentUniversalPageIndex + 1) * 7)
|
||||
@ -120,7 +119,7 @@ export default struct DeductedPopup {
|
||||
this.universalMarkRules = this.markRules.filter(item => item.itemno == 20)
|
||||
} else {
|
||||
this.universalMarkRules =
|
||||
this.markRules.filter(item => (this.currentItems.includes((item.itemno||0).toString()) ||
|
||||
this.markRules.filter(item => (this.currentItems.includes((item.itemno || 0).toString()) ||
|
||||
this.currentItems.includes(item.itemno + '')))
|
||||
}
|
||||
})
|
||||
@ -249,6 +248,6 @@ export default struct DeductedPopup {
|
||||
|
||||
private closePopup: Function = () => {
|
||||
}
|
||||
private confirmMark: Function = (itemno: number, serial: string) => {
|
||||
private confirmMark: Function = (item: number, serial: string) => {
|
||||
}
|
||||
}
|
||||
@ -1898,6 +1898,7 @@ export default class Judge {
|
||||
// await fileLog?.setExamJudgeData(JSON.stringify(initInfo))
|
||||
//相关评判初始化只做一次
|
||||
if (!isJudgeInitBool) {
|
||||
dConsole.log(JudgeTag, "评判初始化参数", initInfo)
|
||||
const tempJudge = await examJudgeInit(initInfo);
|
||||
AppStorage.setOrCreate('isJudgeInitBool', true)
|
||||
dConsole.info(JudgeTag, '4.评判初始化完成')
|
||||
|
||||
@ -91,8 +91,9 @@ class logWorker {
|
||||
// 处理长消息分割和记录
|
||||
private logLongMessage(level: 'log' | 'info' | 'error', message: string): void {
|
||||
const chunks = this.splitLongMessage(message);
|
||||
const chunkId = Math.random().toString(36).substring(2, 8); // 生成简短随机ID
|
||||
chunks.forEach((chunk, index) => {
|
||||
this.logConsole(level, `${LOG_CHUNK_PREFIX} ${index + 1}/${chunks.length}] ${chunk}`);
|
||||
this.logConsole(level, `${LOG_CHUNK_PREFIX} ${index + 1}/${chunks.length} [${chunkId}]] ${chunk}`);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -133,7 +133,7 @@ export default function Request<T extends RequestResult>(options: RequestOption)
|
||||
extraData: options.xml ? options.data : JSON.stringify(options.data),
|
||||
readTimeout: options.timeout || 30 * 1000
|
||||
}).then(async data => {
|
||||
console.log(RequestTag, options.url, "返回的数据", JSON.stringify(data))
|
||||
console.log(RequestTag, baseURL, options.url, "返回的数据", JSON.stringify(data))
|
||||
// let result = options.xml ? xmlToJSON(data.result as string) : data.result
|
||||
let result = options.xml ? (options.accept ? data.result : xmlToJSON(data.result as string)) : data.result;
|
||||
console.log("结束xml解析")
|
||||
|
||||
@ -117,7 +117,7 @@ export default class TcpClient {
|
||||
return this.tcp?.send({
|
||||
data
|
||||
}).catch(async (err: BusinessError) => {
|
||||
console.log(TCPTag, 'sendMsg error:', JSON.stringify(err))
|
||||
console.log(TCPTag, 'sendMsg error:', JSON.stringify(err), this.oppositeIp, this.oppositeIpPort)
|
||||
this.tcpSendNum++
|
||||
if (this.tcpSendNum > 10) {
|
||||
this.tcpSendNum = 0
|
||||
|
||||
@ -12,9 +12,6 @@ class differentialAndSignal {
|
||||
|
||||
// 初始化Worker
|
||||
init() {
|
||||
if (this.workerInstance) {
|
||||
this.close();
|
||||
}
|
||||
this.workerInstance = new worker.ThreadWorker("entry/ets/workers/DifferentialCorrection.ets");
|
||||
let config: EnvironmentConfigurationType =
|
||||
AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration") || {
|
||||
@ -55,20 +52,15 @@ class differentialAndSignal {
|
||||
|
||||
// 关闭
|
||||
close() {
|
||||
if (this.workerInstance) {
|
||||
// 清空所有监听器
|
||||
this.events = [];
|
||||
|
||||
// 发送关闭消息
|
||||
const config = AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration") || {};
|
||||
this.workerInstance.postMessage(JSON.stringify({
|
||||
config: config,
|
||||
close: true
|
||||
}));
|
||||
|
||||
// 关闭线程
|
||||
this.workerInstance.terminate();
|
||||
this.events = [];
|
||||
const config: EnvironmentConfigurationType = AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration") || {
|
||||
}
|
||||
this.workerInstance.postMessage(JSON.stringify({
|
||||
config: config,
|
||||
close: true
|
||||
}));
|
||||
// 关闭线程
|
||||
this.workerInstance.terminate()
|
||||
}
|
||||
|
||||
// 获取Worker消息
|
||||
|
||||
@ -1,3 +1,31 @@
|
||||
<details>
|
||||
<summary>fix: 优化首页获取车辆后才可以进入联网以及单机逻辑</summary>
|
||||
<span style="color: #888;">[提交人]:</span><span style="color: #333;">wangzhongjie</span><br>
|
||||
<span style="color: #888;">[提交时间]:</span><span style="color: #333;">2025-07-02 17:34</span><br>
|
||||
<span style="color: #888;">[提交版本]:</span><span style="color: #333;">f03ace7</span>
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>fix: 评判代码抽离优化</summary>
|
||||
<span style="color: #888;">[提交人]:</span><span style="color: #333;">wangzhongjie</span><br>
|
||||
<span style="color: #888;">[提交时间]:</span><span style="color: #333;">2025-07-02 15:53</span><br>
|
||||
<span style="color: #888;">[提交版本]:</span><span style="color: #333;">b0692d3</span>
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>fix: 评判页面结构优化</summary>
|
||||
<span style="color: #888;">[提交人]:</span><span style="color: #333;">wangzhongjie</span><br>
|
||||
<span style="color: #888;">[提交时间]:</span><span style="color: #333;">2025-07-02 10:41</span><br>
|
||||
<span style="color: #888;">[提交版本]:</span><span style="color: #333;">98813fe</span>
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>fix: 结束考试问题修复</summary>
|
||||
<span style="color: #888;">[提交人]:</span><span style="color: #333;">wangzhongjie</span><br>
|
||||
<span style="color: #888;">[提交时间]:</span><span style="color: #333;">2025-07-01 17:51</span><br>
|
||||
<span style="color: #888;">[提交版本]:</span><span style="color: #333;">b2b7950</span>
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>fix: 评判日志</summary>
|
||||
<span style="color: #888;">[提交人]:</span><span style="color: #333;">wangzhongjie</span><br>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user