mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-09 08:46:43 +08:00
[FIX]保全-数据字典扩充,应用到数据字典的地方修改;续期账号变更
This commit is contained in:
@@ -6,8 +6,8 @@ const PolicyList = () => import('@/views/ebiz/preserve/common/PolicyList')
|
||||
|
||||
const RenewalInfo = () => import('@/views/ebiz/preserve/pc/RenewalInfo')
|
||||
const PcImageUpload = () => import('@/views/ebiz/preserve/pc/ImageUpload')
|
||||
const renewalConfirmation = () => import('@/views/ebiz/preserve/pc/RenewalConfirmation')
|
||||
const autopayAuthorization = () => import('@/views/ebiz/preserve/pc/AutopayAuthorization')
|
||||
const RenewalConfirmation = () => import('@/views/ebiz/preserve/pc/RenewalConfirmation')
|
||||
const AutopayAuthorization = () => import('@/views/ebiz/preserve/pc/AutopayAuthorization')
|
||||
|
||||
const contactInfo = () => import('@/views/ebiz/preserve/bb/ContactInfo')
|
||||
const contacAgreement = () => import('@/views/ebiz/preserve/bb/ContacAgreement')
|
||||
@@ -161,8 +161,8 @@ export default [
|
||||
},
|
||||
{
|
||||
path: '/preserve/pc/renewalConfirmation',
|
||||
name: 'renewalConfirmation',
|
||||
component: renewalConfirmation,
|
||||
name: 'RenewalConfirmation',
|
||||
component: RenewalConfirmation,
|
||||
meta: {
|
||||
title: '保全代办确认',
|
||||
index: 10
|
||||
@@ -188,8 +188,8 @@ export default [
|
||||
},
|
||||
{
|
||||
path: '/preserve/pc/autopayAuthorization',
|
||||
name: 'autopayAuthorization',
|
||||
component: autopayAuthorization,
|
||||
name: 'AutopayAuthorization',
|
||||
component: AutopayAuthorization,
|
||||
meta: {
|
||||
title: '签署自动转账授权书',
|
||||
index: 12
|
||||
|
||||
@@ -54,6 +54,8 @@ import { Divider, Tag, Row, Col, Checkbox, CheckboxGroup, List } from 'vant'
|
||||
import { queryEdorList } from '@/api/ebiz/preserve/preserve'
|
||||
import dataDic from './js/data-dictionary.js'
|
||||
import dateUtils from '@/assets/js/utils/date-utils'
|
||||
import filters from '@/views/ebiz/preserve/filters'
|
||||
|
||||
export default {
|
||||
name: 'ProgressInfo',
|
||||
data() {
|
||||
@@ -65,15 +67,7 @@ export default {
|
||||
},
|
||||
filters: {
|
||||
// 数据字典 id 转 text
|
||||
idToText: function(id, type) {
|
||||
let text = ''
|
||||
dataDic[type].some(item => {
|
||||
if (item.id == id) {
|
||||
text = item.text
|
||||
}
|
||||
})
|
||||
return text
|
||||
},
|
||||
idToText: filters.idToText,
|
||||
|
||||
date: function(value) {
|
||||
let date = new Date(value)
|
||||
|
||||
@@ -166,7 +166,9 @@ import { Field, CellGroup, Checkbox, Popup, Picker, Area } from 'vant'
|
||||
import SelectRadio from '@/components/ebiz/SelectRadio'
|
||||
import FieldDatePicter from '@/components/ebiz/FieldDatePicter'
|
||||
import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
|
||||
import DataDictionary from '@/assets/js/utils/data-dictionary'
|
||||
// import DataDictionary from '@/assets/js/utils/data-dictionary'
|
||||
import dataDic from '../js/data-dictionary.js'
|
||||
|
||||
import areaList from '@/assets/js/utils/area'
|
||||
import getAreaName from '@/assets/js/utils/get-area-name'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
@@ -175,7 +177,9 @@ import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
|
||||
import idNoCheck from '@/assets/js/utils/idNoCheck'
|
||||
import { idToData } from '../js/verification'
|
||||
import { selectComp } from '../js/methods'
|
||||
let relationToInsured = DataDictionary.relationToAppnt
|
||||
import filters from '@/views/ebiz/preserve/filters'
|
||||
|
||||
let relationToInsured = dataDic.edorRelationToAppnt
|
||||
|
||||
export default {
|
||||
name: 'beneficiaryInfoAdd',
|
||||
@@ -299,9 +303,9 @@ export default {
|
||||
;[this.popupShow, this.pickerType] = [true, pickerType]
|
||||
if (valueKey) this.valueKey = valueKey
|
||||
if (pickerType == '1') {
|
||||
this.columns = DataDictionary.nativeplace
|
||||
this.columns = dataDic.edorNativeplace
|
||||
} else if (pickerType == '2') {
|
||||
this.columns = DataDictionary.idType
|
||||
this.columns = dataDic.edorIdType
|
||||
} else if (pickerType == '7') {
|
||||
this.columns = relationToInsured
|
||||
}
|
||||
@@ -616,6 +620,9 @@ export default {
|
||||
this.effectiveDateTypeAble = false
|
||||
}
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
idToText: filters.idToText
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -33,16 +33,16 @@ export default {
|
||||
// 此处处理 this.path
|
||||
switch (this.entry) {
|
||||
case 'BB':
|
||||
this.path = '/preserve/ContactConfirmation?entry=BB'
|
||||
this.path = `/preserve/ContactConfirmation?entry=${this.entry}`
|
||||
break
|
||||
case 'BC':
|
||||
this.path = '/preserve/BeneficiaryConfirmation?entry=BC'
|
||||
this.path = `/preserve/BeneficiaryConfirmation?entry=${this.entry}`
|
||||
break
|
||||
case 'PC':
|
||||
this.path = '/preserve/pc/renewalConfirmation?entry=PC'
|
||||
this.path = `/preserve/pc/renewalConfirmation?entry=${this.entry}`
|
||||
break
|
||||
case 'CT':
|
||||
this.path = '/preserve/ct/surrenderConfirmation?entry=CT'
|
||||
this.path = `/preserve/ct/surrenderConfirmation?entry=${this.entry}`
|
||||
break
|
||||
case 'WT':
|
||||
this.path = ''
|
||||
|
||||
@@ -98,7 +98,7 @@ export default {
|
||||
authCode: '', // 验证码
|
||||
src: this.$assetsUrl + 'images/u6490.png', // 图片路径
|
||||
sessionId: '',
|
||||
isUnRead: false, //是否存在未阅读文档
|
||||
isUnRead: true, //是否存在未阅读文档
|
||||
|
||||
customerInfo: {},
|
||||
policy: {},
|
||||
|
||||
@@ -64,8 +64,8 @@ export default {
|
||||
res => {
|
||||
if (res.result == 0) {
|
||||
this.pdfList = res.content.surrenderSignList
|
||||
// this.pdfUrl = config.assetsUrl + `${this.pdfList[0].policyUrl}`//待后端开发
|
||||
this.pdfUrl = config.assetsUrl + 'edor/BB_0001.pdf' //TEST测试专用,暂时将url写死后端开发完成后删除
|
||||
this.pdfUrl = config.assetsUrl + `${this.pdfList[0].policyUrl}` //待后端开发
|
||||
// this.pdfUrl = config.assetsUrl + 'edor/BB_0001.pdf' //TEST测试专用,暂时将url写死后端开发完成后删除
|
||||
this.documentName = this.pdfList[0].documentName
|
||||
console.log('1111', this.pdfUrl) //TEST测试专用
|
||||
resolve()
|
||||
|
||||
@@ -121,41 +121,232 @@ export default {
|
||||
],
|
||||
// 银行卡类型
|
||||
edorBankType: [
|
||||
{ id: 'ABC', text: '农业银行' },
|
||||
{ id: 'BEA', text: '东亚银行' },
|
||||
{ id: 'BOB', text: '北京银行' },
|
||||
{ id: 'BOC', text: '中国银行' },
|
||||
{ id: 'BOCOM', text: '交通银行' },
|
||||
{ id: 'BOLZ', text: '柳州银行' },
|
||||
{ id: 'CCB', text: '建设银行' },
|
||||
{ id: 'CEB', text: '光大银行' },
|
||||
{ id: 'CGB', text: '广发银行' },
|
||||
{ id: 'CIB', text: '兴业银行' },
|
||||
{ id: 'CITIC', text: '中信银行' },
|
||||
{ id: 'CMB', text: '招商银行' },
|
||||
{ id: 'CMBC', text: '民生银行' },
|
||||
{ id: 'DGB', text: '东莞银行' },
|
||||
{ id: 'DLCB', text: '大连银行' },
|
||||
{ id: 'GBGB', text: '北部湾银行' },
|
||||
{ id: 'GLBANK', text: '桂林银行' },
|
||||
{ id: 'HXB', text: '华夏银行' },
|
||||
{ id: 'ICBC', text: '工商银行' },
|
||||
{ id: 'LZRCC', text: '农村信用合作联社' },
|
||||
{ id: 'MYSH', text: '绵阳商行' },
|
||||
{ id: 'NBCB', text: '宁波银行' },
|
||||
{ id: 'NCB', text: '南昌银行' },
|
||||
{ id: 'NJB', text: '南京银行' },
|
||||
{ id: 'PAB', text: '平安银行' },
|
||||
{ id: 'PSBC', text: '邮储银行' },
|
||||
{ id: 'SDPB', text: '浦发银行' },
|
||||
{ id: 'SHB', text: '上海银行' },
|
||||
{ id: 'YQB', text: '泉州银行' },
|
||||
{ id: 'ZZB', text: '郑州银行' }
|
||||
],
|
||||
//证件类型
|
||||
edorIdType: [
|
||||
{
|
||||
id: 'ABC',
|
||||
text: '农业银行'
|
||||
id: 1,
|
||||
text: '居民身份证'
|
||||
},
|
||||
{
|
||||
id: 'BOC',
|
||||
text: '中国银行'
|
||||
id: 2,
|
||||
text: '户口本'
|
||||
},
|
||||
{
|
||||
id: 'BOCOM',
|
||||
text: '交通银行'
|
||||
id: 3,
|
||||
text: '出生证'
|
||||
},
|
||||
{
|
||||
id: 'CCB',
|
||||
text: '建设银行'
|
||||
id: 4,
|
||||
text: '外国人护照'
|
||||
},
|
||||
{
|
||||
id: 'CEB',
|
||||
text: '光大银行'
|
||||
id: 5,
|
||||
text: '港澳居民来往内地通行证'
|
||||
},
|
||||
{
|
||||
id: 'CIB',
|
||||
text: '兴业银行'
|
||||
id: 6,
|
||||
text: '台湾居民来往大陆通行证'
|
||||
},
|
||||
{
|
||||
id: 'ICBC',
|
||||
text: '工商银行'
|
||||
id: 8,
|
||||
text: '外国人永久居留身份证'
|
||||
},
|
||||
{
|
||||
id: 'PSBC',
|
||||
text: '邮储银行'
|
||||
id: 9,
|
||||
text: '港澳台居民居住证'
|
||||
}
|
||||
],
|
||||
//投保人/被保险人关系
|
||||
edorRelationToAppnt: [
|
||||
{
|
||||
id: 1,
|
||||
text: '本人'
|
||||
},
|
||||
{
|
||||
id: 'CMB',
|
||||
text: '招商银行'
|
||||
id: 2,
|
||||
text: '配偶'
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
text: '父母'
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
text: '子女'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
text: '其他'
|
||||
}
|
||||
],
|
||||
//国家地区
|
||||
edorNativeplace: [
|
||||
{
|
||||
id: 1,
|
||||
text: '中国大陆'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
text: '中国香港'
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
text: '中国澳门'
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
text: '中国台湾'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
text: '英国'
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
text: '印度'
|
||||
},
|
||||
{
|
||||
id: 7,
|
||||
text: '意大利'
|
||||
},
|
||||
{
|
||||
id: 8,
|
||||
text: '以色列'
|
||||
},
|
||||
{
|
||||
id: 9,
|
||||
text: '新西兰'
|
||||
},
|
||||
{
|
||||
id: 10,
|
||||
text: '希腊'
|
||||
},
|
||||
{
|
||||
id: 11,
|
||||
text: '西班牙'
|
||||
},
|
||||
{
|
||||
id: 12,
|
||||
text: '威尔士'
|
||||
},
|
||||
{
|
||||
id: 13,
|
||||
text: '泰国'
|
||||
},
|
||||
{
|
||||
id: 14,
|
||||
text: '苏格兰'
|
||||
},
|
||||
{
|
||||
id: 15,
|
||||
text: '瑞士'
|
||||
},
|
||||
{
|
||||
id: 16,
|
||||
text: '瑞典'
|
||||
},
|
||||
{
|
||||
id: 17,
|
||||
text: '日本'
|
||||
},
|
||||
{
|
||||
id: 18,
|
||||
text: '葡萄牙'
|
||||
},
|
||||
{
|
||||
id: 19,
|
||||
text: '挪威'
|
||||
},
|
||||
{
|
||||
id: 20,
|
||||
text: '尼日利亚'
|
||||
},
|
||||
{
|
||||
id: 21,
|
||||
text: '美国'
|
||||
},
|
||||
{
|
||||
id: 22,
|
||||
text: '加拿大'
|
||||
},
|
||||
{
|
||||
id: 23,
|
||||
text: '荷兰'
|
||||
},
|
||||
{
|
||||
id: 24,
|
||||
text: '韩国'
|
||||
},
|
||||
{
|
||||
id: 25,
|
||||
text: '芬兰'
|
||||
},
|
||||
{
|
||||
id: 26,
|
||||
text: '法国'
|
||||
},
|
||||
{
|
||||
id: 27,
|
||||
text: '俄国'
|
||||
},
|
||||
{
|
||||
id: 28,
|
||||
text: '德国'
|
||||
},
|
||||
{
|
||||
id: 29,
|
||||
text: '波兰'
|
||||
},
|
||||
{
|
||||
id: 30,
|
||||
text: '巴西'
|
||||
},
|
||||
{
|
||||
id: 31,
|
||||
text: '澳大利亚'
|
||||
},
|
||||
{
|
||||
id: 32,
|
||||
text: '奥地利'
|
||||
},
|
||||
{
|
||||
id: 33,
|
||||
text: '爱尔兰'
|
||||
},
|
||||
{
|
||||
id: 34,
|
||||
text: '埃及'
|
||||
}
|
||||
]
|
||||
/*
|
||||
|
||||
@@ -1,92 +1,167 @@
|
||||
<!--自动转账授权书-续期账号变更-->
|
||||
<!--联系方式变更协议-->
|
||||
<template>
|
||||
<div class="autopay-authorization-container">
|
||||
<div class="pb20 pt20">
|
||||
<van-notice-bar :scrollable="false" v-if="time != 0" class="notice">{{ `提示:阅读时长需在${time}秒以上` }}</van-notice-bar>
|
||||
<div class="surrender-tip-content">
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${this.Time ? this.time : this.number}秒以上` }}</van-notice-bar>
|
||||
<iframe :src="src + pdfUrl" class="iframe"></iframe>
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30 fs14">
|
||||
<van-radio name="1">
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30 pr30 fs14">
|
||||
<van-radio name="1" @click="click">
|
||||
本人确认已阅读
|
||||
<span class="green">《国富人寿自动转账授权书》</span>
|
||||
<span class="red">《{{ documentName }}》</span>
|
||||
</van-radio>
|
||||
</van-radio-group>
|
||||
<div class="bg-white bottom-btn">
|
||||
<van-button type="danger" size="large" :disabled="isDisabledComplite" @click="next" v-no-more-click="2000">下一步</van-button>
|
||||
</div>
|
||||
<van-button type="danger" size="large" :disabled="isDisable" @click="goNext" v-no-more-click="1000">下一步</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { RadioGroup, Radio, Dialog, NoticeBar } from 'vant'
|
||||
// import { preserveSign } from '@/api/ebiz/preserve/preserve'
|
||||
import { changeEdor, queryConfirmDetail } from '@/api/ebiz/preserve/preserve'
|
||||
import config from '@/config'
|
||||
|
||||
export default {
|
||||
name: 'AutopayAuthorization',
|
||||
components: {
|
||||
[Radio.name]: Radio,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
[Radio.name]: Radio,
|
||||
[Dialog.name]: Dialog,
|
||||
[NoticeBar.name]: NoticeBar
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
radio: '',
|
||||
time: '10', //定时器时间
|
||||
timer: null, //定时器名称
|
||||
isDisabledComplite: true //完成按钮是否可以点击
|
||||
// 倒计时时间
|
||||
number: '',
|
||||
// 定时器时间
|
||||
time: '10',
|
||||
// 定时器名称
|
||||
timer: null,
|
||||
isOver: false,
|
||||
// 判断验证码是否开始倒计时
|
||||
Time: true,
|
||||
// 按钮是否可以点击
|
||||
isDisable: true,
|
||||
pdfUrl: '',
|
||||
documentName: '', //文档名称
|
||||
pdfList: [],
|
||||
customerInfo: JSON.parse(localStorage.getItem('preserve-customerInfo')),
|
||||
src: location.origin + '/pdfjs/web/viewer.html?file='
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
created() {
|
||||
this.timeOut()
|
||||
this.init()
|
||||
},
|
||||
mounted() {
|
||||
document.body.style.backgroundColor = '#fff'
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
// 初始化
|
||||
timeOut() {
|
||||
let timer = setInterval(() => {
|
||||
this.time--
|
||||
if (this.time <= 0) {
|
||||
this.time = 0
|
||||
this.radio = '0'
|
||||
clearInterval(timer)
|
||||
//信息初始化
|
||||
init() {
|
||||
return new Promise((resolve, reject) => {
|
||||
queryConfirmDetail({
|
||||
surrenderId: this.customerInfo.surrenderId,
|
||||
edorType: 'PC'
|
||||
}).then(
|
||||
res => {
|
||||
if (res.result == 0) {
|
||||
this.pdfList = res.content.surrenderSignList
|
||||
this.pdfUrl = config.assetsUrl + `${this.pdfList[0].policyUrl}` //待后端开发
|
||||
// this.pdfUrl = config.assetsUrl + 'edor/BB_0001.pdf' //TEST测试专用,暂时将url写死后端开发完成后删除
|
||||
this.documentName = this.pdfList[0].documentName
|
||||
console.log('1111', this.pdfUrl) //TEST测试专用
|
||||
resolve()
|
||||
} else {
|
||||
reject(this.$toast(res.resultMessage))
|
||||
}
|
||||
},
|
||||
error => {
|
||||
reject(this.$toast(error))
|
||||
}
|
||||
)
|
||||
})
|
||||
},
|
||||
timeOut() {
|
||||
let time = this.time
|
||||
this.Time = false
|
||||
this.number = `${time}`
|
||||
let timer = setInterval(() => {
|
||||
time--
|
||||
if (time <= 0) {
|
||||
time = 0
|
||||
clearInterval(timer)
|
||||
this.Time = true
|
||||
this.isOver = true
|
||||
}
|
||||
this.number = `${time}`
|
||||
}, 1000)
|
||||
},
|
||||
// 单选框
|
||||
readConfirm() {
|
||||
console.log(this.radio)
|
||||
if (this.radio == '1') {
|
||||
this.$dialog
|
||||
.alert({
|
||||
// 点击阅读时
|
||||
click() {
|
||||
if (this.isOver == false) {
|
||||
Dialog.confirm({
|
||||
title: '提示',
|
||||
className: 'dialog-alert',
|
||||
message: '该内容涉及您的重大权益,请您仔细阅读',
|
||||
confirmButtonColor: '#E9332E'
|
||||
showCancelButton: false
|
||||
}).then(() => {
|
||||
this.radio = ''
|
||||
})
|
||||
.then(() => {
|
||||
this.radio = '1'
|
||||
this.isDisabledComplite = false
|
||||
}
|
||||
},
|
||||
// 下一步
|
||||
goNext() {
|
||||
let data = {
|
||||
platformType: 'APP',
|
||||
edorType: 'PC',
|
||||
operateType: '03',
|
||||
surrenderId: this.customerInfo.surrenderId,
|
||||
edorApplyNo: this.customerInfo.edorApplyNo,
|
||||
signMediaDTO: {
|
||||
signId: this.pdfList[0].signId,
|
||||
surrenderId: this.customerInfo.surrenderId,
|
||||
documentStatus: '1'
|
||||
}
|
||||
}
|
||||
|
||||
changeEdor(data)
|
||||
.then(res => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
let path = '/preserve/pc/RenewalConfirmation?entry=PC'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#' + path
|
||||
},
|
||||
routerInfo: {
|
||||
path: path
|
||||
}
|
||||
})
|
||||
} else {
|
||||
if (this.radio == '') {
|
||||
this.isDisabledComplite = true
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
console.log(err)
|
||||
})
|
||||
}
|
||||
},
|
||||
next() {}
|
||||
computed: {
|
||||
listenChange() {
|
||||
const { isOver, radio } = this
|
||||
return { isOver, radio }
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
watch: {
|
||||
listenChange(val) {
|
||||
if (val.isOver == true && val.radio !== '') {
|
||||
this.isDisable = false
|
||||
} else {
|
||||
this.isDisable = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.img {
|
||||
height: 40px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.notice {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
@@ -95,6 +170,6 @@ export default {
|
||||
}
|
||||
.iframe {
|
||||
width: 100vw;
|
||||
height: 80vh;
|
||||
height: 75vh;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
<div>
|
||||
<!-- 银行卡 -->
|
||||
<div v-for="(item, index) in fileList" :key="index">
|
||||
<div v-if="item.isShow">
|
||||
<van-cell-group>
|
||||
<van-field required :label="item.label" disabled />
|
||||
</van-cell-group>
|
||||
@@ -16,13 +17,14 @@
|
||||
:after-read="afterRead"
|
||||
:before-delete="beforeDelete"
|
||||
class="mt10 ml20"
|
||||
:max-count="20"
|
||||
:max-count="item.max"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bg-white bottom-btn">
|
||||
<van-button type="danger" size="large" @click="nextStep" v-no-more-click="2000">下一步</van-button>
|
||||
</div>
|
||||
@@ -58,7 +60,10 @@ export default {
|
||||
imageInfoType: '3', // 影像类型
|
||||
subBusinessType: '3', // 影像归属 0 投保人 1 被保人 2 受益人 3 代理人
|
||||
realFileList: [],
|
||||
popList: []
|
||||
popList: [],
|
||||
isShow: true, //是否显示(是否需要上传)
|
||||
min: 1,
|
||||
max: 2 //限制最大张数
|
||||
}
|
||||
],
|
||||
uploadCheck: {},
|
||||
@@ -142,7 +147,19 @@ export default {
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
//
|
||||
|
||||
let errorArr = []
|
||||
this.fileList.forEach(v => {
|
||||
if (v.isShow) {
|
||||
if (v.popList.length < v.min) {
|
||||
errorArr.push(v.label)
|
||||
}
|
||||
}
|
||||
})
|
||||
if (errorArr.length > 0) {
|
||||
return this.$toast(`请上传${errorArr[0]}影像`)
|
||||
}
|
||||
|
||||
let saveMediaDTO = {
|
||||
platformType: 'app',
|
||||
edorType: 'PC',
|
||||
|
||||
@@ -39,10 +39,13 @@
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">以上变更后续账号信息</p>
|
||||
<van-cell title="开户人姓名" :value="item.accountName" />
|
||||
<van-cell title="新开户银行">
|
||||
<div class="red" slot="default">{{ item.bankCode | idToText('edorBankType') }}</div>
|
||||
<div :class="{ red: changeInfo.bankName }" slot="default">{{ item.bankName }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="新银行账号">
|
||||
<div class="red" slot="default">{{ item.bankNo }}</div>
|
||||
<div :class="{ red: changeInfo.bankNo }" slot="default">{{ item.bankNo }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="开户行所在地">
|
||||
<div :class="{ red: changeInfo.bankProvince }" slot="default">{{ item.bankProvince | idToBankAdr }}</div>
|
||||
</van-cell>
|
||||
</div>
|
||||
</div>
|
||||
@@ -59,16 +62,31 @@
|
||||
</div>
|
||||
<p class="start">点击【开始】按钮,进行相关操作</p>
|
||||
</van-cell-group>
|
||||
<!-- 短信验证码 -->
|
||||
<van-dialog v-model="show" title="提示" show-cancel-button @confirm="authConfirm(authCode)" @cancel="clearTimer">
|
||||
<p class="p10 fs14">向此手机发送验证码确认用户身份</p>
|
||||
<p class="p10 fs14" style="border-bottom: 1px solid #ebedf0;">{{ customerInfo.customerMobile | mask }}</p>
|
||||
<van-cell-group class="flex align-items-c pr5 mb15">
|
||||
<van-field maxlength="6" placeholder="请输入手机验证码" v-model="authCode" clearable label-width="0" />
|
||||
<van-button type="danger" plain size="small" class="w160 p0" @click="getAuthCode" :disabled="codeDisabled" v-no-more-click="2000">
|
||||
{{ codeDisabled ? `${countDown}s后重新获取` : '获取验证码' }}
|
||||
</van-button>
|
||||
</van-cell-group>
|
||||
</van-dialog>
|
||||
|
||||
<div class="bottom-btn bg-white">
|
||||
<van-button type="danger" size="large" @click="startPage" v-no-more-click="2000">开始</van-button>
|
||||
<van-button type="danger" v-if="!isUnRead" size="large" @click="show = true" v-no-more-click="2000">提交申请</van-button>
|
||||
<van-button type="danger" v-else size="large" @click="start" v-no-more-click="2000">开始</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Cell, Collapse, CollapseItem, CellGroup, Dialog } from 'vant'
|
||||
import { queryConfirmDetail } from '@/api/ebiz/preserve/preserve'
|
||||
import DataDictionary from '../js/data-dictionary'
|
||||
import { queryConfirmDetail, changeEdor } from '@/api/ebiz/preserve/preserve'
|
||||
import filters from '@/views/ebiz/preserve/filters'
|
||||
import getAreaName from '@/views/ebiz/preserve/js/utils/get-area-name'
|
||||
import { getAuthCode } from '@/api/ebiz/sale/sale'
|
||||
|
||||
export default {
|
||||
name: 'RenewalConfirmation',
|
||||
@@ -82,22 +100,27 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeNames: [0],
|
||||
show: false, // 获取短信验证码
|
||||
codeDisabled: false, // 获取验证码按钮是否禁用
|
||||
timeId: null, // 计时器ID
|
||||
countDown: 60, // 倒计时
|
||||
authCode: '', // 验证码
|
||||
sessionId: '',
|
||||
isUnRead: true, //是否存在未阅读文档
|
||||
src: this.$assetsUrl + 'images/u6490.png', // 图片路径
|
||||
|
||||
activeNames: [0],
|
||||
list: [],
|
||||
pdfList: [],
|
||||
changeInfo: {},
|
||||
customerInfo: JSON.parse(localStorage.getItem('preserve-customerInfo'))
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
idToText: function idToTextEdor(id, type) {
|
||||
let text = ''
|
||||
DataDictionary[type].some(item => {
|
||||
if (item.id == id) {
|
||||
text = item.label
|
||||
}
|
||||
})
|
||||
return text
|
||||
idToText: filters.idToText,
|
||||
mask: filters.mask,
|
||||
idToBankAdr: function idToBankAdr(id) {
|
||||
return getAreaName([{ code: id }])
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
@@ -105,7 +128,8 @@ export default {
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
startPage() {
|
||||
//跳转阅读文档页
|
||||
start() {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
@@ -116,7 +140,8 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
async init() {
|
||||
//初始化信息
|
||||
init() {
|
||||
this.$toast.loading({
|
||||
// 持续展示 toast
|
||||
duration: 0,
|
||||
@@ -135,11 +160,87 @@ export default {
|
||||
if (res.result == 0) {
|
||||
// 处理
|
||||
this.list = res.content.content
|
||||
let keys = Object.keys(res.content.content[res.content.content.length - 1])
|
||||
for (let item of keys) {
|
||||
this.changeInfo[item] = res.content.content[0][item] !== res.content.content[res.content.content.length - 1][item]
|
||||
}
|
||||
this.pdfList = res.content.surrenderSignList
|
||||
this.isUnRead = this.pdfList.some(i => {
|
||||
return i.documentStatus == '0'
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 获取短信验证码
|
||||
getAuthCode() {
|
||||
this.codeDisabled = true
|
||||
//倒计时
|
||||
this.timeId = setInterval(() => {
|
||||
this.countDown--
|
||||
if (this.countDown <= 0) {
|
||||
window.clearInterval(this.timeId)
|
||||
this.codeDisabled = false
|
||||
this.countDown = 60
|
||||
}
|
||||
}, 1000)
|
||||
getAuthCode({
|
||||
operateType: 'appntInfoEntry',
|
||||
type: 'H5',
|
||||
operateCode: this.customerInfo.customerMobile,
|
||||
system: 'agentApp',
|
||||
operateCodeType: '0'
|
||||
}).then(res => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.sessionId = res.sessionId
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 验证码确认事件
|
||||
async authConfirm() {
|
||||
//清理计时器
|
||||
this.clearTimer()
|
||||
this.submit()
|
||||
},
|
||||
//确认变更
|
||||
submit() {
|
||||
let data = {
|
||||
platformType: 'APP',
|
||||
edorType: 'PC',
|
||||
operateType: '04',
|
||||
surrenderId: this.customerInfo.surrenderId,
|
||||
edorApplyNo: this.customerInfo.edorApplyNo,
|
||||
checkCodeDTO: {
|
||||
smsId: this.sessionId,
|
||||
code: this.authCode
|
||||
}
|
||||
}
|
||||
changeEdor(data).then(res => {
|
||||
if (res.result == 0) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/preserve/common/submitResult`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/preserve/common/submitResult`
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.content)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 清理计时器
|
||||
clearTimer() {
|
||||
window.clearInterval(this.timeId)
|
||||
this.timeId = null
|
||||
this.countDown = 60
|
||||
this.codeDisabled = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<!-- 以上变更后续账号信息 -->
|
||||
<van-cell-group class="mt10 change-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class=" fs15 fwb pl10 pv12">以上变更后续账号信息</p>
|
||||
<van-cell required title="开户人" v-if="list.length">{{ list[0].accountName }}</van-cell>
|
||||
<van-field required label="开户人" v-if="list.length" v-model="list[0].accountName" />
|
||||
<van-field
|
||||
v-model="bank"
|
||||
label="新开户银行"
|
||||
@@ -259,10 +259,14 @@ export default {
|
||||
// 获取银行卡列表
|
||||
async getBank() {
|
||||
let data = {
|
||||
operateType: 'bank_type'
|
||||
operateType: 'claim_bank_type'
|
||||
}
|
||||
let res = await getBankList(data)
|
||||
if (res.result == '0') {
|
||||
res.content.forEach(item => {
|
||||
item.id = item.code
|
||||
item.text = item.bankName
|
||||
})
|
||||
this.bankList = res.content
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
@@ -303,7 +307,8 @@ export default {
|
||||
accountType: item.accountType,
|
||||
bankCode: item.bankCode,
|
||||
bankNo: item.bankNo,
|
||||
bankProvince: item.bankProvince,
|
||||
bankProvince: this.bankProvince, //TEST测试专用
|
||||
// bankProvince: item.bankProvince,
|
||||
isNewInfo: item.isNewInfo,
|
||||
contNo: item.bankNo,
|
||||
appntName: item.appntName,
|
||||
@@ -357,17 +362,16 @@ export default {
|
||||
|
||||
.renewal-info-container {
|
||||
.cont-info-container {
|
||||
/deep/.van-cell__title,
|
||||
.van-cell__value {
|
||||
flex: auto;
|
||||
/deep/ .van-cell__value {
|
||||
text-align: left;
|
||||
width: 70%;
|
||||
width: 75%;
|
||||
}
|
||||
}
|
||||
.change-container {
|
||||
.change-container,
|
||||
.align-items-c {
|
||||
/deep/.van-field__label {
|
||||
flex: auto;
|
||||
text-align: left;
|
||||
width: 40%;
|
||||
}
|
||||
}
|
||||
/deep/ .bankCard {
|
||||
|
||||
Reference in New Issue
Block a user