updataTable
This commit is contained in:
		
							parent
							
								
									7b27578efd
								
							
						
					
					
						commit
						d66793359b
					
				| @ -17,17 +17,13 @@ import promptAction from '@ohos.promptAction'; | ||||
| import FilePhoto from './judgeSDK/utils/filePhoto'; | ||||
| import { getSyncData, upDateTableByArray } from '../common/service/initable'; | ||||
| import { CandidateData, EmptyCandidateObject } from '../mock/CandidateData'; | ||||
| import BoardPrePareSetPopup from './compontents/judge/BoardPrePareSetPopup' | ||||
| import LoadingPopup from './compontents/judge/LoadingPopup'; | ||||
| import BoardPrePareSetPopup from './compontents/judge/BoardPrePareSetPopup'; | ||||
| import VoiceAnnounce from './judgeSDK/utils/voiceAnnouncements'; | ||||
| import { JudgeConfig } from '../config/judge'; | ||||
| import { judgeConfig } from './judgeSDK/utils/judgeConfig'; | ||||
| 
 | ||||
| @Entry | ||||
| @Component | ||||
| struct UserInfo { | ||||
|   private filePhoto: FilePhoto | ||||
|   private avPlayer | ||||
|   @State pageIndex: number = 0 | ||||
|   @State ratio: number = 1700 / 960 | ||||
|   @State index: number = 0 | ||||
| @ -46,9 +42,12 @@ struct UserInfo { | ||||
|   @State isBoardPrePareSetPopupOpen: boolean = false | ||||
|   @State isFirstBoardPrePareSetPopupBtnShow: boolean = false | ||||
|   @State isBoardPrePareSetPopupShow: boolean = false | ||||
|   @State isLoadingPopupVisible:boolean = false; | ||||
|   @State loadingText:string = '正在生成考试记录,请稍后...' | ||||
|   @State sczbkf:{xmdm:number,kfdm:string}[] = [] | ||||
|   @State isLoadingPopupVisible: boolean = false; | ||||
|   @State loadingText: string = '正在生成考试记录,请稍后...' | ||||
|   @State sczbkf: { | ||||
|     xmdm: number, | ||||
|     kfdm: string | ||||
|   }[] = [] | ||||
|   @State currentUser: User = EmptyCandidateObject | ||||
|   @State dataList: Array<User> = [] | ||||
|   @State list: Array<User> = [] | ||||
| @ -61,7 +60,7 @@ struct UserInfo { | ||||
|   @State idCard: string = ''; | ||||
|   @State grantDept: string = ''; | ||||
|   //是否已经开始考试 | ||||
|   @State isExamStart:boolean = false; | ||||
|   @State isExamStart: boolean = false; | ||||
|   @State effectDate: string = ''; | ||||
|   @State interval: any = null; | ||||
|   @State studentRefreshStatue: string = '0'; | ||||
| @ -73,6 +72,20 @@ struct UserInfo { | ||||
|   @State FaceOpenStatue: string = '0'; //是否开启人脸识别 | ||||
|   subscriber; | ||||
|   @State faceCatchImg: string = '' | ||||
|   // 过程照片拍照 | ||||
|   getPhoto = async (empty?: boolean) => { | ||||
|     const singlePlay = globalThis.singlePlay | ||||
|     //单机模式返回空照片 | ||||
|     if (singlePlay) { | ||||
|       return '' | ||||
|     } else { | ||||
|       const {filePhoto} = this; | ||||
|       const photoBase64 = await filePhoto.getPhoto(); | ||||
|       return photoBase64 | ||||
|     } | ||||
|   } | ||||
|   private filePhoto: FilePhoto | ||||
|   private avPlayer | ||||
|   private AccountTable = new AccountTable(() => { | ||||
|   }, USER); | ||||
|   private context = getContext(this) as common.UIAbilityContext; | ||||
| @ -87,7 +100,7 @@ struct UserInfo { | ||||
| 
 | ||||
|   async onPageShow() { | ||||
|     const mediaTest = new FilePhoto(this.context); | ||||
|     this.filePhoto =  new FilePhoto(this.context); | ||||
|     this.filePhoto = new FilePhoto(this.context); | ||||
|     //语音功能 | ||||
|     new WebRTCVoice(this.context); | ||||
|     //初始化数据 | ||||
| @ -140,10 +153,10 @@ struct UserInfo { | ||||
|           this.stopDeviceById() | ||||
|           // globalThis.statue=4 | ||||
|           router.pushUrl({ | ||||
|             url: examSubject == 3 ? 'pages/Roads':'pages/Judge', | ||||
|             params:{ | ||||
|               sczb:Number(this.isBoardPrePareSetPopupOpen), | ||||
|               kfdm:this.sczbkf | ||||
|             url: examSubject == 3 ? 'pages/Roads' : 'pages/Judge', | ||||
|             params: { | ||||
|               sczb: Number(this.isBoardPrePareSetPopupOpen), | ||||
|               kfdm: this.sczbkf | ||||
|             } | ||||
|           }, router.RouterMode.Single); | ||||
|           return | ||||
| @ -246,9 +259,9 @@ struct UserInfo { | ||||
|     //@ts-ignore | ||||
|     syssetParams.forEach(sys => { | ||||
|       //364	绕车一周评判时机(1-开始考试后判 2-开始考试前判) | ||||
|        if(sys.v_no === '364'){ | ||||
|           this.isBoardPrePareSetPopupOpen = true; | ||||
|        } | ||||
|       if (sys.v_no === '364') { | ||||
|         this.isBoardPrePareSetPopupOpen = true; | ||||
|       } | ||||
|     }) | ||||
| 
 | ||||
|   } | ||||
| @ -474,8 +487,8 @@ struct UserInfo { | ||||
|     const carInfo = globalThis.carInfo; | ||||
|     const {carId,examinationRoomId} = carInfo; | ||||
|     this.showFaceCompare = false | ||||
|     let examItems = {getExaminationItemRsp:{body:{ykxx:''}}}; | ||||
|     if(!globalThis.singlePlay){ | ||||
|     let examItems = { getExaminationItemRsp: { body: { ykxx: '' } } }; | ||||
|     if (!globalThis.singlePlay) { | ||||
|       //获取已考项目 | ||||
|       examItems = await getExaminationItem({ | ||||
|         time: getCurrentTime(), | ||||
| @ -487,90 +500,55 @@ struct UserInfo { | ||||
|     this.currentUser.id = '1' | ||||
|     //是否已经开始考试 | ||||
|     // if(!this.isExamStart){ | ||||
|       const code = await this.beginExam(); | ||||
|       if (code != 1) { | ||||
|         return | ||||
|       } | ||||
|     // } | ||||
|     this.AccountTable.query('0', (result) => { | ||||
|       if (result.length == 0) { | ||||
|         this.isExamStart = true | ||||
|         this.AccountTable.insertData(this.currentUser, (id) => { | ||||
|           this.AccountTable.query('0', (result) => { | ||||
|             globalThis.statue = 4 | ||||
|             this.stepFlag = false | ||||
|             router.pushUrl({ | ||||
|               url: 'pages/Judge', | ||||
|               params: { | ||||
|                 examItems: examItems?.getExaminationItemRsp?.body?.ykxx , | ||||
|                 sczb:Number(this.isBoardPrePareSetPopupOpen), | ||||
|                 kfdm:this.sczbkf | ||||
|               } | ||||
|             }, router.RouterMode.Single); | ||||
|             this.stopDeviceById() | ||||
|           }) | ||||
|         }) | ||||
|       } else { | ||||
|         this.AccountTable.updateData(this.currentUser, (id) => { | ||||
|           this.AccountTable.query('0', (result) => { | ||||
|             this.stepFlag = false | ||||
|             router.pushUrl({ | ||||
|               url:'pages/Judge', | ||||
|               params: { | ||||
|                 examItems: examItems?.getExaminationItemRsp?.body?.ykxx , | ||||
|                 sczb:Number(this.isBoardPrePareSetPopupOpen), | ||||
|                 kfdm:this.sczbkf | ||||
|               } | ||||
|             }, router.RouterMode.Single); | ||||
|             globalThis.statue = 4 | ||||
|             this.stopDeviceById() | ||||
|           }) | ||||
|         }) | ||||
|       } | ||||
|     }) | ||||
|     this.stepFlag = false | ||||
|   } | ||||
|   // 过程照片拍照 | ||||
|   getPhoto = async (empty?: boolean) => { | ||||
|     const singlePlay = globalThis.singlePlay | ||||
|     //单机模式返回空照片 | ||||
|     if (singlePlay) { | ||||
|       return '' | ||||
|     } else { | ||||
|       const {filePhoto} = this; | ||||
|       const photoBase64 = await filePhoto.getPhoto(); | ||||
|       return photoBase64 | ||||
|     const code = await this.beginExam(); | ||||
|     if (code != 1) { | ||||
|       return | ||||
|     } | ||||
|     // } | ||||
|     await upDateTableByArray('USER', [this.currentUser]) | ||||
|     globalThis.statue = 4 | ||||
|     this.stepFlag = false | ||||
|     router.pushUrl({ | ||||
|       url: 'pages/Judge', | ||||
|       params: { | ||||
|         examItems: examItems?.getExaminationItemRsp?.body?.ykxx, | ||||
|         sczb: Number(this.isBoardPrePareSetPopupOpen), | ||||
|         kfdm: this.sczbkf | ||||
|       } | ||||
|     }, router.RouterMode.Single); | ||||
|     this.stopDeviceById() | ||||
|     this.stepFlag = false | ||||
|   } | ||||
| 
 | ||||
|   // 检测车门、熄火信号 | ||||
|   async checkSignal():Promise<boolean>{ | ||||
|   async checkSignal(): Promise<boolean> { | ||||
|     const {isCheckFireOpen} = judgeConfig | ||||
|     return new Promise((resolve,reject)=>{ | ||||
|       if(isCheckFireOpen){ | ||||
|     return new Promise((resolve, reject) => { | ||||
|       if (isCheckFireOpen) { | ||||
|         resolve(true) | ||||
|       } | ||||
|       globalThis.udpClient.onMessage_1(async (msg) => { | ||||
|         const msgArr = msg.split(',') | ||||
|         const mkg = msgArr[14]; | ||||
|         const fdjzs = msgArr[25]; | ||||
|         globalThis.udpClient.onMessage_1(()=>{}); | ||||
|         globalThis.udpClient.onMessage_1(() => { | ||||
|         }); | ||||
|         //TODO | ||||
|         console.info('surenjun mkg=>', mkg) | ||||
|         console.info('surenjun fdjzs=>', fdjzs) | ||||
|         if(mkg == 1){ | ||||
|         if (mkg == 1) { | ||||
|           this.avPlayer.playAudio(['voice/关门.mp3']) | ||||
|           promptAction.showToast({ | ||||
|             message:'请关闭车门', | ||||
|             duration:4000 | ||||
|             message: '请关闭车门', | ||||
|             duration: 4000 | ||||
|           }) | ||||
|           reject(false) | ||||
|         } | ||||
|         if(fdjzs*1 > 0){ | ||||
|         if (fdjzs * 1 > 0) { | ||||
|           this.avPlayer.playAudio(['voice/熄火.mp3']) | ||||
|           promptAction.showToast({ | ||||
|             message:'请熄火', | ||||
|             duration:4000 | ||||
|             message: '请熄火', | ||||
|             duration: 4000 | ||||
|           }) | ||||
|           reject(false) | ||||
|         } | ||||
| @ -578,22 +556,23 @@ struct UserInfo { | ||||
|       }) | ||||
|     }) | ||||
|   } | ||||
| 
 | ||||
|   // 开始考试 | ||||
|   async beginExam(){ | ||||
|   async beginExam() { | ||||
|     const carInfo = globalThis.carInfo; | ||||
|     const {carId,examinationRoomId} = carInfo; | ||||
|     const { examSubject,plateNo } = carInfo; | ||||
|     const date = new Date() | ||||
|     console.info('surenjun','photoBase64') | ||||
|     console.info('surenjun', 'photoBase64') | ||||
|     const photoBase64 = await this.getPhoto(); | ||||
|     console.info('surenjun','photoBase64End') | ||||
|     console.info('surenjun', 'photoBase64End') | ||||
|     const drvexam = { | ||||
|       lsh: this.currentUser.lsh || '', | ||||
|       kskm: examSubject, | ||||
|       ksxtbh: this.ksxtbh || '222', | ||||
|       sfzmhm: this.currentUser.sfzmhm || '', | ||||
|       ksysfzmhm: this.currentUser.ksy1sfzmhm || '', | ||||
|       ksxl:this.currentUser.ksxl, | ||||
|       ksxl: this.currentUser.ksxl, | ||||
|       zp: photoBase64, | ||||
|       kssj: dateFormat(date) || '', | ||||
|       kchp: decodeURI(plateNo), | ||||
| @ -734,23 +713,23 @@ struct UserInfo { | ||||
|               this.qkFlag = true | ||||
|             }) | ||||
| 
 | ||||
|           if( this.isBoardPrePareSetPopupOpen && !this.isFirstBoardPrePareSetPopupBtnShow){ | ||||
|           if (this.isBoardPrePareSetPopupOpen && !this.isFirstBoardPrePareSetPopupBtnShow) { | ||||
|             //上车准备 | ||||
|             Image($r('app.media.sczb_btn')).commStyle().onClick(async ()=>{ | ||||
|             Image($r('app.media.sczb_btn')).commStyle().onClick(async () => { | ||||
|               try { | ||||
|                 await this.checkSignal() | ||||
|                 this.isExamStart = true | ||||
|                 await upDateTableByArray('USER',[this.currentUser]) | ||||
|                 await upDateTableByArray('USER', [this.currentUser]) | ||||
|                 globalThis.statue = 4 | ||||
|                 this.isBoardPrePareSetPopupShow = true; | ||||
|                 this.isFirstBoardPrePareSetPopupBtnShow = true; | ||||
|                 this.stepFlag = false | ||||
|                 this.stopDeviceById() | ||||
|               }catch (e){ | ||||
|               } catch (e) { | ||||
| 
 | ||||
|               } | ||||
|             }) | ||||
|           }else{ | ||||
|           } else { | ||||
|             Image($r('app.media.ksks_btn')) | ||||
|               .commStyle() | ||||
|               .onClick(async () => { | ||||
| @ -768,39 +747,19 @@ struct UserInfo { | ||||
|                   //   }); | ||||
|                   //   return | ||||
|                   // } | ||||
|                   console.info('surenjun currentUser',JSON.stringify(this.currentUser)) | ||||
|                   console.info('surenjun currentUser', JSON.stringify(this.currentUser)) | ||||
|                   if (globalThis.singlePlay) { | ||||
|                     const {examSubject} = globalThis.carInfo; | ||||
|                     console.info('surenjun => sczbkf',JSON.stringify(this.sczbkf)) | ||||
|                     this.AccountTable.query('0', (result) => { | ||||
|                       if (result.length == 0) { | ||||
|                         this.AccountTable.insertData(this.currentUser, (id) => { | ||||
|                           this.AccountTable.query('0', (result) => { | ||||
|                             router.pushUrl({ | ||||
|                               url: examSubject == 3 ? 'pages/Roads':'pages/Judge', | ||||
|                               params:{ | ||||
|                                 sczb:Number(this.isBoardPrePareSetPopupOpen), | ||||
|                                 kfdm:this.sczbkf | ||||
|                               } | ||||
|                             }, router.RouterMode.Single); | ||||
|                             this.stopDeviceById() | ||||
|                           }) | ||||
|                         }) | ||||
|                       } else { | ||||
|                         this.AccountTable.updateData(this.currentUser, (id) => { | ||||
|                           this.AccountTable.query('0', (result) => { | ||||
|                             router.pushUrl({ | ||||
|                               url: examSubject == 3?'pages/Roads':'pages/Judge', | ||||
|                               params:{ | ||||
|                                 sczb:Number(this.isBoardPrePareSetPopupOpen), | ||||
|                                 kfdm:this.sczbkf | ||||
|                               } | ||||
|                             }, router.RouterMode.Single); | ||||
|                             this.stopDeviceById() | ||||
|                           }) | ||||
|                         }) | ||||
|                     console.info('surenjun => sczbkf', JSON.stringify(this.sczbkf)) | ||||
|                     await upDateTableByArray('USER', [this.currentUser]) | ||||
|                     router.pushUrl({ | ||||
|                       url: examSubject == 3 ? 'pages/Roads' : 'pages/Judge', | ||||
|                       params: { | ||||
|                         sczb: Number(this.isBoardPrePareSetPopupOpen), | ||||
|                         kfdm: this.sczbkf | ||||
|                       } | ||||
|                     }) | ||||
|                     }, router.RouterMode.Single); | ||||
|                     this.stopDeviceById() | ||||
|                     return | ||||
|                   } | ||||
|                   if (this.FaceOpenStatue != '0') { | ||||
| @ -808,7 +767,7 @@ struct UserInfo { | ||||
|                   } else { | ||||
|                     this.sfbdinterfaceFn() | ||||
|                   } | ||||
|                 }catch (e){ | ||||
|                 } catch (e) { | ||||
| 
 | ||||
|                 } | ||||
| 
 | ||||
| @ -860,9 +819,9 @@ struct UserInfo { | ||||
|       } | ||||
| 
 | ||||
|       // 上车准备弹窗 | ||||
|       if(this.isBoardPrePareSetPopupShow){ | ||||
|       if (this.isBoardPrePareSetPopupShow) { | ||||
|         BoardPrePareSetPopup({ | ||||
|           closePopup:(bool)=>{ | ||||
|           closePopup: (bool) => { | ||||
|             this.isBoardPrePareSetPopupShow = false; | ||||
|             // if(!globalThis.singlePlay){ | ||||
|             //   this.isFirstBoardPrePareSetPopupBtnShow = !bool; | ||||
| @ -874,7 +833,7 @@ struct UserInfo { | ||||
|           //   this.numCount = 0 | ||||
|           //   this.getExaminationStudentInfoFn() | ||||
|           // }, | ||||
|           confirmMark:(kfdm)=>{ | ||||
|           confirmMark: (kfdm) => { | ||||
|             this.sczbkf = kfdm | ||||
|           } | ||||
|         }) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user