mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-11 14:26:43 +08:00
Merge branch 'feature/GFRS-2069【待确定】白名单管理' into release/20210113-test
# Conflicts: # src/assets/js/utils/request.js # src/views/ebiz/sale/SignatureConfirmation.vue
This commit is contained in:
11
src/api/ebiz/whitelist/index.js
Normal file
11
src/api/ebiz/whitelist/index.js
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import request from '@/assets/js/utils/request'
|
||||||
|
import getUrl from '@/assets/js/utils/get-url'
|
||||||
|
|
||||||
|
// 白名单查询
|
||||||
|
export function getWhitelist(data) {
|
||||||
|
return request({
|
||||||
|
url: getUrl('/agent/white/getWhiteInfo', 1),
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -92,6 +92,8 @@ let renewalManage = [
|
|||||||
|
|
||||||
let hgb = ['/sale/order/selectHgb', '/sale/order/getHgbDetail']
|
let hgb = ['/sale/order/selectHgb', '/sale/order/getHgbDetail']
|
||||||
|
|
||||||
|
let whitelist = ['/agent/white/getWhiteInfo']
|
||||||
|
|
||||||
let whiteList = [
|
let whiteList = [
|
||||||
'/customer/agent/getCustomersList',
|
'/customer/agent/getCustomersList',
|
||||||
...proposal,
|
...proposal,
|
||||||
@@ -103,7 +105,8 @@ let whiteList = [
|
|||||||
...productStore,
|
...productStore,
|
||||||
...preserve,
|
...preserve,
|
||||||
...renewalManage,
|
...renewalManage,
|
||||||
...hgb
|
...hgb,
|
||||||
|
...whitelist
|
||||||
]
|
]
|
||||||
|
|
||||||
// 创建axios实例
|
// 创建axios实例
|
||||||
|
|||||||
@@ -79,19 +79,38 @@
|
|||||||
size="large"
|
size="large"
|
||||||
>提交</van-button
|
>提交</van-button
|
||||||
>
|
>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { Field, Icon, Button, Dialog } from 'vant'
|
import { Field, Icon, Button, Dialog } from 'vant'
|
||||||
import { agreementQuery, signAgreement } from '@/api/ebiz/agentEenter/agentEenter.js'
|
import { agreementQuery, signAgreement } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||||
// import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
import { checkSignInvalid, getSignInvalid, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import { checkSignInvalid, getSignInvalid } from '@/api/ebiz/sale/sale'
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
import { filtSignList } from './js/methods'
|
import { filtSignList } from './js/methods'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||||
return {
|
return {
|
||||||
|
// 人脸验证次数
|
||||||
|
faceAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
authCode: '',
|
||||||
// 是否在微信
|
// 是否在微信
|
||||||
isWeixin,
|
isWeixin,
|
||||||
// 微信分享链接是否失效 false 为未失效 true为已失效
|
// 微信分享链接是否失效 false 为未失效 true为已失效
|
||||||
@@ -99,9 +118,9 @@ export default {
|
|||||||
// 微信分享校验值
|
// 微信分享校验值
|
||||||
signInvalid: '',
|
signInvalid: '',
|
||||||
agentInfo: {
|
agentInfo: {
|
||||||
name: '皮伟',
|
name: '',
|
||||||
idNo: '422801199210070412',
|
idNo: '',
|
||||||
createdDate: '2019-09-21'
|
createdDate: ''
|
||||||
},
|
},
|
||||||
referrerInfo: {
|
referrerInfo: {
|
||||||
orgLabel: ''
|
orgLabel: ''
|
||||||
@@ -117,14 +136,73 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
this.init()
|
this.init()
|
||||||
},
|
},
|
||||||
mounted() {
|
|
||||||
document.body.style.backgroundColor = '#fff'
|
|
||||||
},
|
|
||||||
beforeRouteLeave(to, from, next) {
|
|
||||||
document.body.style.backgroundColor = ''
|
|
||||||
next()
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
console.log(this.sid, this.code)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.goUrl(this.authCode)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.agentInfo.mobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
console.log(res)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
//初始化信息
|
//初始化信息
|
||||||
async init() {
|
async init() {
|
||||||
if (this.isWeixin) {
|
if (this.isWeixin) {
|
||||||
@@ -254,36 +332,78 @@ export default {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
faceAuth(code) {
|
async faceAuth(code) {
|
||||||
let that = this
|
this.authCode = code
|
||||||
localStorage.idNo = this.agentInfo.idNo
|
localStorage.idNo = this.agentInfo.idNo
|
||||||
localStorage.idName = this.agentInfo.name
|
localStorage.idName = this.agentInfo.name
|
||||||
if (code == '0') {
|
if (code == '0') {
|
||||||
if (that.agentInfo.idType == '1') {
|
if (this.agentInfo.idType == '1') {
|
||||||
|
// 人脸识别次数小于3次
|
||||||
this.$toast.loading({
|
this.$toast.loading({
|
||||||
duration: 0, // 持续展示 toast
|
duration: 0, // 持续展示 toast
|
||||||
forbidClick: true, // 禁用背景点击
|
forbidClick: true, // 禁用背景点击
|
||||||
loadingType: 'spinner',
|
loadingType: 'spinner',
|
||||||
message: '加载中……'
|
message: '加载中……'
|
||||||
})
|
})
|
||||||
// eslint-disable-next-line no-undef
|
// 判断是否在白名单, 在白名单无需人脸
|
||||||
EWebBridge.webCallAppInJs('face_auth', {
|
const res = await getWhitelist({
|
||||||
businessSource: '2', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
idNo: this.agentInfo.idNo,
|
||||||
number: that.agentInfo.idNo, //身份证号码
|
name: this.agentInfo.name,
|
||||||
name: that.agentInfo.name //姓名
|
whiteType: 'enter_agent_face_show'
|
||||||
}).then(data => {
|
|
||||||
console.log(data)
|
|
||||||
this.$toast.clear()
|
|
||||||
if (JSON.parse(data).state == '1') {
|
|
||||||
that.goUrl(code)
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
console.log(res.content)
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.goUrl(code)
|
||||||
|
}
|
||||||
|
// 不再白名单内
|
||||||
|
else {
|
||||||
|
if (this.faceAuthCount < 3) {
|
||||||
|
try {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
const authRes = await EWebBridge.webCallAppInJs('face_auth', {
|
||||||
|
businessSource: '2', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
||||||
|
number: this.agentInfo.idNo, //身份证号码
|
||||||
|
name: this.agentInfo.name //姓名
|
||||||
|
})
|
||||||
|
// const authRes = await this.fakeFaceAuth(true)
|
||||||
|
console.log(authRes)
|
||||||
|
if (JSON.parse(authRes).state == '1') {
|
||||||
|
this.goUrl(code)
|
||||||
} else {
|
} else {
|
||||||
that.goUrl(code)
|
// 人脸验证失败更新faceAuthCount
|
||||||
|
this.faceAuthCount++
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
that.goUrl(code)
|
this.isCaptchaModalShow = true
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.goUrl(code)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.goUrl(code)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fakeFaceAuth(expect) {
|
||||||
|
console.log('模拟调用人脸识别')
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
setTimeout(() => {
|
||||||
|
console.log('模拟人脸识别完成')
|
||||||
|
if (expect) {
|
||||||
|
resolve({ state: '0' })
|
||||||
|
} else {
|
||||||
|
reject({ state: '0' })
|
||||||
|
}
|
||||||
|
}, 2000)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
goUrl(code) {
|
goUrl(code) {
|
||||||
let path = ''
|
let path = ''
|
||||||
@@ -341,11 +461,23 @@ export default {
|
|||||||
[Field.name]: Field,
|
[Field.name]: Field,
|
||||||
[Icon.name]: Icon,
|
[Icon.name]: Icon,
|
||||||
[Button.name]: Button
|
[Button.name]: Button
|
||||||
|
},
|
||||||
|
filters: {
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
#app .van-cell:not(:last-child)::after {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
.signContract-container {
|
.signContract-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -406,6 +406,20 @@
|
|||||||
<div class="bottom-btn bg-white">
|
<div class="bottom-btn bg-white">
|
||||||
<van-button type="danger" size="large" @click="nextStep" v-no-more-click="1000">下一步</van-button>
|
<van-button type="danger" size="large" @click="nextStep" v-no-more-click="1000">下一步</van-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -418,16 +432,16 @@ import CustomerPicker from '@/components/ebiz/claims/CustomerPicker'
|
|||||||
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
|
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
|
||||||
import DataDictionary from '@/assets/js/utils/data-dictionary.js'
|
import DataDictionary from '@/assets/js/utils/data-dictionary.js'
|
||||||
import Nationality from '@/assets/js/utils/nationality.js'
|
import Nationality from '@/assets/js/utils/nationality.js'
|
||||||
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
|
|
||||||
import utilsAge from '@/assets/js/utils/age'
|
import utilsAge from '@/assets/js/utils/age'
|
||||||
import idNoCheck from '@/assets/js/utils/idNoCheck'
|
import idNoCheck from '@/assets/js/utils/idNoCheck'
|
||||||
import { apply, history, customerInfo, query } from '@/api/ebiz/claims/claims'
|
import { apply, query } from '@/api/ebiz/claims/claims'
|
||||||
import { idToData } from '@/views/ebiz/customer/js/verification'
|
import { idToData } from '@/views/ebiz/customer/js/verification'
|
||||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||||
import { getBankList, checkCard } from '@/api/ebiz/sale/sale'
|
import { getBankList, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import { getIdentityInfo, onDateConfirm, effectiveDataTypeChange } from '../sale/js/methods'
|
import { getIdentityInfo, onDateConfirm, effectiveDataTypeChange } from '../sale/js/methods'
|
||||||
import occupationList from '@/components/ebiz/occipation/data/occupation'
|
import occupationList from '@/components/ebiz/occipation/data/occupation'
|
||||||
import getAreaName from '@/assets/js/utils/get-area-name'
|
import getAreaName from '@/assets/js/utils/get-area-name'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'applyInfo',
|
name: 'applyInfo',
|
||||||
@@ -452,12 +466,15 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// change: '', //待修改!!
|
cardAuthCount: 0,
|
||||||
// OtherFeesList: [], //暂定其他费用的数组
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
isPassedCardCheck: false,
|
||||||
customerNo: '', //客户编号
|
customerNo: '', //客户编号
|
||||||
DataIndex: '', //点击客户的index,用来获取对应客户信息
|
DataIndex: '', //点击客户的index,用来获取对应客户信息
|
||||||
// CustomerDetails:[],//客户详情数据
|
|
||||||
|
|
||||||
currentDate: new Date(), //当前时间
|
currentDate: new Date(), //当前时间
|
||||||
customerShowPicker: false,
|
customerShowPicker: false,
|
||||||
currentPopupIndex: '',
|
currentPopupIndex: '',
|
||||||
@@ -545,6 +562,14 @@ export default {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.userInfo && this.userInfo.applyerMobile) {
|
||||||
|
return this.userInfo.applyerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getBankList()
|
this.getBankList()
|
||||||
this.init()
|
this.init()
|
||||||
@@ -562,6 +587,75 @@ export default {
|
|||||||
next()
|
next()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.userInfo.applyerMobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
if (!this.isCancel) {
|
||||||
|
this.$toast('请先获取验证码')
|
||||||
|
}
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.isPassedCardCheck = true
|
||||||
|
this.save()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCancel = true
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
init() {
|
init() {
|
||||||
let data = {
|
let data = {
|
||||||
slaveStatus: this.slaveStatus,
|
slaveStatus: this.slaveStatus,
|
||||||
@@ -1119,7 +1213,7 @@ export default {
|
|||||||
message: '加载中……'
|
message: '加载中……'
|
||||||
})
|
})
|
||||||
|
|
||||||
let checkCarData = {
|
let params = {
|
||||||
account: this.userInfo.applyerBankAccountNo,
|
account: this.userInfo.applyerBankAccountNo,
|
||||||
idNo: this.userInfo.applyerCertiCode,
|
idNo: this.userInfo.applyerCertiCode,
|
||||||
idType: this.userInfo.applyerCertiType,
|
idType: this.userInfo.applyerCertiType,
|
||||||
@@ -1127,13 +1221,43 @@ export default {
|
|||||||
name: this.userInfo.applyerName
|
name: this.userInfo.applyerName
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(this.userInfo)
|
this.$CacheUtils.setLocItem('calimMobile', params.mobile)
|
||||||
|
|
||||||
let res = await checkCard(checkCarData)
|
// 银行卡鉴权[白名单用户自动跳过]
|
||||||
|
const whiteRes = await getWhitelist({
|
||||||
|
idNo: params.idNo,
|
||||||
|
name: params.name,
|
||||||
|
bankNo: params.account,
|
||||||
|
whiteType: 'claim_bank_check'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (whiteRes.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (whiteRes.content && whiteRes.content.length) {
|
||||||
|
// 用户在白名单内不做操作
|
||||||
|
}
|
||||||
|
// 用户不再白名单内做银行卡鉴权
|
||||||
|
else {
|
||||||
|
// 没通过鉴权进行银行卡鉴权
|
||||||
|
if (!this.isPassedCardCheck) {
|
||||||
|
// 鉴权失败未达到3次调接口鉴权
|
||||||
|
if (this.cardAuthCount < 3) {
|
||||||
|
let res = await checkCard(params)
|
||||||
if (res.result != '0') {
|
if (res.result != '0') {
|
||||||
|
this.cardAuthCount++
|
||||||
return this.$toast(res.resultMessage)
|
return this.$toast(res.resultMessage)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 超过3次调用短信验证
|
||||||
|
else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(whiteRes.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
let data = {
|
let data = {
|
||||||
slaveStatus: this.slaveStatus,
|
slaveStatus: this.slaveStatus,
|
||||||
@@ -1171,6 +1295,15 @@ export default {
|
|||||||
// }
|
// }
|
||||||
// console.log(this.OtherFeesList)
|
// console.log(this.OtherFeesList)
|
||||||
// }
|
// }
|
||||||
|
},
|
||||||
|
filters: {
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -6,32 +6,6 @@
|
|||||||
<van-cell title="申请类型" :value="list.applyTypeName"></van-cell>
|
<van-cell title="申请类型" :value="list.applyTypeName"></van-cell>
|
||||||
</van-cell-group>
|
</van-cell-group>
|
||||||
<div>
|
<div>
|
||||||
<!-- <van-collapse v-model="activeNames" class="mt10" v-if="!isWeixin">
|
|
||||||
<van-collapse-item name="1">
|
|
||||||
<div slot="title">
|
|
||||||
受托人
|
|
||||||
<span class="ml20">{{ list.mandatorName }}</span>
|
|
||||||
</div>
|
|
||||||
<p class="mb20">以下内容需要您按照顺序阅读并签字确认:</p>
|
|
||||||
<p>需签署:</p>
|
|
||||||
<p class="mb20">
|
|
||||||
<span class="text" :class="{ red: list.mandatorSignState == 1 }">{{ list.name }}</span>
|
|
||||||
<img :src="src" v-if="list.mandatorSignState == '1'" />
|
|
||||||
</p>
|
|
||||||
<p class="start">点击【开始】按钮,进行相关操作</p>
|
|
||||||
<div class="flex justify-content-a mt20">
|
|
||||||
<van-button
|
|
||||||
type="danger"
|
|
||||||
size="normal"
|
|
||||||
style="width: 157px;"
|
|
||||||
plain
|
|
||||||
v-no-more-click="1000"
|
|
||||||
@click="start_ocr(4)"
|
|
||||||
:disabled="list.mandatorSignState == 1"
|
|
||||||
>开始</van-button>
|
|
||||||
</div>
|
|
||||||
</van-collapse-item>
|
|
||||||
</van-collapse>-->
|
|
||||||
<van-collapse v-model="activeNames" class="mt10 pb50">
|
<van-collapse v-model="activeNames" class="mt10 pb50">
|
||||||
<van-collapse-item name="2">
|
<van-collapse-item name="2">
|
||||||
<div slot="title">
|
<div slot="title">
|
||||||
@@ -75,21 +49,39 @@
|
|||||||
<div class="bottom-btn bg-white" v-if="!isWeixin && list.applyerSignState == 1">
|
<div class="bottom-btn bg-white" v-if="!isWeixin && list.applyerSignState == 1">
|
||||||
<van-button type="danger" size="large" @click="next" v-no-more-click="1000" v-if="!isWeixin" :disabled="list.applyerSignState == 0">提交</van-button>
|
<van-button type="danger" size="large" @click="next" v-no-more-click="1000" v-if="!isWeixin" :disabled="list.applyerSignState == 0">提交</van-button>
|
||||||
</div>
|
</div>
|
||||||
<!-- <UploadImageFile :typeface="idcardData.typeface" :realName="idcardData.idcardName" :idno="idcardData.idcardNumber" @sendimage="sendimage"></UploadImageFile> -->
|
|
||||||
<Read v-show="readShow" @confirm="goToNext" />
|
<Read v-show="readShow" @confirm="goToNext" />
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<p class="p10 fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encyCustomerMobile }},请您输入验证码以完成后续投保操作。</p>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
// import UploadImageFile from '@/components/ebiz/sale/UploadImageFile'
|
|
||||||
import Read from '@/components/ebiz/claims/Read'
|
import Read from '@/components/ebiz/claims/Read'
|
||||||
import { Cell, CellGroup, Collapse, CollapseItem, Dialog } from 'vant'
|
import { Cell, CellGroup, Collapse, CollapseItem, Dialog, Field } from 'vant'
|
||||||
import { getToken, getSignInvalid, checkSignInvalid, getRecognitionUrl, getRecognitionResult } from '@/api/ebiz/sale/sale'
|
import { getSignInvalid, checkSignInvalid, getRecognitionUrl, getRecognitionResult, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import { progressDetail, submit } from '@/api/ebiz/claims/claims'
|
import { progressDetail, submit } from '@/api/ebiz/claims/claims'
|
||||||
import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||||
return {
|
return {
|
||||||
|
faceAuthCount: 0,
|
||||||
|
mobile: this.$CacheUtils.getLocItem('calimMobile'),
|
||||||
|
encyCustomerMobile: this.$CacheUtils.getLocItem('calimMobile').replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2'),
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
sid: '',
|
||||||
|
code: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
// 折叠面板
|
// 折叠面板
|
||||||
activeNames: ['1', '2'],
|
activeNames: ['1', '2'],
|
||||||
// 是否在微信
|
// 是否在微信
|
||||||
@@ -123,7 +115,7 @@ export default {
|
|||||||
[Collapse.name]: Collapse,
|
[Collapse.name]: Collapse,
|
||||||
[CollapseItem.name]: CollapseItem,
|
[CollapseItem.name]: CollapseItem,
|
||||||
[Dialog.name]: Dialog,
|
[Dialog.name]: Dialog,
|
||||||
// UploadImageFile: UploadImageFile,
|
[Field.name]: Field,
|
||||||
Read
|
Read
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -131,6 +123,7 @@ export default {
|
|||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
if (!this.$route.query.edit || localStorage.claimFrom == null) {
|
if (!this.$route.query.edit || localStorage.claimFrom == null) {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||||
img: this.$assetsUrl + 'images/del-close@3x.png',
|
img: this.$assetsUrl + 'images/del-close@3x.png',
|
||||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||||
@@ -143,6 +136,72 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.mobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
// 获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
console.log(res)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
console.log(this.sid, this.code)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.showRead()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
// 初始化
|
// 初始化
|
||||||
async init() {
|
async init() {
|
||||||
if (this.isWeixin) {
|
if (this.isWeixin) {
|
||||||
@@ -159,8 +218,6 @@ export default {
|
|||||||
}
|
}
|
||||||
let signInvalid = sessionStorage.getItem('signInvalid')
|
let signInvalid = sessionStorage.getItem('signInvalid')
|
||||||
let rs = await this.checkSignInvalid(signInvalid)
|
let rs = await this.checkSignInvalid(signInvalid)
|
||||||
console.log('```````````````')
|
|
||||||
console.log(rs)
|
|
||||||
if (rs == '1') {
|
if (rs == '1') {
|
||||||
this.isInvalid = false
|
this.isInvalid = false
|
||||||
} else {
|
} else {
|
||||||
@@ -229,6 +286,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 微信分享
|
// 微信分享
|
||||||
share(code) {
|
share(code) {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('bridge', {
|
EWebBridge.webCallAppInJs('bridge', {
|
||||||
flag: 'share',
|
flag: 'share',
|
||||||
extra: {
|
extra: {
|
||||||
@@ -250,7 +308,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 人脸识别
|
// 人脸识别
|
||||||
start_ocr(val) {
|
async start_ocr(val) {
|
||||||
//3申请人需要空签 4受托人
|
//3申请人需要空签 4受托人
|
||||||
console.log(val)
|
console.log(val)
|
||||||
let that = this
|
let that = this
|
||||||
@@ -260,7 +318,6 @@ export default {
|
|||||||
if (that.list.applyerCertiType != '1') {
|
if (that.list.applyerCertiType != '1') {
|
||||||
this.showRead()
|
this.showRead()
|
||||||
} else {
|
} else {
|
||||||
// this.idcardData.typeface = !this.idcardData.typeface
|
|
||||||
this.idcardData.idcardName = this.list.applyerName
|
this.idcardData.idcardName = this.list.applyerName
|
||||||
this.idcardData.idcardNumber = this.list.applyerCertiCode
|
this.idcardData.idcardNumber = this.list.applyerCertiCode
|
||||||
this.getRecognitionUrl()
|
this.getRecognitionUrl()
|
||||||
@@ -273,26 +330,53 @@ export default {
|
|||||||
if (that.list.applyerCertiType != '1') {
|
if (that.list.applyerCertiType != '1') {
|
||||||
this.showRead()
|
this.showRead()
|
||||||
} else {
|
} else {
|
||||||
EWebBridge.webCallAppInJs('face_auth', {
|
const res = await getWhitelist({
|
||||||
|
idNo: this.list.applyerCertiCode,
|
||||||
|
name: this.list.applyerName,
|
||||||
|
whiteType: 'claim_face_show'
|
||||||
|
})
|
||||||
|
console.log(res)
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.showRead()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
// 人脸验证失败次数小于3
|
||||||
|
console.log(this.faceAuthCount)
|
||||||
|
if (this.faceAuthCount <= 3) {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
const authRes = await EWebBridge.webCallAppInJs('face_auth', {
|
||||||
//身份证号码
|
//身份证号码
|
||||||
number: that.list.applyerCertiCode,
|
number: that.list.applyerCertiCode,
|
||||||
//姓名
|
//姓名
|
||||||
name: that.list.applyerName,
|
name: that.list.applyerName,
|
||||||
businessSource: '3'
|
businessSource: '3'
|
||||||
}).then(data => {
|
|
||||||
if (JSON.parse(data).state == '1') {
|
|
||||||
this.showRead()
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
// const authRes = await new Promise(resolve => {
|
||||||
|
// resolve(JSON.stringify({ state: '0' }))
|
||||||
|
// })
|
||||||
|
|
||||||
|
if (JSON.parse(authRes).state == '1') {
|
||||||
|
this.showRead()
|
||||||
|
} else {
|
||||||
|
this.faceAuthCount++
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 切换短信验证
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getRecognitionUrl(val, num) {
|
getRecognitionUrl() {
|
||||||
localStorage.setItem('faceAuthWeXin-requestId', '')
|
localStorage.setItem('faceAuthWeXin-requestId', '')
|
||||||
localStorage.setItem('faceAuthWeXin-bizToken', '')
|
localStorage.setItem('faceAuthWeXin-bizToken', '')
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise(() => {
|
||||||
// this.$route.fullPath
|
|
||||||
let data = { realName: this.idcardData.idcardName, idno: this.idcardData.idcardNumber, redirectUrl: location.origin + '/#' + this.$route.fullPath }
|
let data = { realName: this.idcardData.idcardName, idno: this.idcardData.idcardNumber, redirectUrl: location.origin + '/#' + this.$route.fullPath }
|
||||||
console.log('获取URL请求参数', data)
|
console.log('获取URL请求参数', data)
|
||||||
getRecognitionUrl(data).then(
|
getRecognitionUrl(data).then(
|
||||||
@@ -317,9 +401,6 @@ export default {
|
|||||||
.then(res => {
|
.then(res => {
|
||||||
console.log('getRecognitionResult', res)
|
console.log('getRecognitionResult', res)
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
// this.recognizeResult = res.content.result
|
|
||||||
// this.recognizeMessage = res.content.result == '1' ? res.content.resultMessage : ''
|
|
||||||
// this.sendimage(true)
|
|
||||||
this.showRead()
|
this.showRead()
|
||||||
} else {
|
} else {
|
||||||
this.$toast(res.resultMessage)
|
this.$toast(res.resultMessage)
|
||||||
@@ -392,30 +473,15 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
/*if (localStorage.claimFrom) {
|
|
||||||
that.$jump({
|
|
||||||
flag: 'h5',
|
|
||||||
extra: {
|
|
||||||
url: location.origin + '/#/claims/Success',
|
|
||||||
forbidSwipeBack: '1',
|
|
||||||
backToFirst: '1'
|
|
||||||
},
|
|
||||||
routerInfo: {
|
|
||||||
path: '/claims/Success'
|
|
||||||
}
|
}
|
||||||
})
|
},
|
||||||
|
filters: {
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
} else {
|
} else {
|
||||||
that.$jump({
|
return `${val} s`
|
||||||
flag: 'h5',
|
|
||||||
extra: {
|
|
||||||
url: location.origin + '/#/claims/Fail',
|
|
||||||
forbidSwipeBack: '1'
|
|
||||||
},
|
|
||||||
routerInfo: {
|
|
||||||
path: '/claims/Fail'
|
|
||||||
}
|
}
|
||||||
})
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,16 +9,43 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bg-white bottom-btn"><van-button type="danger" size="large" @click="nextStep" v-no-more-click="2000">客户确认</van-button></div>
|
<div class="bg-white bottom-btn"><van-button type="danger" size="large" @click="nextStep" v-no-more-click="2000">客户确认</van-button></div>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { Field } from 'vant'
|
||||||
import utilsAge from '@/assets/js/utils/age'
|
import utilsAge from '@/assets/js/utils/age'
|
||||||
|
import { getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'HandleResult',
|
name: 'HandleResult',
|
||||||
|
components: {
|
||||||
|
[Field.name]: Field
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
// 人脸验证次数
|
||||||
|
faceAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
path: '', //页面跳转路径
|
path: '', //页面跳转路径
|
||||||
srcSuccess: this.$assetsUrl + 'images/success.png',
|
srcSuccess: this.$assetsUrl + 'images/success.png',
|
||||||
entry: '',
|
entry: '',
|
||||||
@@ -28,6 +55,14 @@ export default {
|
|||||||
policy: {}
|
policy: {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.customerInfo && this.customerInfo.preferredPhoneNum) {
|
||||||
|
return this.customerInfo.preferredPhoneNum.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
this.entry = this.$route.query.entry
|
this.entry = this.$route.query.entry
|
||||||
if (localStorage['preserve-customerInfo']) {
|
if (localStorage['preserve-customerInfo']) {
|
||||||
@@ -65,6 +100,72 @@ export default {
|
|||||||
document.getElementsByTagName('body')[0].classList.remove('bg-white')
|
document.getElementsByTagName('body')[0].classList.remove('bg-white')
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
console.log(this.sid, this.code)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.jumpNextPage(this.path)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.customerInfo.preferredPhoneNum,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
console.log(res)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
nextStep() {
|
nextStep() {
|
||||||
if (this.entry != 'BC') {
|
if (this.entry != 'BC') {
|
||||||
// 如果 保全项不是 受益人变更、则 在证件类型为身份证时 直接接入人脸识别
|
// 如果 保全项不是 受益人变更、则 在证件类型为身份证时 直接接入人脸识别
|
||||||
@@ -120,22 +221,50 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
toFace(config) {
|
async toFace(config) {
|
||||||
console.log('----------', config)
|
const res = await getWhitelist({
|
||||||
|
idNo: this.customerInfo.idNo,
|
||||||
|
name: this.customerInfo.customerName,
|
||||||
|
whiteType: 'edor_face_show'
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.jumpNextPage(this.path)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
if (this.faceAuthCount < 3) {
|
||||||
// eslint-disable-next-line no-undef
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('face_auth', config)
|
EWebBridge.webCallAppInJs('face_auth', config)
|
||||||
// 跳过人脸识别
|
// 跳过人脸识别
|
||||||
// new Promise(resolve => {
|
// new Promise(resolve => {
|
||||||
// console.log('--跳过人脸识别--返回识别成功')
|
// console.log('--跳过人脸识别--返回识别成功')
|
||||||
// resolve(JSON.stringify({ state: '1' }))
|
// resolve(JSON.stringify({ state: '0' }))
|
||||||
|
// })
|
||||||
.then(data => {
|
.then(data => {
|
||||||
if (JSON.parse(data).state == '1') {
|
if (JSON.parse(data).state == '1') {
|
||||||
this.jumpNextPage(this.path)
|
this.jumpNextPage(this.path)
|
||||||
} else {
|
} else {
|
||||||
// eslint-disable-next-line no-undef
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('webview_toast', '人脸检测失败')
|
EWebBridge.webCallAppInJs('webview_toast', '人脸检测失败')
|
||||||
|
this.faceAuthCount++
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
filters: {
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -122,6 +122,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 银行卡扫描 -->
|
<!-- 银行卡扫描 -->
|
||||||
<BankCardScan :scanShow="isScan" :clear="false" @getScanInfo="getBankCardInfo"></BankCardScan>
|
<BankCardScan :scanShow="isScan" :clear="false" @getScanInfo="getBankCardInfo"></BankCardScan>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -129,11 +143,12 @@
|
|||||||
import { Field, Cell, CellGroup, Popup, Row, Col, Picker, Area } from 'vant'
|
import { Field, Cell, CellGroup, Popup, Row, Col, Picker, Area } from 'vant'
|
||||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||||
import { policyInfo, trial, changeEdor } from '@/api/ebiz/preserve/preserve'
|
import { policyInfo, trial, changeEdor } from '@/api/ebiz/preserve/preserve'
|
||||||
import { getBankList, checkCard } from '@/api/ebiz/sale/sale'
|
import { getBankList, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import dataDic from '../js/data-dictionary.js'
|
import dataDic from '../js/data-dictionary.js'
|
||||||
import filters from '@/views/ebiz/preserve/filters'
|
import filters from '@/views/ebiz/preserve/filters'
|
||||||
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
||||||
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SurrenderInfo',
|
name: 'SurrenderInfo',
|
||||||
@@ -150,6 +165,13 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
cardAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
isPassedCardCheck: false,
|
||||||
valueKey: '',
|
valueKey: '',
|
||||||
popupShow: false,
|
popupShow: false,
|
||||||
pickerType: '',
|
pickerType: '',
|
||||||
@@ -201,6 +223,14 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.customerInfo && this.customerInfo.customerMobile) {
|
||||||
|
return this.customerInfo.customerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
this.customerInfo = JSON.parse(localStorage['preserve-customerInfo']) //客户详情
|
this.customerInfo = JSON.parse(localStorage['preserve-customerInfo']) //客户详情
|
||||||
this.policy = JSON.parse(localStorage['preserve-policy'])
|
this.policy = JSON.parse(localStorage['preserve-policy'])
|
||||||
@@ -218,9 +248,85 @@ export default {
|
|||||||
},
|
},
|
||||||
filters: {
|
filters: {
|
||||||
idToText: filters.idToText,
|
idToText: filters.idToText,
|
||||||
amtFormat1: filters.amtFormat1
|
amtFormat1: filters.amtFormat1,
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.customerInfo.customerMobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
if (!this.isCancel) {
|
||||||
|
this.$toast('请先获取验证码')
|
||||||
|
}
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.isPassedCardCheck = true
|
||||||
|
this.nextStep()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCancel = true
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
//获取试算信息
|
//获取试算信息
|
||||||
getTrial(data) {
|
getTrial(data) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
@@ -430,7 +536,7 @@ export default {
|
|||||||
remark: this.remark,
|
remark: this.remark,
|
||||||
isNewInfo: '0'
|
isNewInfo: '0'
|
||||||
})
|
})
|
||||||
//银行卡鉴权
|
// 银行卡鉴权
|
||||||
let params = {
|
let params = {
|
||||||
account: ctBonusDTONew.bankNo,
|
account: ctBonusDTONew.bankNo,
|
||||||
idNo: this.customerInfo.idNo,
|
idNo: this.customerInfo.idNo,
|
||||||
@@ -438,11 +544,42 @@ export default {
|
|||||||
mobile: this.customerInfo.customerMobile,
|
mobile: this.customerInfo.customerMobile,
|
||||||
name: ctBonusDTONew.accountName
|
name: ctBonusDTONew.accountName
|
||||||
}
|
}
|
||||||
|
// 银行卡鉴权[白名单用户自动跳过]
|
||||||
|
const whiteRes = await getWhitelist({
|
||||||
|
idNo: params.idNo,
|
||||||
|
name: params.name,
|
||||||
|
bankNo: params.account,
|
||||||
|
whiteType: 'edor_bank_check'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (whiteRes.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (whiteRes.content && whiteRes.content.length) {
|
||||||
|
// 用户在白名单内不做操作
|
||||||
|
}
|
||||||
|
// 用户不再白名单内做银行卡鉴权
|
||||||
|
else {
|
||||||
|
// 没通过鉴权进行银行卡鉴权
|
||||||
|
if (!this.isPassedCardCheck) {
|
||||||
|
// 鉴权失败未达到3次调接口鉴权
|
||||||
|
if (this.cardAuthCount < 3) {
|
||||||
let res = await checkCard(params)
|
let res = await checkCard(params)
|
||||||
this.$toast.clear()
|
this.$toast.clear()
|
||||||
if (res.result != '0') {
|
if (res.result != '0') {
|
||||||
|
this.cardAuthCount++
|
||||||
return this.$toast(res.resultMessage)
|
return this.$toast(res.resultMessage)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 超过3次调用短信验证
|
||||||
|
else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(whiteRes.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
let ctBonusDTOList = [this.ctBonusDTO, ctBonusDTONew]
|
let ctBonusDTOList = [this.ctBonusDTO, ctBonusDTONew]
|
||||||
let data = {
|
let data = {
|
||||||
|
|||||||
@@ -86,18 +86,33 @@
|
|||||||
<p class="p15 pb20 fs14 text-center">该客户涉及到的所有保单相应信息将变更</p>
|
<p class="p15 pb20 fs14 text-center">该客户涉及到的所有保单相应信息将变更</p>
|
||||||
</van-dialog>
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { Field, Collapse, CollapseItem, Area, Picker, Cell, CellGroup, Dialog, Popup, List } from 'vant'
|
import { Field, Collapse, CollapseItem, Area, Picker, Cell, CellGroup, Dialog, Popup, List } from 'vant'
|
||||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||||
import { pcPolicyInfo, changeEdor } from '@/api/ebiz/preserve/preserve'
|
import { changeEdor } from '@/api/ebiz/preserve/preserve'
|
||||||
import { getBankList, checkCard } from '@/api/ebiz/sale/sale'
|
import { getBankList, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import filters from '@/views/ebiz/preserve/filters'
|
import filters from '@/views/ebiz/preserve/filters'
|
||||||
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
||||||
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
||||||
import dataDic from '../js/data-dictionary.js'
|
import dataDic from '../js/data-dictionary.js'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'RenewalInfo',
|
name: 'RenewalInfo',
|
||||||
@@ -116,6 +131,13 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
cardAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
isPassedCardCheck: false,
|
||||||
dialogShow: true, //信息变更弹窗是否显示
|
dialogShow: true, //信息变更弹窗是否显示
|
||||||
valueKey: '',
|
valueKey: '',
|
||||||
pickerType: '',
|
pickerType: '',
|
||||||
@@ -138,17 +160,15 @@ export default {
|
|||||||
customerInfo: JSON.parse(localStorage.getItem('preserve-customerInfo'))
|
customerInfo: JSON.parse(localStorage.getItem('preserve-customerInfo'))
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.customerInfo && this.customerInfo.customerMobile) {
|
||||||
|
return this.customerInfo.customerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
/*
|
|
||||||
this.getPolicyList({
|
|
||||||
customerNo: this.customerInfo.customerNo,
|
|
||||||
edorType: 'PC', //续期账号变更
|
|
||||||
idno: this.customerInfo.idNo,
|
|
||||||
mobile: this.customerInfo.customerMobile,
|
|
||||||
name: this.customerInfo.customerName
|
|
||||||
})
|
|
||||||
*/
|
|
||||||
// this.list = this.$store.getters.getPcPolicyInfo
|
|
||||||
this.getBank()
|
this.getBank()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@@ -156,6 +176,75 @@ export default {
|
|||||||
window.appCallBack = this.appCallBack
|
window.appCallBack = this.appCallBack
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.customerInfo.customerMobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
if (!this.isCancel) {
|
||||||
|
this.$toast('请先获取验证码')
|
||||||
|
}
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.isPassedCardCheck = true
|
||||||
|
this.change()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCancel = true
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
//弹框选择
|
//弹框选择
|
||||||
toSelect(valueKey) {
|
toSelect(valueKey) {
|
||||||
this.bankPopup = true
|
this.bankPopup = true
|
||||||
@@ -323,11 +412,43 @@ export default {
|
|||||||
mobile: this.customerInfo.customerMobile,
|
mobile: this.customerInfo.customerMobile,
|
||||||
name: this.customerInfo.customerName
|
name: this.customerInfo.customerName
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 银行卡鉴权[白名单用户自动跳过]
|
||||||
|
const whiteRes = await getWhitelist({
|
||||||
|
idNo: params.idNo,
|
||||||
|
name: params.name,
|
||||||
|
bankNo: params.account,
|
||||||
|
whiteType: 'edor_bank_check'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (whiteRes.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (whiteRes.content && whiteRes.content.length) {
|
||||||
|
// 用户在白名单内不做操作
|
||||||
|
}
|
||||||
|
// 用户不再白名单内做银行卡鉴权
|
||||||
|
else {
|
||||||
|
// 没通过鉴权进行银行卡鉴权
|
||||||
|
if (!this.isPassedCardCheck) {
|
||||||
|
// 鉴权失败未达到3次调接口鉴权
|
||||||
|
if (this.cardAuthCount < 3) {
|
||||||
let res = await checkCard(params)
|
let res = await checkCard(params)
|
||||||
this.$toast.clear()
|
this.$toast.clear()
|
||||||
if (res.result != '0') {
|
if (res.result != '0') {
|
||||||
|
this.cardAuthCount++
|
||||||
return this.$toast(res.resultMessage)
|
return this.$toast(res.resultMessage)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 超过3次调用短信验证
|
||||||
|
else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(whiteRes.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
let surrenderDTOList = {
|
let surrenderDTOList = {
|
||||||
platformType: 'app',
|
platformType: 'app',
|
||||||
@@ -396,7 +517,14 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
filters: {
|
filters: {
|
||||||
idToText: filters.idToText
|
idToText: filters.idToText,
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -122,6 +122,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 银行卡扫描 -->
|
<!-- 银行卡扫描 -->
|
||||||
<BankCardScan :scanShow="isScan" :clear="false" @getScanInfo="getBankCardInfo"></BankCardScan>
|
<BankCardScan :scanShow="isScan" :clear="false" @getScanInfo="getBankCardInfo"></BankCardScan>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -129,11 +143,12 @@
|
|||||||
import { Field, Cell, CellGroup, Popup, Row, Col, Picker, Area } from 'vant'
|
import { Field, Cell, CellGroup, Popup, Row, Col, Picker, Area } from 'vant'
|
||||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||||
import { policyInfo, trial, changeEdor } from '@/api/ebiz/preserve/preserve'
|
import { policyInfo, trial, changeEdor } from '@/api/ebiz/preserve/preserve'
|
||||||
import { getBankList, checkCard } from '@/api/ebiz/sale/sale'
|
import { getBankList, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import dataDic from '../js/data-dictionary.js'
|
import dataDic from '../js/data-dictionary.js'
|
||||||
import filters from '@/views/ebiz/preserve/filters'
|
import filters from '@/views/ebiz/preserve/filters'
|
||||||
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
||||||
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
import areaList from '@/views/ebiz/preserve/js/utils/area'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SurrenderInfo',
|
name: 'SurrenderInfo',
|
||||||
@@ -150,6 +165,13 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
cardAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
isPassedCardCheck: false,
|
||||||
valueKey: '',
|
valueKey: '',
|
||||||
popupShow: false,
|
popupShow: false,
|
||||||
pickerType: '',
|
pickerType: '',
|
||||||
@@ -198,6 +220,14 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.customerInfo && this.customerInfo.customerMobile) {
|
||||||
|
return this.customerInfo.customerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
this.customerInfo = JSON.parse(localStorage['preserve-customerInfo']) //客户详情
|
this.customerInfo = JSON.parse(localStorage['preserve-customerInfo']) //客户详情
|
||||||
this.policy = JSON.parse(localStorage['preserve-policy'])
|
this.policy = JSON.parse(localStorage['preserve-policy'])
|
||||||
@@ -218,6 +248,75 @@ export default {
|
|||||||
amtFormat1: filters.amtFormat1
|
amtFormat1: filters.amtFormat1
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.customerInfo.customerMobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
if (!this.isCancel) {
|
||||||
|
this.$toast('请先获取验证码')
|
||||||
|
}
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.isPassedCardCheck = true
|
||||||
|
this.nextStep()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCancel = true
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
//获取试算信息
|
//获取试算信息
|
||||||
getTrial(data) {
|
getTrial(data) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
@@ -432,11 +531,43 @@ export default {
|
|||||||
mobile: this.customerInfo.customerMobile,
|
mobile: this.customerInfo.customerMobile,
|
||||||
name: ctBonusDTONew.accountName
|
name: ctBonusDTONew.accountName
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 银行卡鉴权[白名单用户自动跳过]
|
||||||
|
const whiteRes = await getWhitelist({
|
||||||
|
idNo: params.idNo,
|
||||||
|
name: params.name,
|
||||||
|
bankNo: params.account,
|
||||||
|
whiteType: 'edor_bank_check'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (whiteRes.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (whiteRes.content && whiteRes.content.length) {
|
||||||
|
// 用户在白名单内不做操作
|
||||||
|
}
|
||||||
|
// 用户不再白名单内做银行卡鉴权
|
||||||
|
else {
|
||||||
|
// 没通过鉴权进行银行卡鉴权
|
||||||
|
if (!this.isPassedCardCheck) {
|
||||||
|
// 鉴权失败未达到3次调接口鉴权
|
||||||
|
if (this.cardAuthCount < 3) {
|
||||||
let res = await checkCard(params)
|
let res = await checkCard(params)
|
||||||
this.$toast.clear()
|
this.$toast.clear()
|
||||||
if (res.result != '0') {
|
if (res.result != '0') {
|
||||||
|
this.cardAuthCount++
|
||||||
return this.$toast(res.resultMessage)
|
return this.$toast(res.resultMessage)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 超过3次调用短信验证
|
||||||
|
else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(whiteRes.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
let wtBonusDTOList = [this.ctBonusDTO, ctBonusDTONew]
|
let wtBonusDTOList = [this.ctBonusDTO, ctBonusDTONew]
|
||||||
let data = {
|
let data = {
|
||||||
|
|||||||
@@ -135,20 +135,43 @@
|
|||||||
@cancel="isAreaListShow = false"
|
@cancel="isAreaListShow = false"
|
||||||
/>
|
/>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
|
|
||||||
|
<!-- 短信验证弹窗 -->
|
||||||
|
<van-dialog v-model="isCaptchaModalShow" title="提示" show-cancel-button :before-close="onCaptchaConfirm" @cancel="onCaptchaCancel">
|
||||||
|
<van-cell>
|
||||||
|
<p class="fs14">为确保是您本人操作,短信验证码将发送至您手机号{{ encryptMobile }},请您输入验证码以完成后续操作。</p>
|
||||||
|
</van-cell>
|
||||||
|
<van-field v-model="code" type="number" :maxlength="6" center clearable label="短信验证码" placeholder="请输入短信验证码">
|
||||||
|
<template #button>
|
||||||
|
<van-button size="small" type="danger" :disabled="countDownNum !== 0" @click="getCaptcha">{{
|
||||||
|
countDownNum === 0 ? '获取验证码' : countDownNum | countDownText
|
||||||
|
}}</van-button>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { Cell, CellGroup, Field, RadioGroup, Radio, Popup, List, Switch, Toast, SwitchCell, Icon, Area } from 'vant'
|
import { Cell, CellGroup, Field, RadioGroup, Radio, Popup, List, Switch, Toast, SwitchCell, Icon, Area } from 'vant'
|
||||||
import { saveInformation, getOrderDetail, checkCard } from '@/api/ebiz/sale/sale'
|
import { saveInformation, getOrderDetail, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||||
import utilsAge from '@/assets/js/utils/age'
|
import utilsAge from '@/assets/js/utils/age'
|
||||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||||
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
||||||
import SelectBankName from '@/components/ebiz/account/SelectBankName'
|
import SelectBankName from '@/components/ebiz/account/SelectBankName'
|
||||||
import areaList from '@/assets/js/utils/area'
|
import areaList from '@/assets/js/utils/area'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
cardAuthCount: 0,
|
||||||
|
isCaptchaModalShow: false,
|
||||||
|
code: '',
|
||||||
|
sid: '',
|
||||||
|
countDownNum: 0,
|
||||||
|
countDownTimer: null,
|
||||||
|
isPassedCardCheck: false,
|
||||||
|
isCancel: false,
|
||||||
inputShow: true, //模糊查询功能
|
inputShow: true, //模糊查询功能
|
||||||
islistShow: false, //选择银行弹窗
|
islistShow: false, //选择银行弹窗
|
||||||
// 选中后传给后端的投保人或者被保险人名字
|
// 选中后传给后端的投保人或者被保险人名字
|
||||||
@@ -201,6 +224,75 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async getCaptcha() {
|
||||||
|
let data = {
|
||||||
|
operateType: 'appntInfoEntry',
|
||||||
|
type: 'H5',
|
||||||
|
operateCode: this.appntDTO.mobile,
|
||||||
|
system: 'agentApp',
|
||||||
|
operateCodeType: '0'
|
||||||
|
}
|
||||||
|
//获取验证码
|
||||||
|
try {
|
||||||
|
let res = await getAuthCode(data)
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
this.sid = res.sessionId
|
||||||
|
this.countDownNum = 60
|
||||||
|
this.countDownTimer = setInterval(() => {
|
||||||
|
this.countDownNum--
|
||||||
|
if (this.countDownNum <= 0) {
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
|
this.$toast('网络异常')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async onCaptchaConfirm(action, done) {
|
||||||
|
if (!this.sid) {
|
||||||
|
if (!this.isCancel) {
|
||||||
|
this.$toast('请先获取验证码')
|
||||||
|
}
|
||||||
|
done(false)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (!this.code.trim()) {
|
||||||
|
done(false)
|
||||||
|
return this.$toast('请输入验证码')
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let res = await autchCodeCheck({
|
||||||
|
smsId: this.sid,
|
||||||
|
code: this.code
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
this.isPassedCardCheck = true
|
||||||
|
this.next()
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.$toast('网络异常')
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
this.onCaptchaCancel()
|
||||||
|
done()
|
||||||
|
},
|
||||||
|
onCaptchaCancel() {
|
||||||
|
this.isCancel = true
|
||||||
|
this.isCaptchaModalShow = false
|
||||||
|
clearInterval(this.countDownTimer)
|
||||||
|
this.countDownTimer = null
|
||||||
|
this.countDownNum = 0
|
||||||
|
this.sid = ''
|
||||||
|
this.code = ''
|
||||||
|
},
|
||||||
areaSelect() {
|
areaSelect() {
|
||||||
this.isAreaListShow = true
|
this.isAreaListShow = true
|
||||||
this.$refs['areaSelect'].reset('450000')
|
this.$refs['areaSelect'].reset('450000')
|
||||||
@@ -340,6 +432,25 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 银行卡鉴权[白名单用户自动跳过]
|
||||||
|
const whiteRes = await getWhitelist({
|
||||||
|
idNo: cardData.idNo,
|
||||||
|
name: cardData.name,
|
||||||
|
bankNo: this.bankId,
|
||||||
|
whiteType: 'sale_bank_check'
|
||||||
|
})
|
||||||
|
console.log('白名单查询结果: ', whiteRes)
|
||||||
|
|
||||||
|
if (whiteRes.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (whiteRes.content && whiteRes.content.length) {
|
||||||
|
// 用户在白名单内不做操作
|
||||||
|
}
|
||||||
|
// 用户不再白名单内做银行卡鉴权
|
||||||
|
else {
|
||||||
|
if (!this.isPassedCardCheck) {
|
||||||
|
// 鉴权次数未达到3次
|
||||||
|
if (this.cardAuthCount < 3) {
|
||||||
this.$toast.loading({
|
this.$toast.loading({
|
||||||
duration: 0, // 持续展示 toast
|
duration: 0, // 持续展示 toast
|
||||||
forbidClick: true, // 禁用背景点击
|
forbidClick: true, // 禁用背景点击
|
||||||
@@ -348,9 +459,22 @@ export default {
|
|||||||
})
|
})
|
||||||
let res = await checkCard(cardData)
|
let res = await checkCard(cardData)
|
||||||
this.$toast.clear()
|
this.$toast.clear()
|
||||||
if (res.result != '0') {
|
if (res.result !== '0') {
|
||||||
|
this.cardAuthCount++
|
||||||
return this.$toast(res.resultMessage)
|
return this.$toast(res.resultMessage)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 鉴权次数达到3次
|
||||||
|
else {
|
||||||
|
this.isCaptchaModalShow = true
|
||||||
|
this.isCancel = false
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(whiteRes.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
let data = {}
|
let data = {}
|
||||||
//支付失败换卡
|
//支付失败换卡
|
||||||
@@ -578,6 +702,12 @@ export default {
|
|||||||
listenChange() {
|
listenChange() {
|
||||||
const { bankId, bank } = this
|
const { bankId, bank } = this
|
||||||
return { bankId, bank }
|
return { bankId, bank }
|
||||||
|
},
|
||||||
|
encryptMobile() {
|
||||||
|
if (this.appntDTO && this.appntDTO.mobile) {
|
||||||
|
return this.appntDTO.mobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
|
}
|
||||||
|
return ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@@ -595,6 +725,15 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
filters: {
|
||||||
|
countDownText(val) {
|
||||||
|
if (isNaN(parseFloat(val))) {
|
||||||
|
return val
|
||||||
|
} else {
|
||||||
|
return `${val} s`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
components: {
|
components: {
|
||||||
[Cell.name]: Cell,
|
[Cell.name]: Cell,
|
||||||
[CellGroup.name]: CellGroup,
|
[CellGroup.name]: CellGroup,
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ import { checkPhone } from '@/api/ebiz/customer/customer'
|
|||||||
import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
||||||
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
||||||
import Formatter from '@/assets/js/utils/date-utils.js'
|
import Formatter from '@/assets/js/utils/date-utils.js'
|
||||||
|
import { getWhitelist } from '@/api/ebiz/whitelist'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@@ -342,6 +343,19 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
fakeFaceAuth(expect) {
|
||||||
|
console.log('模拟调用人脸识别')
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
setTimeout(() => {
|
||||||
|
console.log('模拟人脸识别完成')
|
||||||
|
if (expect) {
|
||||||
|
resolve({ state: '0' })
|
||||||
|
} else {
|
||||||
|
reject({ state: '0' })
|
||||||
|
}
|
||||||
|
}, 2000)
|
||||||
|
})
|
||||||
|
},
|
||||||
appCallBack(data) {
|
appCallBack(data) {
|
||||||
if (data.trigger == 'left_button_click') {
|
if (data.trigger == 'left_button_click') {
|
||||||
return this.$dialog
|
return this.$dialog
|
||||||
@@ -460,7 +474,6 @@ export default {
|
|||||||
},
|
},
|
||||||
// 获取消息和阅读状态
|
// 获取消息和阅读状态
|
||||||
realPeopelCheck() {
|
realPeopelCheck() {
|
||||||
let that = this
|
|
||||||
this.$toast.loading({
|
this.$toast.loading({
|
||||||
// 持续展示 toast
|
// 持续展示 toast
|
||||||
duration: 0,
|
duration: 0,
|
||||||
@@ -492,6 +505,7 @@ export default {
|
|||||||
this.customerMobile = insuredData.mobile
|
this.customerMobile = insuredData.mobile
|
||||||
this.encyCustomerMobile = this.customerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
this.encyCustomerMobile = this.customerMobile.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2')
|
||||||
}
|
}
|
||||||
|
// eslint-disable-next-line no-unused-vars
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
checkPhone(data).then(res => {
|
checkPhone(data).then(res => {
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
@@ -608,19 +622,31 @@ export default {
|
|||||||
// 人脸识别
|
// 人脸识别
|
||||||
async start_ocr(val) {
|
async start_ocr(val) {
|
||||||
// val 0投保人 1被保险人 2本人
|
// val 0投保人 1被保险人 2本人
|
||||||
/////
|
|
||||||
console.log(this.isWeixin, 'this.isWeixin')
|
|
||||||
console.log(val, 'val')
|
|
||||||
let that = this
|
let that = this
|
||||||
if (this.isWeixin) {
|
if (this.isWeixin) {
|
||||||
window.localStorage.setItem('sign-val', val)
|
window.localStorage.setItem('sign-val', val)
|
||||||
window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign))
|
window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign))
|
||||||
if (val == '0' || val == '2') {
|
if (val == '0' || val == '2') {
|
||||||
//idtype不为身份证跳过人脸识别
|
//idtype不为身份证跳过人脸识别
|
||||||
// if (JSON.parse(this.$route.query.saleInsuredInfo).idType != '1' || JSON.parse(this.$route.query.saleInsuredInfo).age < '18') {
|
|
||||||
if (JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).idType != '1') {
|
if (JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).idType != '1') {
|
||||||
that.goUrl()
|
that.goUrl()
|
||||||
} else {
|
} else {
|
||||||
|
// 白名单校验
|
||||||
|
const res = await getWhitelist({
|
||||||
|
idNo: this.saleInsuredInfo.idNo,
|
||||||
|
name: this.saleInsuredInfo.name,
|
||||||
|
whiteType: 'sale_face_show'
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.goUrl()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
//RID 状态--有效
|
//RID 状态--有效
|
||||||
if (this.realPeopleRidInfo.appntRidFlag && this.realPeopleRidInfo.appntRidFlag == '0') {
|
if (this.realPeopleRidInfo.appntRidFlag && this.realPeopleRidInfo.appntRidFlag == '0') {
|
||||||
// 手机号鉴权 --通过
|
// 手机号鉴权 --通过
|
||||||
@@ -632,9 +658,6 @@ export default {
|
|||||||
}
|
}
|
||||||
// 人脸识别
|
// 人脸识别
|
||||||
if (this.faceAuthCount.appnt < this.smsAuthNum) {
|
if (this.faceAuthCount.appnt < this.smsAuthNum) {
|
||||||
// this.idcardData.typeface = !this.idcardData.typeface
|
|
||||||
// this.idcardData.idcardName = JSON.parse(this.$route.query.saleInsuredInfo).name
|
|
||||||
// this.idcardData.idcardNumber = JSON.parse(this.$route.query.saleInsuredInfo).idNo
|
|
||||||
this.idcardData.realName = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).name
|
this.idcardData.realName = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).name
|
||||||
this.idcardData.idno = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).idNo
|
this.idcardData.idno = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).idNo
|
||||||
this.recognition()
|
this.recognition()
|
||||||
@@ -646,10 +669,28 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
window.localStorage.setItem('sign-val', val)
|
window.localStorage.setItem('sign-val', val)
|
||||||
window.localStorage.setItem('sign-insured', JSON.stringify(that.insuredSign))
|
window.localStorage.setItem('sign-insured', JSON.stringify(that.insuredSign))
|
||||||
if (JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).idType != '1' || JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age < '18') {
|
if (
|
||||||
// if (JSON.parse(this.$route.query.saleInsuredPersonInfo).idType != '1') {
|
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).idType != '1' ||
|
||||||
|
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age < '18'
|
||||||
|
) {
|
||||||
that.insuredUrl()
|
that.insuredUrl()
|
||||||
} else {
|
} else {
|
||||||
|
// 白名单校验
|
||||||
|
const res = await getWhitelist({
|
||||||
|
idNo: this.saleInsuredPersonInfo.idNo,
|
||||||
|
name: this.saleInsuredPersonInfo.name,
|
||||||
|
whiteType: 'sale_face_show'
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.insuredUrl()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
//RID 状态--有效
|
//RID 状态--有效
|
||||||
if (this.realPeopleRidInfo.insureRidFlag && this.realPeopleRidInfo.insureRidFlag == '0') {
|
if (this.realPeopleRidInfo.insureRidFlag && this.realPeopleRidInfo.insureRidFlag == '0') {
|
||||||
// 手机号鉴权 --通过
|
// 手机号鉴权 --通过
|
||||||
@@ -661,9 +702,6 @@ export default {
|
|||||||
}
|
}
|
||||||
// 人脸识别
|
// 人脸识别
|
||||||
if (this.faceAuthCount.insured < this.smsAuthNum) {
|
if (this.faceAuthCount.insured < this.smsAuthNum) {
|
||||||
// this.idcardData.typeface = !this.idcardData.typeface
|
|
||||||
// this.idcardData.idcardName = JSON.parse(this.$route.query.saleInsuredPersonInfo).name
|
|
||||||
// this.idcardData.idcardNumber = JSON.parse(this.$route.query.saleInsuredPersonInfo).idNo
|
|
||||||
this.idcardData.realName = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).name
|
this.idcardData.realName = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).name
|
||||||
this.idcardData.idno = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).idNo
|
this.idcardData.idno = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).idNo
|
||||||
this.recognition()
|
this.recognition()
|
||||||
@@ -678,9 +716,23 @@ export default {
|
|||||||
window.localStorage.setItem('sign-val', val)
|
window.localStorage.setItem('sign-val', val)
|
||||||
window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign))
|
window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign))
|
||||||
if (this.saleInsuredInfo.idType != '1') {
|
if (this.saleInsuredInfo.idType != '1') {
|
||||||
// if (this.saleInsuredInfo.idType != '1' || this.saleInsuredInfo.age < '18') {
|
|
||||||
that.goUrl()
|
that.goUrl()
|
||||||
} else {
|
} else {
|
||||||
|
// 白名单校验
|
||||||
|
const res = await getWhitelist({
|
||||||
|
idNo: this.saleInsuredInfo.idNo,
|
||||||
|
name: this.saleInsuredInfo.name,
|
||||||
|
whiteType: 'sale_face_show'
|
||||||
|
})
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.goUrl()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
//RID 状态--有效
|
//RID 状态--有效
|
||||||
if (this.realPeopleRidInfo.appntRidFlag && this.realPeopleRidInfo.appntRidFlag == '0') {
|
if (this.realPeopleRidInfo.appntRidFlag && this.realPeopleRidInfo.appntRidFlag == '0') {
|
||||||
// 手机号鉴权 --通过
|
// 手机号鉴权 --通过
|
||||||
@@ -691,11 +743,8 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (this.faceAuthCount.appnt < this.smsAuthNum) {
|
if (this.faceAuthCount.appnt < this.smsAuthNum) {
|
||||||
// 原人脸识别
|
// eslint-disable-next-line no-undef
|
||||||
console.log(this.faceAuthCount, 'faceAuthCount')
|
const authRes = await EWebBridge.webCallAppInJs('face_auth', {
|
||||||
console.log(this.smsAuthNum, 'smsAuthNum')
|
|
||||||
console.log('this.faceAuthCount.appnt < this.smsAuthNum', this.faceAuthCount.appnt < this.smsAuthNum)
|
|
||||||
EWebBridge.webCallAppInJs('face_auth', {
|
|
||||||
businessSource: '1', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
businessSource: '1', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
||||||
number: that.saleInsuredInfo.idNo, //身份证号码
|
number: that.saleInsuredInfo.idNo, //身份证号码
|
||||||
name: that.saleInsuredInfo.name //姓名
|
name: that.saleInsuredInfo.name //姓名
|
||||||
@@ -712,6 +761,16 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
// const authRes = await this.fakeFaceAuth(true)
|
||||||
|
if (JSON.parse(authRes).state == '1') {
|
||||||
|
this.goUrl()
|
||||||
|
} else {
|
||||||
|
this.faceAuthCount.appnt++
|
||||||
|
if (this.faceAuthCount.appnt >= this.smsAuthNum) {
|
||||||
|
this.operaFlag = 'appnt'
|
||||||
|
this.realPeopelCheck()
|
||||||
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.operaFlag = 'appnt'
|
this.operaFlag = 'appnt'
|
||||||
this.realPeopelCheck()
|
this.realPeopelCheck()
|
||||||
@@ -720,10 +779,26 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
window.localStorage.setItem('sign-val', val)
|
window.localStorage.setItem('sign-val', val)
|
||||||
window.localStorage.setItem('sign-insured', JSON.stringify(that.insuredSign))
|
window.localStorage.setItem('sign-insured', JSON.stringify(that.insuredSign))
|
||||||
// if (this.saleInsuredPersonInfo.idType != '1') {
|
|
||||||
if (this.saleInsuredPersonInfo.idType != '1' || this.saleInsuredPersonInfo.age < '18') {
|
if (this.saleInsuredPersonInfo.idType != '1' || this.saleInsuredPersonInfo.age < '18') {
|
||||||
that.insuredUrl()
|
that.insuredUrl()
|
||||||
} else {
|
} else {
|
||||||
|
// 白名单校验
|
||||||
|
const res = await getWhitelist({
|
||||||
|
idNo: this.saleInsuredPersonInfo.idNo,
|
||||||
|
name: this.saleInsuredPersonInfo.name,
|
||||||
|
whiteType: 'sale_face_show'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (res.result === '0') {
|
||||||
|
// 用户在白名单内
|
||||||
|
if (res.content && res.content.length) {
|
||||||
|
this.insuredUrl()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$toast(res.resultMessage)
|
||||||
|
}
|
||||||
|
|
||||||
//RID 状态--有效
|
//RID 状态--有效
|
||||||
if (this.realPeopleRidInfo.insureRidFlag && this.realPeopleRidInfo.insureRidFlag == '0') {
|
if (this.realPeopleRidInfo.insureRidFlag && this.realPeopleRidInfo.insureRidFlag == '0') {
|
||||||
// 手机号鉴权 --通过
|
// 手机号鉴权 --通过
|
||||||
@@ -736,7 +811,8 @@ export default {
|
|||||||
// 人脸识别
|
// 人脸识别
|
||||||
if (this.faceAuthCount.insured < this.smsAuthNum) {
|
if (this.faceAuthCount.insured < this.smsAuthNum) {
|
||||||
// 调原生人脸识别
|
// 调原生人脸识别
|
||||||
EWebBridge.webCallAppInJs('face_auth', {
|
// eslint-disable-next-line no-undef
|
||||||
|
const authRes = await EWebBridge.webCallAppInJs('face_auth', {
|
||||||
businessSource: '1', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
businessSource: '1', //业务来源:1-电投,2-入司,3-理赔,4-保全
|
||||||
number: that.saleInsuredPersonInfo.idNo, //身份证号码
|
number: that.saleInsuredPersonInfo.idNo, //身份证号码
|
||||||
name: that.saleInsuredPersonInfo.name //姓名
|
name: that.saleInsuredPersonInfo.name //姓名
|
||||||
@@ -752,6 +828,17 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
// const authRes = await this.fakeFaceAuth(true)
|
||||||
|
|
||||||
|
if (JSON.parse(authRes).state == '1') {
|
||||||
|
this.insuredUrl()
|
||||||
|
} else {
|
||||||
|
this.faceAuthCount.insured++
|
||||||
|
if (this.faceAuthCount.insured >= this.smsAuthNum) {
|
||||||
|
this.operaFlag = 'insured'
|
||||||
|
this.realPeopelCheck()
|
||||||
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.operaFlag = 'insured'
|
this.operaFlag = 'insured'
|
||||||
this.realPeopelCheck()
|
this.realPeopelCheck()
|
||||||
@@ -816,7 +903,6 @@ export default {
|
|||||||
let that = this
|
let that = this
|
||||||
let path = ''
|
let path = ''
|
||||||
if (that.insuredSign[0].documentStatus == 0) {
|
if (that.insuredSign[0].documentStatus == 0) {
|
||||||
debugger
|
|
||||||
path = 'insuranceInformation'
|
path = 'insuranceInformation'
|
||||||
} else {
|
} else {
|
||||||
path = 'SignatureOfElectronic'
|
path = 'SignatureOfElectronic'
|
||||||
@@ -861,6 +947,7 @@ export default {
|
|||||||
localStorage.productCode
|
localStorage.productCode
|
||||||
)
|
)
|
||||||
if (this.changeCard) {
|
if (this.changeCard) {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('bridge', {
|
EWebBridge.webCallAppInJs('bridge', {
|
||||||
flag: 'share',
|
flag: 'share',
|
||||||
extra: {
|
extra: {
|
||||||
@@ -872,10 +959,6 @@ export default {
|
|||||||
localStorage.orderNo +
|
localStorage.orderNo +
|
||||||
'&token=' +
|
'&token=' +
|
||||||
localStorage.token +
|
localStorage.token +
|
||||||
// '&saleInsuredInfo=' +
|
|
||||||
// encodeURI(localStorage.saleInsuredInfo) +
|
|
||||||
// '&saleInsuredPersonInfo=' +
|
|
||||||
// encodeURI(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')) +
|
|
||||||
'&relationToAppnt=' +
|
'&relationToAppnt=' +
|
||||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt +
|
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt +
|
||||||
'&shareCode=' +
|
'&shareCode=' +
|
||||||
@@ -889,6 +972,7 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
EWebBridge.webCallAppInJs('bridge', {
|
EWebBridge.webCallAppInJs('bridge', {
|
||||||
flag: 'share',
|
flag: 'share',
|
||||||
extra: {
|
extra: {
|
||||||
@@ -900,10 +984,6 @@ export default {
|
|||||||
localStorage.orderNo +
|
localStorage.orderNo +
|
||||||
'&token=' +
|
'&token=' +
|
||||||
localStorage.token +
|
localStorage.token +
|
||||||
// '&saleInsuredInfo=' +
|
|
||||||
// encodeURI(localStorage.saleInsuredInfo) +
|
|
||||||
// '&saleInsuredPersonInfo=' +
|
|
||||||
// encodeURI(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')) +
|
|
||||||
'&relationToAppnt=' +
|
'&relationToAppnt=' +
|
||||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt +
|
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt +
|
||||||
'&shareCode=' +
|
'&shareCode=' +
|
||||||
@@ -1141,7 +1221,6 @@ export default {
|
|||||||
this.realPeopleRidInfo.insureRidFlag = res.orderDTO.insuredDTOs[0].ridStatus
|
this.realPeopleRidInfo.insureRidFlag = res.orderDTO.insuredDTOs[0].ridStatus
|
||||||
//存code区分万能型产品
|
//存code区分万能型产品
|
||||||
let productCode, riskName
|
let productCode, riskName
|
||||||
console.log('isDoubleMailRisk', that.orderInfo.isDoubleMailRisk)
|
|
||||||
let isDoubleMailRisk = that.orderInfo.isDoubleMailRisk
|
let isDoubleMailRisk = that.orderInfo.isDoubleMailRisk
|
||||||
if (isDoubleMailRisk == '1') {
|
if (isDoubleMailRisk == '1') {
|
||||||
productCode = 'GFRS_M0017'
|
productCode = 'GFRS_M0017'
|
||||||
@@ -1154,8 +1233,6 @@ export default {
|
|||||||
this.riskName = riskName
|
this.riskName = riskName
|
||||||
localStorage.setItem('riskName', riskName)
|
localStorage.setItem('riskName', riskName)
|
||||||
|
|
||||||
console.log('riskName', that.orderInfo.isDoubleMailRisk)
|
|
||||||
// nsuredDTOs[0].riskDTOLst
|
|
||||||
if (this.relationToAppnt != '1') {
|
if (this.relationToAppnt != '1') {
|
||||||
this.activeNames.push(res.orderDTO.insuredDTOs.length + 1)
|
this.activeNames.push(res.orderDTO.insuredDTOs.length + 1)
|
||||||
} else {
|
} else {
|
||||||
@@ -1233,7 +1310,6 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
getSignInvalid() {
|
getSignInvalid() {
|
||||||
// let that = this
|
|
||||||
this.$toast.loading({
|
this.$toast.loading({
|
||||||
duration: 0, // 持续展示 toast
|
duration: 0, // 持续展示 toast
|
||||||
|
|
||||||
@@ -1265,7 +1341,7 @@ export default {
|
|||||||
let data = {
|
let data = {
|
||||||
sign: signInvalid
|
sign: signInvalid
|
||||||
}
|
}
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise(resolve => {
|
||||||
checkSignInvalid(data).then(res => {
|
checkSignInvalid(data).then(res => {
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
that.$toast.clear()
|
that.$toast.clear()
|
||||||
@@ -1277,10 +1353,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 微信人脸验证后 返回值 操作
|
// 微信人脸验证后 返回值 操作
|
||||||
sendimage(e) {
|
sendimage(e) {
|
||||||
// let that = this
|
|
||||||
if (e == '0') {
|
if (e == '0') {
|
||||||
// this.$toast.clear()
|
|
||||||
// this.$toast('人脸检测成功')
|
|
||||||
// 1 为被保险人
|
// 1 为被保险人
|
||||||
if (window.sessionStorage.shareCode == '1') {
|
if (window.sessionStorage.shareCode == '1') {
|
||||||
// 被保人微信端人脸识别成功
|
// 被保人微信端人脸识别成功
|
||||||
@@ -1324,7 +1397,7 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
getRecognitionUrl() {
|
getRecognitionUrl() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise(() => {
|
||||||
this.idcardData.redirectUrl = location.origin + this.replaceSearch()
|
this.idcardData.redirectUrl = location.origin + this.replaceSearch()
|
||||||
let data = {
|
let data = {
|
||||||
realName: this.idcardData.realName,
|
realName: this.idcardData.realName,
|
||||||
@@ -1332,10 +1405,8 @@ export default {
|
|||||||
redirectUrl: this.idcardData.redirectUrl,
|
redirectUrl: this.idcardData.redirectUrl,
|
||||||
businessSource: this.idcardData.businessSource
|
businessSource: this.idcardData.businessSource
|
||||||
}
|
}
|
||||||
console.log('获取URL请求参数', data)
|
|
||||||
getRecognitionUrl(data).then(
|
getRecognitionUrl(data).then(
|
||||||
res => {
|
res => {
|
||||||
console.log('getRecognitionUrl', res)
|
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
localStorage.setItem('faceAuthWeXin-requestId', JSON.stringify(res.content.requestId))
|
localStorage.setItem('faceAuthWeXin-requestId', JSON.stringify(res.content.requestId))
|
||||||
localStorage.setItem('faceAuthWeXin-bizToken', JSON.stringify(res.content.bizToken))
|
localStorage.setItem('faceAuthWeXin-bizToken', JSON.stringify(res.content.bizToken))
|
||||||
@@ -1351,10 +1422,9 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
getRecognitionResult(requestId, bizToken) {
|
getRecognitionResult(requestId, bizToken) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise(() => {
|
||||||
getRecognitionResult({ requestId, bizToken }).then(
|
getRecognitionResult({ requestId, bizToken }).then(
|
||||||
res => {
|
res => {
|
||||||
console.log('getRecognitionResult', res)
|
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
this.recognizeResult = res.result
|
this.recognizeResult = res.result
|
||||||
} else {
|
} else {
|
||||||
@@ -1442,7 +1512,6 @@ export default {
|
|||||||
[Cell.name]: Cell,
|
[Cell.name]: Cell,
|
||||||
[CellGroup.name]: CellGroup,
|
[CellGroup.name]: CellGroup,
|
||||||
[Collapse.name]: Collapse,
|
[Collapse.name]: Collapse,
|
||||||
// UploadImageFile: UploadImageFile,
|
|
||||||
[CollapseItem.name]: CollapseItem,
|
[CollapseItem.name]: CollapseItem,
|
||||||
[Dialog.name]: Dialog,
|
[Dialog.name]: Dialog,
|
||||||
[Field.name]: Field,
|
[Field.name]: Field,
|
||||||
|
|||||||
Reference in New Issue
Block a user