mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-25 02:33:02 +08:00
投被保人信息添加字段
This commit is contained in:
@@ -5,47 +5,169 @@
|
||||
<template #boxTitle>
|
||||
<span class="title">投保人信息</span>
|
||||
</template>
|
||||
<InfoCell label="姓名">{{userInfo.name}}</InfoCell>
|
||||
<InfoCell label="证件类型">{{userInfo.idType | idToText('insuredIdType')}}</InfoCell>
|
||||
<InfoCell label="出生日期">{{userInfo.birthday}}</InfoCell>
|
||||
<InfoCell label="证件截止日期">{{userInfo.certiexpiredate}}</InfoCell>
|
||||
<select-radio v-validate="'required'" label="性别" name="性别" required :radios="sexRadio" :value.sync="userInfo.sex"
|
||||
:disabled="true"></select-radio>
|
||||
<InfoCell label="国籍">{{userInfo.nativeplace | idToText('nativeplace')}}</InfoCell>
|
||||
<van-field :value="userInfo.marriageStatus" required label="婚姻状况" name="婚姻状况" v-validate="'required'" right-icon="arrow"
|
||||
placeholder="请选择" @click="toSelect('10','','appntDTO')" @focus="noBomBox" />
|
||||
<InfoCell label="职业类别">{{userInfo.occupationName}}</InfoCell>
|
||||
<InfoCell label="移动电话">{{userInfo.mobile}}</InfoCell>
|
||||
<InfoCell label="电子邮箱">{{userInfo.email}}</InfoCell>
|
||||
<InfoCell label="姓名">{{ userInfo.name }}</InfoCell>
|
||||
<InfoCell label="证件类型">{{ userInfo.idType | idToText('insuredIdType') }}</InfoCell>
|
||||
<InfoCell label="出生日期">{{ userInfo.birthday }}</InfoCell>
|
||||
<InfoCell label="证件截止日期">{{ userInfo.certiexpiredate }}</InfoCell>
|
||||
<select-radio v-validate="'required'" label="性别" name="性别" required :radios="sexRadio" :value.sync="userInfo.sex" :disabled="true"></select-radio>
|
||||
<InfoCell label="国籍">{{ userInfo.nativeplace | idToText('nativeplace') }}</InfoCell>
|
||||
<van-field
|
||||
:value="userInfo.marriageStatus"
|
||||
required
|
||||
label="婚姻状况"
|
||||
name="婚姻状况"
|
||||
v-validate="'required'"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('10', '', 'appntDTO')"
|
||||
@focus="noBomBox"
|
||||
/>
|
||||
<InfoCell label="职业类别">{{ userInfo.occupationName }}</InfoCell>
|
||||
<InfoCell label="移动电话">{{ userInfo.mobile }}</InfoCell>
|
||||
<InfoCell label="电子邮箱">{{ userInfo.email }}</InfoCell>
|
||||
<!-- <InfoCell label="有无社保">
|
||||
<van-button class="mr10" size="small" type="danger" round>有</van-button>
|
||||
<van-button plain size="small" type="danger" round>无</van-button>
|
||||
</InfoCell> -->
|
||||
<select-radio v-validate="'required'" :radios="medicalRadio" label="有无社保" name="有无社保" required :value.sync="userInfo.medical"
|
||||
:disabled="true"></select-radio>
|
||||
<InfoCell label="税收居民身份">{{userInfo.taxResidentId | idToText('taxIdentity')}}</InfoCell>
|
||||
<InfoCell label="联系地址">{{homeName}}</InfoCell>
|
||||
<InfoCell label="详细联系地址">{{userInfo.homeAddress}}</InfoCell>
|
||||
<select-radio
|
||||
v-validate="'required'"
|
||||
:radios="medicalRadio"
|
||||
label="有无社保"
|
||||
name="有无社保"
|
||||
required
|
||||
:value.sync="userInfo.medical"
|
||||
:disabled="true"
|
||||
></select-radio>
|
||||
<InfoCell label="税收居民身份">{{ userInfo.taxResidentId | idToText('taxIdentity') }}</InfoCell>
|
||||
<InfoCell label="联系地址">{{ homeName }}</InfoCell>
|
||||
<InfoCell label="详细联系地址">{{ userInfo.homeAddress }}</InfoCell>
|
||||
<van-field
|
||||
v-model="userInfo.stature"
|
||||
label="身高(cm)"
|
||||
name="身高"
|
||||
required
|
||||
placeholder="请输入,单位cm"
|
||||
v-validate="'required|onlyNumber|stature'"
|
||||
clearable
|
||||
@blur="checkStature(userInfo.stature)"
|
||||
maxlength="5"
|
||||
/>
|
||||
<van-field
|
||||
v-model="userInfo.avoirdupois"
|
||||
label="体重(kg)"
|
||||
name="体重"
|
||||
required
|
||||
placeholder="请输入,单位kg"
|
||||
v-validate="'required|onlyNumber|avoirdupois'"
|
||||
clearable
|
||||
@blur="checkAvoirdupois(userInfo.avoirdupois)"
|
||||
/>
|
||||
<van-field
|
||||
:value="userInfo.salarySource | idToText('salarySource')"
|
||||
readonly
|
||||
label="收入来源"
|
||||
name="收入来源"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('8', '1')"
|
||||
/>
|
||||
<van-field
|
||||
v-model="userInfo.averageAnnualIncome"
|
||||
label="固定年收入(万元)"
|
||||
name="固定年收入"
|
||||
required
|
||||
placeholder="请输入,单位万元"
|
||||
v-validate="'required|onlyNumber'"
|
||||
clearable
|
||||
maxlength="5"
|
||||
/>
|
||||
</DropdownBox>
|
||||
<DropdownBox>
|
||||
<template #boxTitle>
|
||||
<span class="title">被保险人信息</span>
|
||||
</template>
|
||||
<InfoCell label="姓名">{{insuredPersonInfo.name}}</InfoCell>
|
||||
<InfoCell label="证件类型">{{userInfo.idType | idToText('idType')}}</InfoCell>
|
||||
<InfoCell label="证件号码">{{insuredPersonInfo.idNo}}</InfoCell>
|
||||
<InfoCell label="出生日期">{{insuredPersonInfo.birthday}}</InfoCell>
|
||||
<select-radio required :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="insuredPersonInfo.sex"
|
||||
:disabled="true"></select-radio>
|
||||
<InfoCell label="国籍">{{insuredPersonInfo.nativeplace | idToText('nativeplace')}}</InfoCell>
|
||||
<van-field :value="insuredPersonInfo.marriageStatus" required label="婚姻状况" name="婚姻状况" v-validate="'required'"
|
||||
right-icon="arrow" placeholder="请选择" @click="toSelect('10','','insuredDTOs')" @focus="noBomBox" />
|
||||
<InfoCell label="职业类别">{{insuredPersonInfo.occupationCode}}</InfoCell>
|
||||
<select-radio :radios="medicalRadio" label="有无社保" name="有无社保" v-validate="'required'" required :value.sync="insuredPersonInfo.medical"
|
||||
:disabled="true"></select-radio>
|
||||
<InfoCell label="税收居民身份">{{insuredPersonInfo.name}}</InfoCell>
|
||||
<InfoCell label="联系地址">{{insuredHomeName}}</InfoCell>
|
||||
<InfoCell label="详细地址">{{insuredPersonInfo.homeAddress}}</InfoCell>
|
||||
<InfoCell label="姓名">{{ insuredPersonInfo.name }}</InfoCell>
|
||||
<InfoCell label="证件类型">{{ insuredPersonInfo.idType | idToText('idType') }}</InfoCell>
|
||||
<InfoCell label="证件号码">{{ insuredPersonInfo.idNo }}</InfoCell>
|
||||
<InfoCell label="出生日期">{{ insuredPersonInfo.birthday }}</InfoCell>
|
||||
<select-radio
|
||||
required
|
||||
:radios="sexRadio"
|
||||
label="性别"
|
||||
name="性别"
|
||||
v-validate="'required'"
|
||||
:value.sync="insuredPersonInfo.sex"
|
||||
:disabled="true"
|
||||
></select-radio>
|
||||
<InfoCell label="国籍">{{ insuredPersonInfo.nativeplace | idToText('nativeplace') }}</InfoCell>
|
||||
<van-field
|
||||
:value="insuredPersonInfo.marriageStatus"
|
||||
required
|
||||
label="婚姻状况"
|
||||
name="婚姻状况"
|
||||
v-validate="'required'"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('10', '', 'insuredDTOs')"
|
||||
@focus="noBomBox"
|
||||
/>
|
||||
<InfoCell label="职业类别">{{ insuredPersonInfo.occupationCode }}</InfoCell>
|
||||
<select-radio
|
||||
:radios="medicalRadio"
|
||||
label="有无社保"
|
||||
name="有无社保"
|
||||
v-validate="'required'"
|
||||
required
|
||||
:value.sync="insuredPersonInfo.medical"
|
||||
:disabled="true"
|
||||
></select-radio>
|
||||
<InfoCell label="税收居民身份">{{ insuredPersonInfo.name }}</InfoCell>
|
||||
<InfoCell label="联系地址">{{ insuredHomeName }}</InfoCell>
|
||||
<InfoCell label="详细地址">{{ insuredPersonInfo.homeAddress }}</InfoCell>
|
||||
<van-field
|
||||
v-model="insuredPersonInfo.stature"
|
||||
label="身高(cm)"
|
||||
name="身高"
|
||||
required
|
||||
placeholder="请输入,单位cm"
|
||||
v-validate="'required|onlyNumber|stature'"
|
||||
clearable
|
||||
@blur="checkStature(insuredPersonInfo.stature)"
|
||||
maxlength="5"
|
||||
/>
|
||||
<van-field
|
||||
v-model="insuredPersonInfo.avoirdupois"
|
||||
label="体重(kg)"
|
||||
name="体重"
|
||||
required
|
||||
placeholder="请输入,单位kg"
|
||||
v-validate="'required|onlyNumber|avoirdupois'"
|
||||
clearable
|
||||
@blur="checkAvoirdupois(insuredPersonInfo.avoirdupois)"
|
||||
/>
|
||||
<van-field
|
||||
:value="insuredPersonInfo.salarySource | idToText('salarySource')"
|
||||
readonly
|
||||
label="收入来源"
|
||||
name="收入来源"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('8', '2')"
|
||||
/>
|
||||
<van-field
|
||||
v-model="insuredPersonInfo.averageAnnualIncome"
|
||||
label="固定年收入(万元)"
|
||||
name="固定年收入"
|
||||
required
|
||||
placeholder="请输入,单位万元"
|
||||
v-validate="'required|onlyNumber'"
|
||||
clearable
|
||||
maxlength="5"
|
||||
/>
|
||||
</DropdownBox>
|
||||
<DropdownBox>
|
||||
<template #boxTitle>
|
||||
@@ -59,24 +181,67 @@
|
||||
<InfoCell label="受益类型">指定受益人</InfoCell>
|
||||
<InfoCell label="是被保险人的">{{ item.relationToInsured | idToText('relationToAppnt') }}</InfoCell>
|
||||
<InfoCell label="姓名">{{ item.name }}</InfoCell>
|
||||
<InfoCell label="证件类型">{{item.idType | idToText('insuredIdType')}}</InfoCell>
|
||||
<InfoCell label="证件截止日期">{{item.certiexpiredate}}</InfoCell>
|
||||
<InfoCell label="证件类型">{{ item.idType | idToText('insuredIdType') }}</InfoCell>
|
||||
<InfoCell label="证件截止日期">{{ item.certiexpiredate }}</InfoCell>
|
||||
<!-- <InfoCell label="性别">
|
||||
<van-button class="mr10" size="small" type="danger" round>男</van-button>
|
||||
<van-button plain size="small" type="danger" round>女</van-button>
|
||||
</InfoCell> -->
|
||||
<select-radio required :disabled="true" :radios="sexRadio" label="性别" name="性别" v-validate="'required'"
|
||||
:value.sync="item.sex"></select-radio>
|
||||
<van-field :value="item.nativeplace | idToText('nativeplace')" label="国籍" name="国籍" required v-validate="'required'"
|
||||
right-icon="arrow" placeholder="请选择" @click="toSelect('1','','bnfDTOs',index)" @focus="noBomBox" />
|
||||
<van-field :value="item.marriageStatus" required label="婚姻状况" name="婚姻状况" v-validate="'required'" right-icon="arrow"
|
||||
placeholder="请选择" @click="toSelect('10','','bnfDTOs',index)" @focus="noBomBox" />
|
||||
<van-field v-model="item.mobile" clearable label="移动电话" name="移动电话" required placeholder="请输入" v-validate="'required|mobileLength11|mobileStartWith1|mobile'"
|
||||
maxlength="11" />
|
||||
<van-field v-model="bnfHomeName[index]" readonly label="联系地址" name="联系地址" required right-icon="arrow"
|
||||
placeholder="请选择" v-validate="'required|contactAdderss'" @click="areaChoose('2','bnfDTOs',index)" />
|
||||
<van-field v-model="item.homeAddress" label="" name="详细地址" placeholder="具体到街道、门牌号、楼号、单元号、室号" v-validate="'required|homeAddressNum|homeAddressCh'"
|
||||
clearable maxlength="30" :readonly="false" style="font-size: 3.5vw;" />
|
||||
<select-radio required :disabled="true" :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :value.sync="item.sex"></select-radio>
|
||||
<van-field
|
||||
:value="item.nativeplace | idToText('nativeplace')"
|
||||
label="国籍"
|
||||
name="国籍"
|
||||
required
|
||||
v-validate="'required'"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('1', '', 'bnfDTOs', index)"
|
||||
@focus="noBomBox"
|
||||
/>
|
||||
<van-field
|
||||
:value="item.marriageStatus"
|
||||
required
|
||||
label="婚姻状况"
|
||||
name="婚姻状况"
|
||||
v-validate="'required'"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('10', '', 'bnfDTOs', index)"
|
||||
@focus="noBomBox"
|
||||
/>
|
||||
<van-field
|
||||
v-model="item.mobile"
|
||||
clearable
|
||||
label="移动电话"
|
||||
name="移动电话"
|
||||
required
|
||||
placeholder="请输入"
|
||||
v-validate="'required|mobileLength11|mobileStartWith1|mobile'"
|
||||
maxlength="11"
|
||||
/>
|
||||
<van-field
|
||||
v-model="bnfHomeName[index]"
|
||||
readonly
|
||||
label="联系地址"
|
||||
name="联系地址"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required|contactAdderss'"
|
||||
@click="areaChoose('2', 'bnfDTOs', index)"
|
||||
/>
|
||||
<van-field
|
||||
v-model="item.homeAddress"
|
||||
label=""
|
||||
name="详细地址"
|
||||
placeholder="具体到街道、门牌号、楼号、单元号、室号"
|
||||
v-validate="'required|homeAddressNum|homeAddressCh'"
|
||||
clearable
|
||||
maxlength="30"
|
||||
:readonly="false"
|
||||
style="font-size: 3.5vw"
|
||||
/>
|
||||
<van-field @click="openOccupation(index)" label="职业类别" name="职业类别" :value="item.occupationName" right-icon="arrow" />
|
||||
<InfoCell label="受益顺序"></InfoCell>
|
||||
<InfoCell label="受益比例">{{ item.bnfLot }}%</InfoCell>
|
||||
@@ -87,9 +252,9 @@
|
||||
<template #boxTitle>
|
||||
<span class="title">账户信息</span>
|
||||
</template>
|
||||
<InfoCell label="账户名称">{{accountPersonInfo.accountName}}</InfoCell>
|
||||
<InfoCell label="开户银行">{{accountPersonInfo.bankName}}</InfoCell>
|
||||
<InfoCell label="银行账号">{{accountPersonInfo.cardBookCode}}</InfoCell>
|
||||
<InfoCell label="账户名称">{{ accountPersonInfo.accountName }}</InfoCell>
|
||||
<InfoCell label="开户银行">{{ accountPersonInfo.bankName }}</InfoCell>
|
||||
<InfoCell label="银行账号">{{ accountPersonInfo.cardBookCode }}</InfoCell>
|
||||
</DropdownBox>
|
||||
<!-- <van-field :value="userInfo.idType | idToText('insuredIdType')" v-validate="'required'" required label="证件类型" name="证件类型"
|
||||
placeholder="请选择" /> -->
|
||||
@@ -142,8 +307,18 @@ export default {
|
||||
bnfHomeName: [], //受益人联系地址
|
||||
isSpecialRead: false,
|
||||
active: 0,
|
||||
userInfo: {}, //投保人信息
|
||||
insuredPersonInfo: {}, //被投保人信息
|
||||
userInfo: {
|
||||
averageAnnualIncome: '',
|
||||
salarySource: '',
|
||||
stature: '',
|
||||
avoirdupois: ''
|
||||
}, //投保人信息
|
||||
insuredPersonInfo: {
|
||||
averageAnnualIncome: '',
|
||||
salarySource: '',
|
||||
stature: '',
|
||||
avoirdupois: ''
|
||||
}, //被投保人信息
|
||||
bnfPersonInfo: {}, //受益人信息
|
||||
accountPersonInfo: {}, //账户信息
|
||||
sexRadio: [
|
||||
@@ -190,6 +365,30 @@ export default {
|
||||
window.appCallBack = this.appCallBack
|
||||
},
|
||||
methods: {
|
||||
//校验身高
|
||||
checkStature(val) {
|
||||
if (val.trim().length == 0) {
|
||||
return this.$toast('身高不能为空')
|
||||
}
|
||||
|
||||
let res = /^[0-9]{0,3}([.]{1}[0-9]{1})?$/.test(val) && val < 300 && val > 10
|
||||
if (!res) {
|
||||
this.userInfo.stature = ''
|
||||
return this.$toast('身高输入有误')
|
||||
}
|
||||
},
|
||||
//校验体重
|
||||
checkAvoirdupois(val) {
|
||||
if (val.trim().length == 0) {
|
||||
return this.$toast('体重不能为空')
|
||||
}
|
||||
|
||||
let res = /^[0-9]+([.]{1}[0-9]{1})?$/.test(val) && val > 0.1
|
||||
if (!res) {
|
||||
this.userInfo.avoirdupois = ''
|
||||
return this.$toast('体重输入有误')
|
||||
}
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
this.$jump({
|
||||
@@ -231,7 +430,7 @@ export default {
|
||||
|
||||
// 被投保人信息
|
||||
this.insuredPersonInfo = res.orderDTO.insuredDTOs[0]
|
||||
this.setInsuredCustomerMarriage(this.insuredPersonInfo.marriage)
|
||||
this.setInsuredCustomerMarriage(this.insuredPersonInfo.marriage)
|
||||
if (this.insuredPersonInfo.homeProvince.length) {
|
||||
this.insuredHomeName = getAreaName([
|
||||
{ code: this.insuredPersonInfo.homeProvince },
|
||||
@@ -250,7 +449,7 @@ export default {
|
||||
//设置婚姻文字显示
|
||||
for (let status of DataDictionary.marriage) {
|
||||
if (status.id == item.marriage) {
|
||||
item.marriageStatus = status.text
|
||||
item.marriageStatus = status.text
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -261,7 +460,7 @@ export default {
|
||||
// 账户信息
|
||||
this.accountPersonInfo = res.orderDTO.orderAccountDTO
|
||||
this.accountPersonInfo.bankCode = this.accountPersonInfo.bankName
|
||||
dataDic['edorBankType'].some(item => {
|
||||
dataDic['edorBankType'].some((item) => {
|
||||
if (item.id == this.accountPersonInfo.bankName) {
|
||||
this.accountPersonInfo.bankName = item.text
|
||||
}
|
||||
@@ -307,7 +506,10 @@ export default {
|
||||
this.columns = DataDictionary.insuredIdType
|
||||
break
|
||||
case '4':
|
||||
this.columns = [{ id: 0, text: '有' }, { id: 1, text: '无' }]
|
||||
this.columns = [
|
||||
{ id: 0, text: '有' },
|
||||
{ id: 1, text: '无' }
|
||||
]
|
||||
break
|
||||
case '5':
|
||||
this.columns = DataDictionary.taxIdentity
|
||||
@@ -318,7 +520,7 @@ export default {
|
||||
case '9':
|
||||
this.productCodes.length = 0
|
||||
this.productCodes.push('GFRS_M0024')
|
||||
getCompany({ productCodes: this.productCodes }).then(res => {
|
||||
getCompany({ productCodes: this.productCodes }).then((res) => {
|
||||
if (res.result == 0) {
|
||||
this.columns = res.content
|
||||
} else {
|
||||
@@ -385,7 +587,11 @@ export default {
|
||||
} */ else if (
|
||||
this.pickerType == '8'
|
||||
) {
|
||||
this.userInfo.salarySource = value.id
|
||||
if (this.valueKey == '1') {
|
||||
this.userInfo.salarySource = value.id
|
||||
} else {
|
||||
this.insuredPersonInfo.salarySource = value.id
|
||||
}
|
||||
} else if (this.pickerType == '9') {
|
||||
this.userInfo.workcompany = value
|
||||
} else if (this.pickerType === '10') {
|
||||
|
||||
Reference in New Issue
Block a user