测试签名,银行卡扫描

This commit is contained in:
mengxiaolong
2020-08-03 16:13:22 +08:00
parent fc8d92f9a4
commit 82037a6d43
3 changed files with 122 additions and 51 deletions

View File

@@ -35,7 +35,7 @@
<div class="title">问题件回复</div>
<textarea placeholder="请输入" v-model="newContract.feedback"></textarea>
</div>
<div class="checkedBox" v-if="issueType !== 3">
<div class="checkedBox" v-if="issueType !== '818901'">
<van-checkbox v-model="checked" class="checked" icon-size="16px" shape="square"
>本人认真阅读本新契约基本问题件对其有关内容已全部了解确认所上传资料均为真实资料如有虚假资料或不如实告知一切法律后果本人承担同意将其作为投保要约的有效组成部分并承诺遵守</van-checkbox
>
@@ -46,9 +46,9 @@
<van-field label-class="labels" label="处理方式">
<template #input>
<van-radio-group v-model="transfer.mode" direction="horizontal" class="radioGroup" @change="modeChange">
<van-radio name="1" icon-size="16px">继续转账</van-radio>
<van-radio name="2" icon-size="16px">终止转账</van-radio>
<van-radio name="3" icon-size="16px">更换卡号</van-radio>
<van-radio :name="1" icon-size="16px">继续转账</van-radio>
<van-radio :name="2" icon-size="16px">终止转账</van-radio>
<van-radio :name="3" icon-size="16px">更换卡号</van-radio>
</van-radio-group>
</template>
</van-field>
@@ -56,7 +56,7 @@
<div class="item">
<van-field v-model="transfer.back" @click="getBankListItem" label-class="labels" readonly label="开户银行" placeholder="请选择">
<template #button>
<van-button size="small" class="button" round color="#e4393c" type="primary" @click.stop="getBankInfo(true)">银行卡扫描</van-button>
<van-button size="small" class="button" round color="#e4393c" type="primary" @click.stop="toggleCardScan(true)">银行卡扫描</van-button>
</template>
</van-field>
</div>
@@ -79,11 +79,11 @@
<div class="autograph" v-if="issueType !== '818901'">
<div class="list">
<span>投保人/监护人亲笔签名</span>
<van-button class="button" round type="info" size="mini" color="#e4393c" @click="autograph">签名</van-button>
<van-button class="button" round type="info" size="mini" color="#e4393c" @click="autograph(0)">签名</van-button>
</div>
<div class="list">
<span>被投保人亲笔签名</span>
<van-button class="button" round type="info" size="mini" color="#e4393c" @click="autograph">签名</van-button>
<van-button class="button" round type="info" size="mini" color="#e4393c" @click="autograph(1)">签名</van-button>
</div>
</div>
<van-button type="primary" block color="#e4393c" class="next" @click="submit">下一步</van-button>
@@ -94,13 +94,23 @@
</ul>
</van-popup>
<div :class="{ showDiscern: 1, show: transfer.showDiscern }">
<van-icon name="cross" class="icon" @click="getBankInfo(false)" size="20" />
<bank-card-scan class="backContent" :scanShow="true" :clear="transfer.clear" @getScanInfo="getBankInfo"></bank-card-scan>
<van-icon name="cross" class="icon" @click.stop="toggleCardScan(false)" size="20" />
<bank-card-scan class="backContent" :scanShow="true" :clear="transfer.clear" @getScanInfo="getBankNo"></bank-card-scan>
</div>
<!-- 转账不成功问题件提示框 -->
<van-dialog v-model="showConfirm" title="标题" :show-confirm-button="false">
<p style="margin: 1em;" v-if="transfer.mode === 2">
如您选择终止转账我公司将按照承保前撤单处 请您谨慎选择
</p>
<p style="margin: 1em;" v-if="transfer.mode === 3">
变更银行账号后续期保险费如有默认使用新账 号信息进行转账支付
</p>
<van-button type="danger" block @click="showConfirm = false">确定</van-button>
</van-dialog>
</div>
</template>
<script>
import { Uploader, Checkbox, Field, Radio, RadioGroup, Popup, Overlay } from 'vant'
import { Uploader, Checkbox, Field, Radio, RadioGroup, Popup, Overlay, Dialog } from 'vant'
import { getBankList, uploadImg } from '@/api/ebiz/sale/sale'
import { getQuestionDetail } from '@/api/ebiz/questions'
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
@@ -116,22 +126,23 @@ export default {
[Radio.name]: Radio,
[RadioGroup.name]: RadioGroup,
[Popup.name]: Popup,
[Overlay.name]: Overlay
[Overlay.name]: Overlay,
[Dialog.name]: Dialog
},
data() {
return {
supplement: {
//补充材料
// 补充材料
problemDescription: '',
idImgList: [],
copyImgList: []
},
newContract: {
//新契约
// 新契约
feedback: ''
},
transfer: {
//转账失败
// 转账失败
mode: '',
back: '',
card: '',
@@ -141,14 +152,22 @@ export default {
showDiscern: false, //是否开启银行卡识别
clear: false //是否清空银行卡识别数据
},
checked: false, //勾选协议
// 勾选协议
checked: false,
dialog: {
//弹窗
// 弹窗
show: false,
type: 'confirm',
text: ''
},
issueType: 0
issueType: 0,
// 投保人是否已签名
policyholderSigned: false,
// 被保人是否已签名
insurantSigned: false,
// 接收验证码手机号码
phoneNum: '',
showConfirm: false
}
},
computed: {
@@ -162,9 +181,9 @@ export default {
},
methods: {
//签名
async autograph() {
async autograph(personType) {
// eslint-disable-next-line
const result = await EWebBridge.webCallAppInJs('ca_sign', {
const res = await EWebBridge.webCallAppInJs('ca_sign', {
name: '李凯',
type: '1',
number: '142727199301063550',
@@ -174,13 +193,28 @@ export default {
offset: 20,
pos: 3
})
console.log(result)
// 投保人签名
if (personType === 0 && res.state === '1') {
this.policyholderSigned = true
}
// 被保人签名
else if (personType === 1 && res.state === '1') {
this.insurantSigned = true
}
console.log(res)
},
getBankInfo(data) {
// 银行卡识别
console.log(1)
if (Object.prototype.toString.call(data) === '[object Boolean]') return (this.transfer.showDiscern = data)
console.log(2)
getBankNo(data) {
console.log(data)
},
toggleCardScan(data) {
this.transfer.showDiscern = data
if (data) {
console.log('set card')
localStorage.setItem('cardScanningType', 0)
} else {
console.log('remove card')
localStorage.removeItem('cardScanningType')
}
},
getBankListItem(item) {
this.transfer.show = !this.transfer.show
@@ -209,23 +243,27 @@ export default {
}
},
modeChange(mode) {
if (mode > 1) {
this.dialog.type = 'alert'
this.dialog.show = true
this.dialog.text =
mode === 2 ? '如您选择终止转账,我公司将按照承保前撤单处理,请您谨慎选择' : '变更银行账号后,续期保险费(如有)默认使用新账号信息进行转账支付。'
if (mode !== 1) {
this.showConfirm = true
}
},
afterRead(file, type) {
console.log(file)
console.log(type)
// uploadImg()
async afterRead(file) {
console.dir(file)
let data = new FormData()
data.append('imgPath', file.file)
let res = await uploadImg(data)
console.log(res)
},
submit() {
this.dialog = {
type: 'confirm',
show: true,
text: '为确定用户身份我们将向186xxxx8972此手机号发送验证码'
if (!this.checked) return this.$toast('请先同意协议')
if (this.policyholderSigned && this.insurantSigned) {
this.dialog = {
type: 'confirm',
show: true,
text: '为确定用户身份我们将向186xxxx8972此手机号发送验证码'
}
} else {
this.$toast('请完成全部签名后继续操作')
}
},
getMessage({ type, data }) {
@@ -260,6 +298,9 @@ export default {
}
</script>
<style lang="scss" scoped>
/deep/ .van-dialog__header {
padding-top: 1em;
}
#app .van-cell:not(:last-child):after {
border: 0;
}