Compare commits
	
		
			No commits in common. "883807298bfca15a196d6c3008b4e8b6aeb14afe" and "f03ace7f04bf25f826db32dae350edcba441a103" have entirely different histories.
		
	
	
		
			883807298b
			...
			f03ace7f04
		
	
		
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							| @ -1,2 +1,2 @@ | ||||
| gitLog: | ||||
| 	  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 | ||||
| 	  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 | ||||
| @ -65,6 +65,3 @@ export const UserInfoTag = '[UserInfo]'; | ||||
| 
 | ||||
| //SignDisplay | ||||
| export const SignDisplayTag = '[SignDisplay]'; | ||||
| 
 | ||||
| //开始考试 | ||||
| export const StartExamTag = '[StartExam]' | ||||
| @ -59,6 +59,8 @@ import { InitMapPoint, InitMapPointItem } from './Judge/TableUtils'; | ||||
| @Entry | ||||
| @Component | ||||
| struct JudgePage { | ||||
|   scroller: Scroller = new Scroller() | ||||
|   //页面通用字体大小 | ||||
|   @State wayno: number = 0 | ||||
|   @State isDdxk: boolean = false; | ||||
|   //开始时间 | ||||
| @ -195,7 +197,6 @@ struct JudgePage { | ||||
|   }) | ||||
| 
 | ||||
|   async aboutToDisappear() { | ||||
|     this.generateExamRecordsDialogController.close() | ||||
|     clearInterval(this.mileageTimer) | ||||
|   } | ||||
| 
 | ||||
| @ -217,6 +218,7 @@ struct JudgePage { | ||||
|   //初始化相关数据库表 | ||||
|   async initDb() { | ||||
|     this.examSubject = this.carInfo.examSubject!; | ||||
|     // const { isTrajectoryOpen, trajectoryPath } = judgeConfig | ||||
|     await this.initStudent(); | ||||
|     await this.initCar(); | ||||
| 
 | ||||
| @ -306,6 +308,8 @@ struct JudgePage { | ||||
|     }) | ||||
|   } | ||||
| 
 | ||||
|   // 考试项目是否全部完成 | ||||
| 
 | ||||
|   // 获取sysset表信息 | ||||
|   async initSysset(sysset?: SYSSET[]) { | ||||
|     const syssetParams: SYSSET[] | MASYSSETTableType[] = sysset || await GetSyncData<MASYSSETTableType>('MA_SYSSET') | ||||
| @ -753,11 +757,11 @@ struct JudgePage { | ||||
|             this.isDeductedPopShow = false; | ||||
|             this.defaultTabIndex = 0; | ||||
|           }, | ||||
|           confirmMark: async (item: string, serial: string) => { | ||||
|           confirmMark: async (itemno: string, serial: string) => { | ||||
|             clearTimeout(this.popTimer) | ||||
|             this.popTimer = setTimeout(async () => { | ||||
|               const judge = this.judge | ||||
|               await judge.setJudgeMark(item, serial); | ||||
|               await judge.setJudgeMark(itemno, serial); | ||||
|               this.isDeductedPopShow = false | ||||
|               this.popTimer = null; | ||||
|             }, 500) | ||||
|  | ||||
| @ -35,7 +35,6 @@ 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, StartExamTag } from '../config'; | ||||
| import { JudgeConfig } from '../config'; | ||||
| import { dConsole } from '../utils/LogWorker'; | ||||
| import HeaderComponent from './compontents/Header'; | ||||
| import AvatarComponent from './UserInfo/Avatar'; | ||||
| @ -997,12 +997,10 @@ 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 } | ||||
|     } | ||||
| @ -1018,7 +1016,6 @@ 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,6 +84,7 @@ 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) | ||||
| @ -119,7 +120,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 + ''))) | ||||
|                   } | ||||
|                 }) | ||||
| @ -248,6 +249,6 @@ export default struct DeductedPopup { | ||||
| 
 | ||||
|   private closePopup: Function = () => { | ||||
|   } | ||||
|   private confirmMark: Function = (item: number, serial: string) => { | ||||
|   private confirmMark: Function = (itemno: number, serial: string) => { | ||||
|   } | ||||
| } | ||||
| @ -1898,7 +1898,6 @@ 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,9 +91,8 @@ 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} [${chunkId}]] ${chunk}`); | ||||
|       this.logConsole(level, `${LOG_CHUNK_PREFIX} ${index + 1}/${chunks.length}] ${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, baseURL, options.url, "返回的数据", JSON.stringify(data)) | ||||
|       console.log(RequestTag, 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), this.oppositeIp, this.oppositeIpPort) | ||||
|       console.log(TCPTag, 'sendMsg error:', JSON.stringify(err)) | ||||
|       this.tcpSendNum++ | ||||
|       if (this.tcpSendNum > 10) { | ||||
|         this.tcpSendNum = 0 | ||||
|  | ||||
| @ -12,6 +12,9 @@ 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") || { | ||||
| @ -52,15 +55,20 @@ class differentialAndSignal { | ||||
| 
 | ||||
|   // 关闭 | ||||
|   close() { | ||||
|     if (this.workerInstance) { | ||||
|       // 清空所有监听器 | ||||
|       this.events = []; | ||||
|     const config: EnvironmentConfigurationType = AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration") || { | ||||
|     } | ||||
| 
 | ||||
|       // 发送关闭消息 | ||||
|       const config = AppStorage.get<EnvironmentConfigurationType>("EnvironmentConfiguration") || {}; | ||||
|       this.workerInstance.postMessage(JSON.stringify({ | ||||
|         config: config, | ||||
|         close: true | ||||
|       })); | ||||
| 
 | ||||
|       // 关闭线程 | ||||
|     this.workerInstance.terminate() | ||||
|       this.workerInstance.terminate(); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // 获取Worker消息 | ||||
|  | ||||
| @ -1,31 +1,3 @@ | ||||
| <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