This commit is contained in:
邓晓坤
2019-09-23 10:33:53 +08:00
35 changed files with 7843 additions and 2807 deletions

View File

@@ -1,8 +1,8 @@
{
"name": "ebiz-h5",
"version": "1.0.0",
"description": "鼎诚人寿",
"author": "wangfangbo <wang.fangbo@ebiz-fooge.com>",
"description": "国富人寿",
"author": "",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

View File

@@ -147,27 +147,33 @@ export default {
},
{
id: 2,
text: '户口本'
text: '户口本',
disabled: true
},
{
id: 3,
text: '出生证明'
text: '出生证明',
disabled: true
},
{
id: 4,
text: '护照'
text: '护照',
disabled: true
},
{
id: 5,
text: '港澳居民通行证'
text: '港澳居民通行证',
disabled: true
},
{
id: 6,
text: '台湾居民通行证'
text: '台湾居民通行证',
disabled: true
},
{
id: 7,
text: '其他'
text: '其他',
disabled: true
}
],
//投保人证件类型
@@ -188,19 +194,19 @@ export default {
},
{
id: 4,
text: '护照', disabled: true
text: '护照'
},
{
id: 5,
text: '港澳居民通行证', disabled: true
text: '港澳居民通行证'
},
{
id: 6,
text: '台湾居民通行证', disabled: true
text: '台湾居民通行证'
},
{
id: 7,
text: '其他', disabled: true
text: '其他'
}
],
//出生证明
@@ -211,7 +217,8 @@ export default {
},
{
id: 2,
text: '户口本', disabled: true
text: '户口本',
disabled: true
},
{
id: 3,
@@ -220,19 +227,23 @@ export default {
},
{
id: 4,
text: '护照', disabled: true
text: '护照',
disabled: true
},
{
id: 5,
text: '港澳居民通行证', disabled: true
text: '港澳居民通行证',
disabled: true
},
{
id: 6,
text: '台湾居民通行证', disabled: true
text: '台湾居民通行证',
disabled: true
},
{
id: 7,
text: '其他', disabled: true
text: '其他',
disabled: true
}
],
//投保人/被保人关系
@@ -686,22 +697,17 @@ export default {
text: '自核不通过待转人核'
}
],
// 产品编码 这个国富改改G
// 产品编码
riskType: [
{
shortName: '鼎诚终身重疾',
name: '鼎诚鼎康保终身重大疾病保险',
code: 'DCRS_M0001'
shortName: '重疾',
name: '国富人寿八桂无忧重大疾病保险B款',
code: 'GFRSPRO_M0001'
},
{
shortName: '鼎诚定期重疾A',
name: '鼎诚鼎康保定期重大疾病保险A款',
code: 'DCRS_M0002'
},
{
shortName: '鼎诚定期重疾B',
name: '鼎诚鼎康保定期重大疾病保险B款',
code: 'DCRS_M0003'
shortName: '年金险',
name: '国富人寿国富民鑫年金保险',
code: 'GFRSPRO_M0002'
}
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -24,7 +24,7 @@
@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>
<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
@@ -88,9 +88,18 @@
placeholder="请输入"
v-validate="'required|onlyNumber|stature'"
clearable
@blur="checkStature(userInfo.stature)"
maxlength="5"
/>
<van-field v-model="userInfo.avoirdupois" label="体重(kg)" name="体重" placeholder="请输入" v-validate="'required|onlyNumber|avoirdupois'" clearable />
<van-field
v-model="userInfo.avoirdupois"
label="体重(kg)"
name="体重"
placeholder="请输入"
v-validate="'required|onlyNumber|avoirdupois'"
clearable
@blur="checkAvoirdupois(userInfo.avoirdupois)"
/>
</van-cell-group>
<van-radio-group :border="false" v-model="userInfo.addressStatus" v-validate="'required'" label="设置为联系地址" name="设置为联系地址">
<!-- 工作信息 -->
@@ -178,7 +187,7 @@
<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="11" clearable />
<van-field v-model="userInfo.companyPhone" label="单位电话" name="单位电话" placeholder="非必填" maxlength="13" clearable />
</van-cell-group>
<!-- 家庭信息 -->
<van-cell-group>
@@ -218,7 +227,7 @@
<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="11" 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>
@@ -259,6 +268,8 @@ import getAreaName from '@/assets/js/utils/get-area-name'
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import idNoCheck from '@/assets/js/utils/idNoCheck'
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
import { idToData } from './js/verification'
import { selectComp } from './js/methods'
export default {
name: 'insuredInfo',
@@ -322,9 +333,9 @@ export default {
userInfo: {
name: '', //投保人姓名
sex: '0', //投保人性别
nativeplace: 'CHN', //国家地区
nativeplace: '1', //国家地区
birthday: '',
idType: '0', //证件类型
idType: '1', //证件类型
idNo: '', //证件号码
certificateValidate: '', //证件起始日期
certiexpiredate: '', //证件到期时间
@@ -391,9 +402,9 @@ export default {
//设为联系地址
this.userInfo.addressStatus = '0'
//证件类型
this.userInfo.idType = '0'
this.userInfo.idType = '1'
//国家/地区
this.userInfo.nativeplace = 'CHN'
this.userInfo.nativeplace = '1'
this.$utils.intLocalStorage(res)
}
})
@@ -409,44 +420,44 @@ 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, '身份证扫描']
}
// 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)
},
closeBtn() {
// 筛选按钮的显示
setTimeout(() => {
this.$jump({
flag: 'webview_right_button',
extra: {
btns: [
{
img: this.$assetsUrl + 'images/del-close.png',
route: { flag: '', extra: {} }
}
]
}
})
}, 500)
// setTimeout(() => {
// this.$jump({
// flag: 'navigation',
// extra: {
// title,
// hiddenLeft: '1'
// }
// })
// this.closeBtn()
// }, 400)
// let that = this
selectComp(this, index, '1')
},
// closeBtn() {
// // 筛选按钮的显示
// this.$jump({
// flag: 'webview_right_button',
// extra: {
// btns: [
// {
// img: this.$assetsUrl + 'images/del-close.png',
// route: { flag: '', extra: {} }
// }
// ]
// }
// })
// },
appCallBack() {
// 筛选按钮的点击事件
this.$jump({
@@ -500,7 +511,6 @@ export default {
this.popupShow = false
if (this.pickerType == '1') {
this.userInfo.nativeplace = value.id
console.log('--投保人-国籍选择:', value.id)
} else if (this.pickerType == '2') {
//身份证以外的证件类型可以使用长期
if (value.id != '1') {
@@ -511,14 +521,12 @@ export default {
}
this.userInfo.idType = value.id
} else if (this.pickerType == '3') {
console.log('----degree:', value)
this.userInfo.degree = value.id
} else if (this.pickerType == '4') {
this.userInfo.socialSecurity = value.id
} else if (this.pickerType == '5') {
this.userInfo.taxResidentId = value.id
} else if (this.pickerType == '6') {
console.log('-----marriage', value)
this.userInfo.marriage = value.id
} else if (this.pickerType == '7') {
this.userInfo.jobStatus = value.id
@@ -541,7 +549,7 @@ export default {
// 计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
}
break
case '1':
@@ -670,10 +678,10 @@ export default {
// 计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
},
nextStep() {
console.log('--提交前投保人::::', JSON.stringify(this.userInfo))
// console.log(this.userInfo.idType)
//表单校验, 成功跳转
this.$validator.validate().then(valid => {
@@ -686,7 +694,7 @@ export default {
// }
//如果证件类型是身份证
if (this.userInfo.idType == '0') {
if (this.userInfo.idType == '1') {
console.log('证件类型是身份证')
//校验性别是否与身份证号码位相符
if (this.userInfo.idNo.length == '15') {
@@ -781,8 +789,8 @@ export default {
//如果是已婚
if ((this.userInfo.sex == '0' && age < 22) || (this.userInfo.sex == '1' && age < 20)) {
if (this.userInfo.marriage == '0') {
return this.$toast('年龄与婚姻状况不符')
if (this.userInfo.marriage != '2') {
return this.$toast('投保人不符合国家婚姻法定年龄')
}
}
// if (this.userInfo.marriage == '1') {
@@ -983,6 +991,45 @@ export default {
hiddenRight: '1'
}
})
},
//校验身高
checkStature(val) {
console.log(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('体重输入有误')
}
},
getRelatedData(val) {
if (this.userInfo.idType != '1') {
return
}
//如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
return this.$toast(idToData(val).text)
}
this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = idToData(val).age < 45
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
}
},
beforeDestroy() {

View File

@@ -44,6 +44,7 @@
clearable
:readonly="isAppnt"
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-->
@@ -58,7 +59,7 @@
:flag="true"
@confirm="onDateConfirm($event, '0')"
ref="certificateValidate"
:readonly="isAppnt"
:readonly="isAppnt || idLimit"
></FieldDatePicter>
<FieldDatePicter
:v-validate="{ required: certiexpiredateRequired }"
@@ -69,7 +70,7 @@
@confirm="onDateConfirm($event, '1')"
ref="certiexpiredate"
:flag="certiexpiredateShow"
:readonly="isAppnt"
: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>
@@ -142,6 +143,7 @@
clearable
maxlength="5"
:readonly="isAppnt"
@blur="checkStature(userInfo.stature)"
/>
<van-field
v-model="userInfo.avoirdupois"
@@ -151,6 +153,7 @@
v-validate="'required|onlyNumber'"
clearable
:readonly="isAppnt"
@blur="checkAvoirdupois(userInfo.avoirdupois)"
/>
</van-cell-group>
<!-- 工作信息 -->
@@ -271,7 +274,7 @@
clearable
:readonly="isAppnt"
/>
<van-field v-model="userInfo.companyPhone" label="单位电话" name="单位电话" placeholder="非必填" maxlength="11" 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">
@@ -326,7 +329,7 @@
clearable
:readonly="isAppnt"
/>
<van-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="11" 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>
@@ -368,6 +371,8 @@ import getAreaName from '@/assets/js/utils/get-area-name'
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import idNoCheck from '@/assets/js/utils/idNoCheck'
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
import { idToData } from './js/verification'
import { selectComp } from './js/methods'
export default {
name: 'insuredInfo',
@@ -408,7 +413,7 @@ export default {
value: '1'
}
],
currentTime: beforeDate.getBeforeDays(28),
currentTime: beforeDate.getBeforeDays(27),
fromCustomer: false, //是否从客户列表拉取的数据
codeDisabled: false, //获取验证码是否禁用
countDown: 60, //倒计时
@@ -427,9 +432,9 @@ export default {
userInfo: {
name: '',
sex: '0',
nativeplace: 'CHN', //国家地区
nativeplace: '1', //国家地区
birthday: '',
idType: '0', //证件类型
idType: '1', //证件类型
idNo: '', //证件号码
certificateValidate: '', //证件起始日期
certiexpiredate: '', //证件到期时间
@@ -475,13 +480,13 @@ export default {
householdCity: '', //户籍市
addressStatus: '' //是否是联系地址
},
tempUserInfo: {}, //临时变量用来置空userinfo
areaList: areaList,
currentPopupIndex: '',
customerShowPicker: false,
occupationShowPicker: false,
isAppnt: false, // 是否投被同人
appntMarriage: '' //投保人婚姻状况
appntMarriage: '', //投保人婚姻状况
idLimit: false //证件起止日期是否只读
}
},
created() {
@@ -491,7 +496,7 @@ export default {
getOrderDetail({ orderNo: localStorage.orderNo }).then(res => {
if (res.result == 0) {
//投被同人
if (res.orderDTO.insuredDTOs[0] && res.orderDTO.insuredDTOs[0].relationToAppnt == '1') {
if (res.orderDTO.insuredDTOs.length && res.orderDTO.insuredDTOs[0].relationToAppnt == '1') {
this.$nextTick(() => {
this.isAppnt = true
//获取投保人信息
@@ -520,13 +525,13 @@ export default {
// this.userInfo.effectiveDateType = insuredInfo.effectiveDateType == 'false' ? false : true
//数据不是从用户列表拉取
this.fromCustomer = false
this.userInfo.relationToAppnt = '00'
this.userInfo.relationToAppnt = '1'
//长期判断
if (this.userInfo.idType == '0') {
if (this.userInfo.idType == '1') {
// 计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
}
})
}
@@ -544,9 +549,9 @@ export default {
//设为联系地址
this.userInfo.addressStatus = '0'
//证件类型
this.userInfo.idType = '0'
this.userInfo.idType = '1'
//国家/地区
this.userInfo.nativeplace = 'CHN'
this.userInfo.nativeplace = '1'
if (this.$route.query.isShow) {
//户籍
if (insuredPersonInfo.householdProvince.length) {
@@ -593,7 +598,6 @@ export default {
},
mounted() {
window.appCallBack = this.appCallBack
this.tempUserInfo = this.userInfo
// document.body.style.backgroundColor = '#F5F5F5'
},
methods: {
@@ -606,27 +610,29 @@ export default {
if (this.isAppnt) {
return
}
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 = 'false'
;[this.isScan, title] = [true, '身份证扫描']
}
// 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 = 'false'
// ;[this.isScan, title] = [true, '身份证扫描']
// }
setTimeout(() => {
this.$jump({
flag: 'navigation',
extra: {
title,
hiddenLeft: '1'
}
})
this.closeBtn()
}, 400)
// setTimeout(() => {
// this.$jump({
// flag: 'navigation',
// extra: {
// title,
// hiddenLeft: '1'
// }
// })
// this.closeBtn()
// }, 400)
// let that = this
selectComp(this, index, '2')
},
chooseOccupation() {
this.$jump({
@@ -638,23 +644,20 @@ export default {
})
this.occupationShowPicker = false
},
closeBtn() {
// 筛选按钮的显示
setTimeout(()=> {
this.$jump({
flag: 'webview_right_button',
extra: {
btns: [
{
img: this.$assetsUrl + 'images/del-close.png',
route: { flag: '', extra: {} }
}
]
}
})
}, 500)
},
// closeBtn() {
// // 筛选按钮的显示
// this.$jump({
// flag: 'webview_right_button',
// extra: {
// btns: [
// {
// img: this.$assetsUrl + 'images/del-close.png',
// route: { flag: '', extra: {} }
// }
// ]
// }
// })
// },
//弹框选择
toSelect(pickerType, valueKey) {
// 投被同人不允许编辑
@@ -689,22 +692,31 @@ export default {
if (this.pickerType == '1') {
this.userInfo.nativeplace = value.id
} else if (this.pickerType == '2') {
this.idLimit = false
this.userInfo.idNo = this.userInfo.certificateValidate = this.userInfo.certiexpiredate = this.userInfo.birthday = ''
this.userInfo.sex = '0'
this.effectiveDateTypeAble = false
console.log(value.id)
//身份证以外的证件类型可以使用长期
if (value.id != '1') {
this.effectiveDateTypeAble = false
} else {
if (value.id == '1') {
console.log('123')
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
this.effectiveDateTypeAble = !(age >= 45)
this.effectiveDateTypeAble = age <= 45
} else if (value.id == 2 || value.id == 3) {
this.effectiveDateTypeAble = true
} else {
this.effectiveDateTypeAble = false
}
//出生证明返显证件截止日期
// //出生证明返显证件截止日期
// if (value.id == 3 && this.userInfo.birthday != '') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.certiexpiredateShow = false
// }
//户口本返显证件截止日期
// if (value.id == 2 || value.id == 3) {
// this.effectiveDateTypeAble = true
// }
// //户口本返显证件截止日期
// else if (value.id == 2 && this.userInfo.birthday != '') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1986-01-01')
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
@@ -723,7 +735,7 @@ export default {
this.userInfo.marriage = value.id
} else if (this.pickerType == '7') {
//如果关系是本人
if (value.id == '00') {
if (value.id == 1) {
//获取订单详情
getOrderDetail({ orderNo: localStorage.orderNo }).then(res => {
if (res.result == 0) {
@@ -768,7 +780,7 @@ export default {
// 计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
}
} else {
this.$toast(res.resultMessage)
@@ -788,6 +800,8 @@ export default {
this.userInfo[key] = ''
}
}
this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = false
this.areaName = this.homeName = this.census = ''
this.userInfo.relationToAppnt = value.id
}
@@ -812,7 +826,7 @@ export default {
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
}
break
case '1':
@@ -831,6 +845,7 @@ export default {
this.$refs.certiexpiredate.date = ''
return this.$toast('您的证件已过期')
}
//不同证件类型的判断
// if (this.userInfo.idType) {
// //获取年龄
@@ -868,8 +883,16 @@ export default {
//长期判断
if (this.userInfo.idType == '1') {
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
this.effectiveDateTypeAble = !(age >= 45)
this.effectiveDateTypeAble = age <= 45
}
//出生证有效期
// if (this.userInfo.idType == '3') {
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(val) > Date.parse('1973-01-01')) {
// this.userInfo.birthday = ''
// this.$refs.birthday.date = ''
// return this.$toast('出生证有效期或出生日期有误')
// }
// }
}
break
}
@@ -955,13 +978,12 @@ export default {
//计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用
this.effectiveDateTypeAble = age >= 16 && age <= 45
this.effectiveDateTypeAble = age <= 45
//数据是否从客户列表拉取
this.fromCustomer = true
},
//下一步
nextStep() {
console.log('--投保--下一步--被保人:', JSON.stringify(this.userInfo))
this.$validator.validate().then(valid => {
if (true === valid) {
// 计算年龄
@@ -969,8 +991,8 @@ export default {
//投被保人关系是配偶
if (this.userInfo.relationToAppnt == '2') {
//投保人不是已婚
if (this.appntMarriage != '1') {
//投保人或者被保人不是已婚
if (this.appntMarriage != '1' || this.userInfo.marriage != '1') {
return this.$toast('投被保人婚姻状况有误')
}
let insuredSex = this.userInfo.sex
@@ -990,7 +1012,7 @@ export default {
// }
//如果证件类型是身份证
if (this.userInfo.idType == '0') {
if (this.userInfo.idType == '1') {
//校验性别是否与身份证号码位相符
if (this.userInfo.idNo.length == '15') {
//15位身份证第15位是性别位, 奇男偶女
@@ -1058,14 +1080,14 @@ export default {
}
}
//证件类型是户口本
} else if (this.userInfo.idType == '1') {
} else if (this.userInfo.idType == '2') {
if (age >= 16) {
return this.$toast('客户年龄在16周岁及以上不能使用户口本作为有效证件')
} else if (this.userInfo.idNo.length != 18) {
return this.$toast('户口本的证件号码长度应等于18位')
}
//证件类型是出生证明
} else if (this.userInfo.idType == '2') {
} else if (this.userInfo.idType == '3') {
if (age >= 3) {
return this.$toast('客户年龄在3周岁及以上不能使用出生证作为有效证件')
} else if (this.userInfo.idNo.length < 3) {
@@ -1094,7 +1116,7 @@ export default {
//如果是已婚
if ((this.userInfo.sex == '0' && age < 22) || (this.userInfo.sex == '1' && age < 20)) {
if (this.userInfo.marriage != '2') {
return this.$toast('年龄与婚姻状况不符')
return this.$toast('被保人不符合国家婚姻法定年龄')
}
}
// this.save()
@@ -1126,7 +1148,7 @@ export default {
className: 'dialog-delete',
title: '提示',
message: '当前信息已经发生改变,有可能影响险种费率,是否确认修改并清除险种信息?',
cancelButtonColor: '#E9332E',
cancelButtonColor: '#4FC6B3',
confirmButtonColor: '#FFFFFF'
})
.then(() => {
@@ -1300,7 +1322,7 @@ export default {
break
}
},
//校验身高
//校验身高
checkStature(val) {
console.log(val)
if (val.trim().length == 0) {
@@ -1356,6 +1378,7 @@ export default {
} else {
this.idLimit = false
}
}
},
beforeDestroy() {
//清理计时器
@@ -1374,7 +1397,7 @@ export default {
// }
// }
// }
}}
}
</script>
<style lang="scss" scoped>
.insured-person-container {

View File

@@ -65,6 +65,8 @@ export default {
this.underWriteData = JSON.parse(window.localStorage.getItem('underWriteData'))
this.srcImg = this.$assetsUrl + `images/bank/bank_${JSON.parse(window.localStorage.getItem('underWriteData')).bankCode}.png`
}
// 取支付参数
this.getPayParam()
},
methods: {
// 点击支付
@@ -74,6 +76,8 @@ export default {
orderNo: window.localStorage.getItem('orderNo')
}
acceptInsurance(data).then(res => {
console.log('----取支付参数结果:', JSON.stringify(res))
// res = {'result':'0','resultMessage':'','content':null,'prtNo':'8186270000000008','payStatus':'4','amnt':'63700.00','appntName':'投保人','message':null,'brPayReturnData':{'result':'','resultMessage':'','content':null,'businessId':'1569125393518','businessNo':'8186270000000008','tradeSubType':'COMM','businessType':'SALE','systemType':'GF','money':63700,'businessSubType':'XDCB','thirdType':'0002','thirdName':null,'bankCode':'ABC','epayOrderNo':'1909221209536259999900','companyAccount':null,'tradeState':'TRADING','standardCode':'DEALING','standardMsg':null,'thirdOrderNo':null,'respRemark':null,'tradeTime':'2019-09-22T04:09:53.518+0000','description':'','version':'1','sourceNotecode':'8186270000000008','payType':'MIT01','expireDate':'20191010101010','transSeq':'20190922120953782','transSource':'MIT','applyEntity':'11860000','paymentCode':'8186270000000008','transDate':'20190922','rdSeq':'1909221209536259999900','settleMode':null,'cur':'CNY','transTime':'120953','ourAmount':63700,'fixUser':'1','insurer':'投保人','certType':'0','certNum':'110101199009210011','oppBank':'ABC','oppAct':'6228481200290317812','oppActName':'投保人','cellPhone':null,'purpose':null,'memo':null,'returnURL':'http://139.199.50.151/#/sale/payResult','notifyURL':'http://139.199.50.151:7000/api/v1/epay/epay/payResult','s3Sign':'e3f0581ec6b751337e8eca360a0746bc'}}
if (res.result == '0') {
// 1成 4支付中 2支付失败 8转批扣
@@ -110,6 +114,31 @@ export default {
})
},
// 获取支付信息
underWrite() {
let data = {
platform: 'app',
type: '1',
orderDTO: {
orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo')
}
}
}
},
// 取消支付
cancel() {
this.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/sale/list',
backToFirst: '1'
},
routerInfo: {
path: '/sale/list'
}
})
},
// 获取支付信息
underWrite() {
let data = {
platform: 'app',

View File

@@ -476,11 +476,14 @@ export default {
}
})
} else {
EWebBridge.webCallAppInJs('face_auth', {
//身份证号码
number: that.saleInsuredPersonInfo.idNo,
//姓名
name: that.saleInsuredPersonInfo.name
// 跳过人脸识别
// EWebBridge.webCallAppInJs('face_auth', {
// number: that.saleInsuredInfo.idNo, //身份证号码
// name: that.saleInsuredInfo.name //姓名
// })
new Promise(resolve => {
console.log('--跳过人脸识别--返回识别成功')
resolve(JSON.stringify({ state: '1' }))
}).then(data => {
if (JSON.parse(data).state == '1') {
if (that.insuredSign.readStatus == '0') {
@@ -773,7 +776,10 @@ export default {
color: #4a90e2;
}
.start {
color: #E9332E;
color: #4fc6b3;
}
.tips {
line-height: 30px;
}
.tips {
line-height: 30px;

View File

@@ -37,7 +37,6 @@ export default {
// }
},
goToTest() {
// 国富改 国富改 国富改 国富改 国富改
EWebBridge.webCallAppInJs('download', {
url:
'http://116.62.236.168:7012/updown/returnDirectStream?imgPath=Ra4LpmZv2h6FrwZPS48QIETiI2AcWWLx6RavVjoAkoO8qG1KDXkTa%2FPK%2Bjuz79bSSoIyCeO4X1SY%0AGolCIepvljJzyC9aMJzb6uuQQVh3F9WVGLphInLPv0HGtHpZ3OhD',