提交修改

This commit is contained in:
shishengjie
2019-10-17 11:05:41 +08:00
19 changed files with 894 additions and 1167 deletions

View File

@@ -143,129 +143,87 @@ export default {
idType: [
{
id: 1,
text: '身份证'
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: '港澳台居民居住证'
}
],
// idType: [
// {
// id: 1,
// text: '身份证'
// },
// {
// id: 2,
// text: '户口本',
// disabled: true
// },
// {
// id: 3,
// text: '出生证明',
// disabled: true
// },
// {
// id: 4,
// text: '护照',
// disabled: true
// },
// {
// id: 5,
// text: '港澳居民通行证',
// disabled: true
// },
// {
// id: 6,
// text: '台湾居民通行证',
// disabled: true
// },
// {
// id: 7,
// text: '其他',
// disabled: true
// }
// ],
//投保人证件类型
insuredIdType: [
{
id: 1,
text: '身份证'
}
],
// insuredIdType: [
// {
// id: 1,
// text: '身份证'
// },
// {
// id: 2,
// text: '户口本',
// disabled: true
// },
// {
// id: 3,
// text: '出生证明',
// disabled: true
// },
// {
// id: 4,
// text: '护照',
// disabled: true
// },
// {
// id: 5,
// text: '港澳居民通行证',
// disabled: true
// },
// {
// id: 6,
// text: '台湾居民通行证',
// disabled: true
// },
// {
// id: 7,
// text: '其他',
// disabled: true
// }
// ],
//出生证明
birthType: [
text: '居民身份证'
},
{
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: '港澳台居民居住证'
}
],
//出生证明
// birthType: [
// {
// id: 1,
// text: '身份证'
// },
// {
// id: 2,
// text: '户口本',
// disabled: true
// },
// {
// id: 3,
// text: '出生证明',
// disabled: true
// },
// {
// id: 4,
// text: '护照',
// disabled: true
// },
// {
// id: 5,
// text: '港澳居民通行证',
// disabled: true
// },
// {
// id: 6,
// text: '台湾居民通行证',
// disabled: true
// },
// {
// id: 7,
// text: '其他',
// disabled: true
// }
// ],
//投保人/被保人关系
@@ -750,5 +708,37 @@ export default {
id: 4,
text: '其它'
}
],
sex: [
{
text: '男',
id: '0'
},
{
text: '女',
id: '1'
}
],
//受益人类型
bnfType: [
{
id: '0',
text: '法定受益人'
},
{
id: '1',
text: '指定受益人'
}
],
//订单状态
orderStatus: [
{
id: '0',
text: '未签收'
},
{
id: '1',
text: '已签收'
}
]
}

View File

@@ -37,20 +37,10 @@
ref="certiexpiredate"
@confirm="onDateConfirm($event, '1')"
></FieldDatePicter>
<div class="border-bt relative fs14 p10 flex align-center" >
<van-checkbox
v-model="userInfo.effectiveDateType"
class="fr"
:disabled="effectiveDateTypeAble"
@change="isEnd"
>长期</van-checkbox>
<div class="border-bt relative fs14 p10 flex align-center">
<van-checkbox v-model="userInfo.effectiveDateType" class="fr" :disabled="effectiveDateTypeAble" @change="isEnd">长期</van-checkbox>
</div>
<select-radio
:radios="sexRadio"
label="性别"
:value.sync="userInfo.customerSex"
:required="false"
></select-radio>
<select-radio :radios="sexRadio" label="性别" :value.sync="userInfo.customerSex" :required="false"></select-radio>
<van-field
:value="userInfo.nativeplace | idToText('nativeplace')"
readonly
@@ -60,15 +50,7 @@
placeholder="请选择"
@click="toSelect('1')"
/>
<van-field
:value="census"
readonly
label="户籍"
name="户籍"
right-icon="arrow"
placeholder="请选择"
@click="censusShow = true"
/>
<van-field :value="census" readonly label="户籍" name="户籍" right-icon="arrow" placeholder="请选择" @click="censusShow = true" />
<FieldDatePicter
label="出生日期"
:value.sync="userInfo.birthday"
@@ -77,32 +59,9 @@
@confirm="onDateConfirm($event, '2')"
ref="birthday"
></FieldDatePicter>
<van-field
v-model="userInfo.email"
label="电子邮箱"
name="电子邮箱"
v-validate="'email'"
placeholder="请输入"
clearable
maxlength="50"
/>
<van-field
v-model="userInfo.stature"
label="身高cm"
name="身高"
placeholder="请输入"
clearable
v-validate="'onlyNumber|stature'"
maxlength="5"
/>
<van-field
v-model="userInfo.weight"
label=" 体重kg"
name="体重"
placeholder="请输入"
clearable
v-validate="'onlyNumber|avoirdupois'"
/>
<van-field v-model="userInfo.email" label="电子邮箱" name="电子邮箱" v-validate="'email'" placeholder="请输入" clearable maxlength="50" />
<van-field v-model="userInfo.stature" label="身高cm" name="身高" placeholder="请输入" clearable v-validate="'onlyNumber|stature'" maxlength="5" />
<van-field v-model="userInfo.weight" label=" 体重kg" name="体重" placeholder="请输入" clearable v-validate="'onlyNumber|avoirdupois'" />
<van-field
:value="userInfo.customerType | idToText('customerType')"
readonly
@@ -135,12 +94,7 @@
placeholder="请选择"
@click="toSelect('3')"
/>
<select-radio
:radios="medicalRadio"
label="有无社保"
:value.sync="userInfo.socialSecurity"
:required="false"
></select-radio>
<select-radio :radios="medicalRadio" label="有无社保" :value.sync="userInfo.socialSecurity" :required="false"></select-radio>
<van-field
:value="userInfo.taxIdentity | idToText('taxIdentity')"
readonly
@@ -183,13 +137,7 @@
clearable
maxlength="5"
/>
<van-field
v-model="userInfo.workUnits"
label="工作单位"
placeholder="请输入工作单位"
clearable
maxlength="50"
/>
<van-field v-model="userInfo.workUnits" label="工作单位" placeholder="请输入工作单位" clearable maxlength="50" />
<van-field
:value="userInfo.workCondition | idToText('workCondition')"
readonly
@@ -199,39 +147,10 @@
placeholder="请选择"
@click="toSelect('9')"
/>
<van-field
v-model="areaName"
readonly
label="单位地址"
name="单位地址"
right-icon="arrow"
placeholder="请选择"
@click="areaShow = true"
/>
<van-field
v-model="userInfo.companyAddress"
label
name="详细地址"
placeholder="请输入详细地址"
maxlength="30"
/>
<van-field
v-model="userInfo.companyZip"
type="number"
label="邮编"
placeholder="请输入"
clearable
maxlength="6"
v-validate="'zipCode'"
/>
<van-field
v-model="userInfo.companyPhone"
label="单位电话"
name="单位电话"
placeholder="请输入"
clearable
maxlength="13"
/>
<van-field v-model="areaName" readonly label="单位地址" name="单位地址" right-icon="arrow" placeholder="请选择" @click="areaShow = true" />
<van-field v-model="userInfo.companyAddress" label name="详细地址" placeholder="请输入详细地址" maxlength="30" />
<van-field v-model="userInfo.companyZip" type="number" label="邮编" placeholder="请输入" clearable maxlength="6" v-validate="'zipCode'" />
<van-field v-model="userInfo.companyPhone" label="单位电话" name="单位电话" placeholder="请输入" clearable maxlength="13" />
</van-cell-group>
<!-- 家庭信息 -->
@@ -255,33 +174,10 @@
placeholder="请输入"
clearable
/>
<van-field
v-model="homeName"
readonly
label="家庭地址"
name="家庭地址"
right-icon="arrow"
placeholder="请选择"
@click="homeShow = true"
/>
<van-field v-model="homeName" readonly label="家庭地址" name="家庭地址" right-icon="arrow" placeholder="请选择" @click="homeShow = true" />
<van-field v-model="userInfo.homeAddress" label name="详细地址" placeholder="请输入详细地址" />
<van-field
v-model="userInfo.homeZip"
type="number"
label="邮编"
placeholder="请输入"
clearable
maxlength="6"
v-validate="'zipCode'"
/>
<van-field
v-model="userInfo.homePhone"
label="家庭电话"
name="家庭电话"
placeholder="请输入"
clearable
maxlength="13"
/>
<van-field v-model="userInfo.homeZip" type="number" label="邮编" placeholder="请输入" clearable maxlength="6" v-validate="'zipCode'" />
<van-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="请输入" clearable maxlength="13" />
</van-cell-group>
<!-- 字段选择 -->
@@ -290,31 +186,15 @@
</van-popup>
<!-- 地区选择 -->
<van-popup v-model="areaShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '1')"
@cancel="areaShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '1')" @cancel="areaShow = false" />
</van-popup>
<!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '2')"
@cancel="homeShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup>
<!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
:columns-num="2"
@confirm="sureArea($event, '3')"
@cancel="areaShow = false"
/>
<van-area :area-list="areaList" value="110101" :columns-num="2" @confirm="sureArea($event, '3')" @cancel="areaShow = false" />
</van-popup>
</div>
</template>
@@ -508,41 +388,47 @@ export default {
}
//证件是户口本
} else if (this.userInfo.idType == '2') {
if (age >= 16) {
return this.$toast('客户年龄在16周岁以上,不能使用户口本作为有效证件')
} else if (this.userInfo.customerIdNumber.length != 18) {
return this.$toast('户口本的证件号码长度应等于18位')
} else {
if (age > 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
// else if (this.userInfo.customerIdNumber.length != 18) {
// return this.$toast('户口本的证件号码长度应等于18位')
// }
else {
this.checkMarr()
}
//证件是出生证明
} else if (this.userInfo.idType == '3') {
if (age >= 3) {
return this.$toast('客户年龄在3周岁及以上,不能使用出生证作为有效证件')
} else if (this.userInfo.customerIdNumber.length < 3) {
return this.$toast('出生证须大于等于3个字符')
} else {
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上,不能使用出生证作为有效证件')
}
// else if (this.userInfo.customerIdNumber.length < 3) {
// return this.$toast('出生证须大于等于3个字符')
// }
else {
this.checkMarr()
}
//证件是护照
} else if (this.userInfo.idType == '4' && this.userInfo.customerIdNumber.length < 3) {
console.log('证件类型是护照')
return this.$toast('护照须大于等于3个字符')
//证件是港澳居民通行证
} else if (this.userInfo.idType == '5') {
console.log('证件类型是港澳居民通行证')
if (this.userInfo.customerIdNumber.length != 9) {
return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
} else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.customerIdNumber)) {
return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
} else {
this.checkMarr()
}
//证件是台湾居民通行证
} else if (this.userInfo.idType == '6' && this.userInfo.customerIdNumber.length != 8) {
console.log('证件类型是台湾居民通行证')
return this.$toast('证件类型台湾居民通行证证件号码须为8位数字')
} else {
}
// else if (this.userInfo.idType == '4' && this.userInfo.customerIdNumber.length < 3) {
// console.log('证件类型是护照')
// return this.$toast('护照须大于等于3个字符')
// //证件是港澳居民通行证
// } else if (this.userInfo.idType == '5') {
// console.log('证件类型是港澳居民通行证')
// if (this.userInfo.customerIdNumber.length != 9) {
// return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
// } else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.customerIdNumber)) {
// return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
// } else {
// this.checkMarr()
// }
// //证件是台湾居民通行证
// } else if (this.userInfo.idType == '6' && this.userInfo.customerIdNumber.length != 8) {
// console.log('证件类型台湾居民通行证')
// return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
// }
else {
this.checkMarr()
}
},
@@ -781,7 +667,7 @@ export default {
[class*='van-hairline']::after {
border: none !important;
}
.van-checkbox{
.van-checkbox {
margin-left: auto;
}
</style>

View File

@@ -438,8 +438,6 @@ export default {
let make = await makePdf(params)
if (make.result == '0') {
let pdfUrl = encodeURIComponent(config.imgDomain + '/returnDirectStream?imgPath=' + make.content)
//如果是微信
this.$jump({
flag: 'h5',
extra: {

View File

@@ -22,7 +22,9 @@
v-validate="'required|bankCard'"
data-vv-name="银行卡号"
/>
<!-- <van-button type="danger" size="small" class="bankCard mr10 w110 h20" @click="cardScanning('0')" v-no-more-click="1000">银行卡扫描</van-button>-->
</van-cell-group>
<van-cell-group class="flex align-items-c">
<van-switch-cell v-model="checked" title="是否自动垫交" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" />
<van-icon
@@ -31,7 +33,7 @@
@click="
$toast({
message:
'保费自动垫交是当投保人没有按时交纳续期保险费,而保单当时已经具有足够的现金价值时,保险公司以现金价值自动垫交保险费,从而使保单继续有效。相当于投保人向保险公司贷款交纳保费是保险公司提供给客户的一项选择权益,其目的是为了尽可能地减少客户因非故意的失误导致保单失效,使其利益受损。',
'保费自动垫交是当投保人没有按时交纳续期保险费,而保单当时已经具有足够的现金价值时,保险公司以现金价值自动垫交保险费,从而使保单继续有效。相当于投保人向保险公司贷款交纳保费是保险公司提供给客户的一项选择权益,其目的是为了尽可能地减少客户因非故意的失误导致保单失效,使其利益受损。',
duration: 10000
})
"
@@ -59,6 +61,7 @@
clearable
data-vv-name="银行卡号"
/>
<van-button type="danger" size="small" class="bankCard mr10 w110 h20" @click="cardScanning('1')" v-no-more-click="1000">银行卡扫描</van-button>
</van-cell-group>
<van-cell-group class="flex align-items-c">
<van-switch-cell v-model="checked" title="是否自动垫交" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" />
@@ -68,7 +71,7 @@
@click="
$toast({
message:
'保费自动垫交是当投保人没有按时交纳续期保险费,而保单当时已经具有足够的现金价值时,保险公司以现金价值自动垫交保险费,从而使保单继续有效。相当于投保人向保险公司贷款交纳保费是保险公司提供给客户的一项选择权益,其目的是为了尽可能地减少客户因非故意的失误导致保单失效,使其利益受损。',
'保费自动垫交是当投保人没有按时交纳续期保险费,而保单当时已经具有足够的现金价值时,保险公司以现金价值自动垫交保险费,从而使保单继续有效。相当于投保人向保险公司贷款交纳保费是保险公司提供给客户的一项选择权益,其目的是为了尽可能地减少客户因非故意的失误导致保单失效,使其利益受损。',
duration: 10000
})
"
@@ -134,7 +137,6 @@ export default {
methods: {
//获取身份证扫描信息
getBankCardInfo(data) {
// console.log(data)
this.bankId = data.name
this.$jump({
@@ -152,7 +154,6 @@ export default {
operateType: 'bank_type'
}
getBankList(data).then(res => {
console.log(res)
if (res.result == '0') {
this.bankList = res.content
} else {
@@ -228,7 +229,7 @@ export default {
that.$validator.validate().then(valid => {
if (valid === true) {
let data = {}
// console.log(that.checked)
if (that.checked == true) {
data = {
orderType: 'ACCOUNT_ORDER',
@@ -271,10 +272,8 @@ export default {
saveInformation(data).then(res => {
if (res.result == '0') {
// window.localStorage.setItem('accountInfomation-bank', that.bank)
window.localStorage.setItem('accountInformationRadio', that.radio)
// window.localStorage.setItem('accountInformation-isPaymentSelf', JSON.stringify(that.checked))
// marked by pang on 2019-09-22 影像上传暂不可用,跳过
that.$jump({
flag: 'h5',
extra: {
@@ -289,7 +288,6 @@ export default {
}
})
} else {
// Toast.fail(that.errors.all()[0])
that.$toast(that.errors.all()[0])
}
})
@@ -304,10 +302,6 @@ export default {
//投被保人关系
this.relationToAppnt = res.orderDTO.insuredDTOs[0].relationToAppnt
this.$utils.intLocalStorage(res)
//投保人信息
// localStorage.saleInsuredInfo = JSON.stringify(res.orderDTO.appntDTO)
//被保人信息
// localStorage.saleInsuredPersonInfo = JSON.stringify(res.orderDTO.insuredDTOs[0])
} else {
this.$toast(res.resultMessage)
}
@@ -328,7 +322,6 @@ export default {
//
},
mounted() {
// let that = this
document.body.style.backgroundColor = '#F5F5F5'
// 筛选按钮的点击事件
window.appCallBack = this.appCallBack

View File

@@ -33,8 +33,7 @@
placeholder="请选择"
@click="toSelect('2')"
/>
<!-- <van-field v-model="userInfo.idNo" v-validate="'required|idNo'" label="证件号码" name="证件号码" placeholder="请输入" maxlength="18" clearable>
</van-field> -->
<van-field
v-model="userInfo.idNo"
label="证件号码"
@@ -47,12 +46,25 @@
@blur="getRelatedData(userInfo.idNo)"
>
</van-field>
<FieldDatePicter
v-validate="'required'"
label="出生日期"
name="出生日期"
:value.sync="userInfo.birthday"
type="date"
:flag="true"
@confirm="onDateConfirm($event, '2')"
ref="birthday"
:maxDate="currentTime"
:readonly="isInsured"
></FieldDatePicter>
<FieldDatePicter
v-validate="'required'"
label="证件起始日期"
name="证件起始日期"
:value.sync="userInfo.certificateValidate"
type="date"
:defaultDate="new Date()"
@confirm="onDateConfirm($event, '0')"
ref="certificateValidate"
:flag="true"
@@ -62,6 +74,7 @@
:v-validate="{ required: certiexpiredateRequired }"
label="证件截止日期"
name="证件截止日期"
:defaultDate="new Date()"
:value.sync="userInfo.certiexpiredate"
type="date"
@confirm="onDateConfirm($event, '1')"
@@ -84,17 +97,6 @@
placeholder="请选择"
@click="toSelect('1')"
/>
<FieldDatePicter
v-validate="'required'"
label="出生日期"
name="出生日期"
:value.sync="userInfo.birthday"
type="date"
:flag="true"
@confirm="onDateConfirm($event, '2')"
ref="birthday"
:readonly="isInsured"
></FieldDatePicter>
<van-field
v-model="userInfo.mobile"
clearable
@@ -172,6 +174,7 @@
</van-popup>
</div>
</template>
<script>
import { Field, CellGroup, Checkbox, Popup, Picker, Area } from 'vant'
import SelectRadio from '@/components/ebiz/SelectRadio'
@@ -227,7 +230,7 @@ export default {
columns: [],
valueKey: 'text',
nativeplace: '',
idType: '身份证',
idType: '居民身份证',
degree: '',
socialSecurity: '',
taxIdentity: '',
@@ -599,7 +602,11 @@ export default {
//与被保人关系是配偶
if (this.userInfo.relationToInsured == '2') {
let insuredInfo = JSON.parse(localStorage.saleInsuredPersonInfo)
<<<<<<< HEAD
//如果被保人是投保人的配偶 或者 投保人不是已婚
=======
//如果投保人不是已婚
>>>>>>> dev
if (insuredInfo.marriage != '1') {
return this.$toast('与被保人关系有误')
}
@@ -684,32 +691,35 @@ export default {
}
//证件类型是户口本
} else if (this.userInfo.idType == '2') {
if (age >= 16) {
return this.$toast('客户年龄在16周岁以上,不能使用户口本作为有效证件')
} else if (this.userInfo.idNo.length != 18) {
return this.$toast('户口本的证件号码长度应等于18位')
if (age > 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
// else if (this.userInfo.idNo.length != 18) {
// return this.$toast('户口本的证件号码长度应等于18位')
// }
//证件类型是出生证明
} else if (this.userInfo.idType == '3') {
if (age >= 3) {
return this.$toast('客户年龄在3周岁及以上,不能使用出生证作为有效证件')
} else if (this.userInfo.idNo.length < 3) {
return this.$toast('出生证须大于等于3个字符')
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上,不能使用出生证作为有效证件')
}
// else if (this.userInfo.idNo.length < 3) {
// return this.$toast('出生证须大于等于3个字符')
// }
//证件类型是护照
} else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
return this.$toast('护照须大于等于3个字符')
//证件是港澳居民通行证
} else if (this.userInfo.idType == '5') {
if (this.userInfo.idNo.length != 9) {
return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
} else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
}
//证件是台湾居民通行证
} else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
}
// else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
// return this.$toast('护照须大于等于3个字符')
// //证件是港澳居民通行证
// } else if (this.userInfo.idType == '5') {
// if (this.userInfo.idNo.length != 9) {
// return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
// } else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
// return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
// }
// //证件是台湾居民通行证
// } else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
// return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
// }
let beneficiaries = []
if (localStorage.beneficiaryInfo) {
@@ -840,9 +850,9 @@ export default {
return `${year}-${month}-${day}`
},
getRelatedData(val) {
// if (this.userInfo.idType != '1') {
// return
// }
if (this.userInfo.idType != '1') {
return
}
// //如果证件校验不通过,恢复默认值
// if (idToData(val).text) {
// ;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
@@ -851,10 +861,10 @@ export default {
// this.effectiveDateTypeAble = idToData(val).age < 45
// this.userInfo.birthday = idToData(val).birthday
// this.userInfo.sex = idToData(val).sex
if (!['1', '2', '3', 1, 2, 3].includes(this.userInfo.idType)) {
return
}
//如果证件校验不通过,恢复默认值
// if (!['1', '2', '3', 1, 2, 3].includes(this.userInfo.idType)) {
// return
// }
// //如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
return this.$toast(idToData(val).text)
@@ -864,20 +874,20 @@ export default {
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
//如果选择户口本
if (this.userInfo.idType == '2') {
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
this.userInfo.certificateValidate = this.userInfo.birthday
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
this.idLimit = true
//如果选择出生证明
} else if (this.userInfo.idType == '3') {
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
this.userInfo.certificateValidate = this.userInfo.birthday
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
this.idLimit = true
} else {
this.idLimit = false
}
// if (this.userInfo.idType == '2') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
// this.userInfo.certificateValidate = this.userInfo.birthday
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.idLimit = true
// //如果选择出生证明
// } else if (this.userInfo.idType == '3') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
// this.userInfo.certificateValidate = this.userInfo.birthday
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.idLimit = true
// } else {
// this.idLimit = false
// }
}
},
filters: {

View File

@@ -10,11 +10,11 @@
<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'">
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9'">
<van-cell-group>
<van-field required :label="item.id == '1' ? `${item.text}头像面` : `${item.text}户主页`" disabled />
<van-field required :label="item.id == '2' ? `${item.text}户主页` : `${item.text}正面`" disabled />
</van-cell-group>
<div @click="test('fileListIdFront', saleInsuredInfo.idType)" class="flex align-items-e">
<div @click="test('', saleInsuredInfo.idType)" class="flex align-items-e">
<van-uploader
name="fileListIdFront"
v-model="fileListIdFront"
@@ -26,7 +26,7 @@
/>
</div>
<van-cell-group>
<van-field required :label="item.id == '1' ? `${item.text}国徽页` : `${item.text}本人页`" disabled />
<van-field required :label="item.id == '2' ? `${item.text}本人页` : `${item.text}反面`" disabled />
</van-cell-group>
<div @click="test('fileListIdBack', saleInsuredInfo.idType)">
<van-uploader
@@ -40,23 +40,7 @@
/>
</div>
</div>
<div v-if="item.id == '3' || item.id == '4'">
<van-cell-group>
<van-field required :label="item.id == '3' ? `${item.text}` : `${item.text}本人照片页`" disabled />
</van-cell-group>
<div @click="test('fileLIstImg', saleInsuredInfo.idType)">
<van-uploader
name="fileLIstImg"
v-model="fileLIstImg"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
<div v-if="item.id == '5' || item.id == '6'">
<div v-if="item.id == '4'">
<van-cell-group>
<van-field required :label="`${item.text}头像面`" disabled />
</van-cell-group>
@@ -72,7 +56,39 @@
/>
</div>
</div>
<div v-if="item.id == '7'">
<!-- <div v-if="item.id == '3' || item.id == '4'">
<van-cell-group>
<van-field required :label="item.id == '3' ? `${item.text}` : `${item.text}本人照片页`" disabled />
</van-cell-group>
<div @click="test('fileLIstImg', saleInsuredInfo.idType)">
<van-uploader
name="fileLIstImg"
v-model="fileLIstImg"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div> -->
<!-- <div v-if="item.id == '5' || item.id == '6'">
<van-cell-group>
<van-field required :label="`${item.text}头像面`" disabled />
</van-cell-group>
<div @click="test('fileLIstImg', saleInsuredInfo.idType)">
<van-uploader
name="fileLIstImg"
v-model="fileLIstImg"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div> -->
<!-- <div v-if="item.id == '7'">
<van-cell-group>
<van-field required :label="item.text" disabled />
</van-cell-group>
@@ -87,11 +103,11 @@
:max-count="1"
/>
</div>
</div>
</div> -->
</div>
</div>
<van-cell-group v-if="isAppant == '0'">
<van-field required label="银行卡账户" disabled />
<van-field required label="银行卡正面" disabled />
</van-cell-group>
<div @click="test('fileListBank', saleInsuredInfo.idType)" v-if="isAppant == '0'">
<van-uploader
@@ -104,6 +120,20 @@
:max-count="1"
/>
</div>
<van-cell-group v-if="isAppant == '0'">
<van-field required label="银行卡反面" disabled />
</van-cell-group>
<div @click="test('fileListBankBack', saleInsuredInfo.idType)" v-if="isAppant == '0'">
<van-uploader
name="fileListBankBack"
v-model="fileListBankBack"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
</div>
</div>
@@ -116,9 +146,9 @@
<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'">
<div v-if="item.id == '1' || item.id == '2' || item.id == '3' || item.id == '5' || item.id == '6' || item.id == '8' || item.id == '9'">
<van-cell-group>
<van-field required :label="item.id == '1' ? `${item.text}头像面` : `${item.text}户主页`" disabled />
<van-field required :label="item.id == '2' ? `${item.text}户主页` : `${item.text}正面`" disabled />
</van-cell-group>
<div @click="test('fileListIdFrontInsured', saleInsuredPersonInfo.idType)">
<van-uploader
@@ -132,7 +162,7 @@
/>
</div>
<van-cell-group>
<van-field required :label="item.id == '1' ? `${item.text}国徽页` : `${item.text}本人页`" disabled />
<van-field required :label="item.id == '2' ? `${item.text}本人页` : `${item.text}反面`" disabled />
</van-cell-group>
<div @click="test('fileListIdBackInsured', saleInsuredPersonInfo.idType)">
<van-uploader
@@ -146,9 +176,9 @@
/>
</div>
</div>
<div v-if="item.id == '3' || item.id == '4'">
<div v-if="item.id == '4'">
<van-cell-group>
<van-field required :label="item.id == '3' ? `${item.text}` : `${item.text}本人照片页`" disabled />
<van-field required :label="`${item.text}头像页`" disabled />
</van-cell-group>
<div @click="test('fileLIstImgInsured', saleInsuredPersonInfo.idType)">
<van-uploader
@@ -162,59 +192,35 @@
/>
</div>
</div>
<div v-if="item.id == '5' || item.id == '6'">
<van-cell-group>
<van-field required :label="`${item.text}头像面`" disabled />
</van-cell-group>
<div @click="test('fileLIstImgInsured', saleInsuredPersonInfo.idType)">
<van-uploader
name="fileLIstImgInsured"
v-model="fileLIstImgInsured"
:after-read="afterRead"
:before-delete="beforeDelete"
@delete="deleteImg"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
<div v-if="item.id == '7'">
<van-cell-group>
<van-field required :label="item.text" disabled />
</van-cell-group>
<div @click="test('saleInsuredPersonInfoOther', saleInsuredPersonInfo.idType)">
<van-uploader
name="saleInsuredPersonInfoOther"
v-model="saleInsuredPersonInfoOther"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
</div>
</div>
<van-cell-group v-if="isAppant == '1'">
<van-field required label="银行卡账户" disabled />
</van-cell-group>
<div @click="test('fileListBankInsured', saleInsuredPersonInfo.idType)" v-if="isAppant == '1'">
<van-uploader
name="fileListBankInsured"
v-model="fileListBankInsured"
:after-read="afterRead"
:before-delete="beforeDelete"
@delete="deleteImg"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
</div>
</div>
</div>
<!-- 受益人类型 -->
<div v-if="typebeneficiary == true">
<div class="flex bg-white p10 align-items-c">
<span>受益人附件</span>
</div>
<div class="m20 bg-white">
<van-cell-group>
<van-field required label="受益人附件上传" disabled />
</van-cell-group>
<div @click="test('fileListtypebeneficiary', saleInsuredPersonInfo.idType)" class="flex">
<van-uploader
name="fileListtypebeneficiary"
v-model="fileListtypebeneficiary"
:after-read="afterRead"
:before-delete="beforeDelete"
@delete="deleteImg"
class="mt10 ml20"
:max-count="9"
/>
</div>
</div>
</div>
<!-- 受益人类型end -->
<div>
<div class="flex bg-white p10 align-items-c">
<!-- <div class="attachmentManagement-block"></div> -->
@@ -288,8 +294,10 @@ export default {
saleInsuredInfoOther: [],
// 被保人选择的必选其他
saleInsuredPersonInfoOther: [],
// 银行账户
// 银行卡正面
fileListBank: [],
//银行卡反面
fileListBankBack: [],
// 被保人身份证正面
fileListIdFrontInsured: [],
// 被保人身份证反面
@@ -298,6 +306,8 @@ export default {
fileListBankInsured: [],
// 被保人其他类型页面
fileLIstImgInsured: [],
// 受益人
fileListtypebeneficiary: [],
// fileLIstImgInsrued
// 其他
fileListOtherOne: [],
@@ -332,6 +342,7 @@ export default {
},
created() {
//如果是从编辑进来的
if (this.$route.query.edit) {
getOrderDetail({ orderNo: localStorage.orderNo }).then(res => {
// console.log(res)
@@ -457,27 +468,25 @@ export default {
that.fileListBank = []
}
// 被保人银行卡
if (window.localStorage.getItem('bankCardUrlInsuredPath') != null) {
let bankCardUrlInsured = {
url: config.imgDomain + `/returnImageStream?a=b.jpg&imgPath=${window.localStorage.getItem('bankCardUrlInsuredPath')}`
}
that.fileListBankInsured.push(bankCardUrlInsured)
let obj = {
businessNo: that.orderNo,
businessType: '',
imageInfoType: '3',
rgssUrl: window.localStorage.getItem('bankCardUrlInsuredPath'),
subBusinessType: '1',
subBusinessNo: that.saleInsuredPersonInfo.insuredId
}
that.list.push(obj)
} else {
that.fileListBankInsured = []
}
// if (window.localStorage.getItem('bankCardUrlInsuredPath') != null) {
// let bankCardUrlInsured = {
// url: config.imgDomain + `/returnImageStream?a=b.jpg&imgPath=${window.localStorage.getItem('bankCardUrlInsuredPath')}`
// }
// that.fileListBankInsured.push(bankCardUrlInsured)
// let obj = {
// businessNo: that.orderNo,
// businessType: '',
// imageInfoType: '3',
// rgssUrl: window.localStorage.getItem('bankCardUrlInsuredPath'),
// subBusinessType: '1',
// subBusinessNo: that.saleInsuredPersonInfo.insuredId
// }
// that.list.push(obj)
// } else {
// that.fileListBankInsured = []
// }
// 保费超过20万的提示
Dialog.alert({title:'提示',message:'趸交保费≥20万元或期交保费*总期数≥20万元时须上传指定受益人证件正反面'})
Dialog.alert({ title: '提示', message: '趸交保费≥20万元或期交保费*总期数≥20万元时须上传指定受益人证件正反面' })
},
beforeRouteLeave(to, from, next) {
document.body.style.backgroundColor = ''
@@ -486,49 +495,54 @@ export default {
methods: {
// 删除图片前
beforeDelete(file, detail) {
let that = this
Dialog.confirm({
title: '提示',
message: '您确定要删除吗'
}).then(() => {
if (detail.name == 'fileListIdFront') {
this.fileListIdFront = []
} else if (detail.name == 'fileListIdBack') {
this.fileListIdBack = []
} else if (detail.name == 'fileLIstImg') {
this.fileLIstImg = []
} else if (detail.name == 'fileListBank') {
this.fileListBank = []
} else if (detail.name == 'fileListBankBack') {
this.fileListBankBack = []
} else if (detail.name == 'fileListIdFrontInsured') {
this.fileListIdFrontInsured = []
} else if (detail.name == 'fileListIdBackInsured') {
this.fileListIdBackInsured = []
} else if (detail.name == 'fileListBankInsured') {
this.fileListBankInsured = []
} else if (detail.name == 'fileLIstImgInsured') {
this.fileLIstImgInsured = []
} else if (detail.name == 'fileListOtherOne') {
this.fileListOtherOne = []
} else if (detail.name == 'fileListOtherTwo') {
this.fileListOtherTwo = []
} else if (detail.name == 'fileListOtherThree') {
this.fileListOtherThree = []
} else if (detail.name == 'saleInsuredInfoOther') {
this.saleInsuredInfoOther = []
} else if (detail.name == 'saleInsuredPersonInfoOther') {
this.saleInsuredPersonInfoOther = []
} else if (detail.name == 'fileListtypebeneficiary') {
that.fileListtypebeneficiary.map((item, index, array) => {
if (item.content == file.content) {
array.splice(index, 1)
} else {
return
}
})
}
this.deleteImg(file)
})
.then(() => {
if (detail.name == 'fileListIdFront') {
this.fileListIdFront = []
} else if (detail.name == 'fileListIdBack') {
this.fileListIdBack = []
} else if (detail.name == 'fileLIstImg') {
this.fileLIstImg = []
} else if (detail.name == 'fileListBank') {
this.fileListBank = []
}else if (detail.name == 'fileListIdFrontInsured') {
this.fileListIdFrontInsured = []
} else if (detail.name == 'fileListIdBackInsured') {
this.fileListIdBackInsured = []
} else if (detail.name == 'fileListBankInsured') {
this.fileListBankInsured = []
} else if (detail.name == 'fileLIstImgInsured') {
this.fileLIstImgInsured = []
} else if (detail.name == 'fileListOtherOne') {
this.fileListOtherOne = []
} else if (detail.name == 'fileListOtherTwo') {
this.fileListOtherTwo = []
} else if (detail.name == 'fileListOtherThree') {
this.fileListOtherThree = []
} else if (detail.name == 'saleInsuredInfoOther') {
this.saleInsuredInfoOther = []
} else if (detail.name == 'saleInsuredPersonInfoOther') {
this.saleInsuredPersonInfoOther = []
}
this.deleteImg(file)
})
.catch(() => {
// on cancel
})
},
test(type, id) {
let that = this
that.id = id
// console.log(id)
// console.log(type)
switch (type) {
case 'fileListIdFront':
that.type = type
@@ -542,6 +556,9 @@ export default {
case 'fileListBank':
that.type = type
break
case 'fileListBankBack':
that.type = type
break
case 'fileListOther':
that.type = type
break
@@ -563,15 +580,14 @@ export default {
case 'saleInsuredInfoOther':
that.type = type
break
default:
that.type = type
}
},
// 删除图片
deleteImg(file) {
let that = this
that.list.map((item, index, array) => {
// console.log(item.rgssUrl)
// console.log(file.file.name)
// console.log(item.rgssUrl.indexOf(file.file.name))
if (item.fileName.indexOf(file.file.name) == -1) {
return
} else {
@@ -583,9 +599,8 @@ export default {
let that = this
// console.log(type)
// 此时可以自行将文件上传至服务器
// console.log(file)
that.file = file.content
that.imgName = file.file.name
that.imgName = Math.floor(Math.random() * 100).toString() + new Date().getTime() + file.file.name //为图片名加随机数 与时间戳
that.uploadImg()
},
@@ -615,6 +630,8 @@ export default {
message: '加载中……'
})
let formdata = new FormData()
console.log('file-----------------', that.file)
console.log('name-----------------', that.imgName)
formdata.append('imgPath', that.dataURLtoFile(that.file, that.imgName))
uploadImg(formdata).then(res => {
// console.log(res)
@@ -626,32 +643,85 @@ export default {
that.type == 'fileListIdBack' ||
that.type == 'fileLIstImg' ||
that.type == 'fileListBank' ||
that.type == 'fileListBankBack' ||
that.type == 'saleInsuredInfoOther'
) {
// 是投保人
// console.log(that.file)
// 证件类型
let imageInfoType = ''
// if (that.type == 'fileListIdFront' && that.id == '1') {
// imageInfoType = '1'
// } else if (that.type == 'fileListIdBack' && that.id == '1') {
// imageInfoType = '2'
// } else if (that.type == 'fileListBank') {
// imageInfoType = '3'
// } else if (that.type == 'fileListIdFront' && that.id == '2') {
// imageInfoType = '5'
// } else if (that.type == 'fileListIdBack' && that.id == '2') {
// imageInfoType = '6'
// } else if (that.type == 'fileLIstImg' && that.id == '3') {
// imageInfoType = '7'
// } else if (that.type == 'fileLIstImg' && that.id == '4') {
// imageInfoType = '8'
// } else if (that.type == 'fileLIstImg' && that.id == '5') {
// imageInfoType = '9'
// } else if (that.type == 'fileLIstImg' && that.id == '6') {
// imageInfoType = '10'
// } else if (that.type == 'saleInsuredInfoOther' && that.id == '7') {
// imageInfoType = '11'
// }
if (that.type == 'fileListIdFront' && that.id == '1') {
//身份证正面
imageInfoType = '1'
} else if (that.type == 'fileListIdBack' && that.id == '1') {
//身份证反面
imageInfoType = '2'
} else if (that.type == 'fileListBank') {
imageInfoType = '3'
} else if (that.type == 'fileListIdFront' && that.id == '2') {
//户口本正面
imageInfoType = '5'
} else if (that.type == 'fileListIdBack' && that.id == '2') {
//户口本反面
imageInfoType = '6'
} else if (that.type == 'fileLIstImg' && that.id == '3') {
} else if (that.type == 'fileListIdFront' && that.id == '3') {
//出生证正面
imageInfoType = '7'
} else if (that.type == 'fileListIdBack' && that.id == '3') {
//出生证反面
imageInfoType = '12'
} else if (that.type == 'fileLIstImg' && that.id == '4') {
//护照面
imageInfoType = '8'
} else if (that.type == 'fileLIstImg' && that.id == '5') {
} else if (that.type == 'fileListIdFront' && that.id == '5') {
//港澳居民来往内地通行证正面
imageInfoType = '9'
} else if (that.type == 'fileLIstImg' && that.id == '6') {
} else if (that.type == 'fileListIdBack' && that.id == '5') {
//港澳居民来往内地通行证反面
imageInfoType = '13'
} else if (that.type == 'fileListIdFront' && that.id == '6') {
//台湾居民来往大陆通行证正面
imageInfoType = '10'
} else if (that.type == 'saleInsuredInfoOther' && that.id == '7') {
imageInfoType = '11'
} else if (that.type == 'fileListIdBack' && that.id == '6') {
//台湾居民来往大陆通行证反面
imageInfoType = '14'
} else if (that.type == 'fileListIdFront' && that.id == '8') {
//外国人永久居留身份证正面
imageInfoType = '15'
} else if (that.type == 'fileListIdBack' && that.id == '8') {
//外国人永久居留身份证反面
imageInfoType = '16'
} else if (that.type == 'fileListIdFront' && that.id == '9') {
//港澳台居民居住证正面
imageInfoType = '17'
} else if (that.type == 'fileListIdBack' && that.id == '9') {
//港澳台居民居住证反面
imageInfoType = '18'
} else if (that.type == 'fileListBank') {
//银行卡正面
imageInfoType = '3'
} else if (that.type == 'fileListBankBack') {
//银行卡反面
imageInfoType = '19'
}
let obj = {
businessNo: that.orderNo,
@@ -678,26 +748,57 @@ export default {
let imageInfoType = ''
// if (that.type == 'fileListIdFrontInsured' && that.id == '1') {
// imageInfoType = '1'
// } else if (that.type == 'fileListIdBackInsured' && that.id == '1') {
// imageInfoType = '2'
// } else if (that.type == 'fileListBankInsured') {
// imageInfoType = '3'
// } else if (that.type == 'fileListIdFrontInsured' && that.id == '2') {
// imageInfoType = '5'
// } else if (that.type == 'fileListIdBackInsured' && that.id == '2') {
// imageInfoType = '6'
// } else if (that.type == 'fileLIstImgInsured' && that.id == '3') {
// imageInfoType = '7'
// } else if (that.type == 'fileLIstImgInsured' && that.id == '4') {
// imageInfoType = '8'
// } else if (that.type == 'fileLIstImgInsured' && that.id == '5') {
// imageInfoType = '9'
// } else if (that.type == 'fileLIstImgInsured' && that.id == '6') {
// imageInfoType = '10'
// } else if (that.type == 'saleInsuredPersonInfoOther' && that.id == '7') {
// imageInfoType = '11'
// }
if (that.type == 'fileListIdFrontInsured' && that.id == '1') {
imageInfoType = '1'
} else if (that.type == 'fileListIdBackInsured' && that.id == '1') {
imageInfoType = '2'
} else if (that.type == 'fileListBankInsured') {
imageInfoType = '3'
} else if (that.type == 'fileListIdFrontInsured' && that.id == '2') {
imageInfoType = '5'
} else if (that.type == 'fileListIdBackInsured' && that.id == '2') {
imageInfoType = '6'
} else if (that.type == 'fileLIstImgInsured' && that.id == '3') {
} else if (that.type == 'fileListIdFrontInsured' && that.id == '3') {
imageInfoType = '7'
} else if (that.type == 'fileListIdBackInsured' && that.id == '3') {
imageInfoType = '12'
} else if (that.type == 'fileLIstImgInsured' && that.id == '4') {
imageInfoType = '8'
} else if (that.type == 'fileLIstImgInsured' && that.id == '5') {
} else if (that.type == 'fileListIdFrontInsured' && that.id == '5') {
imageInfoType = '9'
} else if (that.type == 'fileLIstImgInsured' && that.id == '6') {
} else if (that.type == 'fileListIdBackInsured' && that.id == '5') {
imageInfoType = '13'
} else if (that.type == 'fileListIdFrontInsured' && that.id == '6') {
imageInfoType = '10'
} else if (that.type == 'saleInsuredPersonInfoOther' && that.id == '7') {
imageInfoType = '11'
} else if (that.type == 'fileListIdBackInsured' && that.id == '6') {
imageInfoType = '14'
} else if (that.type == 'fileListIdFrontInsured' && that.id == '8') {
imageInfoType = '15'
} else if (that.type == 'fileListIdBackInsured' && that.id == '8') {
imageInfoType = '16'
} else if (that.type == 'fileListIdFrontInsured' && that.id == '9') {
imageInfoType = '17'
} else if (that.type == 'fileListIdBackInsured' && that.id == '9') {
imageInfoType = '18'
}
let obj = {
@@ -728,6 +829,19 @@ export default {
// window.localStorage.setItem('obj', JSON.stringify(obj))
// that.list.push(JSON.parse(window.localStorage.getItem('obj')))
that.list.push(obj)
} else if (that.type == 'fileListtypebeneficiary') {
// 是受益人
let type = '3'
let obj = {
businessNo: that.orderNo,
businessType: '',
imageInfoType: '21',
rgssUrl: encodeURI(res.path).replace(/\+/g, '%2B'),
subBusinessType: type,
subBusinessNo: '',
fileName: that.imgName
}
that.list.push(obj)
}
// })
} else {
@@ -744,6 +858,9 @@ export default {
case 'fileListBank':
that.fileListBank = []
break
case 'fileListBankBack':
that.fileListBankBack = []
break
case 'fileListOther':
that.fileListOther = []
break
@@ -783,6 +900,10 @@ export default {
message: '加载中……'
})
<<<<<<< HEAD
=======
//注释双录提示
>>>>>>> dev
// let request = {
// productList: JSON.parse(localStorage.chooseProductCodes),
// // productList: ["DCRS_A0009"],
@@ -849,14 +970,36 @@ export default {
that.$toast(res.resultMessage)
}
})
},
}
},
computed: {
// eslint-disable-next-line vue/return-in-computed-property
typebeneficiary() {
// 1.趸交保费≥20万元或期交保费*总期数≥20万元时
// 2.指定受益人
// 3.受益人与被保人关系为其他
if (!window.localStorage.getItem('trialList') == true || !window.localStorage.getItem('beneficiaryInfo') == true) {
return false
} else {
let beneficiaryInfoList = JSON.parse(window.localStorage.getItem('beneficiaryInfo'))
if (JSON.parse(window.localStorage.getItem('trialList'))[0].prem >= 200000) {
for (let index = 0; index < beneficiaryInfoList.length; index++) {
if (beneficiaryInfoList[index].relationToInsured == 5) {
return true
}
}
// return false
} else {
return false
}
}
},
listenChange() {
const {
fileListIdFront,
fileListIdBack,
fileListBank,
fileListBankBack,
radio,
fileLIstImg,
fileListIdFrontInsured,
@@ -864,12 +1007,15 @@ export default {
fileListBankInsured,
fileLIstImgInsured,
saleInsuredPersonInfoOther,
saleInsuredInfoOther
saleInsuredInfoOther,
fileListtypebeneficiary
} = this
console.log(this)
return {
fileListIdFront,
fileListIdBack,
fileListBank,
fileListBankBack,
radio,
fileListIdFrontInsured,
fileListIdBackInsured,
@@ -877,7 +1023,8 @@ export default {
fileLIstImgInsured,
fileLIstImg,
saleInsuredPersonInfoOther,
saleInsuredInfoOther
saleInsuredInfoOther,
fileListtypebeneficiary
}
}
},
@@ -888,11 +1035,13 @@ export default {
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.radio !== '') ||
(val.fileLIstImg.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.radio !== '') ||
@@ -915,28 +1064,47 @@ export default {
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileLIstImgInsured.length != '0' &&
val.radio !== '') ||
(val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileLIstImg.length != '0' &&
val.fileLIstImgInsured.length != '0' &&
val.radio !== '') ||
(val.fileListBank.length != '0' && val.fileLIstImg.length != '0' && val.fileLIstImgInsured.length != '0' && val.radio !== '') ||
(val.fileLIstImg.length != '0' && val.fileLIstImgInsured.length != '0' && val.fileListBankInsured.length != '0' && val.radio !== '') ||
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.radio !== '' &&
this.relationToAppnt == '1') ||
(val.fileLIstImg.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.radio !== '' &&
this.relationToAppnt == '1') ||
(val.fileLIstImg.length != '0' && val.fileListBank.length != '0' && val.radio !== '' && this.relationToAppnt == '1') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.fileListBank.length != '0' && val.fileLIstImgInsured.length != '0' && val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileLIstImgInsured.length != '0' &&
val.radio !== '') ||
(val.saleInsuredPersonInfoOther.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.fileListBank.length != '0' && val.fileLIstImg.length != '0' && val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileLIstImg.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
@@ -944,16 +1112,33 @@ export default {
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.fileListBankInsured.length != '0' && val.fileLIstImg.length != '0' && val.radio !== '') ||
(val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.saleInsuredPersonInfoOther.length != '0' &&
val.radio !== '') ||
(val.fileListBank.length != '0' && val.fileLIstImg.length != '0' && val.saleInsuredPersonInfoOther.length != '0' && val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.fileListBank.length != '0' && val.saleInsuredPersonInfoOther.length != '0' && val.radio !== '') ||
(val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.fileLIstImg.length != '0' &&
val.saleInsuredPersonInfoOther.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.saleInsuredPersonInfoOther.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.saleInsuredPersonInfoOther.length != '0' && val.fileListBankInsured.length != '0' && val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' && val.fileListBank.length != '0' && val.radio !== '' && this.relationToAppnt == '1')
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBank.length != '0' &&
val.fileListBankBack.length != '0' &&
val.radio !== '' &&
this.relationToAppnt == '1')
) {
that.isDisabled = false
if ((that.typebeneficiary && val.fileListtypebeneficiary.length != '0') || (!that.typebeneficiary && val.fileListtypebeneficiary.length == '0')) {
that.isDisabled = false
} else {
that.isDisabled = true
}
} else {
that.isDisabled = true
}

View File

@@ -7,7 +7,6 @@
</div>
<div class="text-align-c card-scan-area" @click="click">
<img :src="'data:image/png;base64,' + src" alt="" class="card-scan-img" />
<!-- <img src="@/assets/images/u6071.png" /> -->
</div>
<div class="bg-white bottom-btn">
<van-button type="danger" size="large" class="card-scan-next" @click="complete" :disabled="isDisabled" v-no-more-click="1000">完成</van-button>

View File

@@ -126,7 +126,7 @@ export default {
let that = this
let data = {
orderNo: window.localStorage.getItem('orderNo')
// orderNo: '19091111335500682455'
// orderNo: '8186270000000806'
}
getDetail(data).then(res => {
console.log(res)
@@ -147,25 +147,31 @@ export default {
}
switch (res.orderDTO.appntDTO.idType) {
case '1':
res.orderDTO.appntDTO.idType = '身份证'
res.orderDTO.appntDTO.idType = '居民身份证'
break
case '2':
res.orderDTO.appntDTO.idType = '户口本'
break
case '3':
res.orderDTO.appntDTO.idType = '出生证'
res.orderDTO.appntDTO.idType = '出生证'
break
case '4':
res.orderDTO.appntDTO.idType = '护照'
res.orderDTO.appntDTO.idType = '外国人护照'
break
case '5':
res.orderDTO.appntDTO.idType = '港澳居民通行证'
res.orderDTO.appntDTO.idType = '港澳居民来往内地通行证'
break
case '6':
res.orderDTO.appntDTO.idType = '台湾居民通行证'
res.orderDTO.appntDTO.idType = '台湾居民来往大陆通行证'
break
case '7':
res.orderDTO.appntDTO.idType = '其他'
// case '7':
// res.orderDTO.appntDTO.idType = '其他'
// break
case '8':
res.orderDTO.appntDTO.idType = '外国人永久居留身份证'
break
case '9':
res.orderDTO.appntDTO.idType = '港澳台居民居住证'
break
}
that.appntDTO = res.orderDTO.appntDTO
@@ -203,25 +209,31 @@ export default {
}
switch (item.idType) {
case '1':
item.idType = '身份证'
item.idType = '居民身份证'
break
case '2':
item.idType = '户口本'
break
case '3':
item.idType = '出生证'
item.idType = '出生证'
break
case '4':
item.idType = '护照'
item.idType = '外国人护照'
break
case '5':
item.idType = '港澳居民通行证'
item.idType = '港澳居民来往内地通行证'
break
case '6':
item.idType = '台湾居民通行证'
item.idType = '台湾居民来往大陆通行证'
break
case '7':
item.idType = '其他'
// case '7':
// item.idType = '其他'
// break
case '8':
item.idType = '外国人永久居留身份证'
break
case '9':
item.idType = '港澳台居民居住证'
break
}
switch (item.relationToAppnt) {
@@ -252,25 +264,31 @@ export default {
}
switch (it.idType) {
case '1':
it.idType = '身份证'
it.idType = '居民身份证'
break
case '2':
it.idType = '户口本'
break
case '3':
it.idType = '出生证'
it.idType = '出生证'
break
case '4':
it.idType = '护照'
it.idType = '外国人护照'
break
case '5':
it.idType = '港澳居民通行证'
it.idType = '港澳居民来往内地通行证'
break
case '6':
it.idType = '台湾居民通行证'
it.idType = '台湾居民来往大陆通行证'
break
case '7':
it.idType = '其他'
// case '7':
// it.idType = '其他'
// break
case '8':
it.idType = '外国人永久居留身份证'
break
case '9':
it.idType = '港澳台居民居住证'
break
}
switch (it.relationToInsured) {

View File

@@ -309,26 +309,32 @@ export default {
}
} else {
switch (that.saleInsuredInfo.idType) {
case '身份证':
case '居民身份证':
that.saleInsuredInfo.idType = '1'
break
case '户口本':
that.saleInsuredInfo.idType = '2'
break
case '出生证':
case '出生证':
that.saleInsuredInfo.idType = '3'
break
case '护照':
case '外国人护照':
that.saleInsuredInfo.idType = '4'
break
case '港澳居民通行证':
case '港澳居民来往内地通行证':
that.saleInsuredInfo.idType = '5'
break
case '台湾居民通行证':
case '台湾居民来往大陆通行证':
that.saleInsuredInfo.idType = '6'
break
case '其他':
that.saleInsuredInfo.idType = '7'
// case '其他':
// that.saleInsuredInfo.idType = '7'
// break
case '外国人永久居留身份证':
that.saleInsuredInfo.idType = '8'
break
case '港澳台居民居住证':
that.saleInsuredInfo.idType = '9'
break
}
if (this.isWeixin) {

View File

@@ -24,16 +24,8 @@
@click="toSelect('2')"
/>
<!-- <van-field v-model="userInfo.idNo" v-validate="'required|idNo'" maxlength="18" label="证件号码" name="证件号码" placeholder="请输入" clearable> -->
<van-field
v-model="userInfo.idNo"
maxlength="18"
label="证件号码"
name="证件号码"
placeholder="请输入"
clearable
@blur="getRelatedData(userInfo.idNo)"
>
<!-- <van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')">证件扫描</van-button>-->
<van-field v-model="userInfo.idNo" maxlength="18" label="证件号码" name="证件号码" placeholder="请输入" clearable @blur="getRelatedData(userInfo.idNo)">
<!-- <van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')">证件扫描</van-button> -->
</van-field>
<FieldDatePicter
v-validate="'required'"
@@ -56,20 +48,9 @@
:flag="true"
></FieldDatePicter>
<div class="border-bt relative fs14 p10 flex align-center">
<van-checkbox
v-model="userInfo.effectiveDateType"
:disabled="effectiveDateTypeAble"
@change="effectiveDataTypeChange"
>长期</van-checkbox>
<van-checkbox v-model="userInfo.effectiveDateType" :disabled="effectiveDateTypeAble" @change="effectiveDataTypeChange">长期</van-checkbox>
</div>
<select-radio
:radios="sexRadio"
label="性别"
name="性别"
v-validate="'required'"
:required="false"
:value.sync="userInfo.sex"
></select-radio>
<select-radio :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :required="false" :value.sync="userInfo.sex"></select-radio>
<van-field
:value="userInfo.nativeplace | idToText('nativeplace')"
readonly
@@ -80,16 +61,7 @@
placeholder="请选择"
@click="toSelect('1')"
/>
<van-field
:value="census"
readonly
label="户籍"
name="户籍"
v-validate="'required'"
right-icon="arrow"
placeholder="请选择"
@click="censusShow = true"
/>
<van-field :value="census" readonly label="户籍" name="户籍" v-validate="'required'" right-icon="arrow" placeholder="请选择" @click="censusShow = true" />
<FieldDatePicter
v-validate="'required'"
label="出生日期"
@@ -102,46 +74,13 @@
:maxDate="maxDate"
></FieldDatePicter>
<van-field
v-model="userInfo.mobile"
clearable
label="移动电话"
name="移动电话"
placeholder="请输入"
v-validate="'required|mobile'"
maxlength="11"
/>
<van-field
v-model="userInfo.authCode"
center
clearable
label
name="短信验证码"
placeholder="请输入短信验证码"
v-validate="'required'"
maxlength="6"
>
<van-button
slot="button"
size="small"
type="danger"
@click="getCode"
:disabled="codeDisabled"
v-no-more-click="1000"
>
{{
codeDisabled ? `${countDown}s后重新获取` : '发送验证码'
}}
<van-field v-model="userInfo.mobile" clearable label="移动电话" name="移动电话" placeholder="请输入" v-validate="'required|mobile'" maxlength="11" />
<van-field v-model="userInfo.authCode" center clearable label name="短信验证码" placeholder="请输入短信验证码" v-validate="'required'" maxlength="6">
<van-button slot="button" size="small" type="danger" @click="getCode" :disabled="codeDisabled" v-no-more-click="1000">
{{ codeDisabled ? `${countDown}s后重新获取` : '发送验证码' }}
</van-button>
</van-field>
<van-field
v-model="userInfo.email"
label="电子邮箱"
name="电子邮箱"
placeholder="请输入"
v-validate="'required|email'"
clearable
/>
<van-field v-model="userInfo.email" label="电子邮箱" name="电子邮箱" placeholder="请输入" v-validate="'required|email'" clearable />
<van-field
v-model="userInfo.stature"
label="身高(cm)"
@@ -161,14 +100,15 @@
clearable
@blur="checkAvoirdupois(userInfo.avoirdupois)"
/>
<!-- <div class="p15 fs14">
<van-radio-group v-model="userInfo.IsElecCont" class="flex" @change="radioChange">
<label>保单形式</label>
<van-radio name="1" class="ml30">电子</van-radio>
<van-radio name="2" class="ml20">电子+纸质</van-radio>
</van-radio-group>
</div> -->
</van-cell-group>
<van-radio-group
:border="false"
v-model="userInfo.addressStatus"
v-validate="'required'"
label="设置为联系地址"
name="设置为联系地址"
>
<van-radio-group :border="false" v-model="userInfo.addressStatus" v-validate="'required'" label="设置为联系地址" name="设置为联系地址">
<!-- 工作信息 -->
<van-cell-group :border="false">
<p style=" border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 mt10 pv12">工作信息</p>
@@ -243,14 +183,7 @@
clearable
maxlength="5"
/>
<van-field
v-model="userInfo.liabilitiesMoney"
name="负债金额"
placeholder="请输入"
v-validate="'required|onlyNumber'"
clearable
maxlength="5"
>
<van-field v-model="userInfo.liabilitiesMoney" name="负债金额" placeholder="请输入" v-validate="'required|onlyNumber'" clearable maxlength="5">
<div slot="label" class="flex flex-wrap">
<span>负债金额</span>
<span>万元</span>
@@ -266,15 +199,7 @@
right-icon="arrow"
@click="toSelect('7')"
/>
<van-field
v-model="userInfo.workcompany"
label="工作单位"
name="工作单位"
placeholder="请输入"
v-validate="'required'"
maxlength="50"
clearable
/>
<van-field v-model="userInfo.workcompany" label="工作单位" name="工作单位" placeholder="请输入" v-validate="'required'" maxlength="50" clearable />
<van-field
v-model="areaName"
readonly
@@ -285,36 +210,13 @@
v-validate="'required'"
@click="areaShow = true"
/>
<van-field
v-model="userInfo.companyAddress"
label
name="详细地址"
placeholder="请输入详细地址"
v-validate="'required'"
clearable
maxlength="30"
/>
<van-field v-model="userInfo.companyAddress" label name="详细地址" placeholder="请输入详细地址" v-validate="'required'" clearable maxlength="30" />
<div class="border-bt relative fs14 p10 flex align-center">
<!-- <van-checkbox v-model="companyDefault" :disabled="homeDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox> -->
<van-radio name="0">设为联系地址</van-radio>
</div>
<van-field
v-model="userInfo.companyZip"
label="邮编"
name="邮编"
placeholder="请输入"
v-validate="'required|zipCode'"
maxlength="6"
clearable
/>
<van-field
v-model="userInfo.companyPhone"
label="单位电话"
name="单位电话"
placeholder="非必填"
maxlength="13"
clearable
/>
<van-field v-model="userInfo.companyZip" label="邮编" name="邮编" placeholder="请输入" v-validate="'required|zipCode'" maxlength="6" clearable />
<van-field v-model="userInfo.companyPhone" label="单位电话" name="单位电话" placeholder="非必填" maxlength="13" clearable />
</van-cell-group>
<!-- 家庭信息 -->
<van-cell-group>
@@ -348,36 +250,13 @@
v-validate="'required'"
@click="homeShow = true"
/>
<van-field
v-model="userInfo.homeAddress"
label
name="详细地址"
placeholder="请输入详细地址"
v-validate="'required'"
clearable
maxlength="30"
/>
<van-field v-model="userInfo.homeAddress" label name="详细地址" placeholder="请输入详细地址" v-validate="'required'" clearable maxlength="30" />
<div class="border-bt relative fs14 p10 flex align-center">
<!-- <van-checkbox v-model="homeDefault" :disabled="companyDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox> -->
<van-radio name="1">设为联系地址</van-radio>
</div>
<van-field
v-model="userInfo.homeZip"
label="邮编"
name="邮编"
placeholder="请输入"
v-validate="'required|zipCode'"
maxlength="6"
clearable
/>
<van-field
v-model="userInfo.homePhone"
label="家庭电话"
name="家庭电话"
placeholder="非必填"
maxlength="13"
clearable
/>
<van-field v-model="userInfo.homeZip" label="邮编" name="邮编" placeholder="请输入" v-validate="'required|zipCode'" maxlength="6" clearable />
<van-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="13" clearable />
</van-cell-group>
</van-radio-group>
<van-button type="danger" class="bottom-btn" @click="nextStep" v-no-more-click="1000">下一步</van-button>
@@ -388,31 +267,15 @@
</van-popup>
<!-- 地区选择 -->
<van-popup v-model="areaShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '1')"
@cancel="areaShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '1')" @cancel="areaShow = false" />
</van-popup>
<!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '2')"
@cancel="homeShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup>
<!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
:columns-num="2"
@confirm="sureArea($event, '3')"
@cancel="censusShow = false"
/>
<van-area :area-list="areaList" value="110101" :columns-num="2" @confirm="sureArea($event, '3')" @cancel="censusShow = false" />
</van-popup>
<!--身份证扫描 -->
<van-popup v-model="isScan" position="bottom">
@@ -477,7 +340,7 @@ export default {
value: '1'
}
],
maxDate: beforeDate.getBeforeYear(16),
maxDate: beforeDate.getBeforeYear(18),
codeDisabled: false, //获取验证码按钮是否禁用
countDown: 60, //倒计时
certiexpiredateRequired: true, //证件截止日期是否需要校验
@@ -545,7 +408,8 @@ export default {
homePhone: '', //家庭电话
householdProvince: '', //户籍省
householdCity: '', //户籍市
addressStatus: '0' //是否是联系地址
addressStatus: '0', //是否是联系地址
IsElecCont: '1' //保单形式
},
areaList: areaList,
currentPopupIndex: '',
@@ -556,8 +420,8 @@ export default {
},
created() {
// document.body.style.backgroundColor = '#F5F5F5'
//如果是编辑进来
if (this.$route.query.edit) {
getOrderDetail({ orderNo: localStorage.orderNo }).then(res => {
if (res.result == 0) {
@@ -588,28 +452,6 @@ export default {
this.userInfo.name = name
},
selectClick(index) {
// this.currentPopupIndex = index
// let title = ''
// if (index == 1) {
// ;[this.customerShowPicker, title] = [true, '客户列表']
// } else if (index == 2) {
// ;[this.occupationShowPicker, title] = [true, '职业类别']
// } else if (index == 3) {
// localStorage.scanFromInsured = 'true'
// ;[this.isScan, title] = [true, '身份证扫描']
// }
// setTimeout(() => {
// this.$jump({
// flag: 'navigation',
// extra: {
// title,
// hiddenLeft: '1'
// }
// })
// this.closeBtn()
// }, 400)
// let that = this
selectComp(this, index, '1')
},
// closeBtn() {
@@ -840,6 +682,7 @@ export default {
this.userInfo.homePhone = data.homePhone //家庭电话
this.userInfo.householdProvince = data.province //户籍省
this.userInfo.householdCity = data.city //户籍市
this.userInfo.IsElecCont = data.IsElecCont || '1' //保单形式
if (data.province.length) {
this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍
}
@@ -856,8 +699,8 @@ export default {
},
nextStep() {
// console.log(this.userInfo.idType)
console.log(this.userInfo.salarySource)
console.log(this.userInfo.otherSalarySource)
console.log(this.userInfo.salarySource)
console.log(this.userInfo.otherSalarySource)
//表单校验, 成功跳转
this.$validator.validate().then(valid => {
if (true === valid) {
@@ -933,27 +776,35 @@ export default {
return this.$toast('证件有效期不正常26周岁至45周岁公民身份证有效期应小于等于20年')
}
}
//证件类型是护照
} else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
console.log('证件类型是护照')
return this.$toast('护照须大于等于3个字符')
//证件是港澳居民通行证
} else if (this.userInfo.idType == '5') {
console.log('证件类型是港澳居民通行证')
if (this.userInfo.idNo.length != 9) {
return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
} else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
//证件类型是户口本
} else if (this.userInfo.idType == '2') {
if (age > 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
} else if (this.userInfo.idType == '3') {
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上不能使用出生证作为有效证件')
}
//证件是台湾居民通行证
} else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
console.log('证件类型是台湾居民通行证')
return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
}
// else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
// console.log('证件类型是护照')
// return this.$toast('护照须大于等于3个字符')
// //证件是港澳居民通行证
// } else if (this.userInfo.idType == '5') {
// console.log('证件类型是港澳居民通行证')
// if (this.userInfo.idNo.length != 9) {
// return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
// } else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
// return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
// }
// //证件是台湾居民通行证
// } else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
// console.log('证件类型是台湾居民通行证')
// return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
// }
//投保人需大于等于 16 周岁
if (age < 16) {
//投保人需大于等于 18 周岁
if (age < 18) {
return this.$toast('投保人必须是具有民事行为能力且有固定职业和收入的自然人,请确定')
}
@@ -963,8 +814,8 @@ export default {
return this.$toast('学生不可以作为投保人,请更换投保人投保')
}
if(this.userInfo.salarySource == '4'){
if(!this.userInfo.otherSalarySource){
if (this.userInfo.salarySource == '4') {
if (!this.userInfo.otherSalarySource) {
return this.$toast('请输入其它收入来源')
}
}
@@ -1158,8 +1009,8 @@ export default {
getIdentityInfo(data) {
console.log(data)
if (data.name && data.name != '待识别') {
this.userInfo.certificateValidate = `${data.startDate.substr(0, 4)}-${data.startDate.substr(4, 2)}-${data.startDate.substr(6, 2)}`
this.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(4, 2)}-${data.endDate.substr(6, 2)}`
this.userInfo.certificateValidate = `${data.startDate.substr(0, 4)}-${data.startDate.substr(5, 2)}-${data.startDate.substr(8, 2)}`
this.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(5, 2)}-${data.endDate.substr(8, 2)}`
this.userInfo.name = data.name
this.userInfo.idNo = data.idNo
this.userInfo.birthday = `${data.birthYear}-${data.birthMonth}-${data.birthDay}`
@@ -1212,11 +1063,16 @@ export default {
this.effectiveDateTypeAble = idToData(val).age < 45
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
},
// 单选按钮切换
radioChange(val) {
console.log(val)
this.userInfo.IsElecCont = val
}
},
computed:{
isShowOthenSalarySource(){
if(this.userInfo.salarySource == '4'){
computed: {
isShowOthenSalarySource() {
if (this.userInfo.salarySource == '4') {
return true
} else {
this.userInfo.otherSalarySource = ''

View File

@@ -1,5 +1,5 @@
<template>
<div class="insured-person-container pb50">
<div class="insured-person-container pb50 ">
<!-- 基本信息 -->
<van-cell-group v-if="!isScan">
<p style="border-bottom: 1px solid #ebedf0" class="mt10 fs15 fwb pl10 pv12">基本信息</p>
@@ -46,14 +46,27 @@
v-validate="'required'"
@blur="getRelatedData(userInfo.idNo)"
>
<!-- <van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')" v-no-more-click="1000"-->
<!-- >证件扫描</van-button-->
<!-- >-->
<!-- <van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')" v-no-more-click="1000"
>证件扫描</van-button -->
>
</van-field>
<FieldDatePicter
v-validate="'required'"
label="出生日期"
name="出生日期"
:value.sync="userInfo.birthday"
type="date"
:flag="true"
@confirm="onDateConfirm($event, '2')"
ref="birthday"
:readonly="isAppnt"
:maxDate="currentTime"
></FieldDatePicter>
<FieldDatePicter
v-validate="'required'"
label="证件起始日期"
name="证件起始日期"
:defaultDate="new Date()"
:value.sync="userInfo.certificateValidate"
type="date"
:flag="true"
@@ -65,6 +78,7 @@
:v-validate="{ required: certiexpiredateRequired }"
label="证件截止日期"
name="证件截止日期"
:defaultDate="new Date()"
:value.sync="userInfo.certiexpiredate"
type="date"
@confirm="onDateConfirm($event, '1')"
@@ -73,12 +87,7 @@
:readonly="isAppnt || idLimit"
></FieldDatePicter>
<div class="border-bt relative fs14 p10 flex align-center">
<van-checkbox
v-model="userInfo.effectiveDateType"
class="fr"
:disabled="effectiveDateTypeAble"
@change="effectiveDataTypeChange"
>长期</van-checkbox>
<van-checkbox v-model="userInfo.effectiveDateType" class="fr" :disabled="effectiveDateTypeAble" @change="effectiveDataTypeChange">长期</van-checkbox>
</div>
<select-radio
:radios="sexRadio"
@@ -99,28 +108,7 @@
placeholder="请选择"
@click="toSelect('1')"
/>
<van-field
:value="census"
readonly
label="户籍"
name="户籍"
v-validate="'required'"
right-icon="arrow"
placeholder="请选择"
@click="areaChoose('1')"
/>
<FieldDatePicter
v-validate="'required'"
label="出生日期"
name="出生日期"
:value.sync="userInfo.birthday"
type="date"
:flag="true"
@confirm="onDateConfirm($event, '2')"
ref="birthday"
:readonly="isAppnt"
:maxDate="currentTime"
></FieldDatePicter>
<van-field :value="census" readonly label="户籍" name="户籍" v-validate="'required'" right-icon="arrow" placeholder="请选择" @click="areaChoose('1')" />
<van-field
v-model="userInfo.mobile"
@@ -137,34 +125,17 @@
v-model="userInfo.authCode"
center
clearable
label
label=""
name="短信验证码"
placeholder="请输入短信验证码"
v-validate="'required'"
maxlength="6"
>
<van-button
slot="button"
size="small"
type="danger"
:disabled="codeDisabled"
@click="getCode"
v-no-more-click="1000"
>
{{
<van-button slot="button" size="small" type="danger" :disabled="codeDisabled" @click="getCode" v-no-more-click="1000">{{
codeDisabled ? `${countDown}s后重新获取` : '发送验证码'
}}
</van-button>
}}</van-button>
</van-field>
<van-field
v-model="userInfo.email"
label="电子邮箱"
name="电子邮箱"
placeholder="请输入"
v-validate="'required|email'"
clearable
:readonly="isAppnt"
/>
<van-field v-model="userInfo.email" label="电子邮箱" name="电子邮箱" placeholder="请输入" v-validate="'required|email'" clearable :readonly="isAppnt" />
<van-field
v-model="userInfo.stature"
label="身高(cm)"
@@ -189,7 +160,7 @@
</van-cell-group>
<!-- 工作信息 -->
<van-cell-group class="mt5" v-if="!isScan">
<p style=" border-bottom: 1px solid #ebedf0" class="fs15 mt10 fwb pl10 pv12">工作信息</p>
<p style=" border-bottom: 1px solid #ebedf0" class=" fs15 mt10 fwb pl10 pv12">工作信息</p>
<van-field
:value="userInfo.degree | idToText('degree')"
readonly
@@ -234,25 +205,6 @@
@on-click="selectClick('2')"
@on-choose="chooseOccupation"
/>
<van-field
:value="userInfo.salarySource | idToText('salarySource')"
readonly
label="收入来源"
name="收入来源"
right-icon="arrow"
placeholder="请选择"
v-validate="'required'"
@click="toSelect('9')"
/>
<van-field
v-show="isShowOthenSalarySource"
v-model="userInfo.otherSalarySource"
label
name="其他来源"
placeholder="请输入其它收入来源"
clearable
maxlength="30"
/>
<van-field
v-model="userInfo.averageAnnualIncome"
label="平均年收入(万元)"
@@ -272,10 +224,7 @@
maxlength="5"
:readonly="isAppnt"
>
<div slot="label" class="flex flex-wrap">
<span>负债金额</span>
<span>(万元)</span>
</div>
<div slot="label" class="flex flex-wrap"><span>负债金额</span><span>万元</span></div>
</van-field>
<van-field
:value="userInfo.jobStatus | idToText('workCondition')"
@@ -309,7 +258,7 @@
/>
<van-field
v-model="userInfo.companyAddress"
label
label=""
name="详细地址"
placeholder="请输入详细地址"
v-validate="'required'"
@@ -327,19 +276,11 @@
clearable
:readonly="isAppnt"
/>
<van-field
v-model="userInfo.companyPhone"
label="单位电话"
name="单位电话"
placeholder="非必填"
maxlength="13"
clearable
:readonly="isAppnt"
/>
<van-field v-model="userInfo.companyPhone" label="单位电话" name="单位电话" placeholder="非必填" maxlength="13" clearable :readonly="isAppnt" />
</van-cell-group>
<!-- 家庭信息 -->
<van-cell-group class="mt5" v-if="!isScan">
<p style=" border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 mt10 pv12">家庭信息</p>
<p style=" border-bottom: 1px solid #ebedf0" class=" fs15 fwb pl10 mt10 pv12">家庭信息</p>
<van-field
:value="userInfo.marriage | idToText('marriage')"
readonly
@@ -372,7 +313,7 @@
/>
<van-field
v-model="userInfo.homeAddress"
label
label=""
name="详细地址"
placeholder="请输入详细地址"
v-validate="'required'"
@@ -390,23 +331,9 @@
clearable
:readonly="isAppnt"
/>
<van-field
v-model="userInfo.homePhone"
label="家庭电话"
name="家庭电话"
placeholder="非必填"
maxlength="13"
clearable
:readonly="isAppnt"
/>
<van-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="13" clearable :readonly="isAppnt" />
</van-cell-group>
<van-button
type="danger"
class="bottom-btn"
@click="nextStep"
v-if="!isScan"
v-no-more-click="1000"
>下一步</van-button>
<van-button type="danger" class="bottom-btn" @click="nextStep" v-if="!isScan" v-no-more-click="1000">下一步</van-button>
<!-- 字段选择 -->
<van-popup v-model="popupShow" position="bottom">
@@ -414,31 +341,15 @@
</van-popup>
<!-- 地区选择 -->
<van-popup v-model="areaShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '1')"
@cancel="areaShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '1')" @cancel="areaShow = false" />
</van-popup>
<!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
@confirm="sureArea($event, '2')"
@cancel="homeShow = false"
/>
<van-area :area-list="areaList" value="110101" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup>
<!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom">
<van-area
:area-list="areaList"
value="110101"
:columns-num="2"
@confirm="sureArea($event, '3')"
@cancel="censusShow = false"
/>
<van-area :area-list="areaList" value="110101" :columns-num="2" @confirm="sureArea($event, '3')" @cancel="censusShow = false" />
</van-popup>
<!-- 银行卡扫描 -->
<!-- 银行卡扫描 -->
@@ -448,6 +359,7 @@
<!-- <IdentityCardScan @getScanInfo="getIdentityInfo"></IdentityCardScan> -->
</div>
</template>
<script>
import { Field, CellGroup, Checkbox, Popup, Picker, Area, Dialog } from 'vant'
import SelectRadio from '@/components/ebiz/SelectRadio'
@@ -1180,32 +1092,35 @@ export default {
}
//证件类型是户口本
} else if (this.userInfo.idType == '2') {
if (age >= 16) {
return this.$toast('客户年龄在16周岁以上,不能使用户口本作为有效证件')
} else if (this.userInfo.idNo.length != 18) {
return this.$toast('户口本的证件号码长度应等于18位')
if (age > 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
// else if (this.userInfo.idNo.length != 18) {
// return this.$toast('户口本的证件号码长度应等于18位')
// }
//证件类型是出生证明
} else if (this.userInfo.idType == '3') {
if (age >= 3) {
return this.$toast('客户年龄在3周岁及以上,不能使用出生证作为有效证件')
} else if (this.userInfo.idNo.length < 3) {
return this.$toast('出生证须大于等于3个字符')
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上,不能使用出生证作为有效证件')
}
// else if (this.userInfo.idNo.length < 3) {
// return this.$toast('出生证须大于等于3个字符')
// }
//证件类型是护照
} else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
return this.$toast('护照须大于等于3个字符')
//证件是港澳居民通行证
} else if (this.userInfo.idType == '5') {
if (this.userInfo.idNo.length != 9) {
return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
} else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
}
//证件是台湾居民通行证
} else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
}
// else if (this.userInfo.idType == '4' && this.userInfo.idNo.length < 3) {
// return this.$toast('护照须大于等于3个字符')
// //证件是港澳居民通行证
// } else if (this.userInfo.idType == '5') {
// if (this.userInfo.idNo.length != 9) {
// return this.$toast('证件类型为港澳居民通行证的证件号码须为9位')
// } else if (!/^(H|M)[0-9]{8}$/.test(this.userInfo.idNo)) {
// return this.$toast('证件类型为港澳居民通行证的,证件号码首位字母为"H"/"M",证件号码第2位至第9位为阿拉伯数字')
// }
// //证件是台湾居民通行证
// } else if (this.userInfo.idType == '6' && this.userInfo.idNo.length != 8) {
// return this.$toast('证件类型为台湾居民通行证的证件号码须为8位数字')
// }
// 年龄 0-7 周岁且不是投保人的子女
if (age < 7 && this.userInfo.relationToAppnt != '4') {
@@ -1382,8 +1297,8 @@ export default {
getIdentityInfo(data) {
console.log(data)
if (data.name && data.name != '待识别') {
this.userInfo.certificateValidate = `${data.startDate.substr(0, 4)}-${data.startDate.substr(4, 2)}-${data.startDate.substr(6, 2)}`
this.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(4, 2)}-${data.endDate.substr(6, 2)}`
this.userInfo.certificateValidate = `${data.startDate.substr(0, 4)}-${data.startDate.substr(5, 2)}-${data.startDate.substr(8, 2)}`
this.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(5, 2)}-${data.endDate.substr(8, 2)}`
this.userInfo.name = data.name
this.userInfo.idNo = data.idNo
this.userInfo.birthday = `${data.birthYear}-${data.birthMonth}-${data.birthDay}`
@@ -1453,12 +1368,12 @@ export default {
}
},
getRelatedData(val) {
// if (this.userInfo.idType != '1') {
// return
// }
if (!['1', '2', '3', 1, 2, 3].includes(this.userInfo.idType)) {
if (this.userInfo.idType != '1') {
return
}
// if (!['1', '2', '3', 1, 2, 3].includes(this.userInfo.idType)) {
// return
// }
//如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
@@ -1469,20 +1384,20 @@ export default {
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
//如果选择户口本
if (this.userInfo.idType == '2') {
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
this.userInfo.certificateValidate = this.userInfo.birthday
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
this.idLimit = true
//如果选择出生证明
} else if (this.userInfo.idType == '3') {
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
this.userInfo.certificateValidate = this.userInfo.birthday
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
this.idLimit = true
} else {
this.idLimit = false
}
// if (this.userInfo.idType == '2') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
// this.userInfo.certificateValidate = this.userInfo.birthday
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.idLimit = true
// //如果选择出生证明
// } else if (this.userInfo.idType == '3') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
// this.userInfo.certificateValidate = this.userInfo.birthday
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.idLimit = true
// } else {
// this.idLimit = false
// }
}
},
computed: {

View File

@@ -741,6 +741,7 @@ export default {
this.relationToAppnt = this.saleInsuredPersonInfo.relationToAppnt //将缓存中的与被保人关系赋值给页面
// 获取投保人信息
this.saleInsuredInfo = JSON.parse(window.localStorage.getItem('saleInsuredInfo'))
this.relationToAppnt = this.saleInsuredPersonInfo.relationToAppnt //将缓存中的与被保人关系赋值给页面
that.recmd = res.orderDTO.recmdDTO
that.orderInfo = res.orderDTO.orderInfoDTO
that.insured = res.orderDTO.insuredDTOs

View File

@@ -201,7 +201,8 @@ export default {
let data = {
contNo: window.localStorage.getItem('contNo'),
baseEncryp: this.base64,
pdfAddresss: window.localStorage.getItem('insurance-policyUrl')
pdfAddresss: window.localStorage.getItem('insurance-policyUrl'),
orderNo: localStorage.orderNo
}
submit(data).then(res => {
@@ -450,30 +451,36 @@ export default {
}
} else {
switch (that.saleInsuredInfo.idType) {
case '身份证':
case '居民身份证':
that.saleInsuredInfo.idType = '1'
break
case '户口本':
that.saleInsuredInfo.idType = '2'
break
case '出生证':
case '出生证':
that.saleInsuredInfo.idType = '3'
break
case '护照':
case '外国人护照':
that.saleInsuredInfo.idType = '4'
break
case '港澳居民通行证':
case '港澳居民来往内地通行证':
that.saleInsuredInfo.idType = '5'
break
case '台湾居民通行证':
case '台湾居民来往大陆通行证':
that.saleInsuredInfo.idType = '6'
break
case '其他':
that.saleInsuredInfo.idType = '7'
// case '其他':
// that.saleInsuredInfo.idType = '7'
// break
case '外国人永久居留身份证':
that.saleInsuredInfo.idType = '8'
break
case '港澳台居民居住证':
that.saleInsuredInfo.idType = '9'
break
}
if (this.isWeixin) {
this.toAirSign('1', '签收日期', '-150')
this.toAirSign('1', '投保人签字', '-150')
} else {
EWebBridge.webCallAppInJs('ca_sign', {
//身份证号码
@@ -481,11 +488,11 @@ export default {
//姓名
name: that.saleInsuredInfo.name,
type: that.saleInsuredInfo.idType,
keyword: '签收日期',
keyword: '投保人签字',
pageNo: '1',
index: '1',
offset: '-150',
pos: '3'
offset: '20',
pos: '3' //设置偏移量 3表示右侧
}).then(data => {
console.log(`--签名返回val:${val},this.detailJump:${this.detailJump},this.relationToAppnt:${this.relationToAppnt}`, JSON.stringify(data))
this.$toast.clear()

View File

@@ -17,7 +17,7 @@
</div>
<div class="pb60" v-else>
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示阅读时长需在${this.Time ? this.time : this.number}秒以上` }}</van-notice-bar>
<!-- <iframe :src="src + pdfUrl" class="iframe"></iframe>-->
<!-- <iframe :src="src + pdfUrl" class="iframe"></iframe>-->
<!-- <img :src="'data:image/jpeg;base64,' + url" /> -->
<div>人身投保提示书</div>
@@ -419,26 +419,32 @@ export default {
}
} else {
switch (that.saleInsuredInfo.idType) {
case '身份证':
case '居民身份证':
that.saleInsuredInfo.idType = '1'
break
case '户口本':
that.saleInsuredInfo.idType = '2'
break
case '出生证':
case '出生证':
that.saleInsuredInfo.idType = '3'
break
case '护照':
case '外国人护照':
that.saleInsuredInfo.idType = '4'
break
case '港澳居民通行证':
case '港澳居民来往内地通行证':
that.saleInsuredInfo.idType = '5'
break
case '台湾居民通行证':
case '台湾居民来往大陆通行证':
that.saleInsuredInfo.idType = '6'
break
case '其他':
that.saleInsuredInfo.idType = '7'
// case '其他':
// that.saleInsuredInfo.idType = '7'
// break
case '外国人永久居留身份证':
that.saleInsuredInfo.idType = '8'
break
case '港澳台居民居住证':
that.saleInsuredInfo.idType = '9'
break
}
if (this.isWeixin) {

View File

@@ -77,7 +77,6 @@ export default {
let that = this
EWebBridge.webCallAppInJs('id_auth', {
front: '1', //1是正面0是反面。
scan: '1' //1是扫描。0是相册。
}).then(data => {
if (JSON.parse(data).state == '1') {

View File

@@ -40,6 +40,7 @@ export default {
}, 200)
},
tokens() {
// 507e5ff426364e95b22cd4c1e22f427f
window.localStorage.setItem('token', this.$route.query.token)
// localStorage.setItem('token',this.$router.query.token)
this.$router.back(-1)

View File

@@ -7,8 +7,8 @@
<van-cell title="保单号" :value="OrderInfoDTO.contNo" />
<van-cell title="生效日期" :value="OrderInfoDTO.cvaliDate" />
<van-cell title="保单状态" :value="OrderInfoDTO.contState" />
<!-- <van-cell title="签收状态" :value="OrderInfoDTO.orderStatus" /> -->
<van-cell v-if="OrderInfoDTO.receiptDate != null && OrderInfoDTO.receiptDate != ''" title="签收日期" :value="OrderInfoDTO.receiptDate" />
<!-- <van-cell title="签收状态" :value="OrderInfoDTO.orderStatusText" /> -->
<!-- <van-cell v-if="OrderInfoDTO.receiptDate != null && OrderInfoDTO.receiptDate != ''" title="签收日期" :value="OrderInfoDTO.receiptDate" /> -->
</van-cell-group>
</van-collapse-item>
@@ -16,8 +16,8 @@
<van-collapse-item title="投保人信息" name="2" class="detail-title pb10">
<van-cell-group>
<van-cell title="投保人" :value="appntDTO.name" />
<van-cell title="性别" :value="appntDTO.sex" />
<van-cell title="证件类型" :value="appntDTO.idType" />
<van-cell title="性别" :value="appntDTO.sexText" />
<van-cell title="证件类型" :value="appntDTO.idTypeText" />
<van-cell title="证件号码" :value="appntDTO.idNo" />
<van-cell title="联系电话" :value="appntDTO.mobile" />
</van-cell-group>
@@ -29,23 +29,23 @@
<van-cell-group>
<!-- <van-cell title="是投保人的" :value="item.relationToAppnt" /> -->
<van-cell title="姓名" :value="item.name" />
<van-cell title="性别" :value="item.sex" />
<van-cell title="证件类型" :value="item.idType" />
<van-cell title="性别" :value="item.sexText" />
<van-cell title="证件类型" :value="item.idTypeText" />
<van-cell title="证件号码" :value="item.idNo" />
<van-cell title="联系电话" :value="item.mobile" />
</van-cell-group>
</van-collapse-item>
<div v-for="(itm, i) in item.bnfDTOs" :key="itm.name" class="pb10">
<div v-for="(itm, i) in item.bnfDTOs" :key="i" class="pb10">
<!-- 受益人信息 -->
<van-collapse-item title="受益人信息" :name="i + 81">
<van-cell-group>
<van-cell title="受益人" :value="itm.bnfType" />
<div v-if="itm.bnfType == '指定受益人'">
<van-cell title="受益人" :value="itm.bnfTypeText" />
<div v-if="itm.bnfType == '1'">
<van-cell title="姓名" :value="itm.name" />
<van-cell title="性别" :value="itm.sex" />
<van-cell title="是被保人的" :value="itm.relationToInsured" />
<van-cell title="受益比例" :value="`${itm.bnfLot}%`" v-if="itm.bnfLot != null" />
<van-cell title="证件类型" :value="itm.idType" />
<van-cell title="性别" :value="itm.sexText" />
<!-- <van-cell title="是被保人的" :value="itm.relationText" /> -->
<van-cell title="受益比例" :value="`${itm.bnfLot * 100}%`" v-if="itm.bnfLot != null" />
<van-cell title="证件类型" :value="itm.idTypeText" />
<van-cell title="证件号码" :value="itm.idNo" />
</div>
</van-cell-group>
@@ -77,17 +77,16 @@
</div>
</van-collapse>
<!-- 2019-09-27 版上线不含回执签收 marked by panglizong on 2019-09-26 -->
<div class="bottom-btn bg-white" style="display: none">
<van-button type="danger" size="large" @click="next" :disabled="OrderInfoDTO.orderStatus == '已签收' ? true : false" v-no-more-click="1000"
>回执签收</van-button
>
</div>
<!-- <div class="bottom-btn bg-white" >
<van-button type="danger" size="large" @click="next" v-if="OrderInfoDTO.orderStatus == '0'" v-no-more-click="1000">回执签收</van-button>
</div> -->
</div>
</template>
<script>
import { Collapse, CollapseItem, Cell, CellGroup, Button } from 'vant'
import { getPolicyDetail, getReceiptSign } from '@/api/ebiz/serve/serve'
import dataDictionary from '@/assets/js/utils/data-dictionary' //根据数据字典进行页面展示
import { formatAllRisk } from '@/assets/js/utils/formatRiskList'
export default {
data() {
@@ -107,9 +106,8 @@ export default {
}
},
created() {
let that = this
// 获取保单详情
that.getPolicyDetail()
this.getPolicyDetail()
},
components: {
[Collapse.name]: Collapse,
@@ -124,209 +122,83 @@ export default {
let that = this
let data = {
policyNo: window.localStorage.getItem('policyNo')
// policyNo: '900080000000745'
}
getPolicyDetail(data).then(res => {
console.log(res)
if (res.result == '0') {
let appntDTO = res.content.appntDTO
let orderInfoDTO = res.content.orderInfoDTO
// 保单信息
if (res.content.orderInfoDTO.orderStatus == '0') {
res.content.orderInfoDTO.orderStatus = '未签收'
if (orderInfoDTO.orderStatus == '0') {
orderInfoDTO.orderStatusText = '未签收'
} else if (orderInfoDTO.orderStatus == '1') {
orderInfoDTO.orderStatusText = '已签收'
} else {
res.content.orderInfoDTO.orderStatus = '已签收'
orderInfoDTO.orderStatusText = ''
}
if (res.content.orderInfoDTO.contState == '0') {
res.content.orderInfoDTO.contState = '无效'
} else if (res.content.orderInfoDTO.contState == '1') {
res.content.orderInfoDTO.contState = '有效'
}
that.OrderInfoDTO = res.content.orderInfoDTO
that.appntDTO = res.content.appntDTO
// window.localStorage.getItem('saleInsuredInfo', JSON.stringify(res.content.appntDTO))
that.OrderInfoDTO = orderInfoDTO
// 投保人信息
if (res.content.appntDTO.sex == '0') {
res.content.appntDTO.sex = '男'
} else if (res.content.appntDTO.sex == '1') {
res.content.appntDTO.sex = '女'
} else {
res.content.appntDTO.sex = '不详'
}
switch (res.content.appntDTO.idType) {
case '1':
res.content.appntDTO.idType = '身份证'
break
case '2':
res.content.appntDTO.idType = '户口本'
break
case '3':
res.content.appntDTO.idType = '出生证明'
break
case '4':
res.content.appntDTO.idType = '护照'
break
case '5':
res.content.appntDTO.idType = '港澳居民通行证'
break
case '6':
res.content.appntDTO.idType = '台湾居民通行证'
break
case '7':
res.content.appntDTO.idType = '其他'
break
}
that.appntDTO = res.content.appntDTO
res.content.insuredDTOs.map(item => {
item.riskDTOLst.map(it => {
Number(it.payIntv)
switch (it.payIntv) {
this.filterData(dataDictionary.sex, 'sex', appntDTO)
this.filterData(dataDictionary.idType, 'idType', appntDTO)
that.appntDTO = appntDTO
// 被保人信息
res.content.insuredDTOs.map(insured => {
insured.riskDTOLst.map(risk => {
Number(risk.payIntv)
switch (risk.payIntv) {
case -1:
it.payIntv = '不定期交'
risk.payIntv = '不定期交'
break
case 0:
it.payIntv = '一次交清'
risk.payIntv = '一次交清'
break
case 1:
it.payIntv = '月交'
risk.payIntv = '月交'
break
case 3:
it.payIntv = '季交'
risk.payIntv = '季交'
break
case 6:
it.payIntv = '半年交'
risk.payIntv = '半年交'
break
case 12:
it.payIntv = '年交'
risk.payIntv = '年交'
break
}
if (it.insuYear == '70') {
it.insuYear = '至70周岁'
} else if (it.insuYear == '75') {
it.insuYear = '至75周岁'
} else if (it.insuYear == '80') {
it.insuYear = '至80周岁'
} else if (it.insuYear == '106') {
it.insuYear = '终身'
if (risk.insuYear == '70') {
risk.insuYear = '至70周岁'
} else if (risk.insuYear == '75') {
risk.insuYear = '至75周岁'
} else if (risk.insuYear == '80') {
risk.insuYear = '至80周岁'
} else if (risk.insuYear == '106') {
risk.insuYear = '终身'
} else {
it.insuYear = `${it.insuYear}`
risk.insuYear = `${risk.insuYear}`
}
})
})
// 被保人信息
res.content.insuredDTOs.map(item => {
if (item.sex == '0') {
item.sex = '男'
} else if (item.sex == '1') {
item.sex = '女'
} else {
item.sex = '不详'
}
switch (item.idType) {
case '1':
item.idType = '身份证'
break
case '2':
item.idType = '户口本'
break
case '3':
item.idType = '出生证明'
break
case '4':
item.idType = '护照'
break
case '5':
item.idType = '港澳居民通行证'
break
case '6':
item.idType = '台湾居民通行证'
break
case '7':
item.idType = '其他'
break
}
switch (item.relationToAppnt) {
case '1':
item.relationToAppnt = '本人'
break
case '2':
item.relationToAppnt = '配偶'
break
case '3':
item.relationToAppnt = '父母'
break
case '4':
item.relationToAppnt = '子女'
break
case '5':
item.relationToAppnt = '其他'
break
}
item.bnfDTOs.map(it => {
if (it.bnfType == '1') {
it.bnfType = '指定受益人'
} else if (it.bnfType == '0') {
it.bnfType = '法定受益人'
}
if (it.sex == '0') {
it.sex = '男'
} else if (it.sex == '1') {
it.sex = '女'
} else {
it.sex = '不详'
}
switch (it.idType) {
case '1':
it.idType = '身份证'
break
case '2':
it.idType = '户口本'
break
case '3':
it.idType = '出生证明'
break
case '4':
it.idType = '护照'
break
case '5':
it.idType = '港澳居民通行证'
break
case '6':
it.idType = '台湾居民通行证'
break
case '7':
it.idType = '其他'
break
}
switch (it.relationToInsured) {
case '1':
it.relationToInsured = '本人'
break
case '2':
it.relationToInsured = '配偶'
break
case '3':
it.relationToInsured = '父母'
break
case '4':
it.relationToInsured = '子女'
break
case '5':
it.relationToInsured = '其他'
break
}
this.filterData(dataDictionary.sex, 'sex', insured)
this.filterData(dataDictionary.idType, 'idType', insured)
this.filterData(dataDictionary.relationToAppnt, 'relation', insured)
insured.bnfDTOs.map(bnf => {
this.filterData(dataDictionary.bnfType, 'bnfType', bnf)
this.filterData(dataDictionary.sex, 'sex', bnf)
this.filterData(dataDictionary.idType, 'idType', bnf)
this.filterData(dataDictionary.relationToAppnt, 'relation', bnf)
})
})
that.insuredDTOs = res.content.insuredDTOs
// 格式化
// this.insuredDTOs[0].riskDTOLst
this.list = formatAllRisk(this.insuredDTOs[0].riskDTOLst)
} else {
this.$toast(res.resultMessage)
// EWebBridge.webCallAppInJs('bridge', {
// flag: 'webview_toast',
// extra: { content: res.resultMessage }
// })
}
})
},
//根据数据字典 将后端返回的数据渲染到页面中
filterData(dictionary, key, pageData) {
dictionary.forEach(item => {
if (pageData[key] == item.id) {
pageData[key + 'Text'] = item.text //渲染页面使用的字段
}
})
},
@@ -334,33 +206,21 @@ export default {
next() {
this.$toast.loading({
duration: 0, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '加载中……'
})
let data = {
contNo: window.localStorage.getItem('policyNo')
// contNo: '900080000000656'
}
getReceiptSign(data).then(res => {
console.log(res)
if (res.result == '0') {
this.$toast.clear()
window.localStorage.setItem('insurance-policyUrl', res.signUrl)
window.localStorage.setItem('detailJump', '1')
console.log(this.OrderInfoDTO)
window.localStorage.setItem('contNo', this.OrderInfoDTO.contNo)
// window.localStorage.setItem('contNo', '801110000002296')
window.localStorage.setItem('orderNo', this.OrderInfoDTO.orderNo)
window.localStorage.setItem('orderStatus', this.OrderInfoDTO.orderStatus)
// window.localStorage.setItem('orderNo', '')
// window.localStorage.setItem('')
// /sale/signatureOfElectronic
window.localStorage.setItem('saleInsuredInfo', JSON.stringify(this.appntDTO))
this.$jump({
flag: 'h5',

View File

@@ -57,8 +57,9 @@
</div>
</div>
</div>
<div v-else class="list flex justify-content-c align-items-c">
<div v-else class="list text-center">
<img :src="src" />
<div class="mt20" v-if="errMessage != ''">{{ errMessage }}</div>
</div>
</div>
</template>
@@ -76,13 +77,13 @@ export default {
// 无数据时候显示
isShow: false,
// 图片路径
src: this.$assetsUrl + 'images/background.png'
src: this.$assetsUrl + 'images/background.png',
errMessage: ''
}
},
created() {
let that = this
// 获取表单列表
that.getpolicyListAgent()
this.getpolicyListAgent()
},
mounted() {
if (this.isShow == true) {
@@ -109,21 +110,17 @@ export default {
methods: {
// 获取保单列表
getpolicyListAgent() {
let that = this
let data = {}
getpolicyListAgent(data).then(res => {
// console.log(res)
//orderStatus 1 承保 0 核保 4终止
if (res.result == '0') {
res.policyListDTOList.map(item => {
if (item.orderStatus == '1') {
item.orderStatus = '有效'
} else {
item.orderStatus = '无效'
}
})
that.policyListDTOList = res.policyListDTOList
//过滤掉 核保状态的数据 只展示承保和终止的保单
this.policyListDTOList = res.policyListDTOList
// this.policyListDTOList = res.policyListDTOList.filter(item => item.orderStatus != '0')
console.log(this.policyListDTOList)
} else {
this.isShow = true
this.errMessage = res.resultMessage
}
})
},

View File

@@ -40,11 +40,11 @@
<van-col span="12" class="text-right fwb" style="color: red">{{ `${item.amount}.00` }}</van-col>
</van-row>
<div class="pt15" style="border-top:1px solid #dadada">
<div>
<div class="flex justify-content-s">
<div class="w120 inline-b">
<van-tag plain color="#999999">保单生效日期</van-tag>
</div>
<span class="fs14 c-gray-dark">{{ item.effectDate }}</span>
<span class="fs14 c-gray-dark">{{ item.cvaliDate }}</span>
</div>
</div>
<div class="mt10 flex justify-content-fe">
@@ -95,11 +95,11 @@
<van-col span="12" class="text-right fwb" style="color: red">{{ `${item.amount}.00` }}</van-col>
</van-row>
<div class="pt15" style="border-top:1px solid #dadada">
<div>
<div class="flex justify-content-s">
<div class="w120 inline-b">
<van-tag plain color="#999999">保单生效日期</van-tag>
</div>
<span class="fs14 c-gray-dark">{{ item.effectDate }}</span>
<span class="fs14 c-gray-dark">{{ item.cvaliDate }}</span>
</div>
</div>