From 9abeee7af6047d4c75908b2d12d48b22f261e1cd Mon Sep 17 00:00:00 2001
From: zhouhao <787329763@qq.com>
Date: Thu, 06 Jan 2022 12:22:53 +0800
Subject: [PATCH] 人脸识别
---
webpack.common.js | 2
src/api/index.js | 24 +++---
src/assets/img/img_fail.png | 0
src/views/main/queryres.vue | 87 ++++++++-------------
webpack.dev.js | 2
src/views/main/addBankcard.vue | 67 +++++++---------
src/api/config.js | 2
src/assets/img/successw.png | 0
src/assets/img/loading.png | 0
9 files changed, 79 insertions(+), 105 deletions(-)
diff --git a/src/api/config.js b/src/api/config.js
index 63edf46..ed0b739 100644
--- a/src/api/config.js
+++ b/src/api/config.js
@@ -82,7 +82,7 @@
}
const $http = axios.create({
- baseURL: '/lism',
+ baseURL: '/flb/cab',
timeout: 90000,
headers: {
'Content-Type': 'application/json; charset=UTF-8'
diff --git a/src/api/index.js b/src/api/index.js
index 878bb5f..835346c 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -11,22 +11,22 @@
const api = {
- //绑卡初始化
- bankCardInit(data) {
- return $http.post('/bankCard/init', data);
+ //刷新人脸识别失败后订单状态
+ refreshFaceStatus(data) {
+ return $http.post('/inside/getBizStatus', data);
},
- //银行卡ocr
- bankCardOcr(data) {
- return $http.post('/bankCard/ocr', data);
+ //授信前置页面调取接口
+ getFrontData(data) {
+ return $http.post('/inside/getFrontData', data);
},
- //绑卡验证码
- bankCardAuthMsg(data) {
- return $http.post('/bankCard/authMsg', data);
+ //获取人脸识别跳转地址
+ getFaceUrl(data) {
+ return $http.post('/inside/getFaceUrl', data);
},
- //绑卡签约
- bankCardAgree(data) {
- return $http.post('/bankCard/agreePayAuth', data);
+ //获取人脸识别状态
+ getApplyStatus(data) {
+ return $http.post('/inside/getApplyStatus', data);
},
//绑卡人脸识别
diff --git a/src/assets/img/img_fail.png b/src/assets/img/img_fail.png
index 52e6176..9f953c7 100644
--- a/src/assets/img/img_fail.png
+++ b/src/assets/img/img_fail.png
Binary files differ
diff --git a/src/assets/img/loading.png b/src/assets/img/loading.png
new file mode 100644
index 0000000..fa5cdbb
--- /dev/null
+++ b/src/assets/img/loading.png
Binary files differ
diff --git a/src/assets/img/successw.png b/src/assets/img/successw.png
index 0d616b8..33d2b42 100644
--- a/src/assets/img/successw.png
+++ b/src/assets/img/successw.png
Binary files differ
diff --git a/src/views/main/addBankcard.vue b/src/views/main/addBankcard.vue
index 5642d71..fd43e73 100644
--- a/src/views/main/addBankcard.vue
+++ b/src/views/main/addBankcard.vue
@@ -1,7 +1,7 @@
<template>
<div class='text-main'>
- <van-nav-bar :title="title" left-arrow @click-left="onClickLeft" />
+ <!-- <van-nav-bar :title="title" left-arrow @click-left="onClickLeft" /> -->
<van-form validate-first ref="credRef">
<div class="bes-title"><div> 分销个人</div></div>
<!-- <van-field v-model.trim="dataForm.bankCardNo" label="银行卡号" placeholder="请输入银行卡号" :rules="bankId" name="bankId" clearable>
@@ -11,19 +11,19 @@
</van-field> -->
<!-- <van-field readonly clickable name="noName" :value="bankName" label="银行名称" placeholder="请选择银行名称" @click="showPicker = true" :rules="noName" right-icon="arrow"/> -->
<div>
- <van-field v-model.trim="dataForm.bankCardMblNo" label="姓名:" readonly/>
- <van-field v-model.trim="dataForm.bankCardMblNo" label="身份证号:" readonly/>
+ <van-field v-model.trim="dataForm.name" label="姓名:" readonly/>
+ <van-field v-model.trim="dataForm.idNo" label="身份证号:" readonly/>
</div>
- <!-- <van-field v-model.trim="dataForm.verCode" center clearable label="短信验证码" :rules="codeRules" placeholder="请输入短信验证码" >
+ <van-field v-model.trim="dataForm.verCode" center clearable label="短信验证码" :rules="codeRules" placeholder="请输入短信验证码" >
<template #button>
- <van-button size="small" color="#E43A28" @click.stop="getCode" native-type="button" :disabled="isdisabled">{{codeText}}</van-button>
+ <van-button size="small" color="#6cc3bb" @click.stop="getCode" native-type="button" :disabled="isdisabled">{{codeText}}</van-button>
</template>
- </van-field> -->
+ </van-field>
<div class="index-title">
<van-checkbox v-model="checked" style="height:30px; margin-right:5px" checked-color="#6cc3bb"></van-checkbox>
- <div v-if="orderType==1"> 阅读并同意<span style="border-bottom:1px solid #00F; color:#00F" @click="show=true">《信息授权函》</span>的签订</div>
- <div v-if="orderType==2"> 阅读并同意<span style="border-bottom:1px solid #00F; color:#00F" @click="showx=true">《保理付款服务合同》</span>的签订</div>
+ <div v-if="bizType==0 && $route.query.types!=1" style="color:#999999;font-size:12px"> 阅读并同意<span style="border-bottom:1px solid #00F; color:#00F" @click="show=true">《信息授权函》</span>的签订</div>
+ <div v-if="bizType==1 && $route.query.types!=1" style="color:#999999;font-size:12px"> 阅读并同意<span style="border-bottom:1px solid #00F; color:#00F" @click="showx=true">《保理付款服务合同》</span>的签订</div>
</div>
<div style="margin: 16px;margin-top:30px">
<van-button round block color="#6cc3bb" @click="onFailed" native-type="submit">确认</van-button>
@@ -66,9 +66,8 @@
//这里存放数据
return {
dataForm: {
- bankCode:'',
- bankCardNo:''
},
+ dataInfo:{},
ishowFile:true,
dataObj :{},
showPicker: false,
@@ -80,9 +79,8 @@
show: false,
showx: false,
bankName:'',
- orderId:this.$route.query.orderId, //订单编号
- orderType:this.$route.query.orderType, //订单类型
- title:this.$route.query.orderType==1?'授信信息确认':'签约信息确认',
+ bizId:this.$route.query.bizId, //订单编号
+ bizType:this.$route.query.bizType, //订单类型
codeText: '获取验证码',
noName: [
{
@@ -157,29 +155,15 @@
//方法集合
methods: {
bankCardNoInit() {
- console.log(this.orderId)
- console.log(this.orderType)
- // this.$api.bankCardInit({ orderId: this.orderId}).then(res => {
- // if (res.body.orderStatus==0){ // 待绑卡
- // this.dataForm.bankCardMblNo =res.body.mblNo
- // this.dataObj =res.body
- // this.agreementextw = repstrw(this.dataObj.userName,this.dataObj.idNo);
- // this.agreementext = repstr(this.dataObj.userName,this.dataObj.idNo);
- // }else if(res.body.orderStatus==1){ //待活体签约
- // this.$api.faceIdUrl({orderId: this.orderId}).then(res => {
- // window.location.href =res.body.url
- // })
- // }else if(res.body.orderStatus==2){ //待审批状态
- // this.$router.push({path:'/main/queryres',query:{orderId: this.orderId}})
- // }else if(res.body.orderStatus==3){ //已拒绝
- // this.$router.push({path:'/main/queryres',query:{orderNo: this.$route.query.orderId,orderStatus:3}})
- // }else if(res.body.orderStatus==4){ //待签约
- // this.$router.push({path:'/main/findPre',query:{orderId: this.$route.query.orderId}})
- // }
- // else if(res.body.orderStatus==5){//待支付首期款
-
- // }
- // })
+ let objForm ={bizId:this.bizId,bizType:this.bizType}
+ this.$api.refreshFaceStatus(objForm).then(res=>{
+ this.dataInfo =res.body
+ if (this.dataInfo.status==0){
+ this.$api.getFrontData(objForm).then(res=>{
+ this.dataForm =res.body
+ })
+ }
+ })
},
onClickLeft(){
@@ -192,6 +176,16 @@
onFailed() {
let mes = `请阅读并同意${this.orderType==1?'信息授权函':'保理付款服务合同'}`
if (!this.checked) return this.$notify(mes)
+ let objUrl
+ if (process.env.NODE_ENV === "development") { //开发环境
+ objUrl = `https://t.finlean.com/comn_business/#/main/queryres?bizId=${this.bizId}&bizType=${this.bizType}`
+ } else{ //生产
+ objUrl = `${window.location.origin}/#/main/queryres?bizId=${this.bizId}&bizType=${this.bizType}`
+ }
+ const objForm ={bizId:this.bizId,bizType:this.bizType,callbackUrl:objUrl}
+ this.$api.getFaceUrl(objForm).then(res=>{
+ window.location.href=res.body.faceUrl
+ })
// this.$refs.credRef.validate().then(() => {
// // 验证通过
// if (this.dataForm.verCode ==undefined || this.dataForm.verCode =='') return this.$notify('请输入验证码')
@@ -310,6 +304,7 @@
},
//生命周期 - 创建完成(可以访问当前this实例)
created() {
+ console.log(process.env.NODE_ENV )
this.bankCardNoInit()
},
//生命周期 - 挂载完成(可以访问DOM元素)
diff --git a/src/views/main/queryres.vue b/src/views/main/queryres.vue
index c33d55c..392f795 100644
--- a/src/views/main/queryres.vue
+++ b/src/views/main/queryres.vue
@@ -3,15 +3,14 @@
<div class='text-main'>
<van-nav-bar title="审核结果" />
<div style=" text-align: center;">
- <img width="70%" height="180" src="../../assets/img/success.png" v-if="ResultIs"/>
- <img width="70%" height="180" src="../../assets/img/img_fail.png" v-else >
+ <img height="180" src="../../assets/img/loading.png" v-if="!ResultIs" />
+ <img height="180" src="../../assets/img/img_fail.png" v-if="ResultIs" />
</div>
<div class="content">
<p class="content-text"> {{datastr}}</p>
- <p class="content-text" v-if="isActive">{{examineStr}}</p>
+ <!-- <p class="content-text" v-if="isActive">{{examineStr}}</p> -->
<div class="btn-content">
- <van-button color="#E43A28" @click="returnApp" round plain hairline v-if="!ResultIs">返回</van-button>
- <van-button color="#E43A28" @click="checkBtn" round v-if="!ResultIs && examineIs">重新校验</van-button>
+ <van-button color="#E43A28" @click="checkBtn" round v-if="ResultIs">重新校验</van-button>
</div>
</div>
</div>
@@ -23,11 +22,11 @@
data() {
//这里存放数据
return {
- datastr: '活体校验中....',
+ datastr: '活体校验中,请稍等....',
examineStr:'正在审核订单,请稍后...',
isActive: false,
orderNo:0,
- ResultIs:true,
+ ResultIs:false,
examineIs:true
};
},
@@ -39,31 +38,19 @@
methods: {
bankCardNoInit() {
var slfe = this
+ let objForm ={bizId:this.bizId,bizType:this.bizType}
var t2 = window.setInterval(function () {
- slfe.$api.bankCardInit({ orderId: slfe.orderNo }).then(res => {
- if (res.body.orderStatus == 0) { // 待绑卡
- window.clearInterval(t2) // 去除定时器
- slfe.$router.push({ path: '/', query: { orderId: slfe.orderNo } })
- } else if (res.body.orderStatus == 1) { //待活体签约
- window.clearInterval(t2) // 去除定时器
- slfe.$api.faceIdUrl({ orderId: slfe.orderNo }).then(res => {
- window.location.href = res.body.url
- })
- } else if (res.body.orderStatus == 2) { //待审批状态
- // slfe.$router.push({ path: '/main/queryres', query: { orderId: slfe.orderNo } })
- } else if (res.body.orderStatus == 3) { //已拒绝
- // this.examineStr="订单审核失败!"
- // this.ResultIs =false
- // this.examineIs=false
- window.clearInterval(t2) // 去除定时器
- window.location.href ="https://www.shouxinshibai.com/"
- } else if (res.body.orderStatus == 4) { //待签约
- window.clearInterval(t2) // 去除定时器
- slfe.$router.push({ path: '/main/findPre', query: { orderId: slfe.orderNo } })
- }
- else if (res.body.orderStatus == 5) {//待支付首期款
- window.clearInterval(t2) // 去除定时器
- }
+ slfe.$api.refreshFaceStatus({objForm}).then(res => {
+ // window.clearInterval(t2) // 去除定时器
+ if(res.body.status==1){ //人脸识别未出结果
+ slfe.$api.getApplyStatus({...objForm,status:res.body.status}).then(res=>{
+ if(res.body.faceResult==0){
+ this.ResultIs =true
+ }
+ })
+ }else{
+
+ }
})
}, 5000)
},
@@ -87,30 +74,22 @@
},
//生命周期 - 创建完成(可以访问当前this实例)
created() {
- if(this.getQueryVariable('orderNo')){
- this.orderNo=this.getQueryVariable('orderNo')
- }else{
- this.orderNo=this.$route.query.orderNo
- }
+ // if(this.getQueryVariable('orderNo')){
+ // this.orderNo=this.getQueryVariable('orderNo')
+ // }else{
+ // this.orderNo=this.$route.query.orderNo
+ // }
- let orderStatus =this.$route.query.orderStatus
- if(orderStatus && orderStatus==3){
- this.datastr='正在审核订单,请稍后...'
- // this.bankCardNoInit()
- window.location.href ="https://www.shouxinshibai.com/"
- }else{
- // this.$api.faceIdResult({orderId: this.orderNo}).then(res=>{
- // this.datastr="活体校验成功"
- // this.isActive =true
- // this.ResultIs =true
- // this.bankCardNoInit()
- // }).catch(err=>{
- // this.ResultIs =false
- // this.datastr =err.errMsg
- // })
- this.datastr='正在审核订单,请稍后...'
- this.bankCardNoInit()
- }
+ // let orderStatus =this.$route.query.orderStatus
+ // if(orderStatus && orderStatus==3){
+ // this.datastr='正在审核订单,请稍后...'
+ // // this.bankCardNoInit()
+ // window.location.href ="https://www.shouxinshibai.com/"
+ // }else{
+
+ // this.datastr='正在审核订单,请稍后...'
+ // // this.bankCardNoInit()
+ // }
},
//生命周期 - 挂载完成(可以访问DOM元素)
mounted() {
diff --git a/webpack.common.js b/webpack.common.js
index 2715a52..f874f03 100644
--- a/webpack.common.js
+++ b/webpack.common.js
@@ -79,7 +79,7 @@
options: {
limit: 10000,
outputPath: 'img/',
- publicPath:env ?`${srcUrl}img`:`/img`
+ publicPath:env ?`${srcUrl}/img`:`/img`
}
}]
},
diff --git a/webpack.dev.js b/webpack.dev.js
index 28e5de1..e9181ae 100644
--- a/webpack.dev.js
+++ b/webpack.dev.js
@@ -26,7 +26,7 @@
port: 8011,
// 代理配置
proxy:{
- "/lism": {
+ "/flb/cab": {
// target: 'http://192.168.1.46:8096',
target: 'https://t.finlean.com',
// target: 'https://pre.finlean.com',
--
Gitblit v1.8.0