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 Contact = () => import('@/views/ebiz/preserve/detail/Contact')
|
||||||
const Beneficiary = () => import('@/views/ebiz/preserve/detail/Beneficiary')
|
const Beneficiary = () => import('@/views/ebiz/preserve/detail/Beneficiary')
|
||||||
const BeneficiaryInfoD = () => import('@/views/ebiz/preserve/detail/BeneficiaryInfo')
|
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 [
|
export default [
|
||||||
{
|
{
|
||||||
@@ -163,7 +166,7 @@ export default [
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/preserve/detail/BeneficiaryInfo',
|
path: '/preserve/detail/BeneficiaryInfo/:surrenderId',
|
||||||
name: 'BeneficiaryInfoD',
|
name: 'BeneficiaryInfoD',
|
||||||
component: BeneficiaryInfoD,
|
component: BeneficiaryInfoD,
|
||||||
meta: {
|
meta: {
|
||||||
@@ -171,5 +174,31 @@ export default [
|
|||||||
index: 17
|
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: '联系方式变更',
|
1: '联系方式变更',
|
||||||
2: '受益人变更',
|
2: '受益人变更',
|
||||||
3: '续期账号变更',
|
3: '续期账号变更',
|
||||||
4: '犹退',
|
4: '犹豫期退保',
|
||||||
5: '退保'
|
5: '退保'
|
||||||
},
|
},
|
||||||
preserveUserType: {
|
preserveUserType: {
|
||||||
@@ -32,6 +32,9 @@ export default {
|
|||||||
},
|
},
|
||||||
route: {
|
route: {
|
||||||
1: 'Contact',
|
1: 'Contact',
|
||||||
2: 'Beneficiary'
|
2: 'Beneficiary',
|
||||||
|
3: 'Renewal',
|
||||||
|
4: 'CoolingOffperiodSurrender',
|
||||||
|
5: 'Surrender'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user