Compare commits
	
		
			2 Commits
		
	
	
		
			922f1bc413
			...
			12bb386379
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 12bb386379 | |||
| f28fae259d | 
| @ -1,82 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 1.获取考车考点信息 获取考车gpsIP、udpIP、音视频端口等考车和考点参数配置 POST /para/initCarInfoCache.ws */ | ||||
| export async function initCarInfoCacheUsingPost( | ||||
|   body: API.GpsIPUdpIP2, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfGpsIPUdpIP_>('/para/initCarInfoCache.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 3.初始化考车视频参数 初始化考车视频参数 POST /para/initCarParameter.ws */ | ||||
| export async function initCarVideoParameterUsingPost( | ||||
|   body: API.Pinyin_7, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf2>('/para/initCarParameter.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 4.从参数平台获取参数 单个读表,读取其他 ma_ 开头的评判参数表 POST /para/initCenterCache.ws */ | ||||
| export async function initCenterCacheFromParamUsingPost( | ||||
|   body: API.Pinyin_5, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfListOfobject>('/para/initCenterCache.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 2.初始化模型 初始化模型 POST /para/initEsModel.ws */ | ||||
| export async function initModelUsingPost(body: API.Pinyin_32, options?: { [key: string]: any }) { | ||||
|   return request<API.ROf10>('/para/initEsModel.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 5.参数平台基础数据同步 被请求的 GET /param/baseDataSync */ | ||||
| export async function paramBaseDataSyncUsingGet(options?: { [key: string]: any }) { | ||||
|   return request<API.ROf3>('/param/baseDataSync', { | ||||
|     method: 'GET', | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 6.参数平台参数数据同步 被请求的 GET /param/configDataSync/${param0} */ | ||||
| export async function paramConfigDataSyncUsingGet( | ||||
|   // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
 | ||||
|   params: API.paramConfigDataSyncUsingGETParams, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   const { tableName: param0, ...queryParams } = params; | ||||
|   return request<API.ROfobject>(`/param/configDataSync/${param0}`, { | ||||
|     method: 'GET', | ||||
|     params: { ...queryParams }, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,116 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 4.考车自检项目信息读取 考车自检项目信息读取 POST /exam/carConfigurationInfo.ws */ | ||||
| export async function carConfigurationInfoUsingPost( | ||||
|   body: API.Pinyin_34, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf11>('/exam/carConfigurationInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 6.随车考试员登录 随车考试员登录 POST /exam/examinerLogin.ws */ | ||||
| export async function examinerLoginUsingPost( | ||||
|   body: API.Pinyin_39, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf12>('/exam/examinerLogin.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 3.获取考点系统参数 考车从考试中心获取考点系统参数,即考试平台的exam_point_config表 POST /exam/initSysset300.ws */ | ||||
| export async function initExamPointConfigUsingPost( | ||||
|   body: API.Pinyin_33, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfListOfobject>('/exam/initSysset300.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 8.考车考点信息查询 考车考点信息查询 POST /exam/queryVehiclePoint.ws */ | ||||
| export async function queryVehiclePointUsingPost( | ||||
|   body: API.Pinyin_28, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/queryVehiclePoint.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.终端设备注册 包括但不限于考车、闸机 POST /exam/registrationDeviceNo.ws */ | ||||
| export async function registrationDeviceNoUsingPost( | ||||
|   body: API.Pinyin_23, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/registrationDeviceNo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 2.终端初始化时间同步 终端初始化时间同步 POST /exam/timeSynchronization.ws */ | ||||
| export async function timeSynchronizationUsingPost(options?: { [key: string]: any }) { | ||||
|   return request<API.ROf9>('/exam/timeSynchronization.ws', { | ||||
|     method: 'POST', | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 5.考车自检结果写入 考车自检结果写入 POST /exam/uploadExamCarCheckResult.ws */ | ||||
| export async function uploadExamCarCheckResultUsingPost( | ||||
|   body: API.Pinyin_29, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/uploadExamCarCheckResult.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 7.考车日志信息上传 考车日志信息上传 POST /exam/uploadVehicleLog.ws */ | ||||
| export async function uploadVehicleLogUsingPost( | ||||
|   body: API.Pinyin_27, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/uploadVehicleLog.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,78 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 3.考车对考生缺考操作 考车对考生缺考操作 POST /exam/examinationStuAbsent.ws */ | ||||
| export async function examinationStuAbsentUsingPost( | ||||
|   body: API.Pinyin_26, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/examinationStuAbsent.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 2.断点续考 断点续考获取考试项目 POST /exam/getExaminationItem.ws */ | ||||
| export async function getExaminationItemUsingPost( | ||||
|   body: API.Pinyin_18, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf8>('/exam/getExaminationItem.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.下载考生信息 考车端通过此接口下载监管(或本地随机)分配的考生信息 POST /exam/getExaminationStudentInfo.ws */ | ||||
| export async function getExaminationStudentInfoUsingPost( | ||||
|   body: API.Pinyin_3, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf_>('/exam/getExaminationStudentInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 4.上传考试过程数据文件 上传考试过程数据文件 POST /exam/uploadExamDataFile.ws */ | ||||
| export async function uploadExamDataFileUsingPost( | ||||
|   body: API.Pinyin_2, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/uploadExamDataFile.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 5.上传考生考试里程 上传考生考试里程 POST /exam/uploadExamMileage.ws */ | ||||
| export async function uploadExamMileageUsingPost( | ||||
|   body: API.Pinyin__, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/exam/uploadExamMileage.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,46 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| // @ts-ignore
 | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 2.无锡所接口请求 无锡所通用接口请求 POST /common/callWxsRest.do */ | ||||
| export async function callWxsRestUsingPost(body: API.Pinyin_20, options?: { [key: string]: any }) { | ||||
|   return request<API.ROfobject>('/common/callWxsRest.do', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 3.无锡所接口请求测试 无锡所接口请求测试,返回测试数据 POST /common/callWxsRestTest.do */ | ||||
| export async function callWxsRestTestUsingPost( | ||||
|   body: API.Pinyin_20, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/common/callWxsRestTest.do', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.大屏显示数据查询与控制 大屏显示数据查询与控制 POST /data/examInfoStandardDisplay.ws */ | ||||
| export async function examInfoStandardDisplayUsingPost( | ||||
|   body: API.Pinyin_13, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf5>('/data/examInfoStandardDisplay.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,75 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 4.数据更新 数据更新:照片,指纹,随机序号,监管签到,状态等操作 POST /data/getAccessControlInfo.ws */ | ||||
| export async function getAccessControlInfoUsingPost( | ||||
|   body: API.Pinyin_30, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/data/getAccessControlInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 2.身份合法性判断 身份合法性判断:约考信息下载,收费查询,场次控制等 POST /data/getAccessStuInfo.ws */ | ||||
| export async function getAccessStuInfoUsingPost( | ||||
|   body: API.Pinyin_36, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/data/getAccessStuInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.门禁版本控制 门禁版本控制 POST /exam/gateLoginInit.ws */ | ||||
| export async function getLoginInitUsingPost(body: API.Pinyin_38, options?: { [key: string]: any }) { | ||||
|   return request<API.ROfobject>('/exam/gateLoginInit.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 3.门禁/考车终端人脸识别 门禁/考车终端人脸识别 POST /imageCompare/base64ImageStrCompare.ws */ | ||||
| export async function base64ImageStrCompareUsingPost( | ||||
|   body: API.Pinyin_37, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/imageCompare/base64ImageStrCompare.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 5.考官/随车考试员闸机人脸识别 考官/随车考试员闸机人脸识别,此处安全员是代替没有身份证学员人脸识别 POST /pmUserCheckCardNoFace.ws */ | ||||
| export async function examManFaceRecognitionUsingPost( | ||||
|   body: API.Pinyin_25, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/pmUserCheckCardNoFace.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,63 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 3.合成视频监测 合成视频监测 POST /data/compositedVideosMonitor.ws */ | ||||
| export async function compositedVideosMonitorUsingPost( | ||||
|   body: API.Pinyin_11, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROfobject>('/data/compositedVideosMonitor.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.场地摄像头设备信息 场地摄像头设备信息--科目二三都调用此接口(科三只有贵州在用2022-10-13) POST /data/getKm2FieldGunCameraInfo.ws */ | ||||
| export async function getKm2FieldGunCameraInfoUsingPost( | ||||
|   body: API.Pinyin_11, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf4>('/data/getKm2FieldGunCameraInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 4.获取考生考试信息 获取考生考试信息 POST /data/getStudExamInfo.ws */ | ||||
| export async function getStudExamInfoUsingPost( | ||||
|   body: API.Pinyin_17, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf7>('/data/getStudExamInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 2.小红求获取扣分信息(参数平台接口) 小红求获取扣分信息-(视频合成用-小红球程序-放在参数平台) POST /data/obtainMarkRuleSetInfo.ws */ | ||||
| export async function obtainMarkRuleSetInfoUsingPost( | ||||
|   body: API.Pinyin_15, | ||||
|   options?: { [key: string]: any }, | ||||
| ) { | ||||
|   return request<API.ROf6>('/data/obtainMarkRuleSetInfo.ws', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| @ -1,31 +0,0 @@ | ||||
| // @ts-ignore
 | ||||
| /* eslint-disable */ | ||||
| import request from '../common/utils/http'; | ||||
| 
 | ||||
| /** 2.考试中心执行参数同步 由外部(考试平台)调用,主动请求参数平台同步基础数据 GET /system/doParamBaseDataSync */ | ||||
| export async function doParamBaseDataSyncUsingGet(options?: { [key: string]: any }) { | ||||
|   return request<API.ROfobject>('/system/doParamBaseDataSync', { | ||||
|     method: 'GET', | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 3.考试中心执行参数数据同步 由外部(考试平台)调用,主动请求参数平台同步参数数据 GET /system/doParamConfigDataSync */ | ||||
| export async function doParamConfigDataSyncUsingGet(options?: { [key: string]: any }) { | ||||
|   return request<API.ROfobject>('/system/doParamConfigDataSync', { | ||||
|     method: 'GET', | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| /** 1.用户登录 用户登录接口,获取用户相关信息和登录Token,登录后调用后台接口时,将Token放到请求头中 POST /system/userLogin.do */ | ||||
| export async function userLoginUsingPost(body: API.Pinyin_21, options?: { [key: string]: any }) { | ||||
|   return request<API.ROfobject>('/system/userLogin.do', { | ||||
|     method: 'POST', | ||||
|     headers: { | ||||
|       'Content-Type': 'application/json;charset=UTF-8', | ||||
|     }, | ||||
|     data: body, | ||||
|     ...(options || {}), | ||||
|   }); | ||||
| } | ||||
							
								
								
									
										964
									
								
								entry/src/main/ets/api/typings.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										964
									
								
								entry/src/main/ets/api/typings.d.ts
									
									
									
									
										vendored
									
									
								
							| @ -1,964 +0,0 @@ | ||||
| declare namespace API { | ||||
|   type CarBrand_ = { | ||||
|     /** 品牌名 {type_name} */ | ||||
|     brandName?: string; | ||||
|     /** 创建者 */ | ||||
|     createBy?: string; | ||||
|     /** 创建时间 */ | ||||
|     createTime?: string; | ||||
|     /** 百米脉冲 */ | ||||
|     hundredMeterPulse?: string; | ||||
|     /** 主键 */ | ||||
|     id?: number; | ||||
|     /** 签到序号起始点 */ | ||||
|     signNumber?: number; | ||||
|     /** SIMPLE_NAME */ | ||||
|     simpleName?: string; | ||||
|     /** 更新者 */ | ||||
|     updateBy?: string; | ||||
|     /** 更新时间 */ | ||||
|     updateTime?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type CarInfo_ = { | ||||
|     /** 监管分车时间 */ | ||||
|     assignTime?: string; | ||||
|     /** 车辆品牌id [car_brand.id] {cartypeid} */ | ||||
|     carBrandId?: number; | ||||
|     /** 考车自检状态(0:不用检查,1:待检查,2:检查通过,3:检查不通过) */ | ||||
|     carCheckStatus?: string; | ||||
|     /** 考车实际IP {carip} */ | ||||
|     carIp?: string; | ||||
|     /** 考车对应mac地址 */ | ||||
|     carMac?: string; | ||||
|     /** 考车编号 {carno} */ | ||||
|     carNo?: string; | ||||
|     /** 考车身份证号 */ | ||||
|     cardNoArray?: string; | ||||
|     /** 创建者 */ | ||||
|     createBy?: string; | ||||
|     /** 创建时间 */ | ||||
|     createTime?: string; | ||||
|     /** 删除标记(0:存在,2:已经删除)(status) */ | ||||
|     delFlag?: string; | ||||
|     /** 考点id [sys_dept.dept_id] {exampointid} */ | ||||
|     deptId?: number; | ||||
|     /** 设备号 */ | ||||
|     deviceNo?: string; | ||||
|     /** 考车状态(1:正常,2:停用,3:异常) */ | ||||
|     deviceStatus?: string; | ||||
|     /** 准驾车型 {cartype} */ | ||||
|     drivingLicenseType?: string; | ||||
|     /** 终点库位号 {zdkwh} */ | ||||
|     endPointNo?: string; | ||||
|     /** 考车路线 */ | ||||
|     examLineArray?: string; | ||||
|     /** 所属考官对应的用户id [sys_user.user_id] */ | ||||
|     examManId?: number; | ||||
|     /** 考试场次 {kscc} */ | ||||
|     examRound?: number; | ||||
|     /** 当前登录随车考试员id [examiner_info.id] */ | ||||
|     examinerId?: number; | ||||
|     /** 考场区域代号 */ | ||||
|     fieldId?: string; | ||||
|     /** 百米脉冲 */ | ||||
|     hundredMeterPulse?: string; | ||||
|     /** 主键 */ | ||||
|     id?: number; | ||||
|     /** 监控审核人脸识别方式(0:无人脸识别,1:视频截图方式,2:考车上传方式) {isface} */ | ||||
|     isFace?: string; | ||||
|     /** 是否更新map_collect (0:否,1:是) {is_mapcollect} */ | ||||
|     isMapCollect?: string; | ||||
|     /** 是否需要审核(0:否,1:是) */ | ||||
|     isReview?: string; | ||||
|     /** 上一次登录随车考试员 [examiner_info.id] */ | ||||
|     lastExaminerId?: number; | ||||
|     /** 考车号牌 {carcode} */ | ||||
|     licensePlate?: string; | ||||
|     /** 模型id [model_info.id] {modelid} */ | ||||
|     modelId?: number; | ||||
|     /** 导航线路 {dhxl} */ | ||||
|     navigationLine?: string; | ||||
|     /** 考车对应软件版本 */ | ||||
|     softwareVersion?: string; | ||||
|     /** 更新者 */ | ||||
|     updateBy?: string; | ||||
|     /** 更新时间 */ | ||||
|     updateTime?: string; | ||||
|     /** 车辆型号 */ | ||||
|     vehicleModel?: string; | ||||
|     /** 考车对应车辆识别代号 */ | ||||
|     vin?: string; | ||||
|     /** 考试路线 */ | ||||
|     wayNo?: number; | ||||
|   }; | ||||
| 
 | ||||
|   type ExamInfoVo = { | ||||
|     bk1?: string; | ||||
|     bz1?: string; | ||||
|     cartype?: string; | ||||
|     czlx?: string; | ||||
|     fieldid?: string; | ||||
|     flag?: string; | ||||
|     fz?: string; | ||||
|     jdxx?: string; | ||||
|     jxmc?: string; | ||||
|     kchp?: string; | ||||
|     kfxm?: string; | ||||
|     kscc?: string; | ||||
|     kscx?: string; | ||||
|     ksdd?: string; | ||||
|     kskm?: string; | ||||
|     kslx?: string; | ||||
|     ksmjzp?: string; | ||||
|     kssycs?: string; | ||||
|     ksxl?: string; | ||||
|     ksy1?: string; | ||||
|     ksy1sfzmhm?: string; | ||||
|     ksy2?: string; | ||||
|     ksy2sfzmhm?: string; | ||||
|     kszp?: string; | ||||
|     kszt?: string; | ||||
|     ktbh?: string; | ||||
|     lsh?: string; | ||||
|     motorType?: string; | ||||
|     roadway?: string; | ||||
|     securityGuard?: string; | ||||
|     sfcode?: string; | ||||
|     sfzmhm?: string; | ||||
|     updatetime?: string; | ||||
|     xb?: string; | ||||
|     xh?: string; | ||||
|     xldm?: string; | ||||
|     xm?: string; | ||||
|     ykrq?: string; | ||||
|     yycs?: string; | ||||
|     zkzmbh?: string; | ||||
|     zwxx1?: string; | ||||
|     zwxx2?: string; | ||||
|     zwxx3?: string; | ||||
|     zwxx4?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ExamPointInfo_ = { | ||||
|     /** 考场地址 {address} */ | ||||
|     address?: string; | ||||
|     /** 考场车辆类型(1:小车,2:大车,3:摩托){is_motor} */ | ||||
|     carType?: string; | ||||
|     /** 创建者 */ | ||||
|     createBy?: string; | ||||
|     /** 创建时间 */ | ||||
|     createTime?: string; | ||||
|     /** 所属部门id [sys_dept.dept_id] {organize_id} */ | ||||
|     deptId?: number; | ||||
|     /** 考点名称 {name} */ | ||||
|     deptName?: string; | ||||
|     /** 准驾车型(列表,逗号隔开) {car_type} */ | ||||
|     drivingLicenseType?: string; | ||||
|     /** 考点代码 {code} */ | ||||
|     examPointCode?: string; | ||||
|     /** 考点全称 {fullname} */ | ||||
|     fullName?: string; | ||||
|     /** 主键 */ | ||||
|     id?: number; | ||||
|     /** 联系人 {contact} */ | ||||
|     master?: string; | ||||
|     /** 联系电话 {phone} */ | ||||
|     phone?: string; | ||||
|     /** 电子地图映射信息json */ | ||||
|     photoInfo?: string; | ||||
|     /** 电子地图图片路径 {path} */ | ||||
|     photoPath?: string; | ||||
|     /** 备注 */ | ||||
|     remark?: string; | ||||
|     /** 考试科目 {type} */ | ||||
|     subjectType?: string; | ||||
|     /** 更新者 */ | ||||
|     updateBy?: string; | ||||
|     /** 更新时间 */ | ||||
|     updateTime?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type GpsIPUdpIP_ = { | ||||
|     /** 车辆品牌名称 */ | ||||
|     carBrandName?: string; | ||||
|     /** 准驾车型(C1、C2...) */ | ||||
|     drivingLicenseType?: string; | ||||
|     /** GPS差分服务器地址 */ | ||||
|     gpsAddress?: string; | ||||
|     /** 是否需要自检(0:不需要自检,1:需要自检) */ | ||||
|     isNeedCheck?: string; | ||||
|     /** 百米脉冲 */ | ||||
|     pulse?: string; | ||||
|     /** 考试科目 */ | ||||
|     subjectType?: string; | ||||
|     /** UDP服务器数据端口号 */ | ||||
|     udpDataPort?: string; | ||||
|     /** UDP服务器ip */ | ||||
|     udpIp?: string; | ||||
|     /** UDP服务器消息端口号 */ | ||||
|     udpMessagePort?: string; | ||||
|     /** 语音对讲服务ip */ | ||||
|     voiceIp?: string; | ||||
|     /** 语音对讲服务端口号 */ | ||||
|     voicePort?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type GpsIPUdpIP2 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 评判版本号 */ | ||||
|     softwareVersion: string; | ||||
|   }; | ||||
| 
 | ||||
|   type MarkRuleSet = { | ||||
|     itemName?: string; | ||||
|     itemno?: string; | ||||
|     kfxh?: string; | ||||
|     markcatalog?: string; | ||||
|     markdepend?: string; | ||||
|     markreal?: string; | ||||
|     markserial?: string; | ||||
|     markshow?: string; | ||||
|     markstandard?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type paramConfigDataSyncUsingGETParams = { | ||||
|     /** tableName */ | ||||
|     tableName: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin__ = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 考试里程{kslc} */ | ||||
|     mileage: number; | ||||
|     /** 流水号 */ | ||||
|     serialNo: string; | ||||
|     /** 特殊扣分内容 */ | ||||
|     specialSub?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_10 = { | ||||
|     /** 考车id */ | ||||
|     gunCameraInfos?: Pinyin_9[]; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_11 = { | ||||
|     /** 小红球程序编号 */ | ||||
|     deviceNo: string; | ||||
|     /** 小红球消息 */ | ||||
|     message: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_12 = { | ||||
|     kaoShengXinXi?: ExamInfoVo[]; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_13 = { | ||||
|     b2no?: string; | ||||
|     c1no?: string; | ||||
|     c2no?: string; | ||||
|     c5no?: string; | ||||
|     deviceNo?: string; | ||||
|     fieldId?: string; | ||||
|     kscc?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_14 = { | ||||
|     judgeVersion?: string; | ||||
|     kdid?: string; | ||||
|     kskm?: string; | ||||
|     markRuleSet?: MarkRuleSet[]; | ||||
|     shellVersion?: string; | ||||
|     speendParam?: string; | ||||
|     vehicleSpeend?: VehicleSpeend[]; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_15 = { | ||||
|     /** 小红球程序编号 */ | ||||
|     deviceNo: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_16 = { | ||||
|     aqyphoto?: string; | ||||
|     aqysfzmhm?: string; | ||||
|     aqyxm?: string; | ||||
|     bkhgkssj?: string; | ||||
|     jxmc?: string; | ||||
|     kch?: string; | ||||
|     kchp?: string; | ||||
|     kclx?: string; | ||||
|     kcmc?: string; | ||||
|     kscs?: string; | ||||
|     kscx?: string; | ||||
|     ksxl?: string; | ||||
|     ksyphoto?: string; | ||||
|     ksysfzmhm?: string; | ||||
|     ksyxm?: string; | ||||
|     lsh?: string; | ||||
|     sfzmhm?: string; | ||||
|     xm?: string; | ||||
|     yycs?: string; | ||||
|     zp1?: string; | ||||
|     zp2?: string; | ||||
|     zwh?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_17 = { | ||||
|     /** 考车编号 */ | ||||
|     carNo: string; | ||||
|     /** 小红球程序编号 */ | ||||
|     deviceNo: string; | ||||
|     /** 流水号 */ | ||||
|     serialNo: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_18 = { | ||||
|     /** 随车考试员编号 */ | ||||
|     examinerCode?: string; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 流水号 */ | ||||
|     serialNo: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_19 = { | ||||
|     /** 安徽已考项目 */ | ||||
|     ahykxx?: string; | ||||
|     /** 大车初考项目 */ | ||||
|     firstABykxx?: string; | ||||
|     /** 考试剩余次数 */ | ||||
|     kssycs?: string; | ||||
|     /** 考试预约流水号 */ | ||||
|     lsh?: string; | ||||
|     /** 摩托车考试模式 */ | ||||
|     motorType?: string; | ||||
|     /** 大车补考项目 */ | ||||
|     secondABykxx?: string; | ||||
|     /** 约考信息,内容如:开始时间;里程;考试项目;扣分项目;特殊地方扣分明细 */ | ||||
|     ykxx?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_2 = { | ||||
|     /** 文件base64 */ | ||||
|     examData: string; | ||||
|     /** 考试结束时间 */ | ||||
|     examEndTime: string; | ||||
|     /** 考试开始时间 */ | ||||
|     examStartTime: string; | ||||
|     /** 文件名称(type=2/3时需要传) */ | ||||
|     fileName?: string; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 流水号 */ | ||||
|     serialNo: string; | ||||
|     /** 文件类型,鸿蒙考车固定传1(0:本地轨迹,1:监管轨迹,2:轨迹回放,3:注意力识别) */ | ||||
|     type: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_20 = { | ||||
|     /** 考车请求时间,跟下面请求数据data中的业务发生时间相同,这里用作设备时差校验 */ | ||||
|     carSendTime: string; | ||||
|     /** 请求数据,详见无锡所接口文档。JSON对象 */ | ||||
|     data: Record<string, any>; | ||||
|     /** 文件列表 */ | ||||
|     files?: WxsBaseFileBean[]; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 接口编号,例如:02-21-000009(考试开始) */ | ||||
|     restCode: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_21 = { | ||||
|     /** 设备imei号 */ | ||||
|     imei: string; | ||||
|     /** 用户登录时间戳 */ | ||||
|     loginTime: number; | ||||
|     /** md5加密串(根据imei号+时间戳+盐混淆) */ | ||||
|     signKey: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_22 = { | ||||
|     /** 中心服务器当前时间 */ | ||||
|     time?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_23 = { | ||||
|     /** 设备名称 */ | ||||
|     deviceName: string; | ||||
|     /** 设备编号 */ | ||||
|     deviceNo: string; | ||||
|     /** 设备类型(1:考车;2:闸机;3:大屏;4:指纹仪;5:拍照) */ | ||||
|     type: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_24 = { | ||||
|     /** 考试项目 */ | ||||
|     bk1?: string; | ||||
|     /** 备注1 0,0, */ | ||||
|     bz1?: string; | ||||
|     /** 考试车型,考生表的carType */ | ||||
|     cartype?: string; | ||||
|     /** 操作类型 */ | ||||
|     czlx?: string; | ||||
|     /** 考试区域 */ | ||||
|     fieldid?: string; | ||||
|     /** 考试是否合格 */ | ||||
|     flag?: string; | ||||
|     /** 考试分组 */ | ||||
|     fz?: string; | ||||
|     /** 阶段信息 */ | ||||
|     jdxx?: string; | ||||
|     /** 驾校名称 */ | ||||
|     jxmc?: string; | ||||
|     /** 考车号牌 */ | ||||
|     kchp?: string; | ||||
|     /** 扣分项目 */ | ||||
|     kfxm?: string; | ||||
|     /** 考试场次 */ | ||||
|     kscc?: string; | ||||
|     /** 考试车型 */ | ||||
|     kscx?: string; | ||||
|     /** 考试地点,考场编号 */ | ||||
|     ksdd?: string; | ||||
|     /** 考试科目 */ | ||||
|     kskm?: string; | ||||
|     /** 考试类型 */ | ||||
|     kslx?: string; | ||||
|     /** ksmjzp */ | ||||
|     ksmjzp?: string; | ||||
|     /** 考试剩余次数 */ | ||||
|     kssycs?: string; | ||||
|     /** 考试线路-实用 */ | ||||
|     ksxl?: string; | ||||
|     /** 考试员姓名1 */ | ||||
|     ksy1?: string; | ||||
|     /** 考试员1身份证号 */ | ||||
|     ksy1sfzmhm?: string; | ||||
|     /** 考试员随车考试员2 */ | ||||
|     ksy2?: string; | ||||
|     /** 考试员2身份证号 */ | ||||
|     ksy2sfzmhm?: string; | ||||
|     /** 考生照片,base64编码 */ | ||||
|     kszp?: string; | ||||
|     /** 考试状态 */ | ||||
|     kszt?: string; | ||||
|     /** 考台编号 */ | ||||
|     ktbh?: string; | ||||
|     /** 考试预约流水号 */ | ||||
|     lsh?: string; | ||||
|     /** 摩托车考试模式 1.先考科目2,再考科目3 2.科目2 3.科目3 4.先考科目3,再考科目2 */ | ||||
|     motorType?: string; | ||||
|     /** 车道 */ | ||||
|     roadway?: string; | ||||
|     /** 安全员姓名 */ | ||||
|     securityGuard?: string; | ||||
|     /** 6位身份编码 */ | ||||
|     sfcode?: string; | ||||
|     /** 身份证号 */ | ||||
|     sfzmhm?: string; | ||||
|     /** 上车更新时间 */ | ||||
|     updatetime?: string; | ||||
|     /** 考生性别 */ | ||||
|     xb?: string; | ||||
|     /** 序号 */ | ||||
|     xh?: string; | ||||
|     /** 监管线路代码,上传用 */ | ||||
|     xldm?: string; | ||||
|     /** 考生姓名 */ | ||||
|     xm?: string; | ||||
|     /** 约考日期 */ | ||||
|     ykrq?: string; | ||||
|     /** 预约次数 */ | ||||
|     yycs?: string; | ||||
|     /** 准考证明编号,admissionNo */ | ||||
|     zkzmbh?: string; | ||||
|     /** 指纹1 */ | ||||
|     zwxx1?: string; | ||||
|     /** 指纹2 */ | ||||
|     zwxx2?: string; | ||||
|     /** 指纹3 */ | ||||
|     zwxx3?: string; | ||||
|     /** 指纹4 */ | ||||
|     zwxx4?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_25 = { | ||||
|     /** 设备号 */ | ||||
|     deviceNo: string; | ||||
|     /** 照片1 */ | ||||
|     firstImage: string; | ||||
|     /** 照片2 */ | ||||
|     secondImage: string; | ||||
|     /** 身份证号码 */ | ||||
|     sfzh: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_26 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 流水号 */ | ||||
|     serialNo: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_27 = { | ||||
|     /** 类别(1:外壳,2:视屏,3:评判,4:接口) */ | ||||
|     category: string; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|     /** 日志内容 */ | ||||
|     logData: string; | ||||
|     /** 考车日志类型(1:升级日,2:错误日志) */ | ||||
|     logType: string; | ||||
|     /** 考车发生时间(格式:yyyy-MM-dd HH:mm:ss) */ | ||||
|     vehicleTime: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_28 = { | ||||
|     /** 设备编号 */ | ||||
|     deviceNo: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_29 = { | ||||
|     /** 自检结果附带信息 */ | ||||
|     condition: string; | ||||
|     /** 自检结果(1:合格,0:不合格) */ | ||||
|     flag: string; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_3 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_30 = { | ||||
|     /** 考车编号 */ | ||||
|     carNo?: string; | ||||
|     /** 车辆类型 */ | ||||
|     carType?: string; | ||||
|     /** 身份证号 */ | ||||
|     cardNo?: string; | ||||
|     /** 设备编号 */ | ||||
|     deviceNo?: string; | ||||
|     faceVerifyRes?: string; | ||||
|     /** fieldId */ | ||||
|     fieldId?: string; | ||||
|     fingerVerifyRes?: string; | ||||
|     /** 体温是否正常标志 */ | ||||
|     health?: string; | ||||
|     /** 6位身份编码  */ | ||||
|     idNoSix?: string; | ||||
|     /** 考官证件号码 */ | ||||
|     kgCardNo?: string; | ||||
|     /** 人工过门禁原因 */ | ||||
|     manualReason?: string; | ||||
|     /** mixModel */ | ||||
|     mixModel?: string; | ||||
|     /** 人脸识别度 */ | ||||
|     rlsbValue?: string; | ||||
|     /** 流水号 */ | ||||
|     serialNo?: string; | ||||
|     sfzzp?: string; | ||||
|     /** 考试科目 */ | ||||
|     subjectType?: string; | ||||
|     /** 体温值 */ | ||||
|     temperature?: string; | ||||
|     /** 体温照片1 */ | ||||
|     twzp1?: string; | ||||
|     /** 体温照片2 */ | ||||
|     twzp2?: string; | ||||
|     /** 照片 */ | ||||
|     zp?: string; | ||||
|     zw1?: string; | ||||
|     zw2?: string; | ||||
|     zw3?: string; | ||||
|     zw4?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_31 = { | ||||
|     /** 模型内容(base64) */ | ||||
|     content: string; | ||||
|     /** 文件名 */ | ||||
|     filename: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_32 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_33 = { | ||||
|     /** 车牌号码 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_34 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_35 = { | ||||
|     /** 是否需要自检(0:不需要自检,1:需要自检) */ | ||||
|     isNeedCheck?: string; | ||||
|     /** 自检项目 */ | ||||
|     items?: string; | ||||
|     /** 串口号 */ | ||||
|     portNo?: string; | ||||
|     /** 重试次数 */ | ||||
|     retryTime?: string; | ||||
|     /** (1:取反,0:不取反)例如安全带取反且离合器不取反即(1^0)  */ | ||||
|     reverse?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_36 = { | ||||
|     /** 住址 */ | ||||
|     addr?: string; | ||||
|     /** 设备编号 */ | ||||
|     deviceNo?: string; | ||||
|     /** fieldId */ | ||||
|     fieldId?: string; | ||||
|     /** 考官证件号码 */ | ||||
|     kgsfzmhm?: string; | ||||
|     /** 考试科目 */ | ||||
|     kskm?: string; | ||||
|     /** 流水号 */ | ||||
|     lsh?: string; | ||||
|     /** mixModel */ | ||||
|     mixModel?: string; | ||||
|     /** 身份证号 */ | ||||
|     sfzh: string; | ||||
|     /** 姓名 */ | ||||
|     xm?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_37 = { | ||||
|     /** 设备号 */ | ||||
|     deviceNo?: string; | ||||
|     /** 照片1 */ | ||||
|     firstImage?: string; | ||||
|     /** 考试科目 */ | ||||
|     kskm?: string; | ||||
|     /** 认证次数 */ | ||||
|     rzcs?: string; | ||||
|     /** 照片2 */ | ||||
|     secondImage: string; | ||||
|     /** 身份证号码 */ | ||||
|     sfzh: string; | ||||
|     /** 设备类型(1、门禁2、考车3、过程) */ | ||||
|     type: string; | ||||
|     /** 审核类型(2、人工审核) */ | ||||
|     verifyType?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_38 = { | ||||
|     /** 设备硬件号 */ | ||||
|     deviceNo: string; | ||||
|     /** 门禁程序版本号 */ | ||||
|     gateVersion: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_39 = { | ||||
|     /** 随车考试员登录用户名(可以是身份证号、员工号、制卡号等等) */ | ||||
|     examinerName: string; | ||||
|     /** 随车考试员密码 */ | ||||
|     examinerPwd?: string; | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_4 = { | ||||
|     /** 考生信息列表 */ | ||||
|     studentList?: Pinyin_24[]; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_40 = { | ||||
|     /** 指纹信息1 */ | ||||
|     finger1?: string; | ||||
|     /** 指纹信息2 */ | ||||
|     finger2?: string; | ||||
|     /** 随车考试员姓名 */ | ||||
|     name?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_5 = { | ||||
|     /** 车牌号码 */ | ||||
|     licensePlate: string; | ||||
|     /** 表名,大写 */ | ||||
|     tableName: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_6 = { | ||||
|     /** car_mac */ | ||||
|     car_mac: string; | ||||
|     /** 设备类型(1:海康,2:大华) */ | ||||
|     equipment_type: string; | ||||
|     /** 第一路通道 */ | ||||
|     first_channel: string; | ||||
|     /** 第一路ip */ | ||||
|     first_ip: string; | ||||
|     /** 第一路密码 */ | ||||
|     first_password: string; | ||||
|     /** 第一路端口 */ | ||||
|     first_port: string; | ||||
|     /** 第一路用户名 */ | ||||
|     first_username: string; | ||||
|     /** 第四路通道 */ | ||||
|     fourth_channel: string; | ||||
|     /** 第四路ip */ | ||||
|     fourth_ip: string; | ||||
|     /** 第四路密码 */ | ||||
|     fourth_password: string; | ||||
|     /** 第四路端口 */ | ||||
|     fourth_port: string; | ||||
|     /** 第四路用户名 */ | ||||
|     fourth_username: string; | ||||
|     /** 连接类型(0:主码流TCP方式,1:子码流TCP方式,2:主码流UDP方式,3:子码流UDP方式) */ | ||||
|     line_type: string; | ||||
|     /** 拍照通道 */ | ||||
|     photo_channel: string; | ||||
|     /** 叠加内容1(1.考生姓名,身份证号,3.当前项目,4.当前时间) */ | ||||
|     photo_overlay_text_content1: string; | ||||
|     /** 叠加内容2(1.考生姓名,身份证号,3.当前项目,4.当前时间,0:空) */ | ||||
|     photo_overlay_text_content2: string; | ||||
|     /** 叠加内容3(1.考生姓名,身份证号,3.当前项目,4.当前时间,0:空) */ | ||||
|     photo_overlay_text_content3: string; | ||||
|     /** 照片叠加文字(1:启用,0:关闭) */ | ||||
|     photo_overlay_text_enable: string; | ||||
|     /** 位置(1:左上角,2:右上角,3:左下角,4.右下角) */ | ||||
|     photo_overlay_text_position: string; | ||||
|     /** 文字大小 */ | ||||
|     photo_overlay_text_size: string; | ||||
|     /** 分割符(1:/,2:*\,3:换行) */ | ||||
|     photo_overlay_text_split: string; | ||||
|     /** 启用过程人脸比对 {process_face_comparion_enable} */ | ||||
|     process_face_comparion_enable: string; | ||||
|     /** 过程人脸比对模式(1:启用,0:关闭) {process_face_comparion_mode} */ | ||||
|     process_face_comparion_mode: string; | ||||
|     /** 第二路通道 */ | ||||
|     second_channel: string; | ||||
|     /** 第二路ip */ | ||||
|     second_ip: string; | ||||
|     /** 第二路密码 */ | ||||
|     second_password: string; | ||||
|     /** 第二路端口 */ | ||||
|     second_port: string; | ||||
|     /** 第二路用户名 */ | ||||
|     second_username: string; | ||||
|     /** 第三路通道 */ | ||||
|     third_channel: string; | ||||
|     /** 第三路ip */ | ||||
|     third_ip: string; | ||||
|     /** 第三路密码 */ | ||||
|     third_password: string; | ||||
|     /** 第三路端口 */ | ||||
|     third_port: string; | ||||
|     /** 第三路用户名 */ | ||||
|     third_username: string; | ||||
|     /** 视频路数 */ | ||||
|     video_channel: string; | ||||
|     /** 录像方式(0:本地录像,1:本地不录象) */ | ||||
|     video_mode: string; | ||||
|     /** 视频遮挡 */ | ||||
|     video_occlusion: string; | ||||
|     /** 视频遮挡范围(1:一路,2:二路,3:三路,4:四路) */ | ||||
|     video_occlusion_range: string; | ||||
|     /** 视频叠加位置X */ | ||||
|     video_overlay_position_x: string; | ||||
|     /** 视频叠加位置Y */ | ||||
|     video_overlay_position_y: string; | ||||
|     /** 视频叠加内容1(1:考生姓名,2:身份证号,3:当前项目,4:当前时间) */ | ||||
|     video_overlay_text_content1: string; | ||||
|     /** 视频叠加内容2(1:考生姓名,2:身份证号,3:当前项目,4:当前时间,0:空) */ | ||||
|     video_overlay_text_content2: string; | ||||
|     /** 视频叠加内容3(1:考生姓名,2:身份证号,3:当前项目,4:当前时间,0:空) */ | ||||
|     video_overlay_text_content3: string; | ||||
|     /** 视频叠加文字(1:启用,0:关闭) */ | ||||
|     video_overlay_text_enable: string; | ||||
|     /** 视频叠加分割符(1:/,2:*\,3:换行) */ | ||||
|     video_overlay_text_split: string; | ||||
|     /** 录像范围(1:一路,2:二路,3:三路,4:四路) */ | ||||
|     video_range: string; | ||||
|     /** 本考车对应视频合成服务器IP(填错将不能开始考试) */ | ||||
|     video_synthesis_server_ip: string; | ||||
|     /** 本考车对应视频合成服务器端口(填错将不能开始考试) */ | ||||
|     video_synthesis_server_port: string; | ||||
|     /** 本考车对应视频合成信息处理系统IP(填错或不填将可能导致录像丢失) */ | ||||
|     video_synthesis_system_ip: string; | ||||
|     /** 本考车对应视频合成信息处理系统本地响应端口(填错或不填将可能导致录像丢失) */ | ||||
|     video_synthesis_system_port: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_7 = { | ||||
|     /** 车牌号 */ | ||||
|     licensePlate: string; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_8 = { | ||||
|     /** 车辆品牌列表 */ | ||||
|     carBrandList?: CarBrand_[]; | ||||
|     /** 考车列表 */ | ||||
|     carInfoList?: CarInfo_[]; | ||||
|     /** 考点列表 */ | ||||
|     examPointInfoList?: ExamPointInfo_[]; | ||||
|   }; | ||||
| 
 | ||||
|   type Pinyin_9 = { | ||||
|     /** 摄像头通道号 */ | ||||
|     channel?: string; | ||||
|     /** 硬盘录像机ip */ | ||||
|     deviceIP?: string; | ||||
|     /** 监管场地编号 */ | ||||
|     equipmentId?: string; | ||||
|     /** 非全景绑定的全景 */ | ||||
|     fullId?: string; | ||||
|     /** 全景区域坐标 */ | ||||
|     gpsArea?: string; | ||||
|     /** 摄像头id */ | ||||
|     id?: string; | ||||
|     /** 是否全景摄像头 */ | ||||
|     isFull?: string; | ||||
|     /** 硬盘录像机密码 */ | ||||
|     password?: string; | ||||
|     /** 硬盘录像机端口 */ | ||||
|     port?: string; | ||||
|     /** 硬盘录像机用户名 */ | ||||
|     user?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf_ = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_4; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf10 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_31; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf11 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_35; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf12 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_40; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf2 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_6; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf3 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_8; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf4 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_10; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf5 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_12; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf6 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_14; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf7 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_16; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf8 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_19; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROf9 = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: Pinyin_22; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROfGpsIPUdpIP_ = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     data?: GpsIPUdpIP_; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROfListOfobject = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     /** 承载数据 */ | ||||
|     data?: Record<string, any>[]; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type ROfobject = { | ||||
|     /** 状态码 1成功 0通用失败 */ | ||||
|     code: number; | ||||
|     /** 承载数据 */ | ||||
|     data?: Record<string, any>; | ||||
|     /** 返回消息 */ | ||||
|     msg: string; | ||||
|   }; | ||||
| 
 | ||||
|   type VehicleSpeend = { | ||||
|     carType?: string; | ||||
|     speend?: string; | ||||
|   }; | ||||
| 
 | ||||
|   type WxsBaseFileBean = { | ||||
|     /** 文件内容base64编码 */ | ||||
|     data: string; | ||||
|     /** 文件类别或id */ | ||||
|     fileid: string; | ||||
|   }; | ||||
| } | ||||
| @ -7,9 +7,8 @@ import DeductedPopup from './compontents/judge/DeductionPopup'; | ||||
| import AmplifyPopup from './compontents/judge/AmplifyPopup'; | ||||
| import Judge from './judgeSDK/judge'; | ||||
| import { defaultJudgeConfigObj } from './judgeSDK/utils//judgeCommon'; | ||||
| import {uploadExamMileage} from '../api/judge' | ||||
| import { uploadExamMileage } from '../api/judge' | ||||
| import DwztErrorPopup from './compontents/judge/DwztErrorPopup' | ||||
| import {debounce} from '../common/utils/tools' | ||||
| import MsgPopup from './compontents/judge/MsgPopup' | ||||
| 
 | ||||
| import { | ||||
| @ -26,18 +25,20 @@ import { | ||||
| } from './judgeSDK/api/judgeSDK.d'; | ||||
| 
 | ||||
| import { chunkArr, formatTime, getCurrentHourTime, getCurrentTime } from '../common/utils/tools'; | ||||
| import { examJudgeEndExam } from './judgeSDK/api/index'; | ||||
| import { getSyncData } from '../common/service/initable'; | ||||
| import { judgeConfig } from './judgeSDK/utils/judgeConfig'; | ||||
| import FileUtil from '../common/utils/File'; | ||||
| import SignDisplayCom from './compontents/signDisplayCom'; | ||||
| import promptAction from '@ohos.promptAction'; | ||||
| import { voiceService } from '../common/service/voiceService'; | ||||
| import systemDateTime from '@ohos.systemDateTime'; | ||||
| 
 | ||||
| 
 | ||||
| @Entry | ||||
| @Component | ||||
| struct Index { | ||||
|   async aboutToDisappear(){ | ||||
|   // 考试模式 1:白考,2:夜考,3:增驾(模拟灯光未考),4:增驾(模拟灯光已考),5:满分学习 | ||||
|   private mode: number = 1 | ||||
| 
 | ||||
|   async aboutToDisappear() { | ||||
|     clearInterval(this.mileageTimer) | ||||
|   } | ||||
| 
 | ||||
| @ -112,7 +113,7 @@ struct Index { | ||||
|       BK1: carInfo.bk1, | ||||
|       BK2: carInfo.bk2, | ||||
|     }) | ||||
|     console.info('surenjun =>carinfoArrr',JSON.stringify( this.carinfoArr)) | ||||
|     console.info('surenjun =>carinfoArrr', JSON.stringify(this.carinfoArr)) | ||||
|   } | ||||
| 
 | ||||
|   // 获取考生信息 | ||||
| @ -122,7 +123,7 @@ struct Index { | ||||
|     const {xm,sfzmhm,lsh,kszp,ksdd,kssycs,kslx,ksxl,xldm} = stuInfo; | ||||
|     this.name = xm || '测试考生'; | ||||
|     this.idCard = sfzmhm || '01234567891010'; | ||||
|     this.lsh = globalThis.singlePlay?'0000000000000':lsh; | ||||
|     this.lsh = globalThis.singlePlay ? '0000000000000' : lsh; | ||||
|     this.kszp = kszp; | ||||
|     this.ksdd = ksdd; | ||||
|     this.kssycs = kssycs; | ||||
| @ -189,13 +190,13 @@ struct Index { | ||||
|       } | ||||
| 
 | ||||
|       //623 考试中是否可以查看轨迹画面(0-否+1-是) | ||||
|       if(sys.v_no == '623'){ | ||||
|         this.syssetParam623 = value == '1'?true:false | ||||
|       if (sys.v_no == '623') { | ||||
|         this.syssetParam623 = value == '1' ? true : false | ||||
|       } | ||||
| 
 | ||||
|       //科目三应行驶距离参数 | ||||
|       if (sys.v_no == '303') { | ||||
|         this.examMileage = this.examMileage == '0'?(sys.v_value + ''): this.examMileage; | ||||
|         this.examMileage = this.examMileage == '0' ? (sys.v_value + '') : this.examMileage; | ||||
|       } | ||||
| 
 | ||||
|       // //地点版本参数 | ||||
| @ -213,7 +214,7 @@ struct Index { | ||||
|           const currentProject = this.projectsObj[xmdm] | ||||
| 
 | ||||
|           // 过滤考前绕车一周上车准备的扣分 | ||||
|           if(sczb == 1 && xmdm == '1'){ | ||||
|           if (sczb == 1 && xmdm == '1') { | ||||
|             return | ||||
|           } | ||||
| 
 | ||||
| @ -243,11 +244,12 @@ struct Index { | ||||
| 
 | ||||
|   //初始化systemParam表 | ||||
|   async initSystemParam(sysParam?: SYSTEMPARMARR[]) { | ||||
|     const systemParms: any = sysParam || await getSyncData('MA_SYSTEMPARM') | ||||
|     console.info('surenjun => systemParms',JSON.stringify(systemParms)); | ||||
|     const systemParms: SYSTEMPARMARR[] = sysParam || (await getSyncData('MA_SYSTEMPARM')) as SYSTEMPARMARR[] | ||||
|     console.info('surenjun => systemParms', JSON.stringify(systemParms)); | ||||
| 
 | ||||
|     let currentParams: any = router.getParams(); | ||||
|     const {carName,carType,examSubject} = this; | ||||
|     const {carName,carType,examSubject, mode} = this; | ||||
|     this.mode = mode | ||||
|     //小车车型列表 | ||||
|     const sCarTypes = ['C1', 'C2', 'C5'] | ||||
|     if (globalThis.singlePlay) { | ||||
| @ -255,77 +257,77 @@ struct Index { | ||||
|     } | ||||
|     //真实监管下发的项目 | ||||
|     let kStringArr: string[] = (currentParams.kString?.split(',') || []).filter(item => item); | ||||
|     console.info('surenjun kStringArr',JSON.stringify(kStringArr)) | ||||
|     console.info('surenjun kStringArr', JSON.stringify(kStringArr)) | ||||
| 
 | ||||
|     let isInExam = kStringArr.length > 0; | ||||
|     const {isTrajectoryOpen} = judgeConfig | ||||
|     let carNo = '', allItems = []; | ||||
|     systemParms.forEach((systemParm) => { | ||||
|       if (isTrajectoryOpen) { | ||||
|         systemParm.no1 = systemParm.NO1 + ''; | ||||
|         systemParm.no2 = systemParm.NO2 + ''; | ||||
|         systemParm.no3 = systemParm.NO3 + ''; | ||||
|         systemParm.no1 = systemParm.NO1; | ||||
|         systemParm.no2 = systemParm.NO2; | ||||
|         systemParm.no3 = systemParm.NO3; | ||||
|         systemParm.txt1 = systemParm.TXT1; | ||||
|         systemParm.txt2 = systemParm.TXT2; | ||||
|         systemParm.txt3 = systemParm.TXT3; | ||||
|       } | ||||
|       const {no1,no2,no3,} = systemParm; | ||||
|       const txt1 =  decodeURI(systemParm.txt1) | ||||
|       const txt2 =  decodeURI(systemParm.txt2) | ||||
|       const txt1 = decodeURI(systemParm.txt1) | ||||
|       const txt2 = decodeURI(systemParm.txt2) | ||||
|       //获取当前考车的no2 | ||||
|       if (no1 == 3 && no3 == 1) { | ||||
|         if (txt1 === carName) { | ||||
|           carNo = no2 | ||||
|           carNo = no2 + '' | ||||
|           this.carlist = carNo | ||||
|         } | ||||
|       } | ||||
| 
 | ||||
|       //获取及格分数线 | ||||
|       if(no1 == 3 && no3 == 3 && carNo === no2){ | ||||
|       if (no1 == 3 && no3 == 3 && Number(carNo) === no2) { | ||||
|         this.passingScore = Number(txt1) || 0; | ||||
|       } | ||||
|       //根据车型获取应行驶里程数 | ||||
|       if(no1 == 3 && no3 ==15 && carNo === no2){ | ||||
|       if (no1 == 3 && no3 == 15 && Number(carNo) === no2) { | ||||
|         this.examMileage = ((decodeURI(systemParm.txt1)) || '').split('^')[0]; | ||||
|       } | ||||
|       //获取当前考车的考试项目 | ||||
|       if (carNo !== '' && no1 == 3 && no2 == carNo && no3 == 10) { | ||||
|         allItems = decodeURIComponent(systemParm.txt1).split(',').filter(txt => txt !== '') | ||||
|         console.info('surenjun', JSON.stringify(allItems)) | ||||
|       if (this.mode === 2) { | ||||
|         if (carNo !== '' && no1 == 3 && no2 == Number(carNo) && no3 == 46) { | ||||
|           allItems = decodeURIComponent(systemParm.txt1).split(',').filter(txt => txt !== '') | ||||
|           console.info('surenjun', JSON.stringify(allItems)) | ||||
|         } | ||||
|       } else { | ||||
|         if (carNo !== '' && no1 == 3 && no2 == Number(carNo) && no3 == 10) { | ||||
|           allItems = decodeURIComponent(systemParm.txt1).split(',').filter(txt => txt !== '') | ||||
|           console.info('surenjun', JSON.stringify(allItems)) | ||||
|         } | ||||
|       } | ||||
|       if ( | ||||
|       //科目二获取项目 | ||||
|         (examSubject == 2 && allItems.length && no1 == 6 && allItems.includes(no2)) | ||||
|           || | ||||
|           //科目三获取项目 | ||||
|           (examSubject == 3 && no1 == 6) | ||||
|       ) { | ||||
| 
 | ||||
|       if (examSubject == 3 && no1 == 6) { | ||||
| 
 | ||||
|         const name = decodeURI(systemParm.txt1) | ||||
|         //小车过滤掉 夜间模拟行驶 | ||||
|         if (sCarTypes.includes(carType) && name === '夜间行驶') { | ||||
|           return | ||||
|         } | ||||
| 
 | ||||
|         const currentProject = { | ||||
|         const currentProject: Project = { | ||||
|           name, | ||||
|           abbreviation: decodeURI(systemParm.txt3), | ||||
|           projectCode: no2, | ||||
|           projectCode: no2 + '', | ||||
|           projectCodeCenter: txt2, | ||||
|           //是否是必考  加减档设置成非必考 | ||||
|           isRequired: no2== 14 ? false : allItems.includes(no2 + ''), | ||||
|           // 白考夜间行驶非必考 | ||||
|           isRequired: (no2 == 14 || (this.mode === 1 && no2 == 17)) ? false : allItems.includes(no2 + ''), | ||||
|           //是否考过了 | ||||
|           isEnd: false, | ||||
|           //项目开始数据是否上传过 | ||||
|           isUpload:false, | ||||
|           isUpload: false, | ||||
|         } | ||||
|         this.projectsObj[no2*1] = currentProject | ||||
|         this.projectsCenterObj[txt2] = currentProject | ||||
|         this.projects.push(currentProject); | ||||
| 
 | ||||
|         //真实监管下发考试项目 | ||||
|         if(isInExam && !(kStringArr.includes(txt2) || kStringArr.includes(no2+''))){ | ||||
|           console.info('surenjun =>',txt2) | ||||
|           console.info('surenjun => no2',no2) | ||||
|         if (isInExam && !(kStringArr.includes(txt2) || kStringArr.includes(no2 + ''))) { | ||||
|           console.info('surenjun =>', txt2) | ||||
|           console.info('surenjun => no2', no2) | ||||
|           this.projectsObj[no2*1].type = '3' | ||||
|           this.projectsObj[no2*1].isUpload = true | ||||
|           this.projectsObj[no2*1].isEnd = true | ||||
| @ -347,7 +349,7 @@ struct Index { | ||||
|       }) | ||||
|     }) | ||||
|     const projects = this.projects; | ||||
|     console.info('surenjun',JSON.stringify(this.ddxkKsxmArr)) | ||||
|     console.info('surenjun', JSON.stringify(this.ddxkKsxmArr)) | ||||
| 
 | ||||
|     if (!projects.length) { | ||||
|       Prompt.showToast({ | ||||
| @ -369,7 +371,7 @@ struct Index { | ||||
|       const newKey = key.split('~').join('_') | ||||
|       //@ts-ignore | ||||
|       const xmdm = key.split('~')[0] * 1 | ||||
|       if(projectsObj[xmdm]){ | ||||
|       if (projectsObj[xmdm]) { | ||||
|         this.cdsbInfoObj[newKey] = { | ||||
|           kdid: cdsb.kdid, | ||||
|           sbbh: cdsb.sbbh, | ||||
| @ -384,18 +386,18 @@ struct Index { | ||||
|   } | ||||
| 
 | ||||
|   // 获取itemInfo表信息 | ||||
|   async initItemInfo(){ | ||||
|   async initItemInfo() { | ||||
|     const infoParams = await getSyncData('MA_ITEMINFO'); | ||||
|     const carlist = this.carlist; | ||||
|     const projectsObj = this.projectsObj | ||||
|     //@ts-ignore | ||||
|     infoParams.forEach((info)=>{ | ||||
|     infoParams.forEach((info) => { | ||||
|       const key = decodeURI(info.itemsno); | ||||
|       const carlistArr = info.carlist === '' ? [] : (decodeURI(info.carlist).split(',') || []); | ||||
|       const newKey = key.split('~').join('_') | ||||
|       //@ts-ignore | ||||
|       const xmdm = key.split('~')[0] * 1 | ||||
|       if(projectsObj[xmdm] && (carlistArr.length == 0 || carlistArr.includes(carlist))){ | ||||
|       if (projectsObj[xmdm] && (carlistArr.length == 0 || carlistArr.includes(carlist))) { | ||||
|         this.itemInfoObj[newKey] = { | ||||
|           modelKey: newKey, | ||||
|           xmdm, | ||||
| @ -440,7 +442,7 @@ struct Index { | ||||
|             //断点续考 | ||||
|             ddxkKsxmArr.forEach(xmdm => { | ||||
|               const projectCode = this.projectsCenterObj[xmdm].projectCode | ||||
|               if(this.projectsObj[projectCode]){ | ||||
|               if (this.projectsObj[projectCode]) { | ||||
|                 this.projectsObj[projectCode].type = '3' | ||||
|                 this.projectsObj[projectCode].isUpload = true | ||||
|                 this.projectsObj[projectCode].isEnd = true | ||||
| @ -550,13 +552,16 @@ struct Index { | ||||
|   } | ||||
| 
 | ||||
|   // 上传考试里程 | ||||
|   async uploadMileage(){ | ||||
|     if(!globalThis.singlePlay){ | ||||
|   async uploadMileage() { | ||||
|     if (!globalThis.singlePlay) { | ||||
|       const {lsh,startExamTime:kskssj,jl:kslc} = this | ||||
|       const { carId ,examinationRoomId} = globalThis.carInfo; | ||||
|       await uploadExamMileage({ | ||||
|         carId,examinationRoomId, | ||||
|         lsh,kskssj,kslc | ||||
|         carId, | ||||
|         examinationRoomId, | ||||
|         lsh, | ||||
|         kskssj, | ||||
|         kslc | ||||
|       }) | ||||
|     } | ||||
|   } | ||||
| @ -923,15 +928,15 @@ struct Index { | ||||
|             this.isDeductedPopShow = false; | ||||
|             this.defaultTabIndex = 0; | ||||
|           }, | ||||
|           confirmMark: async (itemno, serial)=>{ | ||||
|           confirmMark: async (itemno, serial) => { | ||||
|             clearTimeout(this.popTimer) | ||||
|             this.popTimer = null | ||||
|             this.popTimer =  setTimeout(async ()=>{ | ||||
|             this.popTimer = setTimeout(async () => { | ||||
|               const judge = this.judge | ||||
|               await judge.setJudgeMark(itemno, serial); | ||||
|               this.isDeductedPopShow = false | ||||
|               this.popTimer = null; | ||||
|             },500) | ||||
|             }, 500) | ||||
|           } | ||||
|         }) | ||||
|       } | ||||
| @ -942,7 +947,7 @@ struct Index { | ||||
|             showBack: false, | ||||
|             scaleNum: 1.8, | ||||
|             msgStr: this.judge.plcStr || '', | ||||
|             showTrajectory:globalThis.singlePlay ? true : (this.syssetParam623), | ||||
|             showTrajectory: globalThis.singlePlay ? true : (this.syssetParam623), | ||||
|           }).margin({ top: 100 }) | ||||
| 
 | ||||
|           Row() { | ||||
| @ -966,15 +971,15 @@ struct Index { | ||||
|       if (this.isAmplifyPopShow && this.examSubject == 3) { | ||||
|         AmplifyPopup({ | ||||
|           amplifyImgIndex: this.amplifiedImgIndex, | ||||
|           confirmAmplify:async (amplify)=>{ | ||||
|           confirmAmplify: async (amplify) => { | ||||
|             clearTimeout(this.popTimer) | ||||
|             this.popTimer = null | ||||
|             this.popTimer =  setTimeout(async ()=>{ | ||||
|             this.popTimer = setTimeout(async () => { | ||||
|               const judge = this.judge | ||||
|               await judge.setJudgeItem(amplify.projectCode, 1); | ||||
|               this.isAmplifyPopShow = false | ||||
|               this.popTimer = null; | ||||
|             },500) | ||||
|             }, 500) | ||||
|           }, | ||||
|           closeAmplifyPop: () => { | ||||
|             this.isAmplifyPopShow = false | ||||
| @ -990,7 +995,7 @@ struct Index { | ||||
|             this.endPopupVisible = false; | ||||
|           }, | ||||
|           confirmFn: async () => { | ||||
|             if(this.isErrorMsgEnd){ | ||||
|             if (this.isErrorMsgEnd) { | ||||
|               this.judge.closeAllFiles() | ||||
|               router.back() | ||||
|               return | ||||
| @ -1024,28 +1029,28 @@ struct Index { | ||||
|         }) | ||||
|       } | ||||
| 
 | ||||
|       if (this.errorMsg){ | ||||
|       if (this.errorMsg) { | ||||
|         MsgPopup({ | ||||
|           title: this.errorMsg, | ||||
|           confirmFn:()=>{ | ||||
|           confirmFn: () => { | ||||
|             this.errorMsg = '' | ||||
|             this.isErrorMsgEnd = true; | ||||
|             if(this.disConnectErrorOpen){ | ||||
|             if (this.disConnectErrorOpen) { | ||||
|               globalThis.context.terminateSelf() | ||||
|             }else{ | ||||
|             } else { | ||||
|               router.back() | ||||
|             } | ||||
|           }, | ||||
|         }) | ||||
|       } | ||||
| 
 | ||||
|       if(this.dwztErrorVisible){ | ||||
|       if (this.dwztErrorVisible) { | ||||
|         DwztErrorPopup({ | ||||
|           title:'当前差分状态异常,学员将无法正常进行考试评判,请将车辆行驶到开阔地,等待程序自检,差分正常后会自动关闭该对话框', | ||||
|           cancelFn:()=>{ | ||||
|           title: '当前差分状态异常,学员将无法正常进行考试评判,请将车辆行驶到开阔地,等待程序自检,差分正常后会自动关闭该对话框', | ||||
|           cancelFn: () => { | ||||
|             this.dwztErrorVisible = false; | ||||
|           }, | ||||
|           confirmFn:()=>{ | ||||
|           confirmFn: () => { | ||||
|             clearInterval(this.timer); | ||||
|             clearInterval(globalThis.judgeTimer) | ||||
|             this.judge.checkExamIsEnd(true); | ||||
| @ -1053,7 +1058,7 @@ struct Index { | ||||
|         }) | ||||
|       } | ||||
| 
 | ||||
|       if(this.disConnectErrorOpen){ | ||||
|       if (this.disConnectErrorOpen) { | ||||
| 
 | ||||
|       } | ||||
|     } | ||||
| @ -1090,14 +1095,14 @@ struct Index { | ||||
|       projectsObj | ||||
|     } = this; | ||||
|     const projectCode = artSubject3ProjectsCodesArr[index]; | ||||
|     if(index === 5) { | ||||
|       console.info('surenjun 靠边停车状态=> ',getIsExitManualProject(index)) | ||||
|     if (index === 5) { | ||||
|       console.info('surenjun 靠边停车状态=> ', getIsExitManualProject(index)) | ||||
|     } | ||||
|     if (getIsExitManualProject(index)) { | ||||
|       // 正在进行的项目 取消项目 | ||||
|       if (isManualProjectIn && projectsObj[projectCode].type == '2') { | ||||
|         //判断人工是否能取消项目 && 当前项目有扣分的不能取消 | ||||
|         if(judgeConfigObj['340'] == 1 && projectsObj[projectCode].type != '5'){ | ||||
|         if (judgeConfigObj['340'] == 1 && projectsObj[projectCode].type != '5') { | ||||
|           await this.judge.setJudgeItem(projectCode, 2); | ||||
|           Prompt.showToast({ | ||||
|             message: '项目取消', | ||||
| @ -1113,11 +1118,11 @@ struct Index { | ||||
|         if (xmmcStr == '无' || xmmcStr == '') { | ||||
|           //512[6] 人工项目按钮放大确认 | ||||
|           const param512 = (judgeConfigObj['512'] || '').split(','); | ||||
|           console.info('surenjun',param512) | ||||
|           if(param512[6] !== '0'){ | ||||
|           console.info('surenjun', param512) | ||||
|           if (param512[6] !== '0') { | ||||
|             this.amplifiedImgIndex = index; | ||||
|             this.isAmplifyPopShow = true | ||||
|           }else{ | ||||
|           } else { | ||||
|             const judge = this.judge | ||||
|             await judge.setJudgeItem(projectCode, 1); | ||||
|           } | ||||
| @ -1148,7 +1153,7 @@ struct Index { | ||||
|       getProjectIsInRoad | ||||
|     } = this; | ||||
|     const projectCode = artSubject3ProjectsCodesArr[index]; | ||||
|     if(projectsObj[projectCode] === undefined){ | ||||
|     if (projectsObj[projectCode] === undefined) { | ||||
|       return false | ||||
|     } | ||||
|     const projectType = projectsObj[projectCode].type; | ||||
| @ -1216,7 +1221,6 @@ struct Index { | ||||
|     } | ||||
|     return true | ||||
|   } | ||||
| 
 | ||||
|   // 判断项目是否在当前路段号 | ||||
|   getProjectIsInRoad = (projectCode: string,) => { | ||||
|     const { | ||||
| @ -1244,7 +1248,7 @@ struct Index { | ||||
|       return false | ||||
|     } | ||||
| 
 | ||||
|     if(projectRoads[projectCode].length == 0){ | ||||
|     if (projectRoads[projectCode].length == 0) { | ||||
|       return true | ||||
|     } | ||||
| 
 | ||||
| @ -1276,7 +1280,6 @@ struct Index { | ||||
|     return true | ||||
| 
 | ||||
|   } | ||||
| 
 | ||||
|   // 获取人工项目是否已做 | ||||
|   getIsEndManualProject = (index: number) => { | ||||
|     const projectName = this.artSubject3Projects[index]; | ||||
| @ -1287,23 +1290,21 @@ struct Index { | ||||
|     } | ||||
|     return (type == '3' || type == '4') ? `${projectName}_red` : `${projectName}_green`; | ||||
|   } | ||||
| 
 | ||||
|   // 获取是否能进行人工评判 | ||||
|   getIsManualKf = () =>{ | ||||
|   getIsManualKf = () => { | ||||
|     const {examSubject} = this; | ||||
|     if(examSubject == 3){ | ||||
|     if (examSubject == 3) { | ||||
|       //杭州训练模式不允许人工评判 | ||||
|       if(globalThis.singlePlay &&  this.judgeConfigObj['211'] == 'zjhz'){ | ||||
|       if (globalThis.singlePlay && this.judgeConfigObj['211'] == 'zjhz') { | ||||
|         return false | ||||
|       } | ||||
|       if(this.judgeConfigObj['342'] == '0'){ | ||||
|       if (this.judgeConfigObj['342'] == '0') { | ||||
|         return true | ||||
|       } | ||||
|     }else{ | ||||
|     } else { | ||||
|       return false | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   scroller: Scroller = new Scroller() | ||||
|   //页面通用字体大小 | ||||
|   @State wayno: number = 0 | ||||
| @ -1407,8 +1408,8 @@ struct Index { | ||||
|   @State mileageTimer: number = 0; | ||||
|   @State passingScore: number = 80 | ||||
|   @State dwztErrorVisible: boolean = false; | ||||
|   @State popTimer:number =0; | ||||
|   @State carlist:string= '' | ||||
|   @State popTimer: number = 0; | ||||
|   @State carlist: string = '' | ||||
|   @State errorMsg: string = '' | ||||
|   @State isErrorMsgEnd: boolean = false | ||||
|   @State disConnectErrorOpen: boolean = false | ||||
|  | ||||
| @ -24,6 +24,8 @@ import errorMsgDialog from './compontents/errorMsgDialog'; | ||||
| import imageBtn from './compontents/imageBtn'; | ||||
| import FileUtil from '../common/utils/File'; | ||||
| import DB, { ColumnType } from '../common/database/DbSql'; | ||||
| import { SYSSET, SYSTEMPARMARR } from './judgeSDK/api/judgeSDK'; | ||||
| import systemDateTime from '@ohos.systemDateTime'; | ||||
| 
 | ||||
| @Entry | ||||
| @Component | ||||
| @ -179,6 +181,8 @@ struct UserInfo { | ||||
|     { label: '考试员名', key: 'ksy2' }, | ||||
|   ] | ||||
|   private fileUtil: FileUtil | ||||
|   // 考试模式 1:白考,2:夜考,3:增驾(模拟灯光未考),4:增驾(模拟灯光已考),5:满分学习 | ||||
|   private mode: number = 1 | ||||
| 
 | ||||
|   aboutToAppear() { | ||||
|     this.fileUtil = new FileUtil(this.context) | ||||
| @ -430,10 +434,50 @@ struct UserInfo { | ||||
|       globalThis.ksyh = this.currentUser.ksy1sfzmhm | ||||
|       globalThis.lsh = this.lsh | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|     // const syssetParams = await getSyncData('MA_SYSSET'); | ||||
|   async getExamMode(kStringArr: string[]) { | ||||
|     let nightTime = '' | ||||
|     const syssetParams = await getSyncData('MA_SYSSET'); | ||||
|     const systemParams: SYSTEMPARMARR[] = (await getSyncData('MA_SYSTEMPARM')) as SYSTEMPARMARR[] | ||||
|     //@ts-ignore | ||||
| 
 | ||||
|     syssetParams.forEach((sys) => { | ||||
|       if (sys.v_no === 19) { | ||||
|         nightTime = sys.v_value | ||||
|       } | ||||
|     }) | ||||
|     systemParams.forEach(item => { | ||||
|       if (item.NO3 === 20) { | ||||
|         nightTime = item.TXT1 | ||||
|       } | ||||
|     }) | ||||
|     let now = new Date(await systemDateTime.getCurrentTime()) | ||||
|     let hour = now.getHours() | ||||
|     if (kStringArr.length === 0) { | ||||
|       if (hour < 5 || hour >= Number(nightTime.split(":")[0]) || 24) { | ||||
|         // 夜考 | ||||
|         this.mode = 2 | ||||
|       } else { | ||||
|         // 白考 | ||||
|         this.mode = 1 | ||||
|       } | ||||
|     } else { | ||||
|       if (kStringArr.includes("41700")) { | ||||
|         // 增驾(模拟灯光未考) | ||||
|         this.mode = 3 | ||||
|       } else if (!kStringArr.includes("41700") && !kStringArr.includes("41600")) { | ||||
|         // 增驾(模拟灯光已考) | ||||
|         this.mode = 4 | ||||
|       } else if (kStringArr.includes("41600")) { | ||||
|         if (hour < 5 || hour >= Number(nightTime.split(":")[0]) || 24) { | ||||
|           // 夜考 | ||||
|           this.mode = 2 | ||||
|         } else { | ||||
|           // 白考 | ||||
|           this.mode = 1 | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   async heartMsg() { | ||||
| @ -854,7 +898,7 @@ struct UserInfo { | ||||
|     this.stepFlag = true | ||||
|     const carInfo = globalThis.carInfo; | ||||
|     const {carId,examinationRoomId} = carInfo; | ||||
|     let examItems = { getExaminationItemRsp: { body: { ykxx: '' } } }; | ||||
|     let examItems = { getExaminationItemRsp: { body: { ykxx: '', jdxx: '' } } }; | ||||
|     if (!globalThis.singlePlay) { | ||||
|       //获取已考项目 | ||||
|       // @ts-ignore | ||||
| @ -890,12 +934,24 @@ struct UserInfo { | ||||
|       await upDateTableByArray('USER', [this.currentUser]) | ||||
|       this.stepFlag = false | ||||
|       this.isLoadingPopupVisible = false | ||||
|       let kStringArr = decodeURIComponent(keystr || '').split(",") | ||||
|       await this.getExamMode(kStringArr) | ||||
|       if(this.mode === 2 && !examItems?.getExaminationItemRsp?.body?.jdxx) { | ||||
|         promptAction.showToast({ | ||||
|           message: "当前尚未进行白考,无法开始夜考!" | ||||
|         }) | ||||
|         this.updateTimeLimit = false | ||||
|         this.stopDeviceById() | ||||
|         this.stepFlag = false | ||||
|         return | ||||
|       } | ||||
|       router.pushUrl({ | ||||
|         url: 'pages/Judge', | ||||
|         params: { | ||||
|           examItems: examItems?.getExaminationItemRsp?.body?.ykxx, | ||||
|           sczb: Number(this.isBoardPrePareSetPopupOpen), | ||||
|           kfdm: this.sczbkf, | ||||
|           mode: this.mode, | ||||
|           //真实监管项目 | ||||
|           kString: decodeURIComponent(keystr || '') | ||||
|         } | ||||
|  | ||||
| @ -10,8 +10,9 @@ export interface Project { | ||||
|   //项目状态:未做 正在做 及格 不及格 有扣分
 | ||||
|   type?: '1' | '2' | '3' | '4' | '5' | ||||
|   //
 | ||||
|   isEnd:boolean, | ||||
|   isUpload:boolean | ||||
|   isEnd: boolean, | ||||
|   isUpload: boolean | ||||
|   isRequired?: boolean | ||||
| } | ||||
| 
 | ||||
| export interface MarkRule { | ||||
| @ -25,22 +26,24 @@ export interface MarkRule { | ||||
|   onlyoneid?: number | ||||
|   nocancelid?: number | ||||
|   gps_sid?: number, | ||||
|   score?:number | ||||
|   score?: number | ||||
| } | ||||
| 
 | ||||
| export interface KF{ | ||||
| export interface KF { | ||||
|   //项目名称
 | ||||
|   xmmcStr: string, | ||||
|   xmdm: string | number, | ||||
| 
 | ||||
|   //扣分描述
 | ||||
|   desc: string, | ||||
| 
 | ||||
|   //扣分
 | ||||
|   score: string | ||||
|   //无锡所扣分代码
 | ||||
|   markcatalog: string | ||||
|   markserial: string | ||||
|   kfxh: string | ||||
|   type: 0| 1 | 2 | ||||
|   type: 0 | 1 | 2 | ||||
| } | ||||
| 
 | ||||
| export interface SYSTEMPARMARR { | ||||
| @ -50,6 +53,12 @@ export interface SYSTEMPARMARR { | ||||
|   'TXT1': string, | ||||
|   'TXT2': string, | ||||
|   'TXT3': string, | ||||
|   'no1'?: number, | ||||
|   'no2'?: number, | ||||
|   'no3'?: number, | ||||
|   'txt1'?: string, | ||||
|   'txt2'?: string, | ||||
|   'txt3'?: string, | ||||
| } | ||||
| 
 | ||||
| export interface SYSTEMPARMARROBJ { | ||||
| @ -116,6 +125,7 @@ export interface EXAMDATA { | ||||
|     xmxh: string, | ||||
|     xmhg: 1 | 0 | ||||
|   }, | ||||
| 
 | ||||
|   //扣分
 | ||||
|   kf: { | ||||
|     //项目代码
 | ||||
| @ -154,18 +164,18 @@ export interface EXAMDATA { | ||||
|     code: string, | ||||
|     type: number | ||||
|   }, | ||||
| 
 | ||||
|   //模拟灯光
 | ||||
|   mndg: string, | ||||
|   lane: LANE, | ||||
|   type: number | ||||
| 
 | ||||
|   //预进项目
 | ||||
|   precast:{ | ||||
|     xmdm:number, | ||||
|     xmxh:string | ||||
|   precast: { | ||||
|     xmdm: number, | ||||
|     xmxh: string | ||||
|   } | ||||
|   nongps:{ | ||||
|     type:0|1|2|3|4 | ||||
|   nongps: { | ||||
|     type: 0 | 1 | 2 | 3 | 4 | ||||
|   } | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -776,7 +776,7 @@ export default class Judge { | ||||
|       ksyy: '', | ||||
|       kscx: carType, | ||||
|       kkcs: Number(kssycs) || 2, | ||||
|       sfyk: 0, | ||||
|       sfyk: this.judgeUI.mode === 2 ? 1 : 0, | ||||
|       ykkkcs: 1, | ||||
|       wayno: judgeUI.wayno * 1, | ||||
|       czlx: 0, | ||||
| @ -804,8 +804,10 @@ export default class Judge { | ||||
|       //TODO 科目三参数临时写死
 | ||||
|       sczb: (sczb === undefined || sczb == 0) ? 0 : 1, | ||||
|       sczbkf: kfdm, | ||||
|       dmndg: false, | ||||
|       mfxx: false, | ||||
|       // 大车是否模拟灯光参数
 | ||||
|       dmndg: this.judgeUI.mode === 3, | ||||
|       mfxx: this.judgeUI.mode === 5, | ||||
|       // TODO 满分学习是否扣分参数
 | ||||
|       mfxxn: false | ||||
|     } | ||||
|     console.info(judgeTag, '5.获取开始考试数据完成') | ||||
| @ -1149,17 +1151,17 @@ export default class Judge { | ||||
|         commonKsxm = projectCode | ||||
|       } | ||||
|     }) | ||||
| 
 | ||||
|     let project_ksxm = project == undefined | ||||
|       ? (commonKsxm | ||||
|         ? (projectsObj[commonKsxm].projectCodeCenter) | ||||
|         : (examSubject == 3 ? 30000 : (xmmcEndCode == undefined ? 10000 : xmmcEndCode))) | ||||
|       : project.projectCodeCenter | ||||
|     const data = { | ||||
|       xtlb: '17', jkxlh: serialNumber, jkid: '17C53', | ||||
|       drvexam: { | ||||
|         lsh, | ||||
|         kskm: examSubject, | ||||
|         ksxm: project == undefined | ||||
|           ? (commonKsxm | ||||
|             ? (projectsObj[commonKsxm].projectCodeCenter) | ||||
|             : (examSubject == 3 ? 30000 : (xmmcEndCode == undefined ? 10000 : xmmcEndCode))) | ||||
|           : project.projectCodeCenter, | ||||
|         ksxm: this.judgeUI.mode === 2 ? 41600 : project_ksxm, | ||||
|         kfxm: kf.markcatalog, | ||||
|         kfxmmx: `${ksxm},${kf.markserial}`, | ||||
|         sfzmhm: idCard, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user