mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-12 03:16:43 +08:00
Merge branch 'feature/GFRS-2301【需求】健康险渠道国富无忧卡金掌桂开发的需求' into dev
This commit is contained in:
@@ -40,6 +40,21 @@
|
|||||||
>
|
>
|
||||||
<van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3', '', '1')">证件扫描</van-button>
|
<van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3', '', '1')">证件扫描</van-button>
|
||||||
</van-field>
|
</van-field>
|
||||||
|
<FieldDatePicter
|
||||||
|
:v-validate="{ required: certiexpiredateRequired }"
|
||||||
|
required
|
||||||
|
label="证件截止日期"
|
||||||
|
name="证件截止日期"
|
||||||
|
:value.sync="userInfo.certiexpiredate"
|
||||||
|
type="date"
|
||||||
|
@confirm="onDateConfirm($event, '1')"
|
||||||
|
ref="certiexpiredate"
|
||||||
|
:flag="true"
|
||||||
|
:readonly="idLimit"
|
||||||
|
></FieldDatePicter>
|
||||||
|
<div class="border-bt relative fs14 p10 flex justify-content-fe">
|
||||||
|
<van-checkbox v-model="userInfo.effectiveDateType" :disabled="effectiveDateTypeAble" @change="effectiveDataTypeChange">长期</van-checkbox>
|
||||||
|
</div>
|
||||||
<select-radio required :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="userInfo.sex"></select-radio>
|
<select-radio required :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="userInfo.sex"></select-radio>
|
||||||
<FieldDatePicter
|
<FieldDatePicter
|
||||||
v-validate="'required'"
|
v-validate="'required'"
|
||||||
@@ -76,6 +91,16 @@
|
|||||||
:value="userInfo.occupationName"
|
:value="userInfo.occupationName"
|
||||||
right-icon="arrow"
|
right-icon="arrow"
|
||||||
/>
|
/>
|
||||||
|
<van-field
|
||||||
|
v-model="userInfo.averageAnnualIncome"
|
||||||
|
label="平均年收入(万元)"
|
||||||
|
name="平均年收入"
|
||||||
|
required
|
||||||
|
placeholder="请输入,单位万元"
|
||||||
|
v-validate="'required|onlyNumber'"
|
||||||
|
clearable
|
||||||
|
maxlength="5"
|
||||||
|
/>
|
||||||
<van-field
|
<van-field
|
||||||
v-validate="'required'"
|
v-validate="'required'"
|
||||||
:value="userInfo.nativeplace | idToText('nativeplace')"
|
:value="userInfo.nativeplace | idToText('nativeplace')"
|
||||||
@@ -161,6 +186,23 @@
|
|||||||
>
|
>
|
||||||
<van-button v-if="insuredInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3', '', '2')">证件扫描</van-button>
|
<van-button v-if="insuredInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3', '', '2')">证件扫描</van-button>
|
||||||
</van-field>
|
</van-field>
|
||||||
|
<FieldDatePicter
|
||||||
|
:v-validate="{ required: certiexpiredateRequiredInsured }"
|
||||||
|
required
|
||||||
|
label="证件截止日期"
|
||||||
|
name="证件截止日期"
|
||||||
|
:value.sync="insuredInfo.certiexpiredate"
|
||||||
|
type="date"
|
||||||
|
@confirm="onDateConfirm($event, '7')"
|
||||||
|
ref="certiexpiredate"
|
||||||
|
:flag="true"
|
||||||
|
:readonly="idLimit"
|
||||||
|
></FieldDatePicter>
|
||||||
|
<div class="border-bt relative fs14 p10 flex justify-content-fe">
|
||||||
|
<van-checkbox v-model="insuredInfo.effectiveDateType" :disabled="effectiveDateTypeAbleInsured" @change="effectiveDataTypeChangeInsured"
|
||||||
|
>长期</van-checkbox
|
||||||
|
>
|
||||||
|
</div>
|
||||||
<select-radio required :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="insuredInfo.sex"></select-radio>
|
<select-radio required :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="insuredInfo.sex"></select-radio>
|
||||||
<FieldDatePicter
|
<FieldDatePicter
|
||||||
label="出生日期"
|
label="出生日期"
|
||||||
@@ -193,6 +235,16 @@
|
|||||||
:value="insuredInfo.occupationName"
|
:value="insuredInfo.occupationName"
|
||||||
right-icon="arrow"
|
right-icon="arrow"
|
||||||
/>
|
/>
|
||||||
|
<van-field
|
||||||
|
v-model="insuredInfo.averageAnnualIncome"
|
||||||
|
label="平均年收入(万元)"
|
||||||
|
name="平均年收入"
|
||||||
|
required
|
||||||
|
placeholder="请输入,单位万元"
|
||||||
|
v-validate="'required|onlyNumber'"
|
||||||
|
clearable
|
||||||
|
maxlength="5"
|
||||||
|
/>
|
||||||
<van-field
|
<van-field
|
||||||
:value="insuredInfo.nativeplace | idToText('nativeplace')"
|
:value="insuredInfo.nativeplace | idToText('nativeplace')"
|
||||||
readonly
|
readonly
|
||||||
@@ -250,6 +302,19 @@
|
|||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
|
<FieldDatePicter
|
||||||
|
required
|
||||||
|
label="证件截止日期"
|
||||||
|
name="证件截止日期"
|
||||||
|
:value.sync="userInfo.certiexpiredate"
|
||||||
|
type="date"
|
||||||
|
ref="certiexpiredate"
|
||||||
|
:flag="true"
|
||||||
|
readonly
|
||||||
|
></FieldDatePicter>
|
||||||
|
<div class="border-bt relative fs14 p10 flex justify-content-fe">
|
||||||
|
<van-checkbox v-model="userInfo.effectiveDateType" disabled="false">长期</van-checkbox>
|
||||||
|
</div>
|
||||||
<select-radio required :disabled="true" :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="userInfo.sex"></select-radio>
|
<select-radio required :disabled="true" :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="userInfo.sex"></select-radio>
|
||||||
<FieldDatePicter
|
<FieldDatePicter
|
||||||
v-validate="'required'"
|
v-validate="'required'"
|
||||||
@@ -272,9 +337,21 @@
|
|||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
v-validate="'required|mobile'"
|
v-validate="'required|mobile'"
|
||||||
maxlength="11"
|
maxlength="11"
|
||||||
|
readonly
|
||||||
/>
|
/>
|
||||||
<van-field v-model="userInfo.email" required label="邮箱" name="邮箱" placeholder="请输入" v-validate="'required|email'" clearable />
|
<van-field v-model="userInfo.email" readonly required label="邮箱" name="邮箱" placeholder="请输入" v-validate="'required|email'" clearable />
|
||||||
<van-field readonly required label="职业类别" name="职业类别" :value="userInfo.occupationName" right-icon="arrow" />
|
<van-field readonly required label="职业类别" name="职业类别" :value="userInfo.occupationName" right-icon="arrow" />
|
||||||
|
<van-field
|
||||||
|
v-model="userInfo.averageAnnualIncome"
|
||||||
|
label="平均年收入(万元)"
|
||||||
|
name="平均年收入"
|
||||||
|
required
|
||||||
|
readonly
|
||||||
|
placeholder="请输入,单位万元"
|
||||||
|
v-validate="'required|onlyNumber'"
|
||||||
|
clearable
|
||||||
|
maxlength="5"
|
||||||
|
/>
|
||||||
<van-field
|
<van-field
|
||||||
:value="userInfo.nativeplace | idToText('nativeplace')"
|
:value="userInfo.nativeplace | idToText('nativeplace')"
|
||||||
readonly
|
readonly
|
||||||
@@ -423,7 +500,9 @@ import Vue from 'vue'
|
|||||||
import { GoodsAction, GoodsActionIcon, GoodsActionButton } from 'vant'
|
import { GoodsAction, GoodsActionIcon, GoodsActionButton } from 'vant'
|
||||||
DataDictionary.relationToAppnt = DataDictionary.relationToAppnt.slice(0, 4)
|
DataDictionary.relationToAppnt = DataDictionary.relationToAppnt.slice(0, 4)
|
||||||
Vue.use(Checkbox).use(CheckboxGroup)
|
Vue.use(Checkbox).use(CheckboxGroup)
|
||||||
Vue.use(GoodsAction).use(GoodsActionIcon).use(GoodsActionButton)
|
Vue.use(GoodsAction)
|
||||||
|
.use(GoodsActionIcon)
|
||||||
|
.use(GoodsActionButton)
|
||||||
export default {
|
export default {
|
||||||
name: 'insuredInfo',
|
name: 'insuredInfo',
|
||||||
components: {
|
components: {
|
||||||
@@ -440,10 +519,14 @@ export default {
|
|||||||
[RadioGroup.name]: RadioGroup,
|
[RadioGroup.name]: RadioGroup,
|
||||||
[Radio.name]: Radio,
|
[Radio.name]: Radio,
|
||||||
[IdentityCardScan.name]: IdentityCardScan,
|
[IdentityCardScan.name]: IdentityCardScan,
|
||||||
OccupationForLoop,
|
OccupationForLoop
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
certiexpiredateRequired: true, //证件截止日期是否需要校验
|
||||||
|
certiexpiredateRequiredInsured: true, //证件截止日期是否需要校验--被保人
|
||||||
|
effectiveDateTypeAble: false, //长期按钮是否禁用
|
||||||
|
effectiveDateTypeAbleInsured: false, //长期按钮是否禁用--被保人
|
||||||
proScheme: '', //保障方案
|
proScheme: '', //保障方案
|
||||||
proSchemeCode: '',
|
proSchemeCode: '',
|
||||||
productDate: '', //保险期间
|
productDate: '', //保险期间
|
||||||
@@ -458,26 +541,26 @@ export default {
|
|||||||
sexRadio: [
|
sexRadio: [
|
||||||
{
|
{
|
||||||
label: '男',
|
label: '男',
|
||||||
value: '0',
|
value: '0'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '女',
|
label: '女',
|
||||||
value: '1',
|
value: '1'
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
medicalRadio: [
|
medicalRadio: [
|
||||||
{
|
{
|
||||||
label: '有',
|
label: '有',
|
||||||
value: '0',
|
value: '0'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '无',
|
label: '无',
|
||||||
value: '1',
|
value: '1'
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
maxDate: beforeDate.getBeforeYear(18), //投保人出生日期可选最大值
|
maxDate: beforeDate.getBeforeYear(18), //投保人出生日期可选最大值
|
||||||
insuredMaxDate: beforeDate.getBeforeDays(28), //被保人出生日期可选最大值
|
insuredMaxDate: beforeDate.getBeforeDays(28), //被保人出生日期可选最大值
|
||||||
filterMaxDate:beforeDate.getBeforeYear(-2),
|
filterMaxDate: beforeDate.getBeforeYear(-2),
|
||||||
popupShow: false,
|
popupShow: false,
|
||||||
areaShow: false, //省级联动
|
areaShow: false, //省级联动
|
||||||
homeShow: false, //家庭地址联动
|
homeShow: false, //家庭地址联动
|
||||||
@@ -499,8 +582,11 @@ export default {
|
|||||||
relationToInsured: '1',
|
relationToInsured: '1',
|
||||||
idType: '1', //证件类型
|
idType: '1', //证件类型
|
||||||
idNo: '', //证件号码
|
idNo: '', //证件号码
|
||||||
|
certiexpiredate: '', //证件到期时间
|
||||||
|
effectiveDateType: false, //是否长期
|
||||||
occupationCode: '', //职业代码
|
occupationCode: '', //职业代码
|
||||||
occupationName: '', //职业名称
|
occupationName: '', //职业名称
|
||||||
|
averageAnnualIncome: '', //平均年收入
|
||||||
lifeGrade: '', //寿险等级
|
lifeGrade: '', //寿险等级
|
||||||
healthGrade: '', //健康等级
|
healthGrade: '', //健康等级
|
||||||
nativeplace: '1', //国家地区
|
nativeplace: '1', //国家地区
|
||||||
@@ -511,7 +597,7 @@ export default {
|
|||||||
homeName: '', //联系地址
|
homeName: '', //联系地址
|
||||||
homeAddress: '', //详细地址
|
homeAddress: '', //详细地址
|
||||||
mobile: '', //移动电话
|
mobile: '', //移动电话
|
||||||
email: '', //电子邮箱
|
email: '' //电子邮箱
|
||||||
// effectiveDate: '' //指定生效日期
|
// effectiveDate: '' //指定生效日期
|
||||||
},
|
},
|
||||||
//被保人信息
|
//被保人信息
|
||||||
@@ -519,10 +605,13 @@ export default {
|
|||||||
name: '', // 被保人姓名
|
name: '', // 被保人姓名
|
||||||
idType: '1', //被保人证件类型
|
idType: '1', //被保人证件类型
|
||||||
idNo: '', //被保人证件号码
|
idNo: '', //被保人证件号码
|
||||||
|
certiexpiredate: '', //证件到期时间
|
||||||
|
effectiveDateType: false, //是否长期
|
||||||
sex: '0', //被保人性别
|
sex: '0', //被保人性别
|
||||||
birthday: '', //被保人出生日期
|
birthday: '', //被保人出生日期
|
||||||
occupationCode: '', //职业代码
|
occupationCode: '', //职业代码
|
||||||
occupationName: '', //职业名称
|
occupationName: '', //职业名称
|
||||||
|
averageAnnualIncome: '', //平均年收入
|
||||||
lifeGrade: '', //寿险等级
|
lifeGrade: '', //寿险等级
|
||||||
healthGrade: '', //健康等级
|
healthGrade: '', //健康等级
|
||||||
nativeplace: '', //国家地区
|
nativeplace: '', //国家地区
|
||||||
@@ -533,7 +622,7 @@ export default {
|
|||||||
homeName: '', //联系地址
|
homeName: '', //联系地址
|
||||||
homeAddress: '', //详细地址
|
homeAddress: '', //详细地址
|
||||||
mobile: '', //移动电话
|
mobile: '', //移动电话
|
||||||
email: '', //电子邮箱
|
email: '' //电子邮箱
|
||||||
},
|
},
|
||||||
selectUser: '',
|
selectUser: '',
|
||||||
areaList: areaList,
|
areaList: areaList,
|
||||||
@@ -550,7 +639,7 @@ export default {
|
|||||||
areaCode: '450101',
|
areaCode: '450101',
|
||||||
occupationCode: '',
|
occupationCode: '',
|
||||||
occupationName: '',
|
occupationName: '',
|
||||||
itemProductDTOS: JSON.parse(CacheUtils.getLocItem('itemProductDTOS')), //
|
itemProductDTOS: JSON.parse(CacheUtils.getLocItem('itemProductDTOS')) //
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -591,6 +680,25 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
//长期状态改变时
|
||||||
|
effectiveDataTypeChange(val) {
|
||||||
|
//勾选长期状态时,证件截止日期置空
|
||||||
|
if (val) {
|
||||||
|
this.userInfo.certiexpiredate = ''
|
||||||
|
this.certiexpiredateRequired = false
|
||||||
|
} else {
|
||||||
|
this.certiexpiredateRequired = true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//长期状态改变时--被保人
|
||||||
|
effectiveDataTypeChangeInsured(val) {
|
||||||
|
if (val) {
|
||||||
|
this.insuredInfo.certiexpiredate = ''
|
||||||
|
this.certiexpiredateRequiredInsured = false
|
||||||
|
} else {
|
||||||
|
this.certiexpiredateRequiredInsured = true
|
||||||
|
}
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* @description:
|
* @description:
|
||||||
* @param {*} data
|
* @param {*} data
|
||||||
@@ -602,8 +710,8 @@ export default {
|
|||||||
flag: 'navigation',
|
flag: 'navigation',
|
||||||
extra: {
|
extra: {
|
||||||
title: '职业类别',
|
title: '职业类别',
|
||||||
hiddenRight: '1',
|
hiddenRight: '1'
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
this.occupationShowPicker = false
|
this.occupationShowPicker = false
|
||||||
if (this.insureType === '1') {
|
if (this.insureType === '1') {
|
||||||
@@ -644,11 +752,11 @@ export default {
|
|||||||
type: '1',
|
type: '1',
|
||||||
orderDTO: {
|
orderDTO: {
|
||||||
orderInfoDTO: {
|
orderInfoDTO: {
|
||||||
orderNo: orderNo,
|
orderNo: orderNo
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
underWrite(data).then((res) => {
|
underWrite(data).then(res => {
|
||||||
if (res.result == '0') {
|
if (res.result == '0') {
|
||||||
this.$toast.clear()
|
this.$toast.clear()
|
||||||
window.localStorage.setItem('underWriteData', JSON.stringify(res))
|
window.localStorage.setItem('underWriteData', JSON.stringify(res))
|
||||||
@@ -665,11 +773,11 @@ export default {
|
|||||||
flag: 'h5',
|
flag: 'h5',
|
||||||
extra: {
|
extra: {
|
||||||
url: location.origin + `/#/cardList/pay`,
|
url: location.origin + `/#/cardList/pay`,
|
||||||
forbidSwipeBack: 1,
|
forbidSwipeBack: 1
|
||||||
},
|
},
|
||||||
routerInfo: {
|
routerInfo: {
|
||||||
path: `/cardList/pay`,
|
path: `/cardList/pay`
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
window.localStorage.setItem('uwResult', res.uwResult)
|
window.localStorage.setItem('uwResult', res.uwResult)
|
||||||
@@ -678,11 +786,11 @@ export default {
|
|||||||
flag: 'h5',
|
flag: 'h5',
|
||||||
extra: {
|
extra: {
|
||||||
url: location.origin + '/#/cardList/result',
|
url: location.origin + '/#/cardList/result',
|
||||||
backToFirst: '1',
|
backToFirst: '1'
|
||||||
},
|
},
|
||||||
routerInfo: {
|
routerInfo: {
|
||||||
path: '/cardList/result',
|
path: '/cardList/result'
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
@@ -701,11 +809,11 @@ export default {
|
|||||||
extra: {
|
extra: {
|
||||||
title: name,
|
title: name,
|
||||||
// url: 'http://47.96.143.111/pdfjs/web/viewer.html?file=' + url //测试代码
|
// url: 'http://47.96.143.111/pdfjs/web/viewer.html?file=' + url //测试代码
|
||||||
url: location.origin + '/#/cardList/ShowPDF',
|
url: location.origin + '/#/cardList/ShowPDF'
|
||||||
},
|
},
|
||||||
routerInfo: {
|
routerInfo: {
|
||||||
path: '/cardList/ShowPDF',
|
path: '/cardList/ShowPDF'
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
//监听名字变化
|
//监听名字变化
|
||||||
@@ -754,8 +862,8 @@ export default {
|
|||||||
flag: 'navigation',
|
flag: 'navigation',
|
||||||
extra: {
|
extra: {
|
||||||
title: '投被保人信息',
|
title: '投被保人信息',
|
||||||
hiddenRight: '1',
|
hiddenRight: '1'
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
if (this.currentPopupIndex == 1) {
|
if (this.currentPopupIndex == 1) {
|
||||||
if (this.selectUser == '1') {
|
if (this.selectUser == '1') {
|
||||||
@@ -786,7 +894,7 @@ export default {
|
|||||||
} else if (pickerType == '4') {
|
} else if (pickerType == '4') {
|
||||||
this.columns = [
|
this.columns = [
|
||||||
{ id: 0, text: '有' },
|
{ id: 0, text: '有' },
|
||||||
{ id: 1, text: '无' },
|
{ id: 1, text: '无' }
|
||||||
]
|
]
|
||||||
} else if (pickerType == '5') {
|
} else if (pickerType == '5') {
|
||||||
this.columns = DataDictionary.taxIdentity
|
this.columns = DataDictionary.taxIdentity
|
||||||
@@ -807,16 +915,16 @@ export default {
|
|||||||
this.pickerIndex = this.insuredInfo.nativeplace - 1 > 0 ? this.insuredInfo.nativeplace - 1 : 0
|
this.pickerIndex = this.insuredInfo.nativeplace - 1 > 0 ? this.insuredInfo.nativeplace - 1 : 0
|
||||||
} else if (pickerType == '10') {
|
} else if (pickerType == '10') {
|
||||||
this.columns = []
|
this.columns = []
|
||||||
this.trialList.forEach((item) => {
|
this.trialList.forEach(item => {
|
||||||
if (item.productCode === 'GFRS_M0022') {
|
if (item.productCode === 'GFRS_M0022') {
|
||||||
this.columns.push({
|
this.columns.push({
|
||||||
id: this.proSchemeCode,
|
id: this.proSchemeCode,
|
||||||
text: this.proScheme,
|
text: this.proScheme
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.columns.push({
|
this.columns.push({
|
||||||
id: item.proSchemeCode,
|
id: item.proSchemeCode,
|
||||||
text: item.proScheme,
|
text: item.proScheme
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -826,17 +934,21 @@ export default {
|
|||||||
},
|
},
|
||||||
//确认选择字段
|
//确认选择字段
|
||||||
onConfirm(value) {
|
onConfirm(value) {
|
||||||
|
console.log(value, 'value')
|
||||||
this.popupShow = false
|
this.popupShow = false
|
||||||
if (this.pickerType == '1') {
|
if (this.pickerType == '1') {
|
||||||
this.userInfo.nativeplace = value.id
|
this.userInfo.nativeplace = value.id
|
||||||
} else if (this.pickerType == '2') {
|
} else if (this.pickerType == '2') {
|
||||||
// //身份证以外的证件类型可以使用长期
|
//身份证以外的证件类型可以使用长期
|
||||||
// if (value.id != '1') {
|
//value.id 1 居民身份证 todo
|
||||||
// this.effectiveDateTypeAble = false
|
if (value.id != '1') {
|
||||||
// } else {
|
this.effectiveDateTypeAble = false
|
||||||
// let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
} else {
|
||||||
// this.effectiveDateTypeAble = !(age >= 45)
|
if (this.userInfo.birthday) {
|
||||||
// }
|
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||||
|
this.effectiveDateTypeAble = !(age >= 45)
|
||||||
|
}
|
||||||
|
}
|
||||||
this.userInfo.idType = value.id
|
this.userInfo.idType = value.id
|
||||||
} else if (this.pickerType == '3') {
|
} else if (this.pickerType == '3') {
|
||||||
this.userInfo.degree = value.id
|
this.userInfo.degree = value.id
|
||||||
@@ -868,6 +980,16 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (this.pickerType == '22') {
|
} else if (this.pickerType == '22') {
|
||||||
|
//身份证以外的证件类型可以使用长期
|
||||||
|
//value.id 1 居民身份证 todo
|
||||||
|
if (value.id != '1') {
|
||||||
|
this.effectiveDateTypeAbleInsured = false
|
||||||
|
} else {
|
||||||
|
if (this.userInfo.birthday) {
|
||||||
|
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||||
|
this.effectiveDateTypeAbleInsured = !(age >= 45)
|
||||||
|
}
|
||||||
|
}
|
||||||
this.insuredInfo.idType = value.id
|
this.insuredInfo.idType = value.id
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -904,6 +1026,7 @@ export default {
|
|||||||
this.$refs.certiexpiredate.date = ''
|
this.$refs.certiexpiredate.date = ''
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
this.userInfo.effectiveDateType = false
|
||||||
//如果录入日期早于当前日期
|
//如果录入日期早于当前日期
|
||||||
if (Date.parse(val) < Date.parse(new Date())) {
|
if (Date.parse(val) < Date.parse(new Date())) {
|
||||||
this.userInfo.certiexpiredate = ''
|
this.userInfo.certiexpiredate = ''
|
||||||
@@ -992,6 +1115,26 @@ export default {
|
|||||||
this.productDate = currentData + '0时至' + productDateTime + '24时止'
|
this.productDate = currentData + '0时至' + productDateTime + '24时止'
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
case '7':
|
||||||
|
{
|
||||||
|
console.log('证件截止日期')
|
||||||
|
//被保人--证件截止日期
|
||||||
|
//如果已经勾选了长期
|
||||||
|
if (this.insuredInfo.effectiveDateType) {
|
||||||
|
//清空数据并返回
|
||||||
|
this.insuredInfo.certiexpiredate = ''
|
||||||
|
this.$refs.certiexpiredate.date = ''
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.insuredInfo.effectiveDateType = false
|
||||||
|
//如果录入日期早于当前日期
|
||||||
|
if (Date.parse(val) < Date.parse(new Date())) {
|
||||||
|
this.insuredInfo.certiexpiredate = ''
|
||||||
|
this.$refs.certiexpiredate.date = ''
|
||||||
|
return this.$toast('您的证件已过期')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//选择客户
|
//选择客户
|
||||||
@@ -1010,8 +1153,8 @@ export default {
|
|||||||
flag: 'navigation',
|
flag: 'navigation',
|
||||||
extra: {
|
extra: {
|
||||||
title: '投被保人信息',
|
title: '投被保人信息',
|
||||||
hiddenRight: '1',
|
hiddenRight: '1'
|
||||||
},
|
}
|
||||||
})
|
})
|
||||||
if (this.selectUser == '0') {
|
if (this.selectUser == '0') {
|
||||||
let { customerName, customerSex } = data
|
let { customerName, customerSex } = data
|
||||||
@@ -1023,6 +1166,11 @@ export default {
|
|||||||
this.userInfo.idType = data.customerIdType //证件类型
|
this.userInfo.idType = data.customerIdType //证件类型
|
||||||
this.userInfo.idNo = data.customerIdNumber //证件类别
|
this.userInfo.idNo = data.customerIdNumber //证件类别
|
||||||
}
|
}
|
||||||
|
if (data.idEffectEndDate == '9999-01-01') {
|
||||||
|
this.userInfo.effectiveDateType = true //是否长期
|
||||||
|
} else {
|
||||||
|
this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
|
||||||
|
}
|
||||||
this.userInfo.email = data.email //邮箱
|
this.userInfo.email = data.email //邮箱
|
||||||
|
|
||||||
this.userInfo.mobile = data.customerPhone //移动电话
|
this.userInfo.mobile = data.customerPhone //移动电话
|
||||||
@@ -1039,10 +1187,10 @@ export default {
|
|||||||
this.userInfo.healthGrade = data.healthGrade
|
this.userInfo.healthGrade = data.healthGrade
|
||||||
this.userInfo.nativeplace = data.country
|
this.userInfo.nativeplace = data.country
|
||||||
this.userInfo.marriage = data.marryStatus
|
this.userInfo.marriage = data.marryStatus
|
||||||
|
|
||||||
// 计算年龄
|
// 计算年龄
|
||||||
// let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||||
|
// 长期按钮是否禁用
|
||||||
|
this.effectiveDateTypeAble = age <= 45
|
||||||
this.getRelatedData(this.userInfo.idNo, '1')
|
this.getRelatedData(this.userInfo.idNo, '1')
|
||||||
} else if (this.selectUser == '1') {
|
} else if (this.selectUser == '1') {
|
||||||
let { customerName, customerSex } = data
|
let { customerName, customerSex } = data
|
||||||
@@ -1054,7 +1202,11 @@ export default {
|
|||||||
this.insuredInfo.idType = data.customerIdType //证件类型
|
this.insuredInfo.idType = data.customerIdType //证件类型
|
||||||
this.insuredInfo.idNo = data.customerIdNumber //证件类别
|
this.insuredInfo.idNo = data.customerIdNumber //证件类别
|
||||||
}
|
}
|
||||||
|
if (data.idEffectEndDate == '9999-01-01') {
|
||||||
|
this.insuredInfo.effectiveDateType = true //是否长期
|
||||||
|
} else {
|
||||||
|
this.insuredInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
|
||||||
|
}
|
||||||
this.insuredInfo.email = data.email //邮箱
|
this.insuredInfo.email = data.email //邮箱
|
||||||
this.insuredInfo.mobile = data.customerPhone //移动电话
|
this.insuredInfo.mobile = data.customerPhone //移动电话
|
||||||
this.insuredInfo.homeProvince = data.homeProvince //家庭省
|
this.insuredInfo.homeProvince = data.homeProvince //家庭省
|
||||||
@@ -1071,11 +1223,9 @@ export default {
|
|||||||
this.insuredInfo.nativeplace = data.country
|
this.insuredInfo.nativeplace = data.country
|
||||||
this.insuredInfo.marriage = data.marryStatus
|
this.insuredInfo.marriage = data.marryStatus
|
||||||
// 计算年龄
|
// 计算年龄
|
||||||
// let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
let age = utilsAge.getAge(this.insuredInfo.birthday, new Date())
|
||||||
|
// 长期按钮是否禁用
|
||||||
// 计算年龄
|
this.effectiveDateTypeAbleInsured = age <= 45
|
||||||
// let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
|
||||||
|
|
||||||
this.getRelatedData(this.insuredInfo.idNo, '2')
|
this.getRelatedData(this.insuredInfo.idNo, '2')
|
||||||
}
|
}
|
||||||
// console.log(data, val)
|
// console.log(data, val)
|
||||||
@@ -1088,7 +1238,7 @@ export default {
|
|||||||
if (this.userInfo.relationToInsured == 1) {
|
if (this.userInfo.relationToInsured == 1) {
|
||||||
Object.assign(this.insuredInfo, this.userInfo)
|
Object.assign(this.insuredInfo, this.userInfo)
|
||||||
}
|
}
|
||||||
this.$validator.validate().then((valid) => {
|
this.$validator.validate().then(valid => {
|
||||||
if (true === valid) {
|
if (true === valid) {
|
||||||
// localStorage.chooseProductCodesNew = localStorage.chooseProductCodes
|
// localStorage.chooseProductCodesNew = localStorage.chooseProductCodes
|
||||||
//投保人校验
|
//投保人校验
|
||||||
@@ -1181,9 +1331,19 @@ export default {
|
|||||||
console.log('证件号码校验有误')
|
console.log('证件号码校验有误')
|
||||||
return this.$toast('您填写的证件号码有误')
|
return this.$toast('您填写的证件号码有误')
|
||||||
}
|
}
|
||||||
|
if (age < 46 && this.userInfo.effectiveDateType == true) {
|
||||||
|
return this.$toast('证件有效期错误,年龄小于46周岁的公民身份证有效期不能为长期')
|
||||||
|
}
|
||||||
// 年龄在 16-25 周岁之间
|
// 年龄在 16-25 周岁之间
|
||||||
if (age >= 16 && age <= 25) {
|
if (age <= 15) {
|
||||||
|
if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1975-01-01')) {
|
||||||
|
this.userInfo.certiexpiredate = ''
|
||||||
|
this.$refs.certiexpiredate.date = ''
|
||||||
|
// this.effectiveDateTypeAble = true
|
||||||
|
return this.$toast('证件有效期错误,未满16周岁的公民身份证有效期应小于等于5年')
|
||||||
|
}
|
||||||
|
//年龄在 16-25 周岁之间
|
||||||
|
} else if (age >= 16 && age <= 25) {
|
||||||
console.log('年龄在16-25周岁之间')
|
console.log('年龄在16-25周岁之间')
|
||||||
if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1980-01-01')) {
|
if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1980-01-01')) {
|
||||||
this.userInfo.certiexpiredate = ''
|
this.userInfo.certiexpiredate = ''
|
||||||
@@ -1247,14 +1407,25 @@ export default {
|
|||||||
console.log('证件号码校验有误')
|
console.log('证件号码校验有误')
|
||||||
return this.$toast('您填写的证件号码有误')
|
return this.$toast('您填写的证件号码有误')
|
||||||
}
|
}
|
||||||
|
if (age < 46 && this.insuredInfo.effectiveDateType == true) {
|
||||||
|
return this.$toast('证件有效期错误,年龄小于46周岁的公民身份证有效期不能为长期')
|
||||||
|
}
|
||||||
|
|
||||||
// 年龄在 16-25 周岁之间
|
// 年龄在 16-25 周岁之间
|
||||||
if (insuredAge >= 16 && insuredAge <= 25) {
|
if (insuredAge <= 15) {
|
||||||
|
if (Date.parse(this.insuredInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1975-01-01')) {
|
||||||
|
this.insuredInfo.certiexpiredate = ''
|
||||||
|
this.$refs.certiexpiredate.date = ''
|
||||||
|
// this.effectiveDateTypeAble = true
|
||||||
|
return this.$toast('证件有效期错误,未满16周岁的公民身份证有效期应小于等于5年')
|
||||||
|
}
|
||||||
|
//年龄在 16-25 周岁之间
|
||||||
|
} else if (insuredAge >= 16 && insuredAge <= 25) {
|
||||||
console.log('年龄在16-25周岁之间')
|
console.log('年龄在16-25周岁之间')
|
||||||
if (Date.parse(this.insuredInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1980-01-01')) {
|
if (Date.parse(this.insuredInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1980-01-01')) {
|
||||||
this.insuredInfo.certiexpiredate = ''
|
this.insuredInfo.certiexpiredate = ''
|
||||||
this.$refs.certiexpiredate.date = ''
|
this.$refs.certiexpiredate.date = ''
|
||||||
this.effectiveDateTypeAble = true
|
this.certiexpiredateRequiredInsured = true
|
||||||
return this.$toast('证件有效期不正常,16周岁至25周岁公民身份证有效期应小于等于10年')
|
return this.$toast('证件有效期不正常,16周岁至25周岁公民身份证有效期应小于等于10年')
|
||||||
}
|
}
|
||||||
//年龄在 26-45 周岁之间
|
//年龄在 26-45 周岁之间
|
||||||
@@ -1262,7 +1433,7 @@ export default {
|
|||||||
if (Date.parse(this.insuredInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1990-01-01')) {
|
if (Date.parse(this.insuredInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1990-01-01')) {
|
||||||
this.insuredInfo.certiexpiredate = ''
|
this.insuredInfo.certiexpiredate = ''
|
||||||
this.$refs.certiexpiredate.date = ''
|
this.$refs.certiexpiredate.date = ''
|
||||||
this.effectiveDateTypeAble = true
|
this.certiexpiredateRequiredInsured = true
|
||||||
return this.$toast('证件有效期不正常,26周岁至45周岁公民身份证有效期应小于等于20年')
|
return this.$toast('证件有效期不正常,26周岁至45周岁公民身份证有效期应小于等于20年')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1349,11 +1520,11 @@ export default {
|
|||||||
orderDTO: {
|
orderDTO: {
|
||||||
orderInfoDTO: {
|
orderInfoDTO: {
|
||||||
bnfFlag: '0',
|
bnfFlag: '0',
|
||||||
supportBank: '0',
|
supportBank: '0'
|
||||||
},
|
},
|
||||||
appntDTO: this.userInfo,
|
appntDTO: this.userInfo,
|
||||||
insuredDTOs: [this.insuredInfo],
|
insuredDTOs: [this.insuredInfo]
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//组装险种提交数据
|
//组装险种提交数据
|
||||||
@@ -1380,7 +1551,7 @@ export default {
|
|||||||
proScheme: this.proScheme,
|
proScheme: this.proScheme,
|
||||||
proSchemeCode: this.proSchemeCode,
|
proSchemeCode: this.proSchemeCode,
|
||||||
insuYear: insuYearDate.insuYear,
|
insuYear: insuYearDate.insuYear,
|
||||||
insuYearFlag: insuYearDate.insuYearFlag,
|
insuYearFlag: insuYearDate.insuYearFlag
|
||||||
}
|
}
|
||||||
if (item.hasPredictTransferPrem && item.hasPredictTransferPrem === '0') {
|
if (item.hasPredictTransferPrem && item.hasPredictTransferPrem === '0') {
|
||||||
//增加万能险 预计转入保费校验
|
//增加万能险 预计转入保费校验
|
||||||
@@ -1497,7 +1668,7 @@ export default {
|
|||||||
}
|
}
|
||||||
//如果证件校验不通过,恢复默认值
|
//如果证件校验不通过,恢复默认值
|
||||||
if (idToData(val).text) {
|
if (idToData(val).text) {
|
||||||
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday] = ['', '0', '']
|
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
|
||||||
return this.$toast(idToData(val).text)
|
return this.$toast(idToData(val).text)
|
||||||
}
|
}
|
||||||
this.userInfo.birthday = idToData(val).birthday
|
this.userInfo.birthday = idToData(val).birthday
|
||||||
@@ -1509,13 +1680,13 @@ export default {
|
|||||||
}
|
}
|
||||||
//如果证件校验不通过,恢复默认值
|
//如果证件校验不通过,恢复默认值
|
||||||
if (idToData(val).text) {
|
if (idToData(val).text) {
|
||||||
;[this.insuredInfo.idNo, this.insuredInfo.sex, this.insuredInfo.birthday] = ['', '0', '']
|
;[this.insuredInfo.idNo, this.insuredInfo.sex, this.insuredInfo.birthday, this.effectiveDateTypeAbleInsured] = ['', '0', '', false]
|
||||||
return this.$toast(idToData(val).text)
|
return this.$toast(idToData(val).text)
|
||||||
}
|
}
|
||||||
this.insuredInfo.birthday = idToData(val).birthday
|
this.insuredInfo.birthday = idToData(val).birthday
|
||||||
this.insuredInfo.sex = idToData(val).sex
|
this.insuredInfo.sex = idToData(val).sex
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
// beforeDestroy() {
|
// beforeDestroy() {
|
||||||
// //清理计时器
|
// //清理计时器
|
||||||
@@ -1550,7 +1721,7 @@ export default {
|
|||||||
homeName: '', //联系地址
|
homeName: '', //联系地址
|
||||||
homeAddress: '', //详细地址
|
homeAddress: '', //详细地址
|
||||||
mobile: '', //移动电话
|
mobile: '', //移动电话
|
||||||
email: '', //电子邮箱
|
email: '' //电子邮箱
|
||||||
}
|
}
|
||||||
if (newV === 2) {
|
if (newV === 2) {
|
||||||
this.userInfo.sex === '0' ? (this.insuredInfo.sex = '1') : (this.insuredInfo.sex = '0')
|
this.userInfo.sex === '0' ? (this.insuredInfo.sex = '1') : (this.insuredInfo.sex = '0')
|
||||||
@@ -1558,7 +1729,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
immediate: true,
|
immediate: true,
|
||||||
deep: true,
|
deep: true
|
||||||
},
|
},
|
||||||
'userInfo.sex': {
|
'userInfo.sex': {
|
||||||
handler(newV) {
|
handler(newV) {
|
||||||
@@ -1567,9 +1738,9 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
immediate: true,
|
immediate: true,
|
||||||
deep: true,
|
deep: true
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
|||||||
1752
src/views/ebiz/cardList/information01.vue
Normal file
1752
src/views/ebiz/cardList/information01.vue
Normal file
File diff suppressed because it is too large
Load Diff
1598
src/views/ebiz/cardList/informationOld.vue
Normal file
1598
src/views/ebiz/cardList/informationOld.vue
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user