测试签名,银行卡扫描

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

@@ -17,6 +17,7 @@
</div> </div>
</template> </template>
<script> <script>
import { getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
export default { export default {
name: 'shortMessage', name: 'shortMessage',
props: { props: {
@@ -35,7 +36,8 @@ export default {
}, },
data() { data() {
return { return {
code: '' code: '',
sid: ''
} }
}, },
watch: { watch: {
@@ -55,20 +57,45 @@ export default {
cancel() { cancel() {
this.$emit('update:show', false) this.$emit('update:show', false)
}, },
confirm() { async confirm() {
if (this.type === 'confirm') { if (!this.code.trim()) {
if (this.code.length !== 6) return this.$toast('请输入正确的验证码') return this.$toast('请输入验证码')
this.getMessage(this.code)
} else {
this.getMessage(false)
} }
this.cancel() let res = await autchCodeCheck({
}, smsId: this.sid,
getMessage(data) { code: this.code
this.$emit('getMessage', {
type: this.type,
data
}) })
console.log(res)
if (res.result === '0') {
//
this.$jump({
flag: 'h5',
extra: {
url: `${window.location.origin}/#/questions/result`
},
routerInfo: {
path: `/questions/result`
}
})
} else {
this.$toast('验证失败, 请重新获取验证码')
}
},
async getMessage() {
let data = {
operateType: 'appntInfoEntry',
type: 'H5',
operateCode: 18222023301,
system: 'agentApp',
operateCodeType: '0'
}
//获取验证码
let res = await getAuthCode(data)
if (res.result === '0') {
this.$toast('获取验证码成功')
}
console.log(res)
this.sid = res.sessionId
} }
} }
} }

View File

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

View File

@@ -133,6 +133,8 @@ export default {
}, },
methods: { methods: {
toDetail(item) { toDetail(item) {
// 保存当前选择的问题件信息
localStorage.setItem('currentProblemItem', JSON.stringify(item))
this.$jump({ this.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -200,6 +202,7 @@ export default {
} }
}, },
created() { created() {
localStorage.removeItem('currentProblemItem')
this.loadMore() this.loadMore()
}, },
filters: { filters: {