{"ast":null,"code":"import wx from \"weixin-js-sdk\";\nimport { obsConfig } from \"@/utils/secret.js\";\nimport { confirmCheckStatus, uploadFileToV5Api, getBaiduFace, getBaiduIdcard, getBaiduResultSimple, getBaiduFaceDetail } from \"@/api/common\";\nexport default {\n name: 'Face',\n data() {\n return {\n areaCode: '',\n credentialType: '',\n domainId: '',\n obsFilePath: '',\n faceCollectLabel: '未采集',\n videoWidth: 640,\n videoHeight: 480,\n typeLabel: '',\n idCardType: '',\n rightSideUrl: '',\n reverseSideUrl: '',\n drawer: false,\n cardTypeShow: false,\n userIdcardInfo: {\n name: '根据认证信息自动读取',\n idCardNum: '根据认证信息自动读取',\n address: '',\n validDateFrom: '',\n validDateTo: ''\n },\n phone: '',\n cardTypeArr: [{\n label: \"居民身份证(户口簿)\",\n value: \"IdCard\"\n }, {\n label: \"香港特区护照/身份证明\",\n value: \"IdCardOfXiangGang\"\n }, {\n label: \"澳门特区护照/身份证明\",\n value: \"IdCardOfAoMen\"\n }, {\n label: \"台湾居民来往大陆通行证\",\n value: \"IdCardOfTaiwan\"\n }, {\n label: \"外国人护照\",\n value: \"Passport\"\n }, {\n label: \"警号\",\n value: \"PoliceNo\"\n }],\n faceImage: '',\n timer: null\n };\n },\n computed: {},\n mounted() {\n const {\n domainId,\n areaCode\n } = this.$route.query;\n this.domainId = domainId;\n this.areaCode = areaCode;\n // this.timer = setInterval(()=>{\n // this.getFaceImage();\n // },500)\n },\n beforeDestroy() {\n //\n },\n methods: {\n getFaceImage() {\n // document.addEventListener('UniAppJSBridgeReady', function() {\n const {\n verify_token\n } = this.$route.query;\n if (verify_token) {\n clearInterval(this.timer);\n getBaiduResultSimple({\n verify_token: verify_token\n }).then(res => {\n if (res.success) {\n this.faceImage = res?.result?.image;\n uni.postMessage({\n data: {\n faceImage: res?.result?.image,\n msg: '身份核验成功'\n }\n });\n wx.miniProgram.postMessage({\n data: {\n faceImage: res?.result?.image,\n msg: '身份核验成功'\n }\n });\n }\n });\n // getBaiduFaceDetail({verify_token: verify_token}).then(res=>{\n // console.log(\"🚀 ~ getBaiduFaceDetail ~ res:\", res);\n // });\n }\n // })\n },\n faceCollection() {\n this.idCardType = 'face';\n this.takeFile();\n // wx.miniProgram.postMessage({ \n // data: { faceImage: 99999 } \n // });\n\n // getBaiduFace({plan_id: '22574'}).then(async res => {\n // if(res.success) {\n // const { verify_token } = res.result;\n // location.href = `https://brain.baidu.com/face/print/?token=${verify_token}&successUrl=${encodeURIComponent(`https://v5qy.te.baibaodun.com.cn/static/signon/access/#/face?verify_token=${verify_token}`)}&failedUrl=${encodeURIComponent(`https://v5qy.te.baibaodun.com.cn/static/signon/access/#/face?verify_token=${verify_token}`)}`;\n // }\n // });\n },\n takeIdCard(e) {\n this.handleClose();\n this.credentialType = e.value;\n this.typeLabel = e.label;\n },\n selectCardType() {\n this.cardTypeShow = true;\n },\n toCollect(type) {\n // this.drawer = true;\n this.idCardType = type;\n this.takeFile();\n },\n handleClose(e) {\n this.drawer = false;\n this.cardTypeShow = false;\n },\n takeCamera() {\n this.handleClose();\n const video = document.getElementById('videoCamera');\n const canvas = document.getElementById('canvasCamera');\n const context = canvas.getContext('2d');\n context.drawImage(video, 0, 0, this.videoWidth, this.videoHeight);\n this.imgSrc = canvas.toDataURL('image/png');\n },\n takeFile() {\n this.handleClose();\n this.$refs.leftFile.click();\n },\n getFile(e) {\n let file = e.target.files[0];\n if (this.idCardType === 'face') {\n // 人脸采集\n this.uploadObs(file);\n } else {\n // 身份证采集\n this.fileChange(file);\n // this.uploadFileToV5(file);\n }\n this.$refs.leftFile.value = '';\n },\n // 上传文件到obs\n uploadObs(file) {\n const domainId = this.domainId;\n const now = new Date();\n const y = now.getFullYear();\n const m = now.getMonth() + 1 < 10 ? '0' + (now.getMonth() + 1) : now.getMonth() + 1;\n const d = now.getDate() < 10 ? '0' + now.getDate() : now.getDate();\n const md = m + '-' + d;\n const objectKey = `uploads/${y}/${md}/${domainId}/${now.getTime()}/${file.name}`;\n let _this = this;\n const obs = new ObsClient({\n access_key_id: obsConfig.ak,\n secret_access_key: obsConfig.sk,\n server: obsConfig.urlserver,\n timeout: 60 * 5\n });\n obs.putObject({\n Bucket: obsConfig.BucketName,\n Key: objectKey,\n SourceFile: file //获取file文件\n }).then(function (result) {\n if (result.CommonMsg.Status < 300) {\n const httpurl = `https://${obsConfig.BucketName}.${obsConfig.urlserver}/${objectKey}`;\n _this.obsFilePath = httpurl;\n _this.faceCollectLabel = '已采集';\n }\n });\n },\n // 上传文件到v5\n uploadFileToV5(file) {\n const params = {\n filePath: file,\n name: \"file\"\n };\n // let params = new FormData();\n // formData.append('filePath', file);\n // formData.append('name', 'file');\n uploadFileToV5Api(params).then(res => {\n if (res.statusCode == 200) {\n let data = res.data && JSON.parse(res.data);\n if (data.status == 200) {\n // let fullFile = \"https://v5qy.te.baibaodun.com.cn\" + data.data;\n // resolve({\n // file: data.data, //相对文件地址\n // fullFile, //完整文件地址\n // });\n }\n }\n }).catch(err => {\n console.log(\"🚀 ~ uploadFileToV5Api ~ err:\", err);\n });\n },\n // 身份证OCR识别\n fileChange(e) {\n const _this = this;\n let img = e; //获取到上传文件的对象\n const reader = new FileReader();\n reader.readAsDataURL(img); //参数为上传的文件对象 传值进去就会触发以下onload方法\n reader.onload = function (e) {\n // e.target.result为转换成的base64编码\n let url = e.target.result.split(',')[1];\n if (_this.idCardType === 'front') {\n _this.rightSideUrl = e.target.result;\n } else {\n _this.reverseSideUrl = e.target.result;\n }\n getBaiduIdcard({\n image: url,\n id_card_side: _this.idCardType,\n detect_photo: true\n }).then(res => {\n if (res.image_status === 'normal') {\n const {\n words_result\n } = res;\n if (_this.idCardType === 'front') {\n _this.userIdcardInfo.name = words_result['姓名'].words;\n _this.userIdcardInfo.idCardNum = words_result['公民身份号码'].words;\n _this.userIdcardInfo.address = words_result[\"住址\"].words;\n } else {\n let endTime = words_result[\"失效日期\"].words;\n let endDate = \"\";\n if (isNaN(endTime)) {\n //如果时间为长期,传null\n endDate = null;\n } else {\n endDate = endTime.slice(0, 4) + \"-\" + endTime.slice(4, 6) + \"-\" + endTime.slice(-2);\n }\n let beginTime = words_result[\"签发日期\"].words;\n let beginDate = \"\";\n if (isNaN(beginTime)) {\n beginDate = null;\n } else {\n beginDate = beginTime.slice(0, 4) + \"-\" + beginTime.slice(4, 6) + \"-\" + beginTime.slice(-2);\n }\n if (endDate) {\n let _endDate = new Date(endDate).getTime();\n let today = new Date().getTime();\n if (today > _endDate) {\n _this.$message.error('该证件已过期,请证件补办后再提交核验!');\n }\n }\n _this.userIdcardInfo.validDateFrom = beginDate;\n _this.userIdcardInfo.validDateTo = endDate;\n }\n } else {\n _this.$message.error('识别失败!');\n }\n });\n };\n },\n async toFace() {\n uni.postMessage({\n data: {\n msg: '身份核验成功--uni'\n }\n });\n wx.miniProgram.postMessage({\n data: {\n msg: '身份核验成功--wx'\n }\n });\n console.log(\"🚀 ~ toFace ~ wx:\", wx);\n wx.miniProgram.navigateBack();\n if (!this.userIdcardInfo.address) {\n return this.$message.error('请先采集身份证人面');\n }\n if (!this.userIdcardInfo.validDateFrom) {\n return this.$message.error('请先采集身份证国徽面');\n }\n if (this.faceCollectLabel === '未采集') {\n return this.$message.error('请先采集人脸信息');\n }\n const params = {\n address: this.userIdcardInfo.address,\n areaCode: this.areaCode,\n certificateImage: this.obsFilePath,\n credentialType: this.credentialType,\n loginFrom: \"BBD\",\n name: this.userIdcardInfo.name,\n number: this.userIdcardInfo.idCardNum,\n phone: this.phone,\n frontPhoto: \"string\",\n headPhoto: \"string\",\n reversePhoto: \"string\",\n validDateFrom: this.userIdcardInfo.validDateFrom,\n validDateTo: this.userIdcardInfo.validDateTo\n // wgtVersion: \"1.0.0\"\n };\n confirmCheckStatus(params).then(res => {\n console.log(\"🚀 ~ confirmCheckStatus ~ res:\", res);\n this.$message.success('核验成功');\n });\n }\n }\n};","map":{"version":3,"names":["wx","obsConfig","confirmCheckStatus","uploadFileToV5Api","getBaiduFace","getBaiduIdcard","getBaiduResultSimple","getBaiduFaceDetail","name","data","areaCode","credentialType","domainId","obsFilePath","faceCollectLabel","videoWidth","videoHeight","typeLabel","idCardType","rightSideUrl","reverseSideUrl","drawer","cardTypeShow","userIdcardInfo","idCardNum","address","validDateFrom","validDateTo","phone","cardTypeArr","label","value","faceImage","timer","computed","mounted","$route","query","beforeDestroy","methods","getFaceImage","verify_token","clearInterval","then","res","success","result","image","uni","postMessage","msg","miniProgram","faceCollection","takeFile","takeIdCard","e","handleClose","selectCardType","toCollect","type","takeCamera","video","document","getElementById","canvas","context","getContext","drawImage","imgSrc","toDataURL","$refs","leftFile","click","getFile","file","target","files","uploadObs","fileChange","now","Date","y","getFullYear","m","getMonth","d","getDate","md","objectKey","getTime","_this","obs","ObsClient","access_key_id","ak","secret_access_key","sk","server","urlserver","timeout","putObject","Bucket","BucketName","Key","SourceFile","CommonMsg","Status","httpurl","uploadFileToV5","params","filePath","statusCode","JSON","parse","status","catch","err","console","log","img","reader","FileReader","readAsDataURL","onload","url","split","id_card_side","detect_photo","image_status","words_result","words","endTime","endDate","isNaN","slice","beginTime","beginDate","_endDate","today","$message","error","toFace","navigateBack","certificateImage","loginFrom","number","frontPhoto","headPhoto","reversePhoto"],"sources":["src/views/face/index.vue"],"sourcesContent":["\n\t\n 请完成实名认证后进行使用\n \n \n *证件类型\n {{typeLabel}}\n \n \n *身份证人面像\n \n \n 点击采集\n \n \n \n *身份证国徽面\n \n \n 点击采集\n \n \n \n *姓名\n {{userIdcardInfo.name}}\n \n \n *身份证号\n {{userIdcardInfo.idCardNum}}\n \n \n *手机号\n \n \n \n *人脸采集\n {{faceCollectLabel}}\n \n 提交核验\n \n \n \n \n {{item.label}}\n \n \n \n \n\t\n\n \n\n \n\n "],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}