mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-08 11:46:44 +08:00
Compare commits
18 Commits
feature/FC
...
feature/FC
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ea57162c61 | ||
|
|
ebb76c8609 | ||
|
|
c317af63cb | ||
|
|
0a3cb73fc8 | ||
|
|
d6bbdae734 | ||
|
|
89aea09de2 | ||
|
|
7a81b4e6eb | ||
|
|
d13ce27e3c | ||
|
|
a1895b540c | ||
|
|
5babd3d029 | ||
|
|
89d4fb1871 | ||
|
|
f7982ac052 | ||
|
|
bde1de79ac | ||
|
|
3631f57ee2 | ||
|
|
c2014d9e4b | ||
|
|
a0a9b5637e | ||
|
|
dd11f4b4e0 | ||
|
|
f1f8c3ddae |
@@ -995,6 +995,54 @@ export default {
|
||||
text: '港澳台居民居住证'
|
||||
}
|
||||
],
|
||||
//投保-被保险人证件类型(证件类型调整以及周边系统调整)
|
||||
idTypeAdjustment: [
|
||||
{
|
||||
id: 1,
|
||||
text: '居民身份证'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
text: '户口本'
|
||||
},
|
||||
// {
|
||||
// id: 3,
|
||||
// text: '出生证'
|
||||
// },
|
||||
{
|
||||
id: 4,
|
||||
text: '外国人护照'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
text: '港澳居民来往内地通行证'
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
text: '台湾居民来往大陆通行证'
|
||||
},
|
||||
/* {
|
||||
id: 7,
|
||||
text: '其他',
|
||||
disabled: true
|
||||
}*/
|
||||
{
|
||||
id: 8,
|
||||
text: '外国人永久居留身份证'
|
||||
},
|
||||
// {
|
||||
// id: 9,
|
||||
// text: '港澳台居民居住证'
|
||||
// },
|
||||
{
|
||||
id: 11,
|
||||
text: '港澳居民居住证'
|
||||
},
|
||||
{
|
||||
id: 12,
|
||||
text: '台湾居民居住证'
|
||||
},
|
||||
],
|
||||
//投保人证件类型
|
||||
insuredIdType: [
|
||||
{
|
||||
@@ -1037,6 +1085,106 @@ export default {
|
||||
text: '港澳台居民居住证'
|
||||
}
|
||||
],
|
||||
// 投保-投保人证件类型(证件类型调整以及周边系统调整)
|
||||
insuredIdTypeAdjustment: [
|
||||
{
|
||||
id: 1,
|
||||
text: '居民身份证'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
text: '户口本',
|
||||
disabled: true
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
text: '出生证',
|
||||
disabled: true
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
text: '护照'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
text: '港澳居民来往内地通行证'
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
text: '台湾居民来往大陆通行证'
|
||||
},
|
||||
/* {
|
||||
id: 7,
|
||||
text: '其他',
|
||||
disabled: true
|
||||
}*/
|
||||
{
|
||||
id: 8,
|
||||
text: '外国人永久居留身份证'
|
||||
},
|
||||
// {
|
||||
// id: 9,
|
||||
// text: '港澳台居民居住证'
|
||||
// }
|
||||
{
|
||||
id: 11,
|
||||
text: '港澳居民居住证'
|
||||
},
|
||||
{
|
||||
id: 12,
|
||||
text: '台湾居民居住证'
|
||||
},
|
||||
],
|
||||
// 投保-投保人证件类型-兼容需求前类型(证件类型调整以及周边系统调整)
|
||||
insuredIdTypeAllList: [
|
||||
{
|
||||
id: 1,
|
||||
text: '居民身份证'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
text: '户口本',
|
||||
disabled: true
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
text: '出生证',
|
||||
disabled: true
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
text: '护照'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
text: '港澳居民来往内地通行证'
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
text: '台湾居民来往大陆通行证'
|
||||
},
|
||||
/* {
|
||||
id: 7,
|
||||
text: '其他',
|
||||
disabled: true
|
||||
}*/
|
||||
{
|
||||
id: 8,
|
||||
text: '外国人永久居留身份证'
|
||||
},
|
||||
{
|
||||
id: 9,
|
||||
text: '港澳台居民居住证'
|
||||
},
|
||||
{
|
||||
id: 11,
|
||||
text: '港澳居民居住证'
|
||||
},
|
||||
{
|
||||
id: 12,
|
||||
text: '台湾居民居住证'
|
||||
},
|
||||
],
|
||||
//投保人证件类型
|
||||
insuredIdTypeSpecial: [
|
||||
{
|
||||
@@ -3947,6 +4095,35 @@ export default {
|
||||
{
|
||||
code: "GFRS_M0094__cashValue",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
//养老年金开始领取年龄
|
||||
code: 'pensionAge',
|
||||
label: '岁'
|
||||
},
|
||||
{
|
||||
code: 'AppntCriticalDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
},
|
||||
{
|
||||
code: 'AppntModerateOrMinorDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
},
|
||||
{
|
||||
code: 'AppntDeathOrTotalDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
},
|
||||
{
|
||||
code: 'InsuredCriticalDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
},
|
||||
{
|
||||
code: 'InsuredModerateOrMinorDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
},
|
||||
{
|
||||
code: 'InsuredDeathOrTotalDiseaseExemptionPremiumD',
|
||||
label: '元'
|
||||
}
|
||||
],
|
||||
// 卡单与短期险重新投保选择职业类别时,两个模块职业类型数据的排序不同,创建这个数据字典,用于在选择职业类别时,作为一个参数传入组件,
|
||||
|
||||
@@ -52,10 +52,10 @@
|
||||
<span>保单号</span><span>{{ item.contNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>被保人</span><span>{{ item.insuredName }}</span>
|
||||
<span>投保人</span><span>{{ item.appntName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>被保险人</span><span>{{ item.appntName }}</span>
|
||||
<span>被保险人</span><span>{{ item.insuredName }}</span>
|
||||
</p>
|
||||
<p v-if="active == 3">
|
||||
<span>转账银行</span><span>{{ item.bankName }}</span>
|
||||
|
||||
@@ -204,7 +204,9 @@ export default {
|
||||
//初始化信息
|
||||
async init() {
|
||||
if (this.isWeixin) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
if (this.$route.query.signInvalid) {
|
||||
sessionStorage.setItem('signInvalid', this.$route.query.signInvalid)
|
||||
}
|
||||
|
||||
@@ -151,7 +151,9 @@ export default {
|
||||
// 初始化
|
||||
async init() {
|
||||
if (this.isWeixin) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
// let signInvalid = sessionStorage.getItem('signInvalid')
|
||||
// let rs = await this.checkSignInvalid(signInvalid) // 微信分享验证校验值
|
||||
// if (rs == '1') {
|
||||
@@ -163,7 +165,11 @@ export default {
|
||||
|
||||
//获取腾讯人脸识别URL后,重新跳回页面,验证腾讯人脸识别结果,成功的话调签字面板
|
||||
if (localStorage['faceAuthWeXin-requestId'] && localStorage['faceAuthWeXin-bizToken'] && this.$route.query.faceAuthCountWeixin != undefined) {
|
||||
this.getRecognitionResult(JSON.parse(localStorage['faceAuthWeXin-requestId']), JSON.parse(localStorage['faceAuthWeXin-bizToken']), JSON.parse(localStorage['orderNo']))
|
||||
this.getRecognitionResult(
|
||||
JSON.parse(localStorage['faceAuthWeXin-requestId']),
|
||||
JSON.parse(localStorage['faceAuthWeXin-bizToken']),
|
||||
JSON.parse(localStorage['orderNo'])
|
||||
)
|
||||
}
|
||||
this.faceAuthCount.enjoy = this.$route.query.faceAuthCountAppnt == undefined ? 0 : Number(this.$route.query.faceAuthCountAppnt)
|
||||
this.faceAuthCount.weixin = this.$route.query.faceAuthCountWeixin == undefined ? 0 : Number(this.$route.query.faceAuthCountWeixin)
|
||||
|
||||
@@ -834,8 +834,8 @@ export default {
|
||||
let m = time.getMonth() + 1 < 10 ? '0' + (time.getMonth() + 1) : time.getMonth() + 1
|
||||
console.log(y, m)
|
||||
this.monthValue = y + '-' + m
|
||||
this.dialogForm.startDate = y + '-' + m + '-' + '01' // "2024-09-01",
|
||||
this.dialogForm.endDate = y + '-' + m + '-' + '30'//"2024-09-30",
|
||||
this.dialogForm.startDate = y + '-' + m + '-' + '01' // "2024-08-01",
|
||||
this.dialogForm.endDate = y + '-' + m + '-' + '31'//"2024-08-31",
|
||||
})
|
||||
this.overlayShow = false
|
||||
},
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<van-cell-group class='mt10'>
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>投保人信息</p>
|
||||
<van-field :value='appntInfo.name' label='投保人姓名' name='投保人姓名' readonly />
|
||||
<van-field :value="appntInfo.idType | idToText('insuredIdType')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value="appntInfo.idType | idToText('insuredIdTypeAllList')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value='appntInfo.idNo' label='证件号码' name='证件号码' readonly />
|
||||
<van-field :value='appntInfo.mobile' label='手机号码' name='手机号码' readonly />
|
||||
<van-field :value='appntInfo.homeName' label='联系地址' name='联系地址' readonly />
|
||||
@@ -28,7 +28,7 @@
|
||||
<template #title>
|
||||
<div>被保险人姓名<span class="ml20">{{item.name}}</span></div>
|
||||
</template>
|
||||
<van-field :value="item.idType | idToText('insuredIdType')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value="item.idType | idToText('insuredIdTypeAllList')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value='item.idNo' label='证件号码' name='证件号码' readonly />
|
||||
<!-- <van-field v-if='item.isLessEighteen' :value='item.mobile' label='手机号码' name='手机号码' readonly /> -->
|
||||
<!-- <van-field v-if='item.isLessEighteen' :value='item.email' label='电子邮箱' name='电子邮箱' readonly /> -->
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
:readonly="isAppnt"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="insuredInfo.idType | idToText('insuredIdType')"
|
||||
:value="insuredInfo.idType | idToText('insuredIdTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -599,6 +599,27 @@ export default {
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
validateIdNoByType(idType, idNo, type) {
|
||||
const trimmedIdNo = (idNo || '').trim()
|
||||
if (!trimmedIdNo) return true // 如果为空则不校验
|
||||
const validations = {
|
||||
11: {
|
||||
condition: !(trimmedIdNo.startsWith('810000') || trimmedIdNo.startsWith('820000')),
|
||||
message: '港澳居民居住证号码须以810000或820000开头,请确认!'
|
||||
},
|
||||
12: {
|
||||
condition: !trimmedIdNo.startsWith('830000'),
|
||||
message: '台湾居民居住证号码须以830000开头,请确认!'
|
||||
}
|
||||
}
|
||||
const validation = validations[idType]
|
||||
if (validation && validation.condition) {
|
||||
this.$toast(validation.message)
|
||||
this[type].idNo = ''
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
//长期状态改变时--被保人
|
||||
effectiveDataTypeChangeInsured(val) {
|
||||
if (val) {
|
||||
@@ -735,7 +756,7 @@ export default {
|
||||
this.columns = DataDictionary.nativeplace
|
||||
this.pickerIndex = this.userInfo.nativeplace - 1 > 0 ? this.userInfo.nativeplace - 1 : 0
|
||||
} else if (pickerType == '2') {
|
||||
this.columns = DataDictionary.insuredIdType
|
||||
this.columns = DataDictionary.insuredIdTypeAdjustment
|
||||
console.log(this.columns, '=======================this.columns==================')
|
||||
} else if (pickerType == '3') {
|
||||
this.columns = DataDictionary.degree
|
||||
@@ -1145,6 +1166,16 @@ export default {
|
||||
console.log(this.insuredInfo,'this.insuredInfo')
|
||||
this.$validator.validate().then(valid => {
|
||||
if (true === valid) {
|
||||
if (this.userInfo.idType == '11') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
}
|
||||
else if (this.userInfo.idType == '12') {
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
// 国富惠桂保团体医疗保险产品,职业不展示,相关字段默认为高风险工作人员
|
||||
// this.insuredInfo.occupationName = '高风险工作人员'
|
||||
// this.insuredInfo.occupationCode = '8000206'
|
||||
@@ -1271,6 +1302,14 @@ export default {
|
||||
if (idToData(this.insuredInfo.idNo).age >= 16) {
|
||||
return this.$toast('客户年龄在16周岁以上,不能使用户口本作为有效证件')
|
||||
}
|
||||
}else if (this.insuredInfo.idType == '11') {
|
||||
if (this.userinsuredInfoInfo.nativeplace != 2 && this.insuredInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
}else if (this.insuredInfo.idType == '12') {
|
||||
if (this.insuredInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
if (this.itemProductDTOS.productCode === 'GFRS_M0022') {
|
||||
// return
|
||||
@@ -1577,6 +1616,12 @@ export default {
|
||||
// })
|
||||
// },
|
||||
getRelatedData(val, ind) {
|
||||
if(this.userInfo.idType == '11' || this.userInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.userInfo.idType,this.userInfo.idNo, 'userInfo')
|
||||
}
|
||||
if(this.insuredInfo.idType == '11' || this.insuredInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.insuredInfo.idType,this.insuredInfo.idNo, 'insuredInfo')
|
||||
}
|
||||
//ind 1 投保人 2 被保人
|
||||
if (ind == '2') {
|
||||
if (this.insuredInfo.idType != '1' && this.insuredInfo.idType != '2') {
|
||||
@@ -1808,6 +1853,20 @@ export default {
|
||||
} else {
|
||||
this.insuredInfo.homeName = this.insuredInfo.homeAddress = ''
|
||||
}
|
||||
},
|
||||
'userInfo.idType': {
|
||||
handler(newVal) {
|
||||
if (newVal && this.userInfo.idNo) {
|
||||
this.validateIdNoByType(newVal, this.userInfo.idNo,'userInfo')
|
||||
}
|
||||
}
|
||||
},
|
||||
'insuredInfo.idType': {
|
||||
handler(newVal) {
|
||||
if (newVal && this.insuredInfo.idNo) {
|
||||
this.validateIdNoByType(newVal, this.insuredInfo.idNo,'insuredInfo')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<van-cell-group class='mt10'>
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>投保人信息</p>
|
||||
<van-field :value='appntInfo.name' label='姓名' name='姓名' readonly />
|
||||
<van-field :value="appntInfo.idType | idToText('insuredIdType')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value="appntInfo.idType | idToText('insuredIdTypeAllList')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value='appntInfo.idNo' label='证件号码' name='证件号码' readonly />
|
||||
<van-field :value='appntInfo.mobile' label='手机号码' name='手机号码' readonly />
|
||||
<van-field :value='appntInfo.email' label='电子邮箱' name='电子邮箱' readonly />
|
||||
@@ -13,7 +13,7 @@
|
||||
<van-cell-group class='mt10'>
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>被保人信息</p>
|
||||
<van-field :value='insuredInfo.name' label='姓名' name='姓名' readonly />
|
||||
<van-field :value="insuredInfo.idType | idToText('insuredIdType')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value="insuredInfo.idType | idToText('insuredIdTypeAllList')" label='证件类型' name='证件类型' readonly />
|
||||
<van-field :value='insuredInfo.idNo' label='证件号码' name='证件号码' readonly />
|
||||
<van-field v-if='isLessEighteen' :value='insuredInfo.mobile' label='手机号码' name='手机号码' readonly />
|
||||
<van-field v-if='isLessEighteen' :value='insuredInfo.email' label='电子邮箱' name='电子邮箱' readonly />
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
@on-click="selectClick('1', '0')"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="userInfo.idType | idToText('insuredIdType')"
|
||||
:value="userInfo.idType | idToText('idTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -195,7 +195,7 @@
|
||||
@on-click="selectClick('1', '1')"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="insuredInfo.idType | idToText('insuredIdType')"
|
||||
:value="insuredInfo.idType | idToText('insuredIdTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -370,7 +370,7 @@
|
||||
:value.sync='userInfo.name'></customer-picker>
|
||||
|
||||
<van-field
|
||||
:value="userInfo.idType | idToText('insuredIdType')"
|
||||
:value="userInfo.idType | idToText('insuredIdTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -1034,6 +1034,27 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
validateIdNoByType(idType, idNo, type) {
|
||||
const trimmedIdNo = (idNo || '').trim()
|
||||
if (!trimmedIdNo) return true // 如果为空则不校验
|
||||
const validations = {
|
||||
11: {
|
||||
condition: !(trimmedIdNo.startsWith('810000') || trimmedIdNo.startsWith('820000')),
|
||||
message: '港澳居民居住证号码须以810000或820000开头,请确认!'
|
||||
},
|
||||
12: {
|
||||
condition: !trimmedIdNo.startsWith('830000'),
|
||||
message: '台湾居民居住证号码须以830000开头,请确认!'
|
||||
}
|
||||
}
|
||||
const validation = validations[idType]
|
||||
if (validation && validation.condition) {
|
||||
this.$toast(validation.message)
|
||||
this[type].idNo = ''
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
insureTrial() {
|
||||
// if(this.insuredInfo.birthday || that.$route.query.relationToAppnt == '1'){
|
||||
if (this.userInfo.relationToInsured == 1) {
|
||||
@@ -1365,7 +1386,7 @@ export default {
|
||||
this.columns = DataDictionary.nativeplace
|
||||
this.pickerIndex = this.userInfo.nativeplace - 1 > 0 ? this.userInfo.nativeplace - 1 : 0
|
||||
} else if (pickerType == '2') {
|
||||
this.columns = DataDictionary.insuredIdType
|
||||
this.columns = DataDictionary.insuredIdTypeAdjustment
|
||||
console.log(this.columns, '=======================this.columns==================')
|
||||
} else if (pickerType == '3') {
|
||||
this.columns = DataDictionary.degree
|
||||
@@ -1423,7 +1444,7 @@ export default {
|
||||
|| this.itemProductDTOS.productCode == 'GFRS_M0052' || this.itemProductDTOS.productCode === 'GFRS_M0062' || this.itemProductDTOS.productCode === 'GFRS_M0063'||this.itemProductDTOS.productCode === 'GFRS_M0064') {
|
||||
this.columns = DataDictionary.insuredIdTypeSpecial
|
||||
} else {
|
||||
this.columns = DataDictionary.idType
|
||||
this.columns = DataDictionary.idTypeAdjustment
|
||||
}
|
||||
} else if(pickerType == 'appntNpType') {
|
||||
this.columns = DataDictionary.npType
|
||||
@@ -2075,6 +2096,16 @@ export default {
|
||||
return this.$toast(idNoCheck8(this.userInfo,'cardList').text)
|
||||
}
|
||||
}
|
||||
else if (this.userInfo.idType == '11') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
}
|
||||
else if (this.userInfo.idType == '12') {
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
let insuredAge = utilsAge.getAge(this.insuredInfo.birthday, new Date(this.cvaliDate))
|
||||
console.log('计算年龄', insuredAge)
|
||||
//如果证件类型是身份证或户口本
|
||||
@@ -2219,6 +2250,16 @@ export default {
|
||||
return this.$toast(idNoCheck8(this.insuredInfo,'cardList').text)
|
||||
}
|
||||
}
|
||||
if (this.insuredInfo.idType == '11') {
|
||||
if (this.insuredInfo.nativeplace != 2 && this.insuredInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
}
|
||||
else if (this.insuredInfo.idType == '12') {
|
||||
if (this.insuredInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
if (this.itemProductDTOS.productCode === 'GFRS_M0022') {
|
||||
// return
|
||||
// 如果是未成年人
|
||||
@@ -2630,6 +2671,12 @@ export default {
|
||||
// })
|
||||
// },
|
||||
getRelatedData(val, ind) {
|
||||
if(this.userInfo.idType == '11' || this.userInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.userInfo.idType,this.userInfo.idNo, 'userInfo')
|
||||
}
|
||||
if(this.insuredInfo.idType == '11' || this.insuredInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.insuredInfo.idType,this.insuredInfo.idNo, 'insuredInfo')
|
||||
}
|
||||
//ind 1 投保人 2 被保人
|
||||
if (ind == '1') {
|
||||
if (this.userInfo.idType != '1') {
|
||||
@@ -2910,6 +2957,20 @@ export default {
|
||||
} else {
|
||||
this.insuredInfo.homeName = this.insuredInfo.homeAddress = ''
|
||||
}
|
||||
},
|
||||
'userInfo.idType': {
|
||||
handler(newVal) {
|
||||
if (newVal && this.userInfo.idNo) {
|
||||
this.validateIdNoByType(newVal, this.userInfo.idNo,'userInfo')
|
||||
}
|
||||
}
|
||||
},
|
||||
'insuredInfo.idType': {
|
||||
handler(newVal) {
|
||||
if (newVal && this.insuredInfo.idNo) {
|
||||
this.validateIdNoByType(newVal, this.insuredInfo.idNo,'insuredInfo')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -213,7 +213,9 @@ export default {
|
||||
//从签名页调过来的标识
|
||||
sessionStorage.setItem('airSign', this.$route.query.airSign)
|
||||
}
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
if (this.$route.query.signInvalid) {
|
||||
sessionStorage.setItem('signInvalid', this.$route.query.signInvalid)
|
||||
}
|
||||
|
||||
@@ -353,6 +353,7 @@
|
||||
item.productCode != 'GFRS_M0080' &&
|
||||
item.productCode != 'GFRS_M0083' &&
|
||||
item.productCode != 'GFRS_M0098' &&
|
||||
item.productCode != 'GFRS_M0103' &&
|
||||
item.productCode != 'GFRS_M0085'
|
||||
"
|
||||
>
|
||||
@@ -840,14 +841,14 @@ export default {
|
||||
this.isEnterAddtionRiskListFunc()
|
||||
}
|
||||
}
|
||||
if (item.mainRiskCode == 'GFRS_M0083' || item.mainRiskCode == 'GFRS_M0098' || item.mainRiskCode == 'GFRS_M0085') {
|
||||
if (item.mainRiskCode == 'GFRS_M0083' || item.mainRiskCode == 'GFRS_M0098' || item.mainRiskCode == 'GFRS_M0103'|| item.mainRiskCode == 'GFRS_M0085') {
|
||||
this.disabledShow = true
|
||||
}
|
||||
if (item.hasPredictTransferPrem == '1') {
|
||||
this.disabledShow = false
|
||||
}
|
||||
|
||||
if ((item.mainRiskCode == 'GFRS_M0083' || item.mainRiskCode == 'GFRS_M0098' || item.mainRiskCode == 'GFRS_M0085') && this.isFrom == 'proposal') {
|
||||
if ((item.mainRiskCode == 'GFRS_M0083' || item.mainRiskCode == 'GFRS_M0098' || item.mainRiskCode == 'GFRS_M0103'|| item.mainRiskCode == 'GFRS_M0085') && this.isFrom == 'proposal') {
|
||||
item.calFactorLst.forEach((i) => {
|
||||
if (i.code == 'inputPrem') {
|
||||
i.minPrem = 0.01
|
||||
@@ -2181,14 +2182,14 @@ export default {
|
||||
let thisproductInfo = JSON.parse(window.localStorage.getItem('chooseProducts'))
|
||||
if (thisproductInfo && thisproductInfo.length != 0) {
|
||||
thisproductInfo.forEach((item) => {
|
||||
if (item.productCode == 'GFRS_M0083' || item.productCode == 'GFRS_M0098' || item.productCode == 'GFRS_M0085') {
|
||||
if (item.productCode == 'GFRS_M0083' || item.productCode == 'GFRS_M0098' || item.productCode == 'GFRS_M0103'|| item.productCode == 'GFRS_M0085') {
|
||||
productCode = item.productCode
|
||||
hasPredictTransferPrem = item.hasPredictTransferPrem
|
||||
}
|
||||
})
|
||||
}
|
||||
if (this.isFrom != 'proposal') {
|
||||
if (productCode == 'GFRS_M0083' || productCode == 'GFRS_M0098' || productCode == 'GFRS_M0085') {
|
||||
if (productCode == 'GFRS_M0083' || productCode == 'GFRS_M0098' || productCode == 'GFRS_M0103'|| productCode == 'GFRS_M0085') {
|
||||
if (!that.policyNo) {
|
||||
this.disabledShow = true
|
||||
that.chooseProducts.forEach((item) => {
|
||||
@@ -2389,6 +2390,14 @@ export default {
|
||||
trialFlag = false
|
||||
}
|
||||
}
|
||||
}else if (item.productCode == 'GFRS_M0101' || item.productCode == 'GFRS_M0102') {
|
||||
// 当投保人年龄≥75周岁时,需转人工核保。核心提示语,投保人年龄≥75周岁。前端提示语为:投保人年龄≥75周岁,需进一步人工审核
|
||||
let appntAge = this.saleInsuredInfo.age
|
||||
if (appntAge>=75){
|
||||
this.nextStepFlag = true
|
||||
this.$toast('投保人年龄≥75周岁,需进一步人工审核!')
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
if (!trialFlag) {
|
||||
@@ -2965,7 +2974,7 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (productCode == 'GFRS_M0083' || productCode == 'GFRS_M0098' || productCode == 'GFRS_M0085') {
|
||||
} else if (productCode == 'GFRS_M0083' || productCode == 'GFRS_M0098' || productCode == 'GFRS_M0103'|| productCode == 'GFRS_M0085') {
|
||||
if (this.isFrom != 'proposal') {
|
||||
if (!this.policyNo && defalutValue < 5) {
|
||||
this.$toast('单独投保,保费为大于等于50000元')
|
||||
|
||||
@@ -48,7 +48,7 @@ export default {
|
||||
age = this.getSaleInsuredInfo().age
|
||||
tips = '投保人年龄不适合此款险种,请选择其他险种!'
|
||||
} else {
|
||||
if(riskProductCode == 'GFRS_M0061'){
|
||||
if(riskProductCode == 'GFRS_M0061' || riskProductCode == 'GFRS_M0102' || riskProductCode == 'GFRS_M0101'){
|
||||
age = this.getSaleInsuredPersonInfo().birthday?utilsAge.getAge29(this.getSaleInsuredPersonInfo().birthday, new Date()):this.getSaleInsuredPersonInfo().insuredAge
|
||||
}else{
|
||||
age = this.getSaleInsuredPersonInfo().birthday?utilsAge.getAgeByValue(this.getSaleInsuredPersonInfo().birthday, new Date()):this.getSaleInsuredPersonInfo().insuredAge
|
||||
|
||||
@@ -396,7 +396,9 @@ export default {
|
||||
}
|
||||
// this.$CacheUtils.setLocItem('saleInsuredInfo', this.$route.query.saleInsuredInfo)
|
||||
// window.localStorage.setItem('saleInsuredPersonInfo', this.$route.query.saleInsuredPersonInfo)
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
window.localStorage.setItem('orderNo', this.$route.query.orderNo)
|
||||
// window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt)
|
||||
// window.localStorage.setItem('productCode', this.$route.query.productCode)
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<p class="fs18 fwb">一、公司介绍</p>
|
||||
<van-image width="100%" height="150" :src="img1" class="mt15" />
|
||||
<p class="fs14 indent">
|
||||
国富人寿保险股份有限公司是经中国银保监会批准,于2018年6月成立的全国性寿险公司。公司由广西投资集团、唯品会、吉安新年等8家知名企业共同出资创立,注册资本金15亿元,总部位于南宁市,是广西壮族自治区首家寿险法人机构。公司以“因为国富、所以民安”为使命,用心研发实惠产品,用爱提供实在服务,守护幸福美好生活。
|
||||
国富人寿保险股份有限公司是经中国银保监会批准,于2018年6月成立的全国性寿险公司。公司由广西投资集团、唯品会、吉安新年等8家知名企业共同出资创立,注册资本金15亿元,总部位于南宁市,是广西壮族自治区首家寿险法人机构。公司以“因为国富、所以民安”为使命,用心研发实惠产品,用爱提供实在服务,守护幸福美好生活。
|
||||
</p>
|
||||
<!-- <p class="fs14 indent">
|
||||
国富人寿将秉持“老有所养,病有所医,红利共享,国富民安”的核心理念,以“让更多的人过上有尊严的健康快乐的生活”作为企业使命,树立并践行“简单、专注、诚信、激情、关爱、领先”的价值观。专注于客户体验,研发满足客户需求的产品,为客户提供有温度的服务。依法合规、稳健经营,立足广西、深耕广西、面向全国,更好地回馈社会、回报股东、与时俱进、超越自我。
|
||||
@@ -75,7 +75,9 @@ export default {
|
||||
this.redisKey = this.$route.query.redisKey
|
||||
if (this.redisKey) {
|
||||
this.saveShareRecord('1')
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
} else {
|
||||
this.getShareKey()
|
||||
}
|
||||
@@ -117,7 +119,7 @@ export default {
|
||||
url: `${location.origin}/#/manpower/increaseStaffTools/CompanyIntroduction`
|
||||
}
|
||||
getShareKey(data)
|
||||
.then(res => {
|
||||
.then((res) => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.redisKey = res.content
|
||||
@@ -125,7 +127,7 @@ export default {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
.catch((err) => {
|
||||
console.log(err)
|
||||
})
|
||||
},
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<iframe :src="src + pdfUrl" style="width:100vw;height:100vh"></iframe>
|
||||
<iframe :src="src + pdfUrl" style="width: 100vw; height: 100vh"></iframe>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -38,7 +38,9 @@ export default {
|
||||
this.redisKey = this.$route.query.redisKey
|
||||
if (this.redisKey) {
|
||||
this.saveShareRecord('1')
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
} else {
|
||||
this.getShareKey()
|
||||
}
|
||||
@@ -83,7 +85,7 @@ export default {
|
||||
url: `${location.origin}/pdfjs/web/viewer.html?file=${this.pdfUrl}`
|
||||
}
|
||||
getShareKey(data)
|
||||
.then(res => {
|
||||
.then((res) => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.redisKey = res.content
|
||||
@@ -91,7 +93,7 @@ export default {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
.catch((err) => {
|
||||
console.log(err)
|
||||
})
|
||||
},
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
</div>
|
||||
<div v-else>
|
||||
<template v-if="redirectUrl">
|
||||
<iframe v-show="thirdUrlReady" style="width: 100vw; min-height: 100vh;" :src="redirectUrl" frameborder="0"></iframe>
|
||||
<iframe v-show="thirdUrlReady" style="width: 100vw; min-height: 100vh" :src="redirectUrl" frameborder="0"></iframe>
|
||||
</template>
|
||||
<template v-if="detailImg">
|
||||
<img id="detailImg" v-if="detailImg" :src="$assetsUrl + detailImg" />
|
||||
@@ -151,7 +151,9 @@ export default {
|
||||
},
|
||||
async mounted() {
|
||||
if (this.isWeixin) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
this.loginInfo.aname = decodeURI(this.$route.query.aname)
|
||||
this.loginInfo.password = decodeURI(this.$route.query.password)
|
||||
this.shareId = this.$route.query.shareId
|
||||
@@ -162,7 +164,7 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
prevImg(i) {
|
||||
let imgs = this.imgList.map(img => {
|
||||
let imgs = this.imgList.map((img) => {
|
||||
return this.$assetsUrl + img
|
||||
})
|
||||
ImagePreview(imgs, i)
|
||||
@@ -259,7 +261,7 @@ export default {
|
||||
//分享轨迹保存
|
||||
saveShareTrack(data) {
|
||||
return new Promise((resolve, reject) => {
|
||||
saveShareTrack(data).then(res => {
|
||||
saveShareTrack(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
resolve()
|
||||
} else {
|
||||
|
||||
@@ -804,6 +804,7 @@ export default {
|
||||
item01.mainRiskCode == 'GFRS_M0083' ||
|
||||
item01.mainRiskCode == 'GFRS_M0085' ||
|
||||
item01.mainRiskCode == 'GFRS_M0098' ||
|
||||
item01.mainRiskCode == 'GFRS_M0103' ||
|
||||
item01.mainRiskCode == 'GFRS_M0100'
|
||||
) {
|
||||
that.ispremshow = false
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -29,7 +29,7 @@
|
||||
:readonly="isInsured && nameLimit"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="userInfo.idType | idToText('idType')"
|
||||
:value="userInfo.idType | idToText('idTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -368,6 +368,27 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
validateIdNoByType(idType, idNo) {
|
||||
const trimmedIdNo = (idNo || '').trim();
|
||||
if (!trimmedIdNo) return true; // 如果为空则不校验
|
||||
const validations = {
|
||||
'11': {
|
||||
condition: !(trimmedIdNo.startsWith('810000') || trimmedIdNo.startsWith('820000')),
|
||||
message: '港澳居民居住证号码须以810000或820000开头,请确认!'
|
||||
},
|
||||
'12': {
|
||||
condition: !trimmedIdNo.startsWith('830000'),
|
||||
message: '台湾居民居住证号码须以830000开头,请确认!'
|
||||
}
|
||||
};
|
||||
const validation = validations[idType];
|
||||
if (validation && validation.condition) {
|
||||
this.$toast(validation.message);
|
||||
this.userInfo.idNo = '';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
setCustomerMarriage(marriageCode) {
|
||||
for (let status of DataDictionary.marriage) {
|
||||
if (status.id == marriageCode) {
|
||||
@@ -512,7 +533,7 @@ export default {
|
||||
if (pickerType == '1') {
|
||||
this.columns = DataDictionary.nativeplace
|
||||
} else if (pickerType == '2') {
|
||||
this.columns = DataDictionary.idType
|
||||
this.columns = DataDictionary.idTypeAdjustment
|
||||
} else if (pickerType == '3') {
|
||||
this.columns = DataDictionary.degree
|
||||
} else if (pickerType == '4') {
|
||||
@@ -1032,11 +1053,20 @@ export default {
|
||||
if (this.userInfo.nativeplace != '4') {
|
||||
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '9') {
|
||||
if (this.userInfo.nativeplace != '2' && this.userInfo.nativeplace != '3' && this.userInfo.nativeplace != '4') {
|
||||
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
|
||||
} else if (this.userInfo.idType == '11') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '12') {
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
// else if (this.userInfo.idType == '9') {
|
||||
// if (this.userInfo.nativeplace != '2' && this.userInfo.nativeplace != '3' && this.userInfo.nativeplace != '4') {
|
||||
// return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
|
||||
// }
|
||||
// }
|
||||
|
||||
// 通过国籍判断 证件是否符合要求
|
||||
// 如果是国籍选择中国大陆
|
||||
@@ -1046,7 +1076,9 @@ export default {
|
||||
'1': true,
|
||||
'5': true,
|
||||
'6': true,
|
||||
'9': true
|
||||
// '9': true,
|
||||
'11': true,
|
||||
'12': true,
|
||||
}
|
||||
let idType = this.userInfo.idType
|
||||
// 通过年龄 判断证件是否符合要求
|
||||
@@ -1293,6 +1325,9 @@ export default {
|
||||
return `${year}-${month}-${day}`
|
||||
},
|
||||
getRelatedData(val, from) {
|
||||
if(this.userInfo.idType == '11' || this.userInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.userInfo.idType,this.userInfo.idNo)
|
||||
}
|
||||
if (this.userInfo.idType != '1' && this.userInfo.idType != '2') {
|
||||
return
|
||||
}
|
||||
@@ -1372,6 +1407,13 @@ export default {
|
||||
} else {
|
||||
this.homeName = this.userInfo.homeAddress = ''
|
||||
}
|
||||
},
|
||||
'userInfo.idType': {
|
||||
handler(newVal, oldVal) {
|
||||
if(newVal && this.userInfo.idNo){
|
||||
this.validateIdNoByType(newVal,this.userInfo.idNo)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<div class="p10">
|
||||
<div v-for="(item, index) in idType" :key="index">
|
||||
<div v-if="item.id == saleInsuredInfo.idType">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9'">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9' || item.id == '11' || item.id == '12'">
|
||||
<van-cell-group>
|
||||
<van-field required :label="item.id == '2' ? `${item.text}户主页` : `${item.text}正面`" disabled />
|
||||
</van-cell-group>
|
||||
@@ -86,7 +86,7 @@
|
||||
<div class=" ">
|
||||
<div v-for="(item, index) in idType" :key="index">
|
||||
<div v-if="item.id == saleInsuredPersonInfo.idType">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9'">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9' || item.id == '11' || item.id == '12'">
|
||||
<van-cell-group>
|
||||
<van-field required :label="item.id == '2' ? `${item.text}户主页` : `${item.text}正面`" disabled />
|
||||
</van-cell-group>
|
||||
@@ -161,7 +161,7 @@
|
||||
<div v-for="(item, index) in idType" :key="index">
|
||||
<div v-for="(item01, index01) in saleBtnfPersonInfo" :key="index01">
|
||||
<div v-if="item.id == item01.idType">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9'">
|
||||
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9' || item.id == '11' || item.id == '12'">
|
||||
<van-cell-group>
|
||||
<van-field required :label="item.id == '2' ? `${item01.name}+${item.text}户主页` : `${item01.name}+${item.text}正面`" disabled />
|
||||
</van-cell-group>
|
||||
@@ -432,7 +432,7 @@ export default {
|
||||
// 获取是投保人还是被保险人
|
||||
that.isAppant = window.localStorage.getItem('accountInformationRadio')
|
||||
// 数据字典获取
|
||||
that.idType = DataDictionary.idType
|
||||
that.idType = DataDictionary.idTypeAdjustment
|
||||
|
||||
// 获取投保人信息
|
||||
// if (this.$CacheUtils.getLocItem('saleInsuredInfo')) {
|
||||
@@ -642,8 +642,7 @@ export default {
|
||||
test(name, type, subBusinessType, subBusinessNo, id, bnfId) {
|
||||
this.imageType = type
|
||||
this.subBusinessType = subBusinessType
|
||||
this.bnfId = bnfId
|
||||
this.id = id
|
||||
this.bnfId = bnfId == '11' || bnfId == '12' ? '9' : bnfId
|
||||
this.type = name
|
||||
this.subBusinessNo = subBusinessNo
|
||||
this.$store.commit('updateUploadImgType', name)
|
||||
|
||||
@@ -217,6 +217,12 @@ export default {
|
||||
case '9':
|
||||
res.orderDTO.appntDTO.idType = '港澳台居民居住证'
|
||||
break
|
||||
case '11':
|
||||
res.orderDTO.appntDTO.idType = '港澳居民居住证'
|
||||
break
|
||||
case '12':
|
||||
res.orderDTO.appntDTO.idType = '台湾居民居住证'
|
||||
break
|
||||
}
|
||||
this.appntDTO = res.orderDTO.appntDTO
|
||||
res.orderDTO.insuredDTOs.map(item => {
|
||||
@@ -282,6 +288,12 @@ export default {
|
||||
case '9':
|
||||
item.idType = '港澳台居民居住证'
|
||||
break
|
||||
case '11':
|
||||
item.idType = '港澳居民居住证'
|
||||
break
|
||||
case '12':
|
||||
item.idType = '台湾居民居住证'
|
||||
break
|
||||
}
|
||||
switch (item.relationToAppnt) {
|
||||
case '1':
|
||||
@@ -337,6 +349,12 @@ export default {
|
||||
case '9':
|
||||
it.idType = '港澳台居民居住证'
|
||||
break
|
||||
case '11':
|
||||
it.idType = '港澳居民居住证'
|
||||
break
|
||||
case '12':
|
||||
it.idType = '台湾居民居住证'
|
||||
break
|
||||
}
|
||||
switch (it.relationToInsured) {
|
||||
case '1':
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
@on-click="selectClick('1')"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="userInfo.idType | idToText('insuredIdType')"
|
||||
:value="userInfo.idType | idToText('insuredIdTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -737,6 +737,28 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
validateIdNoByType(idType, idNo) {
|
||||
const trimmedIdNo = (idNo || '').trim();
|
||||
if (!trimmedIdNo) return true; // 如果为空则不校验
|
||||
const validations = {
|
||||
'11': {
|
||||
condition: !(trimmedIdNo.startsWith('810000') || trimmedIdNo.startsWith('820000')),
|
||||
message: '港澳居民居住证号码须以810000或820000开头,请确认!'
|
||||
},
|
||||
'12': {
|
||||
condition: !trimmedIdNo.startsWith('830000'),
|
||||
message: '台湾居民居住证号码须以830000开头,请确认!'
|
||||
}
|
||||
};
|
||||
|
||||
const validation = validations[idType];
|
||||
if (validation && validation.condition) {
|
||||
this.$toast(validation.message);
|
||||
this.userInfo.idNo = '';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
getDepartmentByProjectNo(){
|
||||
let params = {
|
||||
|
||||
@@ -859,7 +881,7 @@
|
||||
this.columns = DataDictionary.nativeplace
|
||||
break
|
||||
case '2':
|
||||
this.columns = DataDictionary.insuredIdType
|
||||
this.columns = DataDictionary.insuredIdTypeAdjustment
|
||||
break
|
||||
// case '3':
|
||||
// this.columns = DataDictionary.degree
|
||||
@@ -1266,11 +1288,20 @@
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '9') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
|
||||
} else if (this.userInfo.idType == '11') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
|
||||
return this.$toast('"证件类型"为"港澳居民居住证","国籍"请选择"中国香港"、或"中国澳门"哦~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '12') {
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('"证件类型"为"台湾居民居住证","国籍"请选择"中国台湾"~')
|
||||
}
|
||||
}
|
||||
// else if (this.userInfo.idType == '9') {
|
||||
// if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
|
||||
// return this.$toast('"证件类型"为"港澳台居民居住证","国籍"请选择"中国香港"、"中国澳门"或"中国台湾"~')
|
||||
// }
|
||||
// }
|
||||
// else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
|
||||
// console.log('证件类型是护照')
|
||||
// return this.$toast('护照须大于等于3个字符')
|
||||
@@ -1349,7 +1380,9 @@
|
||||
1: true,
|
||||
5: true,
|
||||
6: true,
|
||||
9: true
|
||||
// 9: true,
|
||||
11: true,
|
||||
12: true,
|
||||
}
|
||||
let idType = this.userInfo.idType
|
||||
// 通过年龄 判断证件是否符合要求
|
||||
@@ -1592,6 +1625,9 @@
|
||||
}
|
||||
},
|
||||
getRelatedData(val, source) {
|
||||
if(this.userInfo.idType == '11' || this.userInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.userInfo.idType,this.userInfo.idNo)
|
||||
}
|
||||
if (this.userInfo.idType != '1') {
|
||||
return
|
||||
}
|
||||
@@ -1642,6 +1678,13 @@
|
||||
this.userInfo.marriage = status.id
|
||||
}
|
||||
}
|
||||
},
|
||||
'userInfo.idType': {
|
||||
handler(newVal, oldVal) {
|
||||
if(newVal && this.userInfo.idNo){
|
||||
this.validateIdNoByType(newVal,this.userInfo.idNo)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
:readonly="isAppnt"
|
||||
></customer-picker>
|
||||
<van-field
|
||||
:value="userInfo.idType | idToText('idType')"
|
||||
:value="userInfo.idType | idToText('idTypeAdjustment')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
@@ -823,6 +823,28 @@
|
||||
this.areaLists = areaLists
|
||||
},
|
||||
methods: {
|
||||
validateIdNoByType(idType, idNo) {
|
||||
const trimmedIdNo = (idNo || '').trim();
|
||||
if (!trimmedIdNo) return true; // 如果为空则不校验
|
||||
const validations = {
|
||||
'11': {
|
||||
condition: !(trimmedIdNo.startsWith('810000') || trimmedIdNo.startsWith('820000')),
|
||||
message: '港澳居民居住证号码须以810000或820000开头,请确认!'
|
||||
},
|
||||
'12': {
|
||||
condition: !trimmedIdNo.startsWith('830000'),
|
||||
message: '台湾居民居住证号码须以830000开头,请确认!'
|
||||
}
|
||||
};
|
||||
|
||||
const validation = validations[idType];
|
||||
if (validation && validation.condition) {
|
||||
this.$toast(validation.message);
|
||||
this.userInfo.idNo = '';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
isNewPeopleFlagTip(){
|
||||
this.isNewPeopleFlagTipshow = true
|
||||
},
|
||||
@@ -902,7 +924,7 @@
|
||||
if (pickerType == '1') {
|
||||
this.columns = DataDictionary.nativeplace
|
||||
} else if (pickerType == '2') {
|
||||
this.columns = DataDictionary.idType
|
||||
this.columns = DataDictionary.idTypeAdjustment
|
||||
} /*else if (pickerType == '3') {
|
||||
this.columns = DataDictionary.degree
|
||||
} */ else if (pickerType == '4') {
|
||||
@@ -1618,11 +1640,20 @@
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '9') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
|
||||
} else if (this.userInfo.idType == '11') {
|
||||
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
|
||||
return this.$toast('“证件类型”为“港澳居民居住证”,“国籍”请选择“中国香港”、或“中国澳门”哦~')
|
||||
}
|
||||
} else if (this.userInfo.idType == '12') {
|
||||
if (this.userInfo.nativeplace != 4) {
|
||||
return this.$toast('“证件类型”为“台湾居民居住证”,“国籍”请选择“中国台湾”~')
|
||||
}
|
||||
}
|
||||
// else if (this.userInfo.idType == '9') {
|
||||
// if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
|
||||
// return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
|
||||
// }
|
||||
// }
|
||||
// else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
|
||||
// return this.$toast('护照须大于等于3个字符')
|
||||
// //证件是港澳居民通行证
|
||||
@@ -1670,7 +1701,9 @@
|
||||
1: true,
|
||||
5: true,
|
||||
6: true,
|
||||
9: true,
|
||||
// 9: true,
|
||||
11: true,
|
||||
12: true,
|
||||
}
|
||||
let idType = this.userInfo.idType
|
||||
// 通过年龄 判断证件是否符合要求
|
||||
@@ -1944,6 +1977,9 @@
|
||||
}
|
||||
},
|
||||
getRelatedData(val, from) {
|
||||
if(this.userInfo.idType == '11' || this.userInfo.idType == '12'){
|
||||
this.validateIdNoByType(this.userInfo.idType,this.userInfo.idNo)
|
||||
}
|
||||
// debugger
|
||||
if (this.userInfo.idType != '1' && this.userInfo.idType != '2') {
|
||||
return
|
||||
@@ -2068,6 +2104,13 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
'userInfo.idType': {
|
||||
handler(newVal, oldVal) {
|
||||
if(newVal && this.userInfo.idNo){
|
||||
this.validateIdNoByType(newVal,this.userInfo.idNo)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -696,7 +696,9 @@ export default {
|
||||
if (this.$route.query.airSign) {
|
||||
sessionStorage.setItem('airSign', this.$route.query.airSign)
|
||||
}
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
window.localStorage.setItem('orderNo', this.$route.query.orderNo)
|
||||
if (this.$route.query.changeCard == '0') {
|
||||
localStorage.setItem('changeCard', true)
|
||||
|
||||
@@ -315,7 +315,9 @@ export default {
|
||||
|
||||
this.$CacheUtils.setLocItem('saleInsuredInfo', this.$route.query.saleInsuredInfo)
|
||||
this.$CacheUtils.setLocItem('saleInsuredPersonInfo', this.$route.query.saleInsuredPersonInfo)
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
window.localStorage.setItem('orderNo', this.$route.query.orderNo)
|
||||
window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt)
|
||||
if (this.$route.query.signInvalid) {
|
||||
|
||||
@@ -15,10 +15,15 @@
|
||||
<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-button>
|
||||
</van-cell-group>
|
||||
</van-dialog>
|
||||
<UploadImageFile :typeface="idcardData.typeface && (faceAuthCount.weixin < smsAuthNum)" :realName="idcardData.idcardName" :idno="idcardData.idcardNumber" @sendimage="sendimage">
|
||||
<UploadImageFile
|
||||
:typeface="idcardData.typeface && faceAuthCount.weixin < smsAuthNum"
|
||||
:realName="idcardData.idcardName"
|
||||
:idno="idcardData.idcardNumber"
|
||||
@sendimage="sendimage"
|
||||
>
|
||||
</UploadImageFile>
|
||||
<div class="p60">
|
||||
<van-button type="danger" @click="uploadComparison" size="large">上传照片与证件照对比</van-button>
|
||||
@@ -82,7 +87,9 @@ export default {
|
||||
created() {
|
||||
if (this.isWeixin) {
|
||||
this.$CacheUtils.setLocItem('saleInsuredInfo', this.$route.query.saleInsuredInfo)
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
if (this.$route.query.token) {
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
}
|
||||
window.localStorage.setItem('policyNo', this.$route.query.policyNo)
|
||||
this.idcardData.idcardName = JSON.parse(this.$route.query.saleInsuredInfo).name
|
||||
this.idcardData.idcardNumber = JSON.parse(this.$route.query.saleInsuredInfo).idNo
|
||||
@@ -120,7 +127,7 @@ export default {
|
||||
operateCode: this.customerMobile,
|
||||
system: 'agentApp',
|
||||
operateCodeType: '0'
|
||||
}).then(res => {
|
||||
}).then((res) => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.sid = res.sessionId
|
||||
@@ -178,7 +185,7 @@ export default {
|
||||
this.authCode = null
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
return new Promise((resolve, reject) => {
|
||||
checkPhone(data).then(res => {
|
||||
checkPhone(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
console.log(res)
|
||||
this.show = true
|
||||
@@ -203,7 +210,7 @@ export default {
|
||||
if (e) {
|
||||
that.disabled = false
|
||||
} else {
|
||||
this.faceAuthCount.weixin++;
|
||||
this.faceAuthCount.weixin++
|
||||
if (this.faceAuthCount.weixin >= this.smsAuthNum) {
|
||||
this.realPeopelCheck()
|
||||
}
|
||||
@@ -219,7 +226,7 @@ export default {
|
||||
},
|
||||
//根据数据字典 将后端返回的数据渲染到页面中
|
||||
filterData(dictionary, key, pageData) {
|
||||
dictionary.forEach(item => {
|
||||
dictionary.forEach((item) => {
|
||||
if (pageData[key] == item.id) {
|
||||
pageData[key + 'Text'] = item.text //渲染页面使用的字段
|
||||
}
|
||||
@@ -231,7 +238,7 @@ export default {
|
||||
let data = {
|
||||
policyNo: this.$route.query.policyNo
|
||||
}
|
||||
getPolicyDetail(data).then(res => {
|
||||
getPolicyDetail(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
let appntDTO = res.content.appntDTO
|
||||
let orderInfoDTO = res.content.orderInfoDTO
|
||||
@@ -249,8 +256,8 @@ export default {
|
||||
this.filterData(dataDictionary.idType, 'idType', appntDTO)
|
||||
that.appntDTO = appntDTO
|
||||
// 被保险人信息
|
||||
res.content.insuredDTOs.map(insured => {
|
||||
insured.riskDTOLst.map(risk => {
|
||||
res.content.insuredDTOs.map((insured) => {
|
||||
insured.riskDTOLst.map((risk) => {
|
||||
Number(risk.payIntv)
|
||||
switch (risk.payIntv) {
|
||||
case -1:
|
||||
@@ -287,7 +294,7 @@ export default {
|
||||
this.filterData(dataDictionary.sex, 'sex', insured)
|
||||
this.filterData(dataDictionary.idType, 'idType', insured)
|
||||
this.filterData(dataDictionary.relationToAppnt, 'relation', insured)
|
||||
insured.bnfDTOs.map(bnf => {
|
||||
insured.bnfDTOs.map((bnf) => {
|
||||
this.filterData(dataDictionary.bnfType, 'bnfType', bnf)
|
||||
this.filterData(dataDictionary.sex, 'sex', bnf)
|
||||
this.filterData(dataDictionary.idType, 'idType', bnf)
|
||||
@@ -307,7 +314,7 @@ export default {
|
||||
let params = {
|
||||
contNo: this.$route.query.policyNo
|
||||
}
|
||||
getReceiptSign(params).then(res => {
|
||||
getReceiptSign(params).then((res) => {
|
||||
if (res.result == '0') {
|
||||
console.log('res', res)
|
||||
this.$toast.clear()
|
||||
|
||||
Reference in New Issue
Block a user