mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-21 10:06:44 +08:00
[new] 将犹退、退保、续期账号变更三个详情从各自保全移植,未对接接口
This commit is contained in:
@@ -16,6 +16,9 @@ const Progress = () => import('@/views/ebiz/preserve/Progress')
|
||||
const Contact = () => import('@/views/ebiz/preserve/detail/Contact')
|
||||
const Beneficiary = () => import('@/views/ebiz/preserve/detail/Beneficiary')
|
||||
const BeneficiaryInfoD = () => import('@/views/ebiz/preserve/detail/BeneficiaryInfo')
|
||||
const Renewal = () => import('@/views/ebiz/preserve/detail/Renewal')
|
||||
const CoolingOffperiodSurrender = () => import('@/views/ebiz/preserve/detail/CoolingOffperiodSurrender')
|
||||
const Surrender = () => import('@/views/ebiz/preserve/detail/Surrender')
|
||||
|
||||
export default [
|
||||
{
|
||||
@@ -163,7 +166,7 @@ export default [
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/preserve/detail/BeneficiaryInfo',
|
||||
path: '/preserve/detail/BeneficiaryInfo/:surrenderId',
|
||||
name: 'BeneficiaryInfoD',
|
||||
component: BeneficiaryInfoD,
|
||||
meta: {
|
||||
@@ -171,5 +174,31 @@ export default [
|
||||
index: 17
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
path: '/preserve/detail/CoolingOffperiodSurrender/:surrenderId',
|
||||
name: 'CoolingOffperiodSurrender',
|
||||
component: CoolingOffperiodSurrender,
|
||||
meta: {
|
||||
title: '犹豫期退保',
|
||||
index: 18
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/preserve/detail/Surrender/:surrenderId',
|
||||
name: 'Surrender',
|
||||
component: Surrender,
|
||||
meta: {
|
||||
title: '退保',
|
||||
index: 19
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/preserve/detail/Renewal/:surrenderId',
|
||||
name: 'Renewal',
|
||||
component: Renewal,
|
||||
meta: {
|
||||
title: '续期账号变更',
|
||||
index: 20
|
||||
}
|
||||
},
|
||||
]
|
||||
|
||||
234
src/views/ebiz/preserve/detail/CoolingOffperiodSurrender.vue
Normal file
234
src/views/ebiz/preserve/detail/CoolingOffperiodSurrender.vue
Normal file
@@ -0,0 +1,234 @@
|
||||
<!--退保-保全代办确认页-->
|
||||
<template>
|
||||
<div class="surrender-confirmation-container mb10">
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<!-- 保单信息 -->
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">保单信息</p>
|
||||
<van-cell title="保单号" :value="orderInfo.riskName" />
|
||||
<van-cell title="产品名称" :value="orderInfo.riskName" />
|
||||
<van-cell title="投保人" :value="orderInfo.appntName" />
|
||||
<van-cell title="被保险人" :value="orderInfo.insuredName" />
|
||||
<van-cell title="保单生效日期" :value="orderInfo.cvaliDate" />
|
||||
<van-cell title="退保金额" :value="orderInfo.accountMoney" />
|
||||
<van-cell title="万能险退保手续费比例" :value="orderInfo.ratio" />
|
||||
</van-cell-group>
|
||||
<!-- 账号信息 -->
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">账号信息</p>
|
||||
<van-cell title="开户人姓名" :value="accountInfo.accountName" />
|
||||
<van-cell title="退款账户" :value="accountInfo.accountName" />
|
||||
<van-cell title="开户银行">
|
||||
<div class="red" slot="default">{{ accountInfo.newBank }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="银行账号">
|
||||
<div class="red" slot="default">{{ accountInfo.newBankNo }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="开户行所在地" :value="accountInfo.accountName" />
|
||||
<van-cell title="退保原因" :value="accountInfo.accountName" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Cell, CellGroup, Dialog } from 'vant'
|
||||
import { customerInfoShare, orderDetail, authCode, changeStatus, queryCancel } from '@/api/ebiz/preserve/preserve'
|
||||
import { checkSignInvalid } from '@/api/ebiz/sale/sale'
|
||||
export default {
|
||||
name: 'Surrender',
|
||||
components: {
|
||||
[Field.name]: Field,
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//账号信息
|
||||
accountInfo: {
|
||||
accountName: '张三',
|
||||
newBank: '工商银行',
|
||||
newBankNo: '1122334455667899076'
|
||||
},
|
||||
//保单信息
|
||||
orderInfo: {
|
||||
riskName: '国富人寿八桂无忧',
|
||||
appntName: '张三',
|
||||
insuredName: '李四',
|
||||
cvaliDate: '2020-02-02',
|
||||
accountMoney: '130.00',
|
||||
ratio: '70%'
|
||||
},
|
||||
show: false, // 获取短信验证码
|
||||
codeDisabled: false, // 获取验证码按钮是否禁用
|
||||
timeId: null, // 计时器ID
|
||||
countDown: 60, // 倒计时
|
||||
authCode: '', // 验证码
|
||||
src: this.$assetsUrl + 'images/u6490.png', // 图片路径
|
||||
newBank: '', //新开户银行
|
||||
newBankNo: '', //新银行卡号
|
||||
customerMobile: '',
|
||||
sessionId: '',
|
||||
nextDisabled: true,
|
||||
signInvalid: '',
|
||||
isSigned: false, //是否签完名了
|
||||
submitForbidden: false, //是否提交申请失败
|
||||
linkInvalid: false, //链接是否失效
|
||||
isCanceled: false, //是否撤销
|
||||
documentStatus: '' //签名状态
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
this.$route.query.customerInfo && (localStorage.customerInfo = decodeURI(this.$route.query.customerInfo))
|
||||
this.$route.query.token && (localStorage.token = this.$route.query.token)
|
||||
this.customerMobile = JSON.parse(localStorage.customerInfo).customerMobile
|
||||
//是否已经签名
|
||||
if (sessionStorage.customerSign && JSON.parse(sessionStorage.customerSign).isSign) {
|
||||
this.isSigned = true
|
||||
} else {
|
||||
this.isSigned = false
|
||||
//token签名
|
||||
if (this.$route.query.signInvalid) {
|
||||
localStorage.signInvalid = this.$route.query.signInvalid
|
||||
this.signInvalid = this.$route.query.signInvalid
|
||||
//token是否过期
|
||||
let resData = await this.checkSignInvalid(this.signInvalid)
|
||||
if (resData == '1') {
|
||||
this.linkInvalid = false
|
||||
} else {
|
||||
this.linkInvalid = true
|
||||
}
|
||||
}
|
||||
}
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
async init() {
|
||||
this.$toast.loading({
|
||||
// 持续展示 toast
|
||||
duration: 0,
|
||||
// 禁用背景点击
|
||||
forbidClick: true,
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// await this.isPreserveCancel()
|
||||
//如果没有被撤销
|
||||
// if (backData == 'notCanceled') {
|
||||
let params = {
|
||||
surrenderType: '2', //"1","基本信息变更" "2","续期账号变更" "3","红利领取"
|
||||
customerInfoDTOList: [],
|
||||
mediaDTOList: [],
|
||||
surrenderId: JSON.parse(localStorage.customerInfo).surrenderId,
|
||||
edorapplyNo: JSON.parse(localStorage.customerInfo).edorapplyNo || JSON.parse(localStorage.customerInfo).edorApplyNo
|
||||
}
|
||||
let res = await customerInfoShare(params)
|
||||
this.$toast.clear()
|
||||
if (res.result == 0) {
|
||||
if (!JSON.parse(localStorage.customerInfo).contNo) {
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
localStorage.policyList = JSON.stringify(this.policyList)
|
||||
} else {
|
||||
//如果是从保全进度查询分享进来(只有一个单)
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.contNo == JSON.parse(localStorage.customerInfo).contNo && item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.isSigned && !this.linkInvalid) {
|
||||
//撤销
|
||||
this.isCanceled = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 5
|
||||
})
|
||||
}
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.linkInvalid) {
|
||||
//已提交
|
||||
this.submitForbidden = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 3 || item.surrenderStatus == 6 || item.surrenderStatus == 9 || item.surrenderStatus == 7
|
||||
})
|
||||
}
|
||||
//未签名&链接有效&未撤销
|
||||
// if (!this.isSigned && !this.linkInvalid && !this.isCanceled) {
|
||||
// //提交申请失败
|
||||
// this.submitForbidden = res.content.accountResList.every(item => {
|
||||
// return item.surrenderStatus == 7
|
||||
// })
|
||||
// }
|
||||
// localStorage.signList = JSON.stringify(res.content.signList[0])
|
||||
if (!sessionStorage.customerSign) {
|
||||
let customerSign = {
|
||||
baseEncryp: '',
|
||||
policyUrl: res.content.signList[0].policyUrl
|
||||
}
|
||||
sessionStorage.customerSign = JSON.stringify(customerSign)
|
||||
}
|
||||
this.documentStatus = res.content.signList[0].documentStatus
|
||||
this.getOrderDetail({
|
||||
contNo: this.policyList[0].contNo
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
//获取保单详情
|
||||
async getOrderDetail(data) {
|
||||
let res = await orderDetail(data)
|
||||
if (res.result == 0) {
|
||||
this.nextDisabled = false
|
||||
let flag = true
|
||||
this.list.forEach((item, index) => {
|
||||
if (item.contNo == data.contNo) {
|
||||
flag = false
|
||||
console.info(index, item, res.content)
|
||||
// this.list.splice(index, 1, res.content)
|
||||
this.list.splice(index, 1, Object.assign(this.policyList[index], res.content))
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
// this.list.push(res.content)
|
||||
this.list.push(Object.assign(this.policyList[0], res.content))
|
||||
this.policyList.forEach((item, index) => {
|
||||
if (index != 0) {
|
||||
this.list.push(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.surrender-confirmation-container {
|
||||
.cont-info-container {
|
||||
/deep/.van-cell__title,
|
||||
.van-cell__value {
|
||||
flex: auto;
|
||||
text-align: left;
|
||||
width: 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
258
src/views/ebiz/preserve/detail/Renewal.vue
Normal file
258
src/views/ebiz/preserve/detail/Renewal.vue
Normal file
@@ -0,0 +1,258 @@
|
||||
<!--续期账号变更-保全代办确认页-->
|
||||
<template>
|
||||
<div class="renewal-confirmation-container pb50">
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<!-- 保单信息 -->
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">保单信息</p>
|
||||
<van-collapse v-model="activeNames" @change="collapseChange">
|
||||
<div v-for="(item, index) in list" :key="index">
|
||||
<van-collapse-item @click.native="changeCollapse(111)" v-no-more-click="2000" :title="`保单号:${item.contNo}`" :name="index">
|
||||
<!-- <div slot="value" class="text-right collapse-value red fs12">{{ item.surrenderStatus == '5' ? '已撤销' : '' }}</div> -->
|
||||
<van-cell title="产品名称" :value="item.riskName" />
|
||||
<van-cell title="投保人" :value="item.appntName" />
|
||||
<van-cell title="被保险人" :value="item.insuredName" />
|
||||
<van-cell title="交费方式" :value="item.insuPayType | idToText('payIntv')" />
|
||||
<van-cell title="保单生效日期" :value="item.cvaliDate" />
|
||||
<van-cell title="保单状态" :value="item.contState | idToText('contState')" />
|
||||
<van-cell title="开户人姓名" :value="item.accountName" />
|
||||
<van-cell title="原银行名称" :value="item.bankCode | idToText('preserveBank')" />
|
||||
<van-cell title="原银行账号" :value="item.bankNo" />
|
||||
</van-collapse-item>
|
||||
</div>
|
||||
</van-collapse>
|
||||
</van-cell-group>
|
||||
<!-- 以上变更后续账号信息 -->
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">以上变更后续账号信息</p>
|
||||
<van-cell title="开户人姓名" :value="list[0].accountName" v-if="list.length" />
|
||||
<van-cell title="新开户银行">
|
||||
<div class="red" slot="default">{{ newBank }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="新银行账号">
|
||||
<div class="red" slot="default">{{ newBankNo }}</div>
|
||||
</van-cell>
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Cell, Collapse, CollapseItem, CellGroup, Dialog } from 'vant'
|
||||
import { customerInfoShare, orderDetail, authCode, changeStatus, queryCancel } from '@/api/ebiz/preserve/preserve'
|
||||
import { checkSignInvalid } from '@/api/ebiz/sale/sale'
|
||||
export default {
|
||||
name: 'RenewalConfirmation',
|
||||
components: {
|
||||
[Field.name]: Field,
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Collapse.name]: Collapse,
|
||||
[CollapseItem.name]: CollapseItem,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
show: false, // 获取短信验证码
|
||||
codeDisabled: false, // 获取验证码按钮是否禁用
|
||||
timeId: null, // 计时器ID
|
||||
countDown: 60, // 倒计时
|
||||
authCode: '', // 验证码
|
||||
activeNames: [0],
|
||||
src: this.$assetsUrl + 'images/u6490.png', // 图片路径
|
||||
policyList: [],
|
||||
list: [
|
||||
// {
|
||||
// contNo: 'HL052019110010001047',
|
||||
// riskName: '鼎诚人寿重大疾病险',
|
||||
// appntName: '嘿嘿',
|
||||
// insuredName: '狗乐',
|
||||
// insuPayType: '11',
|
||||
// cvaliDate: '2020-12-31',
|
||||
// contState: '001',
|
||||
// accountName: '彭小芳',
|
||||
// bankCode: '102',
|
||||
// bankNo: '374198274319824389127341'
|
||||
// },
|
||||
// {
|
||||
// contNo: 'HL052019110010001047',
|
||||
// riskName: '鼎诚人寿重大疾病险',
|
||||
// appntName: '嘿嘿',
|
||||
// insuredName: '狗乐',
|
||||
// insuPayType: '11',
|
||||
// cvaliDate: '2020-12-31',
|
||||
// contState: '001',
|
||||
// accountName: '彭小芳',
|
||||
// bankCode: '102',
|
||||
// bankNo: '374198274319824389127341'
|
||||
// }
|
||||
],
|
||||
newBank: '', //新开户银行
|
||||
newBankNo: '', //新银行卡号
|
||||
customerMobile: '',
|
||||
sessionId: '',
|
||||
nextDisabled: true,
|
||||
signInvalid: '',
|
||||
isSigned: false, //是否签完名了
|
||||
submitForbidden: false, //是否提交申请失败
|
||||
linkInvalid: false, //链接是否失效
|
||||
isCanceled: false, //是否撤销
|
||||
documentStatus: '' //签名状态
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
this.$route.query.customerInfo && (localStorage.customerInfo = decodeURI(this.$route.query.customerInfo))
|
||||
this.$route.query.token && (localStorage.token = this.$route.query.token)
|
||||
this.customerMobile = JSON.parse(localStorage.customerInfo).customerMobile
|
||||
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
async init() {
|
||||
this.$toast.loading({
|
||||
// 持续展示 toast
|
||||
duration: 0,
|
||||
// 禁用背景点击
|
||||
forbidClick: true,
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// await this.isPreserveCancel()
|
||||
//如果没有被撤销
|
||||
// if (backData == 'notCanceled') {
|
||||
let params = {
|
||||
surrenderType: '2', //"1","基本信息变更" "2","续期账号变更" "3","红利领取"
|
||||
customerInfoDTOList: [],
|
||||
mediaDTOList: [],
|
||||
surrenderId: JSON.parse(localStorage.customerInfo).surrenderId,
|
||||
edorapplyNo: JSON.parse(localStorage.customerInfo).edorapplyNo || JSON.parse(localStorage.customerInfo).edorApplyNo
|
||||
}
|
||||
let res = await customerInfoShare(params)
|
||||
this.$toast.clear()
|
||||
if (res.result == 0) {
|
||||
if (!JSON.parse(localStorage.customerInfo).contNo) {
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
localStorage.policyList = JSON.stringify(this.policyList)
|
||||
} else {
|
||||
//如果是从保全进度查询分享进来(只有一个单)
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.contNo == JSON.parse(localStorage.customerInfo).contNo && item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.isSigned && !this.linkInvalid) {
|
||||
//撤销
|
||||
this.isCanceled = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 5
|
||||
})
|
||||
}
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.linkInvalid) {
|
||||
//已提交
|
||||
this.submitForbidden = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 3 || item.surrenderStatus == 6 || item.surrenderStatus == 9 || item.surrenderStatus == 7
|
||||
})
|
||||
}
|
||||
//未签名&链接有效&未撤销
|
||||
// if (!this.isSigned && !this.linkInvalid && !this.isCanceled) {
|
||||
// //提交申请失败
|
||||
// this.submitForbidden = res.content.accountResList.every(item => {
|
||||
// return item.surrenderStatus == 7
|
||||
// })
|
||||
// }
|
||||
// localStorage.signList = JSON.stringify(res.content.signList[0])
|
||||
if (!sessionStorage.customerSign) {
|
||||
let customerSign = {
|
||||
baseEncryp: '',
|
||||
policyUrl: res.content.signList[0].policyUrl
|
||||
}
|
||||
sessionStorage.customerSign = JSON.stringify(customerSign)
|
||||
}
|
||||
this.documentStatus = res.content.signList[0].documentStatus
|
||||
this.getOrderDetail({
|
||||
contNo: this.policyList[0].contNo
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
// }
|
||||
},
|
||||
changeCollapse(params) {
|
||||
console.log(params)
|
||||
},
|
||||
//展开保单详情
|
||||
collapseChange(val) {
|
||||
if (val.length) {
|
||||
let flag = true
|
||||
this.list.forEach(item => {
|
||||
if (item.contNo == this.policyList[val[val.length - 1]].contNo && item.riskName) {
|
||||
return (flag = false)
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
this.getOrderDetail({
|
||||
contNo: this.policyList[val[val.length - 1]].contNo
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
//获取保单详情
|
||||
async getOrderDetail(data) {
|
||||
let res = await orderDetail(data)
|
||||
if (res.result == 0) {
|
||||
this.nextDisabled = false
|
||||
let flag = true
|
||||
this.list.forEach((item, index) => {
|
||||
if (item.contNo == data.contNo) {
|
||||
flag = false
|
||||
console.info(index, item, res.content)
|
||||
// this.list.splice(index, 1, res.content)
|
||||
this.list.splice(index, 1, Object.assign(this.policyList[index], res.content))
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
// this.list.push(res.content)
|
||||
this.list.push(Object.assign(this.policyList[0], res.content))
|
||||
this.policyList.forEach((item, index) => {
|
||||
if (index != 0) {
|
||||
this.list.push(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.renewal-confirmation-container {
|
||||
.cont-info-container {
|
||||
/deep/.van-cell__title,
|
||||
.van-cell__value {
|
||||
flex: auto;
|
||||
text-align: left;
|
||||
width: 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
234
src/views/ebiz/preserve/detail/Surrender.vue
Normal file
234
src/views/ebiz/preserve/detail/Surrender.vue
Normal file
@@ -0,0 +1,234 @@
|
||||
<!--退保-保全代办确认页-->
|
||||
<template>
|
||||
<div class="surrender-confirmation-container mb10">
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<!-- 保单信息 -->
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">保单信息</p>
|
||||
<van-cell title="保单号" :value="orderInfo.riskName" />
|
||||
<van-cell title="产品名称" :value="orderInfo.riskName" />
|
||||
<van-cell title="投保人" :value="orderInfo.appntName" />
|
||||
<van-cell title="被保险人" :value="orderInfo.insuredName" />
|
||||
<van-cell title="保单生效日期" :value="orderInfo.cvaliDate" />
|
||||
<van-cell title="退保金额" :value="orderInfo.accountMoney" />
|
||||
<van-cell title="万能险退保手续费比例" :value="orderInfo.ratio" />
|
||||
</van-cell-group>
|
||||
<!-- 账号信息 -->
|
||||
<van-cell-group class="mt10 cont-info-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">账号信息</p>
|
||||
<van-cell title="开户人姓名" :value="accountInfo.accountName" />
|
||||
<van-cell title="退款账户" :value="accountInfo.accountName" />
|
||||
<van-cell title="开户银行">
|
||||
<div class="red" slot="default">{{ accountInfo.newBank }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="银行账号">
|
||||
<div class="red" slot="default">{{ accountInfo.newBankNo }}</div>
|
||||
</van-cell>
|
||||
<van-cell title="开户行所在地" :value="accountInfo.accountName" />
|
||||
<van-cell title="退保原因" :value="accountInfo.accountName" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Cell, CellGroup, Dialog } from 'vant'
|
||||
import { customerInfoShare, orderDetail, authCode, changeStatus, queryCancel } from '@/api/ebiz/preserve/preserve'
|
||||
import { checkSignInvalid } from '@/api/ebiz/sale/sale'
|
||||
export default {
|
||||
name: 'Surrender',
|
||||
components: {
|
||||
[Field.name]: Field,
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//账号信息
|
||||
accountInfo: {
|
||||
accountName: '张三',
|
||||
newBank: '工商银行',
|
||||
newBankNo: '1122334455667899076'
|
||||
},
|
||||
//保单信息
|
||||
orderInfo: {
|
||||
riskName: '国富人寿八桂无忧',
|
||||
appntName: '张三',
|
||||
insuredName: '李四',
|
||||
cvaliDate: '2020-02-02',
|
||||
accountMoney: '130.00',
|
||||
ratio: '70%'
|
||||
},
|
||||
show: false, // 获取短信验证码
|
||||
codeDisabled: false, // 获取验证码按钮是否禁用
|
||||
timeId: null, // 计时器ID
|
||||
countDown: 60, // 倒计时
|
||||
authCode: '', // 验证码
|
||||
src: this.$assetsUrl + 'images/u6490.png', // 图片路径
|
||||
newBank: '', //新开户银行
|
||||
newBankNo: '', //新银行卡号
|
||||
customerMobile: '',
|
||||
sessionId: '',
|
||||
nextDisabled: true,
|
||||
signInvalid: '',
|
||||
isSigned: false, //是否签完名了
|
||||
submitForbidden: false, //是否提交申请失败
|
||||
linkInvalid: false, //链接是否失效
|
||||
isCanceled: false, //是否撤销
|
||||
documentStatus: '' //签名状态
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
this.$route.query.customerInfo && (localStorage.customerInfo = decodeURI(this.$route.query.customerInfo))
|
||||
this.$route.query.token && (localStorage.token = this.$route.query.token)
|
||||
this.customerMobile = JSON.parse(localStorage.customerInfo).customerMobile
|
||||
//是否已经签名
|
||||
if (sessionStorage.customerSign && JSON.parse(sessionStorage.customerSign).isSign) {
|
||||
this.isSigned = true
|
||||
} else {
|
||||
this.isSigned = false
|
||||
//token签名
|
||||
if (this.$route.query.signInvalid) {
|
||||
localStorage.signInvalid = this.$route.query.signInvalid
|
||||
this.signInvalid = this.$route.query.signInvalid
|
||||
//token是否过期
|
||||
let resData = await this.checkSignInvalid(this.signInvalid)
|
||||
if (resData == '1') {
|
||||
this.linkInvalid = false
|
||||
} else {
|
||||
this.linkInvalid = true
|
||||
}
|
||||
}
|
||||
}
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
async init() {
|
||||
this.$toast.loading({
|
||||
// 持续展示 toast
|
||||
duration: 0,
|
||||
// 禁用背景点击
|
||||
forbidClick: true,
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// await this.isPreserveCancel()
|
||||
//如果没有被撤销
|
||||
// if (backData == 'notCanceled') {
|
||||
let params = {
|
||||
surrenderType: '2', //"1","基本信息变更" "2","续期账号变更" "3","红利领取"
|
||||
customerInfoDTOList: [],
|
||||
mediaDTOList: [],
|
||||
surrenderId: JSON.parse(localStorage.customerInfo).surrenderId,
|
||||
edorapplyNo: JSON.parse(localStorage.customerInfo).edorapplyNo || JSON.parse(localStorage.customerInfo).edorApplyNo
|
||||
}
|
||||
let res = await customerInfoShare(params)
|
||||
this.$toast.clear()
|
||||
if (res.result == 0) {
|
||||
if (!JSON.parse(localStorage.customerInfo).contNo) {
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
localStorage.policyList = JSON.stringify(this.policyList)
|
||||
} else {
|
||||
//如果是从保全进度查询分享进来(只有一个单)
|
||||
res.content.accountResList.forEach(item => {
|
||||
// this.policyList.push(item.contNo)
|
||||
if (item.contNo == JSON.parse(localStorage.customerInfo).contNo && item.isNewInfo == '0') {
|
||||
this.policyList.push({
|
||||
contNo: item.contNo,
|
||||
surrenderStatus: item.surrenderStatus
|
||||
})
|
||||
this.newBank = item.bankName
|
||||
this.newBankNo = item.bankNo
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.isSigned && !this.linkInvalid) {
|
||||
//撤销
|
||||
this.isCanceled = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 5
|
||||
})
|
||||
}
|
||||
//未签名并且链接有效的情况下
|
||||
if (!this.linkInvalid) {
|
||||
//已提交
|
||||
this.submitForbidden = res.content.accountResList.every(item => {
|
||||
return item.surrenderStatus == 3 || item.surrenderStatus == 6 || item.surrenderStatus == 9 || item.surrenderStatus == 7
|
||||
})
|
||||
}
|
||||
//未签名&链接有效&未撤销
|
||||
// if (!this.isSigned && !this.linkInvalid && !this.isCanceled) {
|
||||
// //提交申请失败
|
||||
// this.submitForbidden = res.content.accountResList.every(item => {
|
||||
// return item.surrenderStatus == 7
|
||||
// })
|
||||
// }
|
||||
// localStorage.signList = JSON.stringify(res.content.signList[0])
|
||||
if (!sessionStorage.customerSign) {
|
||||
let customerSign = {
|
||||
baseEncryp: '',
|
||||
policyUrl: res.content.signList[0].policyUrl
|
||||
}
|
||||
sessionStorage.customerSign = JSON.stringify(customerSign)
|
||||
}
|
||||
this.documentStatus = res.content.signList[0].documentStatus
|
||||
this.getOrderDetail({
|
||||
contNo: this.policyList[0].contNo
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
//获取保单详情
|
||||
async getOrderDetail(data) {
|
||||
let res = await orderDetail(data)
|
||||
if (res.result == 0) {
|
||||
this.nextDisabled = false
|
||||
let flag = true
|
||||
this.list.forEach((item, index) => {
|
||||
if (item.contNo == data.contNo) {
|
||||
flag = false
|
||||
console.info(index, item, res.content)
|
||||
// this.list.splice(index, 1, res.content)
|
||||
this.list.splice(index, 1, Object.assign(this.policyList[index], res.content))
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
// this.list.push(res.content)
|
||||
this.list.push(Object.assign(this.policyList[0], res.content))
|
||||
this.policyList.forEach((item, index) => {
|
||||
if (index != 0) {
|
||||
this.list.push(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.surrender-confirmation-container {
|
||||
.cont-info-container {
|
||||
/deep/.van-cell__title,
|
||||
.van-cell__value {
|
||||
flex: auto;
|
||||
text-align: left;
|
||||
width: 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -13,7 +13,7 @@ export default {
|
||||
1: '联系方式变更',
|
||||
2: '受益人变更',
|
||||
3: '续期账号变更',
|
||||
4: '犹退',
|
||||
4: '犹豫期退保',
|
||||
5: '退保'
|
||||
},
|
||||
preserveUserType: {
|
||||
@@ -32,6 +32,9 @@ export default {
|
||||
},
|
||||
route: {
|
||||
1: 'Contact',
|
||||
2: 'Beneficiary'
|
||||
2: 'Beneficiary',
|
||||
3: 'Renewal',
|
||||
4: 'CoolingOffperiodSurrender',
|
||||
5: 'Surrender'
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user