Merge branch 'dev_1220' into release/1226

# Conflicts:
#	src/views/ebiz/common/CalculatePremium.vue
#	src/views/ebiz/sale/AccountInformation.vue
#	src/views/ebiz/sale/SignatureConfirmation.vue
This commit is contained in:
皮伟
2019-12-25 13:55:11 +08:00
19 changed files with 1454 additions and 814 deletions

View File

@@ -0,0 +1,134 @@
export default {
province_list: {
450000: '广西壮族自治区'
},
city_list: {
450100: '南宁市',
450200: '柳州市',
450300: '桂林市',
450400: '梧州市',
450500: '北海市',
450600: '防城港市',
450700: '钦州市',
450800: '贵港市',
450900: '玉林市',
451000: '百色市',
451100: '贺州市',
451200: '河池市',
451300: '来宾市',
451400: '崇左市'
},
county_list: {
450102: '兴宁区',
450103: '青秀区',
450105: '江南区',
450107: '西乡塘区',
450108: '良庆区',
450109: '邕宁区',
450110: '武鸣区',
450123: '隆安县',
450124: '马山县',
450125: '上林县',
450126: '宾阳县',
450127: '横县',
450202: '城中区',
450203: '鱼峰区',
450204: '柳南区',
450205: '柳北区',
450206: '柳江区',
450222: '柳城县',
450223: '鹿寨县',
450224: '融安县',
450225: '融水苗族自治县',
450226: '三江侗族自治县',
450302: '秀峰区',
450303: '叠彩区',
450304: '象山区',
450305: '七星区',
450311: '雁山区',
450312: '临桂区',
450321: '阳朔县',
450323: '灵川县',
450324: '全州县',
450325: '兴安县',
450326: '永福县',
450327: '灌阳县',
450328: '龙胜各族自治县',
450329: '资源县',
450330: '平乐县',
450332: '恭城瑶族自治县',
450381: '荔浦市',
450403: '万秀区',
450405: '长洲区',
450406: '龙圩区',
450421: '苍梧县',
450422: '藤县',
450423: '蒙山县',
450481: '岑溪市',
450502: '海城区',
450503: '银海区',
450512: '铁山港区',
450521: '合浦县',
450602: '港口区',
450603: '防城区',
450621: '上思县',
450681: '东兴市',
450702: '钦南区',
450703: '钦北区',
450721: '灵山县',
450722: '浦北县',
450802: '港北区',
450803: '港南区',
450804: '覃塘区',
450821: '平南县',
450881: '桂平市',
450902: '玉州区',
450903: '福绵区',
450921: '容县',
450922: '陆川县',
450923: '博白县',
450924: '兴业县',
450981: '北流市',
451002: '右江区',
451021: '田阳县',
451022: '田东县',
451023: '平果县',
451024: '德保县',
451026: '那坡县',
451027: '凌云县',
451028: '乐业县',
451029: '田林县',
451030: '西林县',
451031: '隆林各族自治县',
451081: '靖西市',
451102: '八步区',
451103: '平桂区',
451121: '昭平县',
451122: '钟山县',
451123: '富川瑶族自治县',
451202: '金城江区',
451203: '宜州区',
451221: '南丹县',
451222: '天峨县',
451223: '凤山县',
451224: '东兰县',
451225: '罗城仫佬族自治县',
451226: '环江毛南族自治县',
451227: '巴马瑶族自治县',
451228: '都安瑶族自治县',
451229: '大化瑶族自治县',
451302: '兴宾区',
451321: '忻城县',
451322: '象州县',
451323: '武宣县',
451324: '金秀瑶族自治县',
451381: '合山市',
451402: '江州区',
451421: '扶绥县',
451422: '宁明县',
451423: '龙州县',
451424: '大新县',
451425: '天等县',
451481: '凭祥市'
}
}

View File

@@ -583,7 +583,7 @@ export default {
}, },
{ {
id: '16', id: '16',
text: '待手动承保' text: '等待出单'
}, },
{ {
id: '17', id: '17',
@@ -704,6 +704,42 @@ export default {
{ {
id: '46', id: '46',
text: '自核不通过待转人核' text: '自核不通过待转人核'
},
{
id: '47',
text: '核心系统繁忙,请稍后重试'
},
{
id: '48',
text: '修改账户信息'
},
{
id: '49',
text: '修改银行影像信息'
},
{
id: '50',
text: '待人核'
},
{
id: '51',
text: '人工核保中'
},
{
id: '52',
text: '问题件处理中'
},
{
id: '53',
text: '待收费'
},
{
id: '54',
text: '延期'
},
{
id: '55',
text: '支付失败'
} }
], ],
// 产品编码 // 产品编码

View File

@@ -1,5 +1,6 @@
// 获取省市区名称 // 获取省市区名称
import area from '@/assets/js/utils/area' import area from '@/assets/js/utils/area'
import areaNew from '@/assets/js/utils/areaNew'
/** /**
* 获取省市区名称 * 获取省市区名称
@@ -13,9 +14,13 @@ import area from '@/assets/js/utils/area'
// return area.province_list[provinceCode] + '-' + area.city_list[cityCode] + '-' + area.county_list[areaCode] // return area.province_list[provinceCode] + '-' + area.city_list[cityCode] + '-' + area.county_list[areaCode]
// } // }
export default function getAreaName(data) { export default function getAreaName(data, from) {
if (data.length == 3) { if (data.length == 3) {
return area.province_list[data[0].code] + '-' + area.city_list[data[1].code] + '-' + area.county_list[data[2].code] if (from == 'new') {
return areaNew.province_list[data[0].code] + '-' + areaNew.city_list[data[1].code] + '-' + areaNew.county_list[data[2].code]
} else {
return area.province_list[data[0].code] + '-' + area.city_list[data[1].code] + '-' + area.county_list[data[2].code]
}
} else { } else {
return area.province_list[data[0].code] + '-' + area.city_list[data[1].code] return area.province_list[data[0].code] + '-' + area.city_list[data[1].code]
} }

View File

@@ -190,7 +190,7 @@
</van-popup> </van-popup>
<!-- 家庭地址选择 --> <!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom"> <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="areaLists" value="450000" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup> </van-popup>
<!-- 户籍选择 --> <!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom"> <van-popup v-model="censusShow" position="bottom">
@@ -206,6 +206,7 @@ import FieldDatePicter from '@/components/ebiz/FieldDatePicter'
import DataDictionary from '@/assets/js/utils/data-dictionary' import DataDictionary from '@/assets/js/utils/data-dictionary'
import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker' import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
import areaList from '@/assets/js/utils/area' import areaList from '@/assets/js/utils/area'
import areaLists from '@/assets/js/utils/areaNew'
import utilsAge from '@/assets/js/utils/age' import utilsAge from '@/assets/js/utils/age'
import getAreaName from '@/assets/js/utils/get-area-name' import getAreaName from '@/assets/js/utils/get-area-name'
import idNoCheck from '@/assets/js/utils/idNoCheck' import idNoCheck from '@/assets/js/utils/idNoCheck'
@@ -248,6 +249,7 @@ export default {
homeName: '', //家庭地址 homeName: '', //家庭地址
marriage: '', marriage: '',
areaList: areaList, areaList: areaList,
areaLists: areaLists,
customerType: '', customerType: '',
customerSource: '', customerSource: '',
age: '', age: '',
@@ -546,7 +548,7 @@ export default {
this.areaShow = false this.areaShow = false
break break
case '2': //家庭地址 case '2': //家庭地址
this.homeName = getAreaName(area) this.homeName = getAreaName(area, 'new')
;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code] ;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code]
this.homeShow = false this.homeShow = false
break break

View File

@@ -11,31 +11,24 @@ let apiDomain, imgDomain, assetsUrl, mainUrl, payUrl // 保融支付的收银台
console.log('环境:', process.env.VUE_APP_FLAG) console.log('环境:', process.env.VUE_APP_FLAG)
switch (process.env.VUE_APP_FLAG) { switch (process.env.VUE_APP_FLAG) {
case 'dev': case 'dev':
// apiDomain = 'http://47.96.143.111:7000/api/v1'
apiDomain = 'http://139.199.50.151:7000/api/v1' // 国富api apiDomain = 'http://139.199.50.151:7000/api/v1' // 国富api
// apiDomain = 'http://10.11.2.247004/'
// imgDomain = 'http://10.10.100.98:7012/updown' // dev
imgDomain = 'http://211.159.248.123:7012/updown' // dev imgDomain = 'http://211.159.248.123:7012/updown' // dev
// 静态服务资源 // 静态服务资源
assetsUrl = 'http://139.199.50.151:8000/app/' assetsUrl = 'http://139.199.50.151:8000/app/'
mainUrl = 'http://139.199.50.151' mainUrl = 'http://139.199.50.151'
// payUrl = 'http://10.10.100.84:7003/s3-modules-gateway/embed/gateway.action'
payUrl = 'http://funduat.e-guofu.com/s3-modules-gateway/embed/gateway.action' payUrl = 'http://funduat.e-guofu.com/s3-modules-gateway/embed/gateway.action'
break break
case 'uat': case 'uat':
apiDomain = '' apiDomain = 'http://115.159.235.59:7000/api/v1' // 国富api
imgDomain = '' imgDomain = 'http://139.199.50.145:7012/updown'
// 静态服务资源 // 静态服务资源
assetsUrl = '' assetsUrl = 'http://115.159.235.59:8000/app/'
mainUrl = '' mainUrl = 'http://115.159.235.59'
payUrl = '' payUrl = 'http://funduat.e-guofu.com/s3-modules-gateway/embed/gateway.action'
break break
case 'prd': case 'prd':
apiDomain = 'https://iagentsales.e-guofu.com/api/v1' apiDomain = 'https://iagentsales.e-guofu.com/api/v1'
imgDomain = 'https://iagentsales-ud.e-guofu.com:8553/updown' imgDomain = 'https://iagentsales-ud.e-guofu.com:8553/updown'
// imgDomain = 'http://10.10.100.98:7012/updown' // 上生产前
// 静态服务资源
// assetsUrl = 'http://211.159.248.138:7001/' // 上生产前
assetsUrl = 'https://iagentsales-sr.e-guofu.com:8443/' assetsUrl = 'https://iagentsales-sr.e-guofu.com:8443/'
mainUrl = 'https://iagentsales.e-guofu.com' mainUrl = 'https://iagentsales.e-guofu.com'
payUrl = 'https://uns3.e-guofu.com/s3-modules-gateway/embed/gateway.action' payUrl = 'https://uns3.e-guofu.com/s3-modules-gateway/embed/gateway.action'
@@ -64,4 +57,4 @@ export default {
assetsUrl, assetsUrl,
mainUrl, mainUrl,
payUrl payUrl
} }

View File

@@ -21,16 +21,18 @@
<div v-if="item.isRemit == 1"> <div v-if="item.isRemit == 1">
<div v-for="(riskFactor, riskFactorIndex) in item.calFactorLst" :key="riskFactorIndex"> <div v-for="(riskFactor, riskFactorIndex) in item.calFactorLst" :key="riskFactorIndex">
<div class="flex justify-content-s pv10 border-bottom" v-if="riskFactor.type == 1"> <div class="flex justify-content-s pv10 border-bottom" v-if="riskFactor.type == 1">
<div class="flex"> <div class="flex align-items-c">
<span v-if="riskFactor.suffix" class="fs14"> {{ riskFactor.name + '(' + riskFactor.suffix + ')' }} </span> <span v-if="riskFactor.suffix" class="fs14"> {{ riskFactor.name + '(' + riskFactor.suffix + ')' }} </span>
<span v-else class="fs14"> {{ riskFactor.name }} &nbsp;&nbsp; &nbsp;&nbsp;</span> <span v-else class="fs14"> {{ riskFactor.name }} &nbsp;&nbsp; &nbsp;&nbsp;</span>
<!-- {{riskFactorIndex}} --> <!-- {{riskFactorIndex}} -->
<van-stepper <van-stepper
v-model="item.calFactorLst[riskFactorIndex].defaultValue" v-model="defalutAmt"
:min="riskFactor.minAmt || riskFactor.minPrem" :min="riskFactor.minAmt || riskFactor.minPrem"
:max="riskFactor.maxAmt || riskFactor.maxPrem" :max="riskFactor.maxAmt || riskFactor.maxPrem"
class="ml10" :show-plus="false"
@change="stepperChange(item.calFactorLst[riskFactorIndex].defaultValue, index, riskFactorIndex)" :show-minus="false"
class="ml30"
@change="stepperChange(item.calFactorLst[riskFactorIndex].defaultValue, index, riskFactorIndex, (riskFactor.minAmt || riskFactor.minPrem), (riskFactor.maxAmt || riskFactor.maxPrem) )"
input-width="100" input-width="100"
:integer="false" :integer="false"
/> />
@@ -59,7 +61,9 @@
<van-stepper <van-stepper
v-model="dutyItem.defaultDutyAmt" v-model="dutyItem.defaultDutyAmt"
:min="dutyItem.minDutyAmt" :min="dutyItem.minDutyAmt"
:max="dutyItem.maxDutyAmt" :max=" dutyItem.maxDutyAmt"
:show-plus="false"
:show-minus="false"
class="ml10 mr10" class="ml10 mr10"
@focus="focusStep" @focus="focusStep"
@blur="blurStep" @blur="blurStep"
@@ -74,7 +78,7 @@
dutyItem.maxDutyAmt dutyItem.maxDutyAmt
) )
" "
input-width="100" input-width="200"
:integer="false" :integer="false"
/> />
<van-checkbox <van-checkbox
@@ -144,7 +148,8 @@ export default {
[Picker.name]: Picker, [Picker.name]: Picker,
[Stepper.name]: Stepper, [Stepper.name]: Stepper,
[Field.name]: Field, [Field.name]: Field,
[Checkbox.name]: Checkbox [Checkbox.name]: Checkbox,
[Dialog.name]: Dialog
}, },
data() { data() {
return { return {
@@ -169,7 +174,9 @@ export default {
policyNo: '', policyNo: '',
// 份数 // 份数
mult: '', mult: '',
isFrom: '' isFrom: '',
// 默认钱数
defalutAmt: ''
} }
}, },
mounted() { mounted() {
@@ -204,12 +211,15 @@ export default {
if (item.mainRiskCode == 'GFRS_M0006') { if (item.mainRiskCode == 'GFRS_M0006') {
item.isHidden = true item.isHidden = true
} }
item.calFactorLst.map(i => { if(item.mainRiskCode != 'GFRS_M0008') {
if (i.defaultValue) { item.calFactorLst.map(i => {
this.mult = i.defaultValue this.defalutAmt = i.displayAmount
console.log(i.displayAmount)
console.log(i.defaultValue)
this.mult = Number(i.displayAmount) / Number(i.defaultValue)
})
} }
}) })
})
// this.influenceAddRiskCodes // this.influenceAddRiskCodes
@@ -226,27 +236,42 @@ export default {
}, },
// 责任保额份数变化 // 责任保额份数变化
dutyStepperChange(value, productIndex, calFactorIndex, dutyItemIndex, isChecked, min, max) { dutyStepperChange(value, productIndex, calFactorIndex, dutyItemIndex, isChecked, min, max) {
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules[dutyItemIndex]
if (value < min || value > max) { if (value < min || value > max) {
this.nextStepFlag = true this.$toast(localStorage.hint)
this.changeFlag = false
} else { } else {
this.changeFlag = true if ((Number(value) * 10000) % (Number(currentEle.limit) * 10000) != 0) {
} Dialog.alert({
if (isChecked) { message: localStorage.hint
;[this.productIndex, this.calFactorIndex] = [productIndex, calFactorIndex] }).then(()=> {
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules currentEle.defaultDutyAmt = currentEle.minDutyAmt
currentEle.forEach(item => { })
item.amt = Number(item.minDutyAmt) * Number(item.moneyUnit)
}) // this.$toast(localStorage.hint)
this.mainRiskInfluenceAddRisk()
this.getTrial() } else {
} else { // this.mainRiskInfluenceAddRisk()
;[this.productIndex, this.calFactorIndex] = [productIndex, calFactorIndex] // currentEle['amt'] = Number(currentEle.defaultValue) * Number(currentEle.moneyUnit)
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules // this.getTrial()
currentEle.forEach(item => { if (isChecked) {
item.amt = Number(item.minDutyAmt) * Number(item.moneyUnit) ;[this.productIndex, this.calFactorIndex] = [productIndex, calFactorIndex]
}) let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules
currentEle.forEach(item => {
item.amt = Number(item.minDutyAmt) * Number(item.moneyUnit)
})
this.mainRiskInfluenceAddRisk()
this.getTrial()
} else {
;[this.productIndex, this.calFactorIndex] = [productIndex, calFactorIndex]
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules
currentEle.forEach(item => {
item.amt = Number(item.minDutyAmt) * Number(item.moneyUnit)
})
}
}
} }
}, },
//弹框选择 //弹框选择
toSelect(index, index1, columns) { toSelect(index, index1, columns) {
@@ -623,9 +648,9 @@ export default {
} }
} else if (factor.type == 1) { } else if (factor.type == 1) {
if (factor.code == 'inputPrem') { if (factor.code == 'inputPrem') {
trialInfo['prem'] = Number(factor.defaultValue) * Number(factor.moneyUnit) trialInfo['prem'] = Number(this.defalutAmt) * Number(factor.moneyUnit)
} else { } else {
trialInfo['amt'] = Number(factor.defaultValue) * Number(factor.moneyUnit) trialInfo['amt'] = Number(this.defalutAmt) * Number(factor.moneyUnit)
} }
} else if (factor.type == 2) { } else if (factor.type == 2) {
trialInfo.jobLevel = this.saleInsuredPersonInfo[factor.code] trialInfo.jobLevel = this.saleInsuredPersonInfo[factor.code]
@@ -646,7 +671,7 @@ export default {
}) })
//通用规则1交费方式为一次交情无交费期限 //通用规则1交费方式为一次交情无交费期限
if (trialInfo['payIntv'] == '0') { if (trialInfo['payIntv'] == '0') {
trialInfo['payEndYear'] = '1000' trialInfo['payEndYear'] = '1000'
trialInfo['payEndYearFlag'] = 'Y' trialInfo['payEndYearFlag'] = 'Y'
// 福宝宝和万能险传A // 福宝宝和万能险传A
@@ -707,24 +732,29 @@ export default {
}) })
}, },
//保额份数变化 //保额份数变化
stepperChange(value, productIndex, calFactorIndex) { stepperChange(defalutValue, productIndex, calFactorIndex, min, max ) {
// debugger
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex]
if (Number(this.defalutAmt) < Number(min) || Number(this.defalutAmt) > Number(max)) {
this.$toast(localStorage.hint)
this.nextStepFlag = true
} else {
if ((Number(this.defalutAmt) * 10000) % (Number(currentEle.limit) * 10000) != 0) {
// this.defalutAmt = currentEle.rules[productIndex].displayAmount
this.$toast(localStorage.hint)
this.nextStepFlag = true
} else {
this.mainRiskInfluenceAddRisk()
currentEle['amt'] = Number(this.defalutAmt) * Number(currentEle.moneyUnit)
this.getTrial()
}
}
// let currentEle = this.chooseProducts[this.productIndex].calFactorLst[this.calFactorIndex] // let currentEle = this.chooseProducts[this.productIndex].calFactorLst[this.calFactorIndex]
// currentEle.defaultValue = value // currentEle.defaultValue = value
console.log('进来几次') console.log('进来几次')
this.mult = value this.mult = Number(this.defalutAmt) / Number(defalutValue)
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex]
if ((Number(value) * 10000) % (Number(currentEle.limit) * 10000) != 0) {
Dialog.alert({
message: localStorage.hint
}).then(() => {
currentEle.defaultValue = currentEle.rules[productIndex].defaultValue
// this.nextStepFlag = true
})
} else {
this.mainRiskInfluenceAddRisk()
currentEle['amt'] = Number(currentEle.defaultValue) * Number(currentEle.moneyUnit)
this.getTrial()
}
}, },
//下一步 //下一步
async nextStep() { async nextStep() {

View File

@@ -380,6 +380,7 @@ export default {
insuredDTOs = formatRiskList(insuredDTOs, 'insuredDTOs', 'riskDTOLst') insuredDTOs = formatRiskList(insuredDTOs, 'insuredDTOs', 'riskDTOLst')
this.insuredDTOs = insuredDTOs[0].insuredDTOs this.insuredDTOs = insuredDTOs[0].insuredDTOs
this.insuredDTOs = relevance(this.insuredDTOs, insuredLabelResult, insuredResult, insuredInfoResult, this.amtFormat, this.dutyLst) //进行数据关联 this.insuredDTOs = relevance(this.insuredDTOs, insuredLabelResult, insuredResult, insuredInfoResult, this.amtFormat, this.dutyLst) //进行数据关联
// console.log('insuredDTOs',insuredDTOs)
this.getWXTitle(this.insuredDTOs) //获取微信标题 this.getWXTitle(this.insuredDTOs) //获取微信标题
let active = this.insuredDTOs.length //默认展开项 let active = this.insuredDTOs.length //默认展开项
this.activeNames = [active] this.activeNames = [active]

View File

@@ -2,7 +2,7 @@
<div class="accountInformation-container"> <div class="accountInformation-container">
<div class="aaountInfomation-content" v-if="!isScan"> <div class="aaountInfomation-content" v-if="!isScan">
<van-radio-group v-model="radio" class="flex pl30 pr30 pt15 pb15 justify-content-s bg-white mt10"> <van-radio-group v-model="radio" class="flex pl30 pr30 pt15 pb15 justify-content-s bg-white mt10">
<van-radio name="0" class="fs14" @click="clickRadio(saleInsuredInfo.name)">{{ `投保人${saleInsuredInfo.name}` }}</van-radio> <van-radio name="0" class="fs14" @click="clickRadio(saleInsuredInfo.name)" v-if="!changeCard">{{ `投保人${saleInsuredInfo.name}` }}</van-radio>
<!-- <van-radio name="1" class="fs14" v-if="relationToAppnt != '1'" @click="clickRadio(saleInsuredPersonInfo.name)">{{ <!-- <van-radio name="1" class="fs14" v-if="relationToAppnt != '1'" @click="clickRadio(saleInsuredPersonInfo.name)">{{
`被保人${saleInsuredPersonInfo.name}` `被保人${saleInsuredPersonInfo.name}`
}}</van-radio> --> }}</van-radio> -->
@@ -22,10 +22,12 @@
v-validate="'required|bankCard'" v-validate="'required|bankCard'"
data-vv-name="银行卡号" 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-button type="danger" size="small" class="bankCard mr10 w110 h20" @click="cardScanning('0')" v-no-more-click="1000" v-if="!changeCard"
>银行卡扫描</van-button
>
</van-cell-group> </van-cell-group>
<van-cell-group class="flex align-items-c" v-if="isAutoPay == '0'"> <van-cell-group class="flex align-items-c" v-if="isAutoPay == '0' && !changeCard">
<van-switch-cell v-model="checked" title="是否自动垫交" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" /> <van-switch-cell v-model="checked" title="是否自动垫交" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" />
<van-icon <van-icon
name="question-o" name="question-o"
@@ -39,7 +41,7 @@
" "
/> />
</van-cell-group> </van-cell-group>
<van-cell-group class="flex align-items-c" v-if="isRenew == '0'"> <van-cell-group class="flex align-items-c" v-if="isRenew == '0' && !changeCard">
<van-switch-cell v-model="isChecked" title="自动续保" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" /> <van-switch-cell v-model="isChecked" title="自动续保" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" />
</van-cell-group> </van-cell-group>
<div class="fs12 mt10 ml20 w250 h15"> <div class="fs12 mt10 ml20 w250 h15">
@@ -140,7 +142,8 @@ export default {
// 是否显示自动垫交 // 是否显示自动垫交
isAutoPay: '', isAutoPay: '',
// 是否显示自动续保 // 是否显示自动续保
isRenew: '' isRenew: '',
changeCard: localStorage.changeCard
} }
}, },
methods: { methods: {
@@ -238,87 +241,110 @@ export default {
that.$validator.validate().then(valid => { that.$validator.validate().then(valid => {
if (valid === true) { if (valid === true) {
let data = {} let data = {}
//支付失败换卡
if (localStorage.changeCard) {
data = {
orderType: 'ACCOUNTNEW_ORDER',
if (that.checked == true) { orderDTO: {
if (this.isChecked == true) { orderInfoDTO: {
data = { orderNo: window.localStorage.getItem('orderNo')
orderType: 'ACCOUNT_ORDER', },
orderAccountDTO: {
orderDTO: { bankName: that.bank,
orderInfoDTO: { bankCode: that.bankCode,
orderNo: window.localStorage.getItem('orderNo') cvv2Code: '0',
}, cardBookCode: that.bankId
orderAccountDTO: {
accountType: that.radio,
accountName: that.name,
bankName: that.bank,
bankCode: that.bankCode,
cardBookType: '1',
cardBookCode: that.bankId,
isAutoPay: '0',
isAutoRenewal: '0'
}
}
}
} else {
data = {
orderType: 'ACCOUNT_ORDER',
orderDTO: {
orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo')
},
orderAccountDTO: {
accountType: that.radio,
accountName: that.name,
bankName: that.bank,
bankCode: that.bankCode,
cardBookType: '1',
cardBookCode: that.bankId,
isAutoPay: '0',
isAutoRenewal: this.isRenew == '0' ? '1' : ''
}
} }
} }
} }
} else { } else {
if (this.isChecked == true) { // 垫付
data = { if (that.checked == true) {
orderType: 'ACCOUNT_ORDER', // 续保
if (this.isChecked == true) {
data = {
orderType: 'ACCOUNT_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo')
}, },
orderAccountDTO: { orderAccountDTO: {
accountType: that.radio, accountType: that.radio,
accountName: that.name, accountName: that.name,
bankName: that.bank, bankName: that.bank,
bankCode: that.bankCode, bankCode: that.bankCode,
cardBookType: '1', cardBookType: '1',
cardBookCode: that.bankId, cardBookCode: that.bankId,
isAutoPay: this.isAutoPay == '0' ? '1' : '', isAutoPay: '0',
isAutoRenewal: '0' isAutoRenewal: '0'
}
}
}
} else {
// 垫付不续保
data = {
orderType: 'ACCOUNT_ORDER',
orderDTO: {
orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo')
},
orderAccountDTO: {
accountType: that.radio,
accountName: that.name,
bankName: that.bank,
bankCode: that.bankCode,
cardBookType: '1',
cardBookCode: that.bankId,
isAutoPay: '0',
isAutoRenewal: this.isRenew == '0' ? '1' : ''
}
} }
} }
} }
} else { } else {
data = { // 不垫付 续保
orderType: 'ACCOUNT_ORDER', if (this.isChecked == true) {
data = {
orderType: 'ACCOUNT_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo')
}, },
orderAccountDTO: { orderAccountDTO: {
accountType: that.radio, accountType: that.radio,
accountName: that.name, accountName: that.name,
bankName: that.bank, bankName: that.bank,
bankCode: that.bankCode, bankCode: that.bankCode,
cardBookType: '1', cardBookType: '1',
cardBookCode: that.bankId, cardBookCode: that.bankId,
isAutoPay: this.isAutoPay == '0' ? '1' : '', isAutoPay: this.isAutoPay == '0' ? '1' : '',
isAutoRenewal: this.isRenew == '0' ? '1' : '' isAutoRenewal: '0'
}
}
}
} else {
// 不垫付 不续保
data = {
orderType: 'ACCOUNT_ORDER',
orderDTO: {
orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo')
},
orderAccountDTO: {
accountType: that.radio,
accountName: that.name,
bankName: that.bank,
bankCode: that.bankCode,
cardBookType: '1',
cardBookCode: that.bankId,
isAutoPay: this.isAutoPay == '0' ? '1' : '',
isAutoRenewal: this.isRenew == '0' ? '1' : ''
}
} }
} }
} }

View File

@@ -62,7 +62,7 @@
ref="birthday" ref="birthday"
:readonly="isInsured" :readonly="isInsured"
></FieldDatePicter> ></FieldDatePicter>
<FieldDatePicter <!-- <FieldDatePicter
v-validate="'required'" v-validate="'required'"
label="证件起始日期" label="证件起始日期"
name="证件起始日期" name="证件起始日期"
@@ -74,12 +74,12 @@
ref="certificateValidate" ref="certificateValidate"
:flag="true" :flag="true"
:readonly="isInsured || idLimit" :readonly="isInsured || idLimit"
></FieldDatePicter> ></FieldDatePicter> -->
<FieldDatePicter <FieldDatePicter
:v-validate="{ required: certiexpiredateRequired }" :v-validate="{ required: certiexpiredateRequired }"
label="证件截止日期" label="证件截止日期"
name="证件截止日期" name="证件截止日期"
required :required="isRequired"
:defaultDate="new Date()" :defaultDate="new Date()"
:value.sync="userInfo.certiexpiredate" :value.sync="userInfo.certiexpiredate"
type="date" type="date"
@@ -104,7 +104,7 @@
placeholder="请选择" placeholder="请选择"
@click="toSelect('1')" @click="toSelect('1')"
/> />
<van-field <!-- <van-field
v-model="userInfo.mobile" v-model="userInfo.mobile"
clearable clearable
label="联系电话" label="联系电话"
@@ -114,8 +114,8 @@
v-validate="'required|mobile'" v-validate="'required|mobile'"
maxlength="11" maxlength="11"
:readonly="isInsured" :readonly="isInsured"
/> /> -->
<van-field <!-- <van-field
v-model="areaName" v-model="areaName"
readonly readonly
label="联系地址" label="联系地址"
@@ -125,8 +125,8 @@
placeholder="请选择" placeholder="请选择"
v-validate="'required'" v-validate="'required'"
@click="chooseArea" @click="chooseArea"
/> /> -->
<van-field <!-- <van-field
v-model="userInfo.village" v-model="userInfo.village"
label="" label=""
name="详细地址" name="详细地址"
@@ -135,12 +135,12 @@
clearable clearable
maxlength="30" maxlength="30"
:readonly="isInsured" :readonly="isInsured"
/> /> -->
<div class="relative border-bt fs14 p10 flex align-center"> <div class="relative border-bt fs14 p10 flex align-center">
<van-checkbox v-model="userInfo.asAppntAddress" @change="asAppntAddress" :disabled="isInsured">同投保人</van-checkbox> <van-checkbox v-model="userInfo.asAppntAddress" @change="asAppntAddress" :disabled="isInsured">同投保人</van-checkbox>
</div> </div>
<van-field v-model="userInfo.email" required label="电子邮箱" name="电子邮箱" placeholder="请输入" v-validate="'required|email'" clearable :readonly="isInsured" /> <!-- <van-field v-model="userInfo.email" required label="电子邮箱" name="电子邮箱" placeholder="请输入" v-validate="'required|email'" clearable :readonly="isInsured" /> -->
<occupation-picker <!-- <occupation-picker
:value.sync="userInfo.occupationCode" :value.sync="userInfo.occupationCode"
:chooseName.sync="userInfo.occupationName" :chooseName.sync="userInfo.occupationName"
:lifeGrade.sync="userInfo.lifeGrade" :lifeGrade.sync="userInfo.lifeGrade"
@@ -154,8 +154,17 @@
:parentShowPicker.sync="occupationShowPicker" :parentShowPicker.sync="occupationShowPicker"
@on-click="selectClick('2')" @on-click="selectClick('2')"
@on-choose="chooseOccupation" @on-choose="chooseOccupation"
/> -->
<van-field
v-model="userInfo.bnfOrder"
required
readonly
label="受益顺序"
name="受益顺序"
placeholder="请输入"
v-validate="'required|onlyNumber'"
maxlength="1"
/> />
<van-field v-model="userInfo.bnfOrder" required readonly label="受益顺序" name="受益顺序" placeholder="请输入" v-validate="'required|onlyNumber'" maxlength="1" />
<van-field <van-field
v-model="userInfo.bnfLot" v-model="userInfo.bnfLot"
label="受益比例(%)" label="受益比例(%)"
@@ -180,9 +189,9 @@
<van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" /> <van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" />
</van-popup> </van-popup>
<!-- 地区选择 --> <!-- 地区选择 -->
<van-popup v-model="areaShow" position="bottom"> <!-- <van-popup v-model="areaShow" position="bottom">
<van-area :area-list="areaList" :value="areaValue" @confirm="sureArea($event, '1')" @cancel="areaShow = false" /> <van-area :area-list="areaList" :value="areaValue" @confirm="sureArea($event, '1')" @cancel="areaShow = false" />
</van-popup> </van-popup> -->
</div> </div>
</template> </template>
@@ -202,7 +211,8 @@ import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
import idNoCheck from '@/assets/js/utils/idNoCheck' import idNoCheck from '@/assets/js/utils/idNoCheck'
import { idToData } from './js/verification' import { idToData } from './js/verification'
import { selectComp } from './js/methods' import { selectComp } from './js/methods'
let relationToInsured = [{ id: 2, text: '配偶' }, { id: 3, text: '父母' }, { id: 4, text: '子女' }, { id: 5, text: '其他' }] // let relationToInsured = [{ id: 2, text: '配偶' }, { id: 3, text: '父母' }, { id: 4, text: '子女' }, { id: 5, text: '其他' }]
let relationToInsured = [{ id: 2, text: '配偶' }, { id: 3, text: '父母' }, { id: 4, text: '子女' }]
export default { export default {
name: 'insuredInfo', name: 'insuredInfo',
@@ -250,6 +260,7 @@ export default {
certiexpiredateRequired: true, //证件截止日期是否需要校验 certiexpiredateRequired: true, //证件截止日期是否需要校验
certiexpiredateShow: true, //证件截止日期是否可以选择 certiexpiredateShow: true, //证件截止日期是否可以选择
marriage: '', marriage: '',
isRequired: '', //长期前是否有*
userInfo: { userInfo: {
name: '', name: '',
sex: '0', sex: '0',
@@ -257,20 +268,20 @@ export default {
birthday: '', birthday: '',
idType: '1', //证件类型 idType: '1', //证件类型
idNo: '', //证件号码 idNo: '', //证件号码
certificateValidate: '', //证件起始日期 // certificateValidate: '', //证件起始日期
certiexpiredate: '', //证件到期时间 certiexpiredate: '', //证件到期时间
effectiveDateType: false, //是否长期 effectiveDateType: false, //是否长期
asAppntAddress: false, //同投保人地址 asAppntAddress: false, //同投保人地址
occupationCode: '', occupationCode: '',
occupationName: '', occupationName: '',
mobile: '', // mobile: '',
workcompany: '', //工作单位 workcompany: '', //工作单位
village: '', village: '',
province: '', // province: '',
city: '', // city: '',
area: '', // area: '',
fIncome: '', fIncome: '',
email: '', // email: '',
bnfOrder: '1', //受益顺序 bnfOrder: '1', //受益顺序
bnfLot: '', //受益比例 bnfLot: '', //受益比例
bnfFlag: '', bnfFlag: '',
@@ -395,7 +406,8 @@ export default {
;[this.userInfo.nativeplace, this.nativeplace] = [value.id, value.text] ;[this.userInfo.nativeplace, this.nativeplace] = [value.id, value.text]
} else if (this.pickerType == '2') { } else if (this.pickerType == '2') {
this.idLimit = false this.idLimit = false
this.userInfo.idNo = this.userInfo.certificateValidate = this.userInfo.certiexpiredate = this.userInfo.birthday = '' // this.userInfo.idNo = this.userInfo.certificateValidate = this.userInfo.certiexpiredate = this.userInfo.birthday = ''
this.userInfo.idNo = this.userInfo.certiexpiredate = this.userInfo.birthday = ''
this.userInfo.sex = '0' this.userInfo.sex = '0'
this.effectiveDateTypeAble = false this.effectiveDateTypeAble = false
console.log(value.id) console.log(value.id)
@@ -435,10 +447,10 @@ export default {
console.log(this.userInfo) console.log(this.userInfo)
setTimeout(() => { setTimeout(() => {
this.userInfo.city = insuredInfo.homeCity //家庭市 // this.userInfo.city = insuredInfo.homeCity //家庭市
this.userInfo.area = insuredInfo.homeArea //家庭区 // this.userInfo.area = insuredInfo.homeArea //家庭区
this.userInfo.province = insuredInfo.homeProvince //家庭省 // this.userInfo.province = insuredInfo.homeProvince //家庭省
this.areaName = getAreaName([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }]) //家庭地址 // this.areaName = getAreaName([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }]) //家庭地址
this.userInfo.village = insuredInfo.homeAddress //家庭详细地址 this.userInfo.village = insuredInfo.homeAddress //家庭详细地址
}, 0) }, 0)
@@ -481,24 +493,24 @@ export default {
//证件起始截止日期 //证件起始截止日期
onDateConfirm(val, type) { onDateConfirm(val, type) {
switch (type) { switch (type) {
case '0': // case '0':
{ // {
//证件起始日期 // //证件起始日期
//如果录入日期早于出生日期或晚于当前日期 // //如果录入日期早于出生日期或晚于当前日期
if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) { // if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) {
this.userInfo.certificateValidate = '' // this.userInfo.certificateValidate = ''
this.$refs.certificateValidate.date = '' // this.$refs.certificateValidate.date = ''
return this.$toast('证件起始日期填写错误') // return this.$toast('证件起始日期填写错误')
} // }
// 计算年龄 // // 计算年龄
// 长期按钮是否禁用 // // 长期按钮是否禁用
if (this.userInfo.idType == '1') { // if (this.userInfo.idType == '1') {
let age = utilsAge.getAge(this.userInfo.birthday, new Date()) // let age = utilsAge.getAge(this.userInfo.birthday, new Date())
this.effectiveDateTypeAble = age <= 45 // this.effectiveDateTypeAble = age <= 45
} // }
} // }
break // break
case '1': case '1':
{ {
//证件截止日期 //证件截止日期
@@ -576,22 +588,22 @@ export default {
this.userInfo.birthday = data.birthday //出生日期 this.userInfo.birthday = data.birthday //出生日期
this.userInfo.idType = data.customerIdType //证件类型 this.userInfo.idType = data.customerIdType //证件类型
this.userInfo.idNo = data.customerIdNumber //证件号码 this.userInfo.idNo = data.customerIdNumber //证件号码
this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期 // this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期
this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期 this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期 this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期
this.userInfo.occupationCode = data.occupationCode //职业类别编码 this.userInfo.occupationCode = data.occupationCode //职业类别编码
this.userInfo.occupationName = data.occupationName //职业类别名称 this.userInfo.occupationName = data.occupationName //职业类别名称
this.userInfo.lifeGrade = data.lifeGrade //寿险等级 this.userInfo.lifeGrade = data.lifeGrade //寿险等级
this.userInfo.healthGrade = data.healthGrade //健康等级 this.userInfo.healthGrade = data.healthGrade //健康等级
this.userInfo.mobile = data.customerPhone //移动电话 // this.userInfo.mobile = data.customerPhone //移动电话
this.userInfo.email = data.email //电子邮箱 // this.userInfo.email = data.email //电子邮箱
this.userInfo.province = data.homeProvince //家庭省 this.userInfo.province = data.homeProvince //家庭省
this.userInfo.city = data.homeCity //家庭市 this.userInfo.city = data.homeCity //家庭市
this.userInfo.area = data.homeArea //家庭区 this.userInfo.area = data.homeArea //家庭区
this.userInfo.village = data.homeAddress //家庭详细地址 this.userInfo.village = data.homeAddress //家庭详细地址
if (data.homeProvince.length) { // if (data.homeProvince.length) {
this.areaName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址 // this.areaName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址
} // }
//计算年龄 //计算年龄
let age = utilsAge.getAge(this.userInfo.birthday, new Date()) let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用 // 长期按钮是否禁用
@@ -841,16 +853,20 @@ export default {
//勾选长期状态时,证件截止日期置空 //勾选长期状态时,证件截止日期置空
if (val) { if (val) {
this.userInfo.certiexpiredate = '' this.userInfo.certiexpiredate = ''
this.isRequired = false
this.idLimit = true
this.certiexpiredateRequired = false this.certiexpiredateRequired = false
} else { } else {
this.certiexpiredateRequired = true this.certiexpiredateRequired = true
this.isRequired = true
this.idLimit = false
} }
}, },
//获取身份证扫描信息 //获取身份证扫描信息
getIdentityInfo(data) { getIdentityInfo(data) {
console.log(data) console.log(data)
if (data.name && data.name != '待识别') { if (data.name && data.name != '待识别') {
this.userInfo.certificateValidate = data.startDate // this.userInfo.certificateValidate = data.startDate
this.userInfo.certiexpiredate = data.endDate this.userInfo.certiexpiredate = data.endDate
this.userInfo.name = data.name this.userInfo.name = data.name
this.userInfo.idNo = data.idNo this.userInfo.idNo = data.idNo
@@ -891,6 +907,16 @@ export default {
this.effectiveDateTypeAble = idToData(val).age < 45 this.effectiveDateTypeAble = idToData(val).age < 45
this.userInfo.birthday = idToData(val).birthday this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex this.userInfo.sex = idToData(val).sex
if (idToData(val).age >= 45) {
this.idLimit = true
this.isRequired = false
this.userInfo.effectiveDateType = true
this.effectiveDateTypeAble = true
} else {
this.idLimit = false
this.isRequired = true
this.userInfo.effectiveDateType = false
}
//如果选择户口本 //如果选择户口本
// if (this.userInfo.idType == '2') { // if (this.userInfo.idType == '2') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31') // let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')

View File

@@ -1,6 +1,25 @@
<template> <template>
<div> <div>
<div class=" pb80"> <div v-if="changeCard">
<div class="flex p10 align-items-c bg-white mt10">
<span>投保人附件</span>
</div>
<van-cell-group>
<van-field required label="银行卡账户" disabled />
</van-cell-group>
<div @click="test('fileListBank', saleInsuredInfo.idType)">
<van-uploader
name="fileListBank"
v-model="fileListBank"
:after-read="afterRead"
@delete="deleteImg"
:before-delete="beforeDelete"
class="mt10 ml20"
:max-count="1"
/>
</div>
</div>
<div v-else>
<div> <div>
<div class="flex p10 align-items-c bg-white mt10"> <div class="flex p10 align-items-c bg-white mt10">
<!-- <div class="attachmentManagement-block"></div> --> <!-- <div class="attachmentManagement-block"></div> -->
@@ -120,7 +139,7 @@
:max-count="1" :max-count="1"
/> />
</div> </div>
<van-cell-group> <!-- <van-cell-group>
<van-field required label="银行卡反面" disabled /> <van-field required label="银行卡反面" disabled />
</van-cell-group> </van-cell-group>
<div @click="test('fileListBankBack', saleInsuredInfo.idType)"> <div @click="test('fileListBankBack', saleInsuredInfo.idType)">
@@ -133,7 +152,7 @@
class="mt10 ml20" class="mt10 ml20"
:max-count="1" :max-count="1"
/> />
</div> </div> -->
</div> </div>
</div> </div>
</div> </div>
@@ -199,7 +218,7 @@
</div> </div>
</div> </div>
<!-- 受益人类型 --> <!-- 受益人类型 -->
<div v-if="typebeneficiary == true"> <!-- <div v-if="typebeneficiary == true">
<div class="flex bg-white p10 align-items-c"> <div class="flex bg-white p10 align-items-c">
<span>受益人附件</span> <span>受益人附件</span>
</div> </div>
@@ -219,14 +238,14 @@
/> />
</div> </div>
</div> </div>
</div> </div> -->
<!-- 受益人类型end --> <!-- 受益人类型end -->
<div> <!-- <div> -->
<div class="flex bg-white p10 align-items-c"> <!-- <div class="flex bg-white p10 align-items-c"> -->
<!-- <div class="attachmentManagement-block"></div> --> <!-- <div class="attachmentManagement-block"></div> -->
<span>其他</span> <!-- <span>其他</span>
</div> </div> -->
<div class="m20 bg-white"> <!-- <div class="m20 bg-white">
<div @click="test('fileListOther', saleInsuredPersonInfo.idType)" class="flex"> <div @click="test('fileListOther', saleInsuredPersonInfo.idType)" class="flex">
<van-uploader <van-uploader
name="fileListOtherOne" name="fileListOtherOne"
@@ -257,13 +276,12 @@
/> />
</div> </div>
</div> </div>
</div> </div> -->
</div>
<div class="ml30 mt30"> <div class="ml30 mt30 mb80">
<van-radio-group v-model="radio"> <van-radio-group v-model="radio">
<van-radio name="1">销售人员已见证各证件原件并拍照上传</van-radio> <van-radio name="1">销售人员已见证各证件原件并拍照上传</van-radio>
</van-radio-group> </van-radio-group>
</div>
</div> </div>
<div class="bg-white bottom-btn"> <div class="bg-white bottom-btn">
<van-button type="danger" class="attachmentManagement-next" size="large" :disabled="isDisabled" @click="next" v-no-more-click="1000">下一步</van-button> <van-button type="danger" class="attachmentManagement-next" size="large" :disabled="isDisabled" @click="next" v-no-more-click="1000">下一步</van-button>
@@ -297,7 +315,7 @@ export default {
// 银行卡正面 // 银行卡正面
fileListBank: [], fileListBank: [],
//银行卡反面 //银行卡反面
fileListBankBack: [], // fileListBankBack: [],
// 被保人身份证正面 // 被保人身份证正面
fileListIdFrontInsured: [], fileListIdFrontInsured: [],
// 被保人身份证反面 // 被保人身份证反面
@@ -307,12 +325,12 @@ export default {
// 被保人其他类型页面 // 被保人其他类型页面
fileLIstImgInsured: [], fileLIstImgInsured: [],
// 受益人 // 受益人
fileListtypebeneficiary: [], // fileListtypebeneficiary: [],
// fileLIstImgInsrued // fileLIstImgInsrued
// 其他 // 其他
fileListOtherOne: [], // fileListOtherOne: [],
fileListOtherTwo: [], // fileListOtherTwo: [],
fileListOtherThree: [], // fileListOtherThree: [],
// 单选框 // 单选框
radio: '', radio: '',
// 是否可以点击下一步 // 是否可以点击下一步
@@ -337,7 +355,8 @@ export default {
// 是哪个证件类型 // 是哪个证件类型
id: '', id: '',
// 投保人被保人是否是一个人 1为同一个人 // 投保人被保人是否是一个人 1为同一个人
relationToAppnt: '' relationToAppnt: '',
changeCard: localStorage.changeCard
} }
}, },
created() { created() {
@@ -362,6 +381,9 @@ export default {
} }
}, },
mounted() { mounted() {
if (this.changeCard) {
document.body.style.backgroundColor = '#fff'
}
let that = this let that = this
// 投被保人是否同人 // 投被保人是否同人
that.relationToAppnt = JSON.parse(window.localStorage.getItem('saleInsuredPersonInfo')).relationToAppnt that.relationToAppnt = JSON.parse(window.localStorage.getItem('saleInsuredPersonInfo')).relationToAppnt
@@ -507,8 +529,8 @@ export default {
this.fileLIstImg = [] this.fileLIstImg = []
} else if (detail.name == 'fileListBank') { } else if (detail.name == 'fileListBank') {
this.fileListBank = [] this.fileListBank = []
} else if (detail.name == 'fileListBankBack') { // } else if (detail.name == 'fileListBankBack') {
this.fileListBankBack = [] // this.fileListBankBack = []
} else if (detail.name == 'fileListIdFrontInsured') { } else if (detail.name == 'fileListIdFrontInsured') {
this.fileListIdFrontInsured = [] this.fileListIdFrontInsured = []
} else if (detail.name == 'fileListIdBackInsured') { } else if (detail.name == 'fileListIdBackInsured') {
@@ -517,24 +539,24 @@ export default {
this.fileListBankInsured = [] this.fileListBankInsured = []
} else if (detail.name == 'fileLIstImgInsured') { } else if (detail.name == 'fileLIstImgInsured') {
this.fileLIstImgInsured = [] this.fileLIstImgInsured = []
} else if (detail.name == 'fileListOtherOne') { // } else if (detail.name == 'fileListOtherOne') {
this.fileListOtherOne = [] // this.fileListOtherOne = []
} else if (detail.name == 'fileListOtherTwo') { // } else if (detail.name == 'fileListOtherTwo') {
this.fileListOtherTwo = [] // this.fileListOtherTwo = []
} else if (detail.name == 'fileListOtherThree') { // } else if (detail.name == 'fileListOtherThree') {
this.fileListOtherThree = [] // this.fileListOtherThree = []
} else if (detail.name == 'saleInsuredInfoOther') { } else if (detail.name == 'saleInsuredInfoOther') {
this.saleInsuredInfoOther = [] this.saleInsuredInfoOther = []
} else if (detail.name == 'saleInsuredPersonInfoOther') { } else if (detail.name == 'saleInsuredPersonInfoOther') {
this.saleInsuredPersonInfoOther = [] this.saleInsuredPersonInfoOther = []
} else if (detail.name == 'fileListtypebeneficiary') { // } else if (detail.name == 'fileListtypebeneficiary') {
that.fileListtypebeneficiary.map((item, index, array) => { // that.fileListtypebeneficiary.map((item, index, array) => {
if (item.content == file.content) { // if (item.content == file.content) {
array.splice(index, 1) // array.splice(index, 1)
} else { // } else {
return // return
} // }
}) // })
} }
this.deleteImg(file) this.deleteImg(file)
}) })
@@ -555,9 +577,9 @@ export default {
case 'fileListBank': case 'fileListBank':
that.type = type that.type = type
break break
case 'fileListBankBack': // case 'fileListBankBack':
that.type = type // that.type = type
break // break
case 'fileListOther': case 'fileListOther':
that.type = type that.type = type
break break
@@ -642,7 +664,7 @@ export default {
that.type == 'fileListIdBack' || that.type == 'fileListIdBack' ||
that.type == 'fileLIstImg' || that.type == 'fileLIstImg' ||
that.type == 'fileListBank' || that.type == 'fileListBank' ||
that.type == 'fileListBankBack' || // that.type == 'fileListBankBack' ||
that.type == 'saleInsuredInfoOther' that.type == 'saleInsuredInfoOther'
) { ) {
// 是投保人 // 是投保人
@@ -718,9 +740,9 @@ export default {
} else if (that.type == 'fileListBank') { } else if (that.type == 'fileListBank') {
//银行卡正面 //银行卡正面
imageInfoType = '3' imageInfoType = '3'
} else if (that.type == 'fileListBankBack') { // } else if (that.type == 'fileListBankBack') {
//银行卡反面 // //银行卡反面
imageInfoType = '19' // imageInfoType = '19'
} }
let obj = { let obj = {
businessNo: that.orderNo, businessNo: that.orderNo,
@@ -804,21 +826,20 @@ export default {
} }
that.list.push(obj) that.list.push(obj)
} else if (that.type == 'fileListtypebeneficiary') { // } else if (that.type == 'fileListtypebeneficiary') {
// 是受益人 // // 是受益人
let type = '3' // let type = '3'
let obj = { // let obj = {
businessNo: that.orderNo, // businessNo: that.orderNo,
businessType: '', // businessType: '',
imageInfoType: '21', // imageInfoType: '21',
rgssUrl: encodeURI(res.path).replace(/\+/g, '%2B'), // rgssUrl: encodeURI(res.path).replace(/\+/g, '%2B'),
subBusinessType: type, // subBusinessType: type,
subBusinessNo: '', // subBusinessNo: '',
fileName: that.imgName // fileName: that.imgName
} // }
that.list.push(obj) // that.list.push(obj)
} }
} else { } else {
switch (that.type) { switch (that.type) {
case 'fileListIdFront': case 'fileListIdFront':
@@ -833,9 +854,9 @@ export default {
case 'fileListBank': case 'fileListBank':
that.fileListBank = [] that.fileListBank = []
break break
case 'fileListBankBack': // case 'fileListBankBack':
that.fileListBankBack = [] // that.fileListBankBack = []
break // break
case 'fileListOther': case 'fileListOther':
that.fileListOther = [] that.fileListOther = []
break break
@@ -900,16 +921,15 @@ export default {
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo'), orderNo: window.localStorage.getItem('orderNo'),
productCode: JSON.parse(localStorage.trialList)[0].productCode productCode: this.$route.query.edit ? localStorage.productCode : JSON.parse(localStorage.trialList)[0].productCode
}, },
appntDTO: { appntDTO: {
relationToInsured: that.saleInsuredPersonInfo.relationToAppnt relationToInsured: that.saleInsuredPersonInfo.relationToAppnt
}, },
mediaDTOS: that.list mediaDTOS: that.list
}, },
orderType: 'MEDIA_ORDER' orderType: that.changeCard ? 'MEDIANEW_ORDER' : 'MEDIA_ORDER'
} }
saveInformation(data).then(res => { saveInformation(data).then(res => {
if (res.result == '0') { if (res.result == '0') {
@@ -972,7 +992,7 @@ export default {
fileListIdFront, fileListIdFront,
fileListIdBack, fileListIdBack,
fileListBank, fileListBank,
fileListBankBack, // fileListBankBack,
radio, radio,
fileLIstImg, fileLIstImg,
fileListIdFrontInsured, fileListIdFrontInsured,
@@ -980,15 +1000,15 @@ export default {
fileListBankInsured, fileListBankInsured,
fileLIstImgInsured, fileLIstImgInsured,
saleInsuredPersonInfoOther, saleInsuredPersonInfoOther,
saleInsuredInfoOther, saleInsuredInfoOther
fileListtypebeneficiary // fileListtypebeneficiary
} = this } = this
console.log(this) console.log(this)
return { return {
fileListIdFront, fileListIdFront,
fileListIdBack, fileListIdBack,
fileListBank, fileListBank,
fileListBankBack, // fileListBankBack,
radio, radio,
fileListIdFrontInsured, fileListIdFrontInsured,
fileListIdBackInsured, fileListIdBackInsured,
@@ -996,124 +1016,138 @@ export default {
fileLIstImgInsured, fileLIstImgInsured,
fileLIstImg, fileLIstImg,
saleInsuredPersonInfoOther, saleInsuredPersonInfoOther,
saleInsuredInfoOther, saleInsuredInfoOther
fileListtypebeneficiary // fileListtypebeneficiary
} }
} }
}, },
watch: { watch: {
listenChange(val) { listenChange(val) {
let that = this let that = this
if ( if (this.changeCard) {
(val.fileListIdFront.length != '0' && //从转账不成功跳过来的
val.fileListIdBack.length != '0' && if (val.fileListBank.length != '0' && val.radio !== '') {
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 !== '') ||
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.radio !== '') ||
(val.fileLIstImg.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.radio !== '') ||
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileLIstImgInsured.length != '0' &&
val.radio !== '') ||
(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.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.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.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.fileListBankBack.length != '0' &&
val.fileLIstImg.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
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.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.fileListBankBack.length != '0' &&
val.radio !== '' &&
this.relationToAppnt == '1')
) {
if ((that.typebeneficiary && val.fileListtypebeneficiary.length != '0') || (!that.typebeneficiary && val.fileListtypebeneficiary.length == '0')) {
that.isDisabled = false that.isDisabled = false
} else { } else {
that.isDisabled = true that.isDisabled = true
} }
} else { } else {
that.isDisabled = true if (
(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 !== '') ||
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.radio !== '') ||
(val.fileLIstImg.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.radio !== '') ||
(val.fileListIdFront.length != '0' &&
val.fileListIdBack.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileLIstImgInsured.length != '0' &&
val.radio !== '') ||
(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.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.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.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.fileListBankBack.length != '0' &&
val.fileLIstImg.length != '0' &&
val.radio !== '') ||
(val.saleInsuredInfoOther.length != '0' &&
val.fileListBankInsured.length != '0' &&
val.fileListIdFrontInsured.length != '0' &&
val.fileListIdBackInsured.length != '0' &&
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.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.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

@@ -78,6 +78,7 @@ export default {
if (localStorage.fromAddBeneficiaryInfo) { if (localStorage.fromAddBeneficiaryInfo) {
this.type = '2' this.type = '2'
this.beneficiaries = this.beneficiaries.concat(JSON.parse(localStorage.beneficiaryInfo)) this.beneficiaries = this.beneficiaries.concat(JSON.parse(localStorage.beneficiaryInfo))
this.type = '2'
console.log(this.beneficiaries) console.log(this.beneficiaries)
} }
//如果是从编辑进来 //如果是从编辑进来

View File

@@ -2,82 +2,87 @@
<div class="insuranceInformation-container pb50"> <div class="insuranceInformation-container pb50">
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示阅读时长需在${this.Time ? this.time : this.number}秒以上` }}</van-notice-bar> <van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示阅读时长需在${this.Time ? this.time : this.number}秒以上` }}</van-notice-bar>
<div class="bg-white flex justify-content-c flex-direction-colunm align-it<po>ems-center p20 fs14"> <div class="bg-white flex justify-content-c flex-direction-colunm align-it<po>ems-center p20 fs14">
<h2 style="text-align:center" class="mb20">投保须知</h2> <div v-if="!changeCard">
<p class="mb20">尊敬的客户</p> <h2 style="text-align:center" class="mb20">投保须知</h2>
<p class="mb20"> <p class="mb20">尊敬的客户</p>
感谢您选择国富人寿保险股份有限公司以下简称我公司为了充分维护您的权益在填写电子投保书前敬请您注意以下事项 <p class="mb20">
</p> 感谢您选择国富人寿保险股份有限公司以下简称我公司为了充分维护您的权益在填写电子投保书前敬请您注意以下事项
<p class="mb20"> </p>
1.您的本次投保信息将以电子投保书的形式提交给我公司 <p class="mb20">
</p> 1.您的本次投保信息将以电子投保书的形式提交给我公司
<p class="mb20"> </p>
2.电子投保书的填写本电子投保书是您与我公司订立保险合同的重要组成部分为保障您的权益请务必保证电子投保书各项内容为投保人和被保险人如实准确填写<span <p class="mb20">
class="fw600" 2.电子投保书的填写本电子投保书是您与我公司订立保险合同的重要组成部分为保障您的权益请务必保证电子投保书各项内容为投保人和被保险人如实准确填写<span
>依据中华人民共和国保险法的有关规定保险公司就被保险人有关情况的询问您应当履行如实告知义务否则我公司有权依法解除保险合同并对保险合同解除前发生的保险事故不承担保险责任所有告知事项均应以书面告知为准口头告知无效</span class="fw600"
> >依据中华人民共和国保险法的有关规定保险公司就被保险人有关情况的询问您应当履行如实告知义务否则我公司有权依法解除保险合同并对保险合同解除前发生的保险事故不承担保险责任所有告知事项均应以书面告知为准口头告知无效</span
</p> >
<p class="mb20"> </p>
3.投保信息真实性为保障您的权益请您务必真实准确地填写相关投保信息包括但不限于投保人被保险人和受益人的姓名性别出生日期证件类型证件号码本人联系电话和联系地址等如果您提供的信息不真实不准确或不完整可能导致保险合同无效或您的合法权益受损等 <p class="mb20">
</p> 3.投保信息真实性为保障您的权益请您务必真实准确地填写相关投保信息包括但不限于投保人被保险人和受益人的姓名性别出生日期证件类型证件号码本人联系电话和联系地址等如果您提供的信息不真实不准确或不完整可能导致保险合同无效或您的合法权益受损等
<p class="mb20"> </p>
4.您在投保时如有疑问投保成功后需要查询保单信息投保成功后如有资料需要变更以及投诉请您关注国富人寿保险官方微信公众号或前往我公司客户服务中心进行办理同时还可拨打 <p class="mb20">
0771-5723168 咨询 4.您在投保时如有疑问投保成功后需要查询保单信息投保成功后如有资料需要变更以及投诉请您关注国富人寿保险官方微信公众号或前往我公司客户服务中心进行办理同时还可拨打
</p> 0771-5723168 咨询
<p class="mb20">5.请您仔细阅读保险条款了解理赔申请方式及理赔应备文件</p> </p>
<p class="mb20"> <p class="mb20">5.请您仔细阅读保险条款了解理赔申请方式及理赔应备文件</p>
6.我公司可为您提供电子保险合同或纸质保险合同如您选择电子保险合同投保成功后我公司将向您投保时所提供的电子邮箱地址发送电子保险合同如您选择纸质保险合同投保成功后我公司线下为您递送纸质保险合同为维护您的合法权益方便我公司为您提供优质服务请您在收到电子保险合同或纸质保险合同仔细阅读各项内容并确认无误后关注国富人寿保险官方微信公众号进行保险合同签收犹豫期从保险合同签收日次日起开始计算犹豫期内您有全额退保的权利 <p class="mb20">
犹豫期过后我公司向您投保时提供的电子邮箱发送电子发票请您注意查收 6.我公司可为您提供电子保险合同或纸质保险合同如您选择电子保险合同投保成功后我公司向您投保时提供的电子邮箱地址发送电子保险合同如您选择纸质保险合同投保成功后我公司线下为您递送纸质保险合同为维护您的合法权益方便我公司为您提供优质服务请您在收到电子保险合同或纸质保险合同仔细阅读各项内容并确认无误后关注国富人寿保险官方微信公众号进行保险合同签收犹豫期从保险合同签收日次日起开始计算犹豫期内您有全额退保的权利
</p> 犹豫期过后我公司向您投保时提供的电子邮箱发送电子发票请您注意查收
<p class="mb20"> </p>
7.本保险产品销售区域广西地区<br /> <p class="mb20">
我公司分支机构信息详见官网信息公示官网地址www.e-guofu.com) 7.本保险产品销售区域广西地区<br />
</p> 我公司分支机构信息详见官网信息公示官网地址www.e-guofu.com)
<p class="mb20">8.以身故为给付保险金条件的保险合同未经被保险人同意并认可保险金额的保险合同无效</p> </p>
<p class="mb20">9.请根据自身情况选择合适的保险产品以确保本次投保计划符合您的保险需求提前终止或放弃之前有效的保险合同可能使您蒙受经济上的损失</p> <p class="mb20">8.以身故为给付保险金条件的保险合同未经被保险人同意并认可保险金额的保险合同无效</p>
<p class="mb20"> <p class="mb20">9.请根据自身情况选择合适的保险产品以确保本次投保计划符合您的保险需求提前终止或放弃之前有效的保险合同可能使您蒙受经济上的损失</p>
10.我公司采集客户信息的用途包括但不限于计算保费核保寄送保单客户回访续期提醒和寄送通知书推荐产品等为了保证您的权益如果联系电话和联系地址等信息发生变更应及时办理更正手续 <p class="mb20">
</p> 10.我公司采集客户信息的用途包括但不限于计算保费核保寄送保单客户回访续期提醒和寄送通知书推荐产品等为了保证您的权益如果联系电话和联系地址等信息发生变更应及时办理更正手续
<p class="mb20">11.我公司承诺未经您的同意不会将客户信息用于第三方机构的销售活动</p> </p>
<p class="mb20"> <p class="mb20">11.我公司承诺未经您的同意不会将客户信息用于第三方机构的销售活动</p>
12.其他服务说明 1投保承保流程<br /> <p class="mb20">
选择保险产品点击购买填写投保信息确认信息和金额在线支付收到承保通知投保成功<br /> 12.其他服务说明 1投保承保流程<br />
2保险费支付方式<br /> 选择保险产品点击购买填写投保信息确认信息和金额在线支付收到承保通知投保成功<br />
本产品的保险费将由我公司从您投保时所授权的银行账号划扣<br /> 2保险费支付方式<br />
3保单变更办理流程<br /> 本产品的保险费将由我公司从您投保时所授权的银行账号划扣<br />
若您需办理保单变更业务可关注 国富人寿保险微信公众号点击我的菜单注册用户进入我的保单-保单变更服务完成在线办理或提交申请材料<br /> 3保单变更办理流程<br />
也可登录我公司官方网站www.e-guofu.com 若您需办理保单变更业务可关注 国富人寿保险微信公众号点击我的菜单注册用户进入我的保单-保单变更服务完成在线办理或提交申请材料<br />
客服中心-单证下载下载保单变更申请书等单证填写后会同您的有效身份证件等申请资料发送电子邮件至我公司客服邮箱service@e-guofu.com我公司有专人进行受理<br /> 也可登录我公司官方网站www.e-guofu.com
也可前往我公司客户服务中心柜面办理保单变更业务<br /> 客服中心-单证下载下载保单变更申请书等单证填写后会同您的有效身份证件等申请资料发送电子邮件至我公司客服邮箱service@e-guofu.com我公司有专人进行受理<br />
如需帮助请咨询我公司客户服务热线0771-5723168 <br /> 也可前往我公司客户服务中心柜面办理保单变更业务<br />
4保险金支付和保全退费<br /> 如需帮助请咨询我公司客户服务热线0771-5723168 <br />
各类保险金将根据权益人授权的银行账号进行转账支付<br /> 4保险金支付和保全退费<br />
保单退费款项按客户申请时授权的银行账号进行转账支付<br /> 各类保险金将根据权益人授权的银行账号进行转账支付<br />
</p> 保单退费款项按客户申请时授权的银行账号进行转账支付<br />
<h2 style="text-align:center" class="mb20">转账授权书</h2> </p>
<p>本人授权国富人寿保险股份有限公司以下简称国富人寿及本人指定之银行按下述授权内容进行保险费的划扣及相关权益的给付</p> </div>
<p>本人声明</p> <div v-if="!changeCard || changeCard">
<p>1本人同意委托国富人寿从本人的授权账户中扣取本保险合同所需缴纳的保险费并保证授权账户中有足够的金额支付应交保险费</p> <h2 style="text-align:center" class="mb20">转账授权书</h2>
<p> <p>本人授权国富人寿保险股份有限公司以下简称国富人寿及本人指定之银行按下述授权内容进行保险费的划扣及相关权益的给付</p>
2本人确认授权的银行账户所有人为投保人本人账户的开户银行户名和账号均真实有效续期交费账户与首期保费交纳账户为同一账户 <p>本人声明</p>
本人所提供的授权账户必须是本人的个人结算账户借记卡个人活期结算存折 <p>1本人同意委托国富人寿从本人的授权账户中扣取本保险合同所需缴纳的保险费并保证授权账户中有足够的金额支付应交保险费</p>
</p> <p>
2本人确认授权的银行账户所有人为投保人本人账户的开户银行户名和账号均真实有效续期交费账户与首期保费交纳账户为同一账户
本人所提供的授权账户必须是本人的个人结算账户借记卡个人活期结算存折
</p>
<p> <p>
3本人同意若因账户挂失账户冻结账户余额不足或其 3本人同意若因账户挂失账户冻结账户余额不足或其
他非银行原因造成转账不成功致使产生保险合同终止的任何后果或投资账户的费用损失因此引起的责任概由本人承担 他非银行原因造成转账不成功致使产生保险合同终止的任何后果或投资账户的费用损失因此引起的责任概由本人承担
</p> </p>
<p>4如本人在同一指定账户内同时授权两张或两张以上保险单中的保险费或其他自动转账业务时本人同意依照国富人寿规定的转账顺序转账</p> <p>4如本人在同一指定账户内同时授权两张或两张以上保险单中的保险费或其他自动转账业务时本人同意依照国富人寿规定的转账顺序转账</p>
<p>5本人投保后若办理退保或退费业务同意国富人寿将应退金额通过银行划转入该账户</p> <p>5本人投保后若办理退保或退费业务同意国富人寿将应退金额通过银行划转入该账户</p>
<p> <p>
6本人因故结清账户会重新开立账户并及时通过国富人寿进行变更如本人欲终止本授权应立即向国富人寿递交终止的书面申请由国富人寿知会银行停止转账若因本人未及时办理账户变更手续而导致退保给付金无法按时给付则同意国富人寿按退保申请日的给付金额支付 6本人因故结清账户会重新开立账户并及时通过国富人寿进行变更如本人欲终止本授权应立即向国富人寿递交终止的书面申请由国富人寿知会银行停止转账若因本人未及时办理账户变更手续而导致退保给付金无法按时给付则同意国富人寿按退保申请日的给付金额支付
</p> </p>
<p>7对于一年期以上的产品国富人寿可在保险费约定支付日之前及时通知本人交纳续期保险费</p> <p>7对于一年期以上的产品国富人寿可在保险费约定支付日之前及时通知本人交纳续期保险费</p>
</div>
</div> </div>
<van-radio-group v-model="radio" class="pb10 pb20 pl30"> <van-radio-group v-model="radio" class="pb10 pb20 pl30">
<van-radio name="1" @click="click" class="fs14"> <van-radio name="1" @click="click" class="fs14">
本人已详细阅读保险条款并明确以上事项 <span v-if="changeCard">本人已详细阅读转账授权书并明确以上事项</span>
<span v-else>本人已详细阅读保险条款并明确以上事项 </span>
</van-radio> </van-radio>
</van-radio-group> </van-radio-group>
<div class="bg-white bottom-btn"> <div class="bg-white bottom-btn">
@@ -114,6 +119,7 @@ export default {
isDisable: true, isDisable: true,
// 是否在微信 // 是否在微信
isWeixin, isWeixin,
changeCard: localStorage.changeCard, //是否从修改银行卡号进来
productCode: localStorage.productCode //获取产品编号 productCode: localStorage.productCode //获取产品编号
} }
}, },
@@ -127,6 +133,7 @@ export default {
let that = this let that = this
// {{switchFlag.Time?pageVariable.msg:pageVariable.number}} // {{switchFlag.Time?pageVariable.msg:pageVariable.number}}
that.timeOut() that.timeOut()
document.title = this.changeCard ? '转账授权书' : '投保须知'
// Notify({ // Notify({
// type: 'warning', // type: 'warning',
// message: `提示:阅读时长需在${this.Time ? this.time : this.number}秒以上`, // message: `提示:阅读时长需在${this.Time ? this.time : this.number}秒以上`,
@@ -193,15 +200,18 @@ export default {
let that = this let that = this
if (that.signVal == '0' || that.signVal == '2') { if (that.signVal == '0' || that.signVal == '2') {
that.appntSign.map(item => { if (!that.changeCard) {
if (item.documentCode == '1') { that.appntSign.map(item => {
that.appntSign.signId = item.signId if (item.documentCode == '1') {
that.appntSign.documentCode = item.documentCode that.appntSign.signId = item.signId
that.appntSign.documentType = item.documentType that.appntSign.documentCode = item.documentCode
} that.appntSign.documentType = item.documentType
}) }
})
}
let data = { let data = {
orderType: 'SIGN_ORDER', orderType: that.changeCard ? 'SIGNNEW_ORDER' : 'SIGN_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo')
@@ -236,16 +246,43 @@ export default {
// console.log(res) // console.log(res)
// }) // })
//GFRS_M0003为万能型产品需要投保人签署产品说明书 //GFRS_M0003为万能型产品需要投保人签署产品说明书
let url = this.productCode == 'GFRS_M0003' ? 'productTip' : 'insuranceTip' let url = ''
this.$jump({ if (that.changeCard) {
flag: 'h5', url = 'SignatureConfirmation'
extra: { this.$jump({
url: location.origin + '/#/sale/' + url flag: 'h5',
}, extra: {
routerInfo: { url: location.origin + '/#/sale/SignatureConfirmation'
path: '/sale/' + url },
} routerInfo: {
}) path:
'/sale/signatureConfirmation?orderNo=' +
localStorage.orderNo +
'&token=' +
localStorage.token +
'&saleInsuredInfo=' +
localStorage.saleInsuredInfo +
'&saleInsuredPersonInfo=' +
localStorage.saleInsuredPersonInfo +
'&relationToAppnt=' +
JSON.parse(window.localStorage.getItem('saleInsuredPersonInfo')).relationToAppnt +
'&signInvalid=' +
sessionStorage.getItem('signInvalid') +
'&airSign=1'
}
})
} else {
url = this.productCode == 'GFRS_M0003' ? 'productTip' : 'insuranceTip'
this.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/sale/' + url
},
routerInfo: {
path: '/sale/' + url
}
})
}
} else { } else {
that.$toast(res.resultMessage) that.$toast(res.resultMessage)
} }
@@ -322,15 +359,17 @@ export default {
}) })
// console.log('that.appntSign.signId',that.appntSign,that.appntSign.signId,that.appntSign.documentCode,that.appntSign.documentType) // console.log('that.appntSign.signId',that.appntSign,that.appntSign.signId,that.appntSign.documentCode,that.appntSign.documentType)
if (that.signVal == '0' || that.signVal == '2') { if (that.signVal == '0' || that.signVal == '2') {
that.appntSign.map(item => { if (!that.changeCard) {
if (item.documentCode == '1') { that.appntSign.map(item => {
that.appntSign.signId = item.signId if (item.documentCode == '1') {
that.appntSign.documentCode = item.documentCode that.appntSign.signId = item.signId
that.appntSign.documentType = item.documentType that.appntSign.documentCode = item.documentCode
} that.appntSign.documentType = item.documentType
}) }
})
}
let data = { let data = {
orderType: 'SIGN_ORDER', orderType: that.changeCard ? 'SIGNNEW_ORDER' : 'SIGN_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo')
@@ -362,7 +401,12 @@ export default {
// axios.get(url).then(res => { // axios.get(url).then(res => {
// console.log(res) // console.log(res)
// }) // })
let url = this.productCode == 'GFRS_M0003' ? 'productTip' : 'insuranceTip' let url = ''
if (that.changeCard) {
url = 'SignatureConfirmation'
} else {
url = this.productCode == 'GFRS_M0003' ? 'productTip' : 'insuranceTip'
}
this.$jump({ this.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {

View File

@@ -26,10 +26,20 @@
@click="toSelect('2')" @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" v-validate="'required|idNo'" maxlength="18" label="证件号码" name="证件号码" placeholder="请输入" clearable> -->
<van-field v-model="userInfo.idNo" maxlength="18" required label="证件号码" v-validate="'required'" name="证件号码" placeholder="请输入" clearable @blur="getRelatedData(userInfo.idNo)"> <van-field
v-model="userInfo.idNo"
maxlength="18"
required
label="证件号码"
v-validate="'required'"
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-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')">证件扫描</van-button>
</van-field> </van-field>
<FieldDatePicter <!-- <FieldDatePicter
v-validate="'required'" v-validate="'required'"
label="证件起始日期" label="证件起始日期"
name="证件起始日期" name="证件起始日期"
@@ -39,17 +49,18 @@
@confirm="onDateConfirm($event, '0')" @confirm="onDateConfirm($event, '0')"
ref="certificateValidate" ref="certificateValidate"
:flag="true" :flag="true"
></FieldDatePicter> ></FieldDatePicter> -->
<FieldDatePicter <FieldDatePicter
:v-validate="{ required: certiexpiredateRequired }" :v-validate="{ required: certiexpiredateRequired }"
label="证件截止日期" label="证件截止日期"
name="证件截止日期" name="证件截止日期"
required :required="isRequired"
:value.sync="userInfo.certiexpiredate" :value.sync="userInfo.certiexpiredate"
type="date" type="date"
@confirm="onDateConfirm($event, '1')" @confirm="onDateConfirm($event, '1')"
ref="certiexpiredate" ref="certiexpiredate"
:flag="true" :flag="true"
:readonly="idLimit"
></FieldDatePicter> ></FieldDatePicter>
<div class="border-bt relative fs14 p10 flex align-center"> <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>
@@ -66,7 +77,17 @@
placeholder="请选择" placeholder="请选择"
@click="toSelect('1')" @click="toSelect('1')"
/> />
<van-field :value="census" required readonly label="户籍" name="户籍" v-validate="'required'" right-icon="arrow" placeholder="请选择" @click="censusShow = true" /> <van-field
:value="census"
required
readonly
label="户籍"
name="户籍"
v-validate="'required'"
right-icon="arrow"
placeholder="请选择"
@click="censusShow = true"
/>
<FieldDatePicter <FieldDatePicter
v-validate="'required'" v-validate="'required'"
label="出生日期" label="出生日期"
@@ -80,8 +101,17 @@
:maxDate="maxDate" :maxDate="maxDate"
></FieldDatePicter> ></FieldDatePicter>
<van-field required v-model="userInfo.mobile" clearable label="移动电话" name="移动电话" placeholder="请输入" v-validate="'required|mobile'" maxlength="11" /> <van-field
<van-field v-model="userInfo.authCode" center clearable label name="短信验证码" placeholder="请输入短信验证码" v-validate="'required'" maxlength="6"> required
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"> <van-button slot="button" size="small" type="danger" @click="getCode" :disabled="codeDisabled" v-no-more-click="1000">
{{ codeDisabled ? `${countDown}s后重新获取` : '发送验证码' }} {{ codeDisabled ? `${countDown}s后重新获取` : '发送验证码' }}
</van-button> </van-button>
@@ -108,15 +138,15 @@
clearable clearable
@blur="checkAvoirdupois(userInfo.avoirdupois)" @blur="checkAvoirdupois(userInfo.avoirdupois)"
/> />
<div class="p15 fs14"> <div class="p15 pl8 fs14">
<van-radio-group v-model="isElecCont" class="flex"> <van-radio-group v-model="isElecCont" class="flex">
<label>保单形式</label> <label><i class="red pr5">*</i>保单形式</label>
<van-radio name="0" class="ml30">电子</van-radio> <van-radio name="0" class="ml30">电子</van-radio>
<van-radio name="2" class="ml20">电子+纸质</van-radio> <van-radio name="2" class="ml20">电子+纸质</van-radio>
</van-radio-group> </van-radio-group>
</div> </div>
</van-cell-group> </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"> <van-cell-group :border="false">
<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>
@@ -131,14 +161,7 @@
v-validate="'required'" v-validate="'required'"
@click="toSelect('3')" @click="toSelect('3')"
/> />
<select-radio <select-radio :radios="medicalRadio" v-validate="'required'" label="有无社保" name="有无社保" required :value.sync="userInfo.medical"></select-radio>
:radios="medicalRadio"
v-validate="'required'"
label="有无社保"
name="有无社保"
required
:value.sync="userInfo.medical"
></select-radio>
<van-field <van-field
:value="userInfo.taxResidentId | idToText('taxIdentity')" :value="userInfo.taxResidentId | idToText('taxIdentity')"
readonly readonly
@@ -214,8 +237,17 @@
right-icon="arrow" right-icon="arrow"
@click="toSelect('7')" @click="toSelect('7')"
/> />
<van-field v-model="userInfo.workcompany" required label="工作单位" name="工作单位" placeholder="请输入" v-validate="'required'" maxlength="50" clearable />
<van-field <van-field
v-model="userInfo.workcompany"
required
label="工作单位"
name="工作单位"
placeholder="请输入"
v-validate="'required'"
maxlength="50"
clearable
/>
<!-- <van-field
v-model="areaName" v-model="areaName"
readonly readonly
label="单位地址" label="单位地址"
@@ -225,14 +257,14 @@
placeholder="请选择" placeholder="请选择"
v-validate="'required'" v-validate="'required'"
@click="areaShow = true" @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"> <!-- <div class="border-bt relative fs14 p10 flex align-center">
<!-- <van-checkbox v-model="companyDefault" :disabled="homeDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox> --> <van-checkbox v-model="companyDefault" :disabled="homeDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox>
<van-radio name="0">设为联系地址</van-radio> <van-radio name="0">设为联系地址</van-radio>
</div> </div> -->
<van-field v-model="userInfo.companyZip" required label="邮编" name="邮编" placeholder="请输入" v-validate="'required|zipCode'" maxlength="6" clearable /> <!-- <van-field v-model="userInfo.companyZip" required 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.companyPhone" label="单位电话" name="单位电话" placeholder="非必填" maxlength="13" clearable /> -->
</van-cell-group> </van-cell-group>
<!-- 家庭信息 --> <!-- 家庭信息 -->
<van-cell-group> <van-cell-group>
@@ -269,12 +301,12 @@
v-validate="'required'" v-validate="'required'"
@click="homeShow = true" @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"> <!-- <div class="border-bt relative fs14 p10 flex align-center">
<!-- <van-checkbox v-model="homeDefault" :disabled="companyDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox> --> <van-checkbox v-model="homeDefault" :disabled="companyDefault" class="fr" @change="setAddress">设为联系地址</van-checkbox>
<van-radio name="1">设为联系地址</van-radio> <van-radio name="1">设为联系地址</van-radio>
</div> </div> -->
<van-field v-model="userInfo.homeZip" required label="邮编" name="邮编" placeholder="请输入" v-validate="'required|zipCode'" maxlength="6" clearable /> <!-- <van-field v-model="userInfo.homeZip" required 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.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="13" clearable />
</van-cell-group> </van-cell-group>
</van-radio-group> </van-radio-group>
@@ -285,12 +317,12 @@
<van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" /> <van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" />
</van-popup> </van-popup>
<!-- 地区选择 --> <!-- 地区选择 -->
<van-popup v-model="areaShow" position="bottom"> <!-- <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> -->
<!-- 家庭地址选择 --> <!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom"> <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="areaLists" value="450000" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup> </van-popup>
<!-- 户籍选择 --> <!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom"> <van-popup v-model="censusShow" position="bottom">
@@ -310,6 +342,7 @@ import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
import CustomerPicker from '@/components/ebiz/customer/CustomerPicker' import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
import DataDictionary from '@/assets/js/utils/data-dictionary' import DataDictionary from '@/assets/js/utils/data-dictionary'
import areaList from '@/assets/js/utils/area' import areaList from '@/assets/js/utils/area'
import areaLists from '@/assets/js/utils/areaNew'
import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail } from '@/api/ebiz/sale/sale' import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail } from '@/api/ebiz/sale/sale'
import utilsAge from '@/assets/js/utils/age' import utilsAge from '@/assets/js/utils/age'
import getAreaName from '@/assets/js/utils/get-area-name' import getAreaName from '@/assets/js/utils/get-area-name'
@@ -364,14 +397,14 @@ export default {
countDown: 60, //倒计时 countDown: 60, //倒计时
certiexpiredateRequired: true, //证件截止日期是否需要校验 certiexpiredateRequired: true, //证件截止日期是否需要校验
popupShow: false, popupShow: false,
areaShow: false, //省级联动 // areaShow: false, //省级联动
homeShow: false, homeShow: false,
censusShow: false, //户籍联动 censusShow: false, //户籍联动
pickerType: undefined, pickerType: undefined,
columns: [], columns: [],
valueKey: 'text', valueKey: 'text',
census: '', //户籍 census: '', //户籍
areaName: '', //单位地址 // areaName: '', //单位地址
homeName: '', //家庭地址 homeName: '', //家庭地址
companyDefault: false, //设置公司地址为默认地址 companyDefault: false, //设置公司地址为默认地址
homeDefault: false, //设置家庭地址为默认地址 homeDefault: false, //设置家庭地址为默认地址
@@ -379,6 +412,7 @@ export default {
sessionId: '', //后台返回的 id sessionId: '', //后台返回的 id
effectiveDateTypeAble: false, //长期按钮是否禁用 effectiveDateTypeAble: false, //长期按钮是否禁用
isElecCont: '', // 保单类型 0 为电子 2 为纸质加电子 isElecCont: '', // 保单类型 0 为电子 2 为纸质加电子
isRequired: '', //长期前是否有*
userInfo: { userInfo: {
name: '', //投保人姓名 name: '', //投保人姓名
sex: '0', //投保人性别 sex: '0', //投保人性别
@@ -386,7 +420,7 @@ export default {
birthday: '', birthday: '',
idType: '1', //证件类型 idType: '1', //证件类型
idNo: '', //证件号码 idNo: '', //证件号码
certificateValidate: '', //证件起始日期 // certificateValidate: '', //证件起始日期
certiexpiredate: '', //证件到期时间 certiexpiredate: '', //证件到期时间
effectiveDateType: false, //是否长期 effectiveDateType: false, //是否长期
occupationCode: '', //职业类别编码 occupationCode: '', //职业类别编码
@@ -413,27 +447,29 @@ export default {
liabilitiesMoney: '', //负债金额 liabilitiesMoney: '', //负债金额
postcode: '', //邮编 postcode: '', //邮编
officeTel: '', //单位电话 officeTel: '', //单位电话
companyProvince: '', //单位省 // companyProvince: '', //单位省
companyCity: '', //单位市 // companyCity: '', //单位市
companyArea: '', //单位区 // companyArea: '', //单位区
companyAddress: '', //单位详细地址 // companyAddress: '', //单位详细地址
companyZip: '', //单位邮编 // companyZip: '', //单位邮编
companyPhone: '', //单位电话 // companyPhone: '', //单位电话
homeProvince: '', //家庭省 homeProvince: '', //家庭省
homeCity: '', //家庭市 homeCity: '', //家庭市
homeArea: '', //家庭区 homeArea: '', //家庭区
homeAddress: '', //家庭详细地址 homeAddress: '', //家庭详细地址
homeZip: '', //家庭邮编 // homeZip: '', //家庭邮编
homePhone: '', //家庭电话 homePhone: '', //家庭电话
householdProvince: '', //户籍省 householdProvince: '', //户籍省
householdCity: '', //户籍市 householdCity: '' //户籍市
addressStatus: '0', //是否是联系地址 // addressStatus: '0' //是否是联系地址
}, },
areaList: areaList, areaList: areaList,
areaLists: areaLists,
currentPopupIndex: '', currentPopupIndex: '',
customerShowPicker: false, customerShowPicker: false,
occupationShowPicker: false, occupationShowPicker: false,
timeId: null timeId: null,
idLimit: false //证件起止日期是否只读
} }
}, },
created() { created() {
@@ -450,7 +486,7 @@ export default {
//有无社保 //有无社保
this.userInfo.medical = '1' this.userInfo.medical = '1'
//设为联系地址 //设为联系地址
this.userInfo.addressStatus = '0' // this.userInfo.addressStatus = '0'
//证件类型 //证件类型
this.userInfo.idType = '1' this.userInfo.idType = '1'
//国家/地区 //国家/地区
@@ -555,24 +591,24 @@ export default {
onDateConfirm(val, type) { onDateConfirm(val, type) {
console.log(type) console.log(type)
switch (type) { switch (type) {
case '0': // case '0':
{ // {
//证件起始日期 // //证件起始日期
//如果录入日期早于出生日期或晚于当前日期 // //如果录入日期早于出生日期或晚于当前日期
if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) { // if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) {
this.userInfo.certificateValidate = '' // this.userInfo.certificateValidate = ''
this.$refs.certificateValidate.date = '' // this.$refs.certificateValidate.date = ''
return this.$toast('证件起始日期填写错误') // return this.$toast('证件起始日期填写错误')
} // }
// 计算年龄 // // 计算年龄
if (this.userInfo.idType == '1') { // if (this.userInfo.idType == '1') {
let age = utilsAge.getAge(this.userInfo.birthday, new Date()) // let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用 // // 长期按钮是否禁用
this.effectiveDateTypeAble = age <= 45 // this.effectiveDateTypeAble = age <= 45
} // }
} // }
break // break
case '1': case '1':
{ {
console.log('证件截止日期') console.log('证件截止日期')
@@ -654,7 +690,7 @@ export default {
this.userInfo.birthday = data.birthday //出生日期 this.userInfo.birthday = data.birthday //出生日期
this.userInfo.idType = data.customerIdType //证件类型 this.userInfo.idType = data.customerIdType //证件类型
this.userInfo.idNo = data.customerIdNumber //证件类别 this.userInfo.idNo = data.customerIdNumber //证件类别
this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期 // this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期
this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期 this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期 this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期
this.userInfo.occupationCode = data.occupationCode //职业类别编码 this.userInfo.occupationCode = data.occupationCode //职业类别编码
@@ -676,17 +712,17 @@ export default {
this.userInfo.familyAnnualIncome = data.familyAnnualIncome //家庭年收入 this.userInfo.familyAnnualIncome = data.familyAnnualIncome //家庭年收入
this.userInfo.email = data.email //电子邮箱 this.userInfo.email = data.email //电子邮箱
this.userInfo.liabilitiesMoney = data.liabilitiesMoney //负债金额 this.userInfo.liabilitiesMoney = data.liabilitiesMoney //负债金额
this.userInfo.companyProvince = data.companyProvince //单位省 // this.userInfo.companyProvince = data.companyProvince //单位省
this.userInfo.companyCity = data.companyCity //单位市 // this.userInfo.companyCity = data.companyCity //单位市
this.userInfo.companyArea = data.companyArea //单位区 // this.userInfo.companyArea = data.companyArea //单位区
this.userInfo.companyAddress = data.companyAddress //单位详细地址 // this.userInfo.companyAddress = data.companyAddress //单位详细地址
this.userInfo.companyZip = data.companyZip //单位邮编 // this.userInfo.companyZip = data.companyZip //单位邮编
this.userInfo.companyPhone = data.companyPhone //单位电话 // this.userInfo.companyPhone = data.companyPhone //单位电话
this.userInfo.homeProvince = data.homeProvince //家庭省 this.userInfo.homeProvince = data.homeProvince //家庭省
this.userInfo.homeCity = data.homeCity //家庭市 this.userInfo.homeCity = data.homeCity //家庭市
this.userInfo.homeArea = data.homeArea //家庭区 this.userInfo.homeArea = data.homeArea //家庭区
this.userInfo.homeAddress = data.homeAddress //家庭详细地址 this.userInfo.homeAddress = data.homeAddress //家庭详细地址
this.userInfo.homeZip = data.homeZip //家庭邮编 // this.userInfo.homeZip = data.homeZip //家庭邮编
this.userInfo.homePhone = data.homePhone //家庭电话 this.userInfo.homePhone = data.homePhone //家庭电话
this.userInfo.householdProvince = data.province //户籍省 this.userInfo.householdProvince = data.province //户籍省
this.userInfo.householdCity = data.city //户籍市 this.userInfo.householdCity = data.city //户籍市
@@ -694,9 +730,9 @@ export default {
if (data.province.length) { if (data.province.length) {
this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍 this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍
} }
if (data.companyProvince.length) { // if (data.companyProvince.length) {
this.areaName = getAreaName([{ code: data.companyProvince }, { code: data.companyCity }, { code: data.companyArea }]) //单位地址 // this.areaName = getAreaName([{ code: data.companyProvince }, { code: data.companyCity }, { code: data.companyArea }]) //单位地址
} // }
if (data.homeProvince.length) { if (data.homeProvince.length) {
this.homeName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址 this.homeName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址
} }
@@ -708,7 +744,6 @@ export default {
this.getRelatedData(this.userInfo.idNo) this.getRelatedData(this.userInfo.idNo)
}, },
nextStep() { nextStep() {
// console.log(this.userInfo.idType) // console.log(this.userInfo.idType)
// console.log(this.userInfo.salarySource) // console.log(this.userInfo.salarySource)
// console.log(this.userInfo.otherSalarySource) // console.log(this.userInfo.otherSalarySource)
@@ -876,7 +911,7 @@ export default {
}) })
.then(() => { .then(() => {
// on confirm // on confirm
this.save('isShow=1') this.save('isShow=1')
console.log('success') console.log('success')
}) })
@@ -906,7 +941,7 @@ export default {
// system: 'agentApp', // system: 'agentApp',
// operateCodeType: '0' // operateCodeType: '0'
// } // }
params.orderDTO.appntDTO = this.userInfo params.orderDTO.appntDTO = this.userInfo
let resultData = await saveOrUpdateOrderInfo(params) let resultData = await saveOrUpdateOrderInfo(params)
if (resultData.result == 0) { if (resultData.result == 0) {
@@ -945,13 +980,13 @@ export default {
//区域选择 //区域选择
sureArea(area, type) { sureArea(area, type) {
switch (type) { switch (type) {
case '1': //单位地址 // case '1': //单位地址
this.areaName = getAreaName(area) // this.areaName = getAreaName(area)
;[this.userInfo.companyProvince, this.userInfo.companyCity, this.userInfo.companyArea] = [area[0].code, area[1].code, area[2].code] // ;[this.userInfo.companyProvince, this.userInfo.companyCity, this.userInfo.companyArea] = [area[0].code, area[1].code, area[2].code]
this.areaShow = false // this.areaShow = false
break // break
case '2': //家庭地址 case '2': //家庭地址
this.homeName = getAreaName(area) this.homeName = getAreaName(area, 'new')
;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code] ;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code]
this.homeShow = false this.homeShow = false
break break
@@ -963,17 +998,17 @@ export default {
} }
}, },
//设为联系地址 //设为联系地址
setAddress(val) { // setAddress(val) {
console.log(val) // console.log(val)
console.log(this.homeDefault) // console.log(this.homeDefault)
//上面是0下面是1 // //上面是0下面是1
if (this.homeDefault) { // if (this.homeDefault) {
this.userInfo.addressStatus = 1 // this.userInfo.addressStatus = 1
} // }
if (this.companyDefault) { // if (this.companyDefault) {
this.userInfo.addressStatus = 0 // this.userInfo.addressStatus = 0
} // }
}, // },
//获取验证码 //获取验证码
getCode() { getCode() {
if (this.userInfo.mobile == '') { if (this.userInfo.mobile == '') {
@@ -1015,16 +1050,19 @@ export default {
//勾选长期状态时,证件截止日期置空 //勾选长期状态时,证件截止日期置空
if (val) { if (val) {
this.userInfo.certiexpiredate = '' this.userInfo.certiexpiredate = ''
this.isRequired = false
this.idLimit = true
this.certiexpiredateRequired = false this.certiexpiredateRequired = false
} else { } else {
this.certiexpiredateRequired = true this.certiexpiredateRequired = true
this.isRequired = true
this.idLimit = false
} }
}, },
//获取身份证扫描信息 //获取身份证扫描信息
getIdentityInfo(data) { getIdentityInfo(data) {
getIdentityInfo(this, data, '1') getIdentityInfo(this, data, '1')
}, },
//校验身高 //校验身高
checkStature(val) { checkStature(val) {
console.log(val) console.log(val)
@@ -1063,6 +1101,16 @@ export default {
this.effectiveDateTypeAble = idToData(val).age < 45 this.effectiveDateTypeAble = idToData(val).age < 45
this.userInfo.birthday = idToData(val).birthday this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex this.userInfo.sex = idToData(val).sex
if (idToData(val).age >= 45) {
this.idLimit = true
this.isRequired = false
this.userInfo.effectiveDateType = true
this.effectiveDateTypeAble = true
} else {
this.idLimit = false
this.isRequired = true
this.userInfo.effectiveDateType = false
}
} }
}, },
computed: { computed: {

View File

@@ -51,7 +51,8 @@
@blur="getRelatedData(userInfo.idNo)" @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 v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')" v-no-more-click="1000"
>证件扫描</van-button> >证件扫描</van-button
>
</van-field> </van-field>
<FieldDatePicter <FieldDatePicter
v-validate="'required'" v-validate="'required'"
@@ -66,7 +67,7 @@
:readonly="isAppnt" :readonly="isAppnt"
:maxDate="currentTime" :maxDate="currentTime"
></FieldDatePicter> ></FieldDatePicter>
<FieldDatePicter <!-- <FieldDatePicter
v-validate="'required'" v-validate="'required'"
label="证件起始日期" label="证件起始日期"
name="证件起始日期" name="证件起始日期"
@@ -78,12 +79,12 @@
@confirm="onDateConfirm($event, '0')" @confirm="onDateConfirm($event, '0')"
ref="certificateValidate" ref="certificateValidate"
:readonly="isAppnt || idLimit" :readonly="isAppnt || idLimit"
></FieldDatePicter> ></FieldDatePicter> -->
<FieldDatePicter <FieldDatePicter
:v-validate="{ required: certiexpiredateRequired }" :v-validate="{ required: certiexpiredateRequired }"
label="证件截止日期" label="证件截止日期"
name="证件截止日期" name="证件截止日期"
required :required="isRequired"
:defaultDate="new Date()" :defaultDate="new Date()"
:value.sync="userInfo.certiexpiredate" :value.sync="userInfo.certiexpiredate"
type="date" type="date"
@@ -116,7 +117,17 @@
placeholder="请选择" placeholder="请选择"
@click="toSelect('1')" @click="toSelect('1')"
/> />
<van-field :value="census" required readonly label="户籍" name="户籍" v-validate="'required'" right-icon="arrow" placeholder="请选择" @click="areaChoose('1')" /> <van-field
:value="census"
required
readonly
label="户籍"
name="户籍"
v-validate="'required'"
right-icon="arrow"
placeholder="请选择"
@click="areaChoose('1')"
/>
<van-field <van-field
v-model="userInfo.mobile" v-model="userInfo.mobile"
@@ -129,7 +140,7 @@
maxlength="11" maxlength="11"
:readonly="isAppnt" :readonly="isAppnt"
/> />
<van-field <!-- <van-field
v-if="!isAppnt" v-if="!isAppnt"
v-model="userInfo.authCode" v-model="userInfo.authCode"
center center
@@ -143,8 +154,17 @@
<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后重新获取` : '发送验证码' codeDisabled ? `${countDown}s后重新获取` : '发送验证码'
}}</van-button> }}</van-button>
</van-field> </van-field> -->
<van-field v-model="userInfo.email" required label="电子邮箱" name="电子邮箱" placeholder="请输入" v-validate="'required|email'" clearable :readonly="isAppnt" /> <van-field
v-model="userInfo.email"
required
label="电子邮箱"
name="电子邮箱"
placeholder="请输入"
v-validate="'required|email'"
clearable
:readonly="isAppnt"
/>
<van-field <van-field
v-model="userInfo.stature" v-model="userInfo.stature"
label="身高(cm)" label="身高(cm)"
@@ -220,7 +240,7 @@
@on-click="selectClick('2')" @on-click="selectClick('2')"
@on-choose="chooseOccupation" @on-choose="chooseOccupation"
/> />
<van-field <van-field
:value="userInfo.salarySource | idToText('salarySource')" :value="userInfo.salarySource | idToText('salarySource')"
readonly readonly
label="收入来源" label="收入来源"
@@ -241,25 +261,6 @@
clearable clearable
maxlength="30" maxlength="30"
/> />
<!-- <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 <van-field
v-model="userInfo.averageAnnualIncome" v-model="userInfo.averageAnnualIncome"
label="平均年收入(万元)" label="平均年收入(万元)"
@@ -305,7 +306,7 @@
clearable clearable
:readonly="isAppnt" :readonly="isAppnt"
/> />
<van-field <!-- <van-field
v-model="areaName" v-model="areaName"
readonly readonly
label="单位地址" label="单位地址"
@@ -315,8 +316,8 @@
placeholder="请选择" placeholder="请选择"
v-validate="'required'" v-validate="'required'"
@click="areaChoose('3')" @click="areaChoose('3')"
/> /> -->
<van-field <!-- <van-field
v-model="userInfo.companyAddress" v-model="userInfo.companyAddress"
label="" label=""
name="详细地址" name="详细地址"
@@ -325,8 +326,8 @@
clearable clearable
maxlength="30" maxlength="30"
:readonly="isAppnt" :readonly="isAppnt"
/> /> -->
<van-field <!-- <van-field
v-model="userInfo.companyZip" v-model="userInfo.companyZip"
label="邮编" label="邮编"
name="邮编" name="邮编"
@@ -336,8 +337,8 @@
maxlength="6" maxlength="6"
clearable clearable
:readonly="isAppnt" :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>
<!-- 家庭信息 --> <!-- 家庭信息 -->
<van-cell-group class="mt5" v-if="!isScan"> <van-cell-group class="mt5" v-if="!isScan">
@@ -385,7 +386,7 @@
maxlength="30" maxlength="30"
:readonly="isAppnt" :readonly="isAppnt"
/> />
<van-field <!-- <van-field
v-model="userInfo.homeZip" v-model="userInfo.homeZip"
label="邮编" label="邮编"
name="邮编" name="邮编"
@@ -395,7 +396,7 @@
maxlength="6" maxlength="6"
clearable clearable
:readonly="isAppnt" :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-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>
@@ -410,7 +411,7 @@
</van-popup> </van-popup>
<!-- 家庭地址选择 --> <!-- 家庭地址选择 -->
<van-popup v-model="homeShow" position="bottom"> <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="areaLists" value="450000" @confirm="sureArea($event, '2')" @cancel="homeShow = false" />
</van-popup> </van-popup>
<!-- 户籍选择 --> <!-- 户籍选择 -->
<van-popup v-model="censusShow" position="bottom"> <van-popup v-model="censusShow" position="bottom">
@@ -433,6 +434,7 @@ import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
import CustomerPicker from '@/components/ebiz/customer/CustomerPicker' import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
import DataDictionary from '@/assets/js/utils/data-dictionary' import DataDictionary from '@/assets/js/utils/data-dictionary'
import areaList from '@/assets/js/utils/area' import areaList from '@/assets/js/utils/area'
import areaLists from '@/assets/js/utils/areaNew'
import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail } from '@/api/ebiz/sale/sale' import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail } from '@/api/ebiz/sale/sale'
import utilsAge from '@/assets/js/utils/age' import utilsAge from '@/assets/js/utils/age'
import getAreaName from '@/assets/js/utils/get-area-name' import getAreaName from '@/assets/js/utils/get-area-name'
@@ -440,7 +442,7 @@ import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import idNoCheck from '@/assets/js/utils/idNoCheck' import idNoCheck from '@/assets/js/utils/idNoCheck'
import beforeDate from '@/assets/js/utils/getBeforeDate.js' import beforeDate from '@/assets/js/utils/getBeforeDate.js'
import { idToData } from './js/verification' import { idToData } from './js/verification'
import { selectComp } from './js/methods' import { selectComp, getIdentityInfo } from './js/methods'
export default { export default {
name: 'insuredInfo', name: 'insuredInfo',
@@ -495,8 +497,9 @@ export default {
columns: [], columns: [],
valueKey: 'text', valueKey: 'text',
census: '', //户籍 census: '', //户籍
areaName: '', // areaName: '',
homeName: '', homeName: '',
isRequired: '', //长期前是否有*
userInfo: { userInfo: {
name: '', name: '',
sex: '0', sex: '0',
@@ -504,7 +507,7 @@ export default {
birthday: '', birthday: '',
idType: '1', //证件类型 idType: '1', //证件类型
idNo: '', //证件号码 idNo: '', //证件号码
certificateValidate: '', //证件起始日期 // certificateValidate: '', //证件起始日期
certiexpiredate: '', //证件到期时间 certiexpiredate: '', //证件到期时间
effectiveDateType: false, //是否长期 effectiveDateType: false, //是否长期
occupationCode: '', occupationCode: '',
@@ -519,7 +522,7 @@ export default {
officeTel: '', //单位电话 officeTel: '', //单位电话
stature: '', //身高 stature: '', //身高
avoirdupois: '', //体重 avoirdupois: '', //体重
authCode: '', //验证码 // authCode: '', //验证码
degree: '', //文化程度 degree: '', //文化程度
medical: '1', //有无社保 medical: '1', //有无社保
taxResidentId: '', //税收居民身份 taxResidentId: '', //税收居民身份
@@ -534,23 +537,24 @@ export default {
familyAnnualIncome: '', //家庭年收入 familyAnnualIncome: '', //家庭年收入
relationToAppnt: '', relationToAppnt: '',
email: '', email: '',
companyProvince: '', //单位省 // companyProvince: '', //单位省
companyCity: '', //单位市 companyCity: '', //单位市
companyArea: '', //单位区 companyArea: '', //单位区
companyAddress: '', //单位详细地址 // companyAddress: '', //单位详细地址
companyZip: '', //单位邮编 // companyZip: '', //单位邮编
companyPhone: '', //单位电话 // companyPhone: '', //单位电话
homeProvince: '', //家庭省 homeProvince: '', //家庭省
homeCity: '', //家庭市 homeCity: '', //家庭市
homeArea: '', //家庭区 homeArea: '', //家庭区
homeAddress: '', //家庭详细地址 homeAddress: '', //家庭详细地址
homeZip: '', //家庭邮编 // homeZip: '', //家庭邮编
homePhone: '', //家庭电话 homePhone: '', //家庭电话
householdProvince: '', //户籍省 householdProvince: '', //户籍省
householdCity: '', //户籍市 householdCity: '' //户籍市
addressStatus: '' //是否是联系地址 // addressStatus: '' //是否是联系地址
}, },
areaList: areaList, areaList: areaList,
areaLists: areaLists,
currentPopupIndex: '', currentPopupIndex: '',
customerShowPicker: false, customerShowPicker: false,
occupationShowPicker: false, occupationShowPicker: false,
@@ -573,7 +577,7 @@ export default {
let insuredInfo = res.orderDTO.appntDTO let insuredInfo = res.orderDTO.appntDTO
// console.log(insuredInfo) // console.log(insuredInfo)
//清空验证码 //清空验证码
insuredInfo.authCode = '' // insuredInfo.authCode = ''
for (let key in this.userInfo) { for (let key in this.userInfo) {
this.userInfo[key] = insuredInfo[key] this.userInfo[key] = insuredInfo[key]
} }
@@ -581,14 +585,16 @@ export default {
//户籍 //户籍
this.sureArea([{ code: insuredInfo.householdProvince }, { code: insuredInfo.householdCity }], '3') this.sureArea([{ code: insuredInfo.householdProvince }, { code: insuredInfo.householdCity }], '3')
//单位地址 //单位地址
this.sureArea([{ code: insuredInfo.companyProvince }, { code: insuredInfo.companyCity }, { code: insuredInfo.companyArea }], '1') // this.sureArea([{ code: insuredInfo.companyProvince }, { code: insuredInfo.companyCity }, { code: insuredInfo.companyArea }], '1')
//家庭地址 //家庭地址
this.sureArea([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }], '2') this.sureArea([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }], '2')
//是否长期 //是否长期
if (insuredInfo.effectiveDateType == 'false') { if (insuredInfo.effectiveDateType == 'false') {
this.userInfo.effectiveDateType = false this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = false
} else { } else {
this.userInfo.effectiveDateType = true this.userInfo.effectiveDateType = true
this.effectiveDateTypeAble = true
this.userInfo.certiexpiredate = '' this.userInfo.certiexpiredate = ''
this.$refs.certiexpiredate.date = '' this.$refs.certiexpiredate.date = ''
} }
@@ -617,24 +623,24 @@ export default {
//是否长期 //是否长期
this.userInfo.effectiveDateType = insuredPersonInfo.effectiveDateType == 'false' ? false : true this.userInfo.effectiveDateType = insuredPersonInfo.effectiveDateType == 'false' ? false : true
//设为联系地址 //设为联系地址
this.userInfo.addressStatus = '0' // this.userInfo.addressStatus = '0'
//证件类型 //证件类型
this.userInfo.idType = '1' this.userInfo.idType = '1'
//国家/地区 //国家/地区
this.userInfo.nativeplace = '1' this.userInfo.nativeplace = '1'
if (this.$route.query.isShow) { // if (this.$route.query.isShow) {
//户籍 //户籍
if (insuredPersonInfo.householdProvince.length) { if (insuredPersonInfo.householdProvince.length) {
this.census = getAreaName([{ code: insuredPersonInfo.householdProvince }, { code: insuredPersonInfo.householdCity }]) this.census = getAreaName([{ code: insuredPersonInfo.householdProvince }, { code: insuredPersonInfo.householdCity }])
} }
//单位地址 //单位地址
if (insuredPersonInfo.companyProvince.length) { // if (insuredPersonInfo.companyProvince.length) {
this.areaName = getAreaName([ // this.areaName = getAreaName([
{ code: insuredPersonInfo.companyProvince }, // { code: insuredPersonInfo.companyProvince },
{ code: insuredPersonInfo.companyCity }, // { code: insuredPersonInfo.companyCity },
{ code: insuredPersonInfo.companyArea } // { code: insuredPersonInfo.companyArea }
]) // ])
} // }
//家庭地址 //家庭地址
if (insuredPersonInfo.homeProvince.length) { if (insuredPersonInfo.homeProvince.length) {
this.homeName = getAreaName([ this.homeName = getAreaName([
@@ -658,7 +664,7 @@ export default {
// { code: saleInsuredPersonInfo.homeCity }, // { code: saleInsuredPersonInfo.homeCity },
// { code: saleInsuredPersonInfo.homeArea } // { code: saleInsuredPersonInfo.homeArea }
// ]) //家庭地址 // ]) //家庭地址
} // }
} }
} else { } else {
return this.$toast(res.resultMessage) return this.$toast(res.resultMessage)
@@ -668,7 +674,7 @@ export default {
}, },
mounted() { mounted() {
window.appCallBack = this.appCallBack window.appCallBack = this.appCallBack
// // document.body.style.backgroundColor = '#F5F5F5' // // document.body.style.backgroundColor = '#F5F5F5'
}, },
methods: { methods: {
//监听名字变化 //监听名字变化
@@ -765,13 +771,13 @@ export default {
this.userInfo.nativeplace = value.id this.userInfo.nativeplace = value.id
} else if (this.pickerType == '2') { } else if (this.pickerType == '2') {
this.idLimit = false this.idLimit = false
this.userInfo.idNo = this.userInfo.certificateValidate = this.userInfo.certiexpiredate = this.userInfo.birthday = '' // this.userInfo.idNo = this.userInfo.certificateValidate = this.userInfo.certiexpiredate = this.userInfo.birthday = ''
this.userInfo.idNo = this.userInfo.certiexpiredate = this.userInfo.birthday = ''
this.userInfo.sex = '0' this.userInfo.sex = '0'
this.effectiveDateTypeAble = false this.effectiveDateTypeAble = false
console.log(value.id) console.log(value.id)
//身份证以外的证件类型可以使用长期 //身份证以外的证件类型可以使用长期
if (value.id == '1') { if (value.id == '1') {
console.log('123')
let age = utilsAge.getAge(this.userInfo.birthday, new Date()) let age = utilsAge.getAge(this.userInfo.birthday, new Date())
this.effectiveDateTypeAble = age <= 45 this.effectiveDateTypeAble = age <= 45
} else { } else {
@@ -817,7 +823,7 @@ export default {
let insuredInfo = res.orderDTO.appntDTO let insuredInfo = res.orderDTO.appntDTO
// console.log(insuredInfo) // console.log(insuredInfo)
//清空验证码 //清空验证码
insuredInfo.authCode = '' // insuredInfo.authCode = ''
for (let key in this.userInfo) { for (let key in this.userInfo) {
this.userInfo[key] = insuredInfo[key] this.userInfo[key] = insuredInfo[key]
} }
@@ -833,14 +839,16 @@ export default {
//户籍 //户籍
this.sureArea([{ code: insuredInfo.householdProvince }, { code: insuredInfo.householdCity }], '3') this.sureArea([{ code: insuredInfo.householdProvince }, { code: insuredInfo.householdCity }], '3')
//单位地址 //单位地址
this.sureArea([{ code: insuredInfo.companyProvince }, { code: insuredInfo.companyCity }, { code: insuredInfo.companyArea }], '1') // this.sureArea([{ code: insuredInfo.companyProvince }, { code: insuredInfo.companyCity }, { code: insuredInfo.companyArea }], '1')
//家庭地址 //家庭地址
this.sureArea([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }], '2') this.sureArea([{ code: insuredInfo.homeProvince }, { code: insuredInfo.homeCity }, { code: insuredInfo.homeArea }], '2')
//是否长期 //是否长期
if (insuredInfo.effectiveDateType == 'false') { if (insuredInfo.effectiveDateType == 'false') {
this.userInfo.effectiveDateType = false this.userInfo.effectiveDateType = false
this.idLimit = false
} else { } else {
this.userInfo.effectiveDateType = true this.userInfo.effectiveDateType = true
this.idLimit = true
this.userInfo.certiexpiredate = '' this.userInfo.certiexpiredate = ''
this.$refs.certiexpiredate.date = '' this.$refs.certiexpiredate.date = ''
} }
@@ -887,24 +895,24 @@ export default {
//证件起始截止日期 //证件起始截止日期
onDateConfirm(val, type) { onDateConfirm(val, type) {
switch (type) { switch (type) {
case '0': // case '0':
{ // {
//证件起始日期 // //证件起始日期
//如果录入日期早于出生日期或晚于当前日期 // //如果录入日期早于出生日期或晚于当前日期
if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) { // if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(this.userInfo.birthday)) {
this.userInfo.certificateValidate = '' // this.userInfo.certificateValidate = ''
this.$refs.certificateValidate.date = '' // this.$refs.certificateValidate.date = ''
return this.$toast('证件起始日期填写错误') // return this.$toast('证件起始日期填写错误')
} // }
// 计算年龄 // // 计算年龄
if (this.userInfo.idType == '1') { // if (this.userInfo.idType == '1') {
let age = utilsAge.getAge(this.userInfo.birthday, new Date()) // let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// 长期按钮是否禁用 // // 长期按钮是否禁用
this.effectiveDateTypeAble = age <= 45 // this.effectiveDateTypeAble = age <= 45
} // }
} // }
break // break
case '1': case '1':
{ {
//证件截止日期 //证件截止日期
@@ -957,10 +965,26 @@ export default {
return this.$toast('出生日期不晚于当日') return this.$toast('出生日期不晚于当日')
} }
//长期判断 //长期判断
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
if (this.userInfo.idType == '1') { if (this.userInfo.idType == '1') {
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
this.effectiveDateTypeAble = age <= 45 this.effectiveDateTypeAble = age <= 45
} else {
if (age < 16) {
this.userInfo.salarySource = 4
this.userInfo.otherSalarySource = '无'
this.userInfo.averageAnnualIncome = '0'
this.userInfo.liabilitiesMoney = '0'
this.userInfo.jobStatus = '3'
this.userInfo.marriage = '2'
} else {
// this.userInfo.salarySource = ''
// this.userInfo.averageAnnualIncome = ''
// this.userInfo.liabilitiesMoney = ''
// this.userInfo.jobStatus = ''
// this.userInfo.marriage = ''
}
} }
//出生证有效期 //出生证有效期
// if (this.userInfo.idType == '3') { // if (this.userInfo.idType == '3') {
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(val) > Date.parse('1973-01-01')) { // if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(val) > Date.parse('1973-01-01')) {
@@ -993,6 +1017,7 @@ export default {
}, },
//选择客户 //选择客户
chooseCustomer(data) { chooseCustomer(data) {
console.log(data)
this.customerShowPicker = false this.customerShowPicker = false
this.$jump({ this.$jump({
flag: 'navigation', flag: 'navigation',
@@ -1012,7 +1037,7 @@ export default {
this.userInfo.birthday = data.birthday //出生日期 this.userInfo.birthday = data.birthday //出生日期
this.userInfo.idType = data.customerIdType //证件类型 this.userInfo.idType = data.customerIdType //证件类型
this.userInfo.idNo = data.customerIdNumber //证件号码 this.userInfo.idNo = data.customerIdNumber //证件号码
this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期 // this.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期
this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期 this.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期 this.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期
this.userInfo.occupationCode = data.occupationCode //职业类别编码 this.userInfo.occupationCode = data.occupationCode //职业类别编码
@@ -1034,26 +1059,26 @@ export default {
this.userInfo.familyAnnualIncome = data.familyAnnualIncome //家庭年收入 this.userInfo.familyAnnualIncome = data.familyAnnualIncome //家庭年收入
this.userInfo.email = data.email //电子邮箱 this.userInfo.email = data.email //电子邮箱
this.userInfo.liabilitiesMoney = data.liabilitiesMoney //负债金额 this.userInfo.liabilitiesMoney = data.liabilitiesMoney //负债金额
this.userInfo.companyProvince = data.companyProvince //单位省 // this.userInfo.companyProvince = data.companyProvince //单位省
this.userInfo.companyCity = data.companyCity //单位市 // this.userInfo.companyCity = data.companyCity //单位市
this.userInfo.companyArea = data.companyArea //单位区 // this.userInfo.companyArea = data.companyArea //单位区
this.userInfo.companyAddress = data.companyAddress //单位详细地址 // this.userInfo.companyAddress = data.companyAddress //单位详细地址
this.userInfo.companyZip = data.companyZip //单位邮编 // this.userInfo.companyZip = data.companyZip //单位邮编
this.userInfo.companyPhone = data.companyPhone //单位电话 // this.userInfo.companyPhone = data.companyPhone //单位电话
this.userInfo.homeProvince = data.homeProvince //家庭省 this.userInfo.homeProvince = data.homeProvince //家庭省
this.userInfo.homeCity = data.homeCity //家庭市 this.userInfo.homeCity = data.homeCity //家庭市
this.userInfo.homeArea = data.homeArea //家庭区 this.userInfo.homeArea = data.homeArea //家庭区
this.userInfo.homeAddress = data.homeAddress //家庭详细地址 this.userInfo.homeAddress = data.homeAddress //家庭详细地址
this.userInfo.homeZip = data.homeZip //家庭邮编 // this.userInfo.homeZip = data.homeZip //家庭邮编
this.userInfo.homePhone = data.homePhone //家庭电话 this.userInfo.homePhone = data.homePhone //家庭电话
this.userInfo.householdProvince = data.province //户籍省 this.userInfo.householdProvince = data.province //户籍省
this.userInfo.householdCity = data.city //户籍市 this.userInfo.householdCity = data.city //户籍市
if (data.province.length) { if (data.province.length) {
this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍 this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍
} }
if (data.companyProvince.length) { // if (data.companyProvince.length) {
this.areaName = getAreaName([{ code: data.companyProvince }, { code: data.companyCity }, { code: data.companyArea }]) //单位地址 // this.areaName = getAreaName([{ code: data.companyProvince }, { code: data.companyCity }, { code: data.companyArea }]) //单位地址
} // }
if (data.homeProvince.length) { if (data.homeProvince.length) {
this.homeName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址 this.homeName = getAreaName([{ code: data.homeProvince }, { code: data.homeCity }, { code: data.homeArea }]) //家庭地址
} }
@@ -1063,7 +1088,7 @@ export default {
this.effectiveDateTypeAble = age <= 45 this.effectiveDateTypeAble = age <= 45
//数据是否从客户列表拉取 //数据是否从客户列表拉取
this.fromCustomer = true this.fromCustomer = true
this.getRelatedData(this.userInfo.idNo) this.getRelatedData(this.userInfo.idNo, 'select')
}, },
//下一步 //下一步
nextStep() { nextStep() {
@@ -1230,8 +1255,8 @@ export default {
//取出local中的被保人信息 //取出local中的被保人信息
let saleInsuredPersonInfo = JSON.parse(localStorage.saleInsuredPersonInfo) let saleInsuredPersonInfo = JSON.parse(localStorage.saleInsuredPersonInfo)
//如果 性别, 出生日期, 有无社保, 职业 发生变化 //如果 性别, 出生日期, 有无社保, 职业 发生变化
console.log(this.userInfo,'这是userInfo') console.log(this.userInfo, '这是userInfo')
console.log(saleInsuredPersonInfo,'这是saleInsuredPersonInfo') console.log(saleInsuredPersonInfo, '这是saleInsuredPersonInfo')
if ( if (
this.userInfo.sex != saleInsuredPersonInfo.sex || this.userInfo.sex != saleInsuredPersonInfo.sex ||
this.userInfo.birthday != saleInsuredPersonInfo.birthday || this.userInfo.birthday != saleInsuredPersonInfo.birthday ||
@@ -1267,7 +1292,7 @@ export default {
orderInfoDTO: { orderInfoDTO: {
orderNo: localStorage.orderNo orderNo: localStorage.orderNo
}, },
smsCodeDTO: { smsId: this.sessionId, code: this.userInfo.authCode }, // smsCodeDTO: { smsId: this.sessionId, code: this.userInfo.authCode },
appntDTO: {} appntDTO: {}
} }
} }
@@ -1285,6 +1310,7 @@ export default {
// let age = utilsAge.getAge(this.userInfo.birthday, new Date()) // let age = utilsAge.getAge(this.userInfo.birthday, new Date())
// this.userInfo.age = age // this.userInfo.age = age
// localStorage.saleInsuredPersonInfo = JSON.stringify(this.userInfo) // localStorage.saleInsuredPersonInfo = JSON.stringify(this.userInfo)
localStorage.relationToAppnt = this.userInfo.relationToAppnt
localStorage.isFrom = 'sale' localStorage.isFrom = 'sale'
//清理计时器 //清理计时器
window.clearInterval(this.timeId) window.clearInterval(this.timeId)
@@ -1307,11 +1333,11 @@ export default {
//区域选择 //区域选择
sureArea(area, type) { sureArea(area, type) {
switch (type) { switch (type) {
case '1': //单位地址 // case '1': //单位地址
this.areaName = getAreaName(area) // this.areaName = getAreaName(area)
;[this.userInfo.companyProvince, this.userInfo.companyCity, this.userInfo.companyArea] = [area[0].code, area[1].code, area[2].code] // ;[this.userInfo.companyProvince, this.userInfo.companyCity, this.userInfo.companyArea] = [area[0].code, area[1].code, area[2].code]
this.areaShow = false // this.areaShow = false
break // break
case '2': //家庭地址 case '2': //家庭地址
this.homeName = getAreaName(area) this.homeName = getAreaName(area)
;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code] ;[this.userInfo.homeProvince, this.userInfo.homeCity, this.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code]
@@ -1355,39 +1381,23 @@ export default {
} }
}) })
}, },
//证件扫描
goScan() {
this.isScan = true
},
//长期状态改变时 //长期状态改变时
effectiveDataTypeChange(val) { effectiveDataTypeChange(val) {
//勾选长期状态时,证件截止日期置空 //勾选长期状态时,证件截止日期置空
if (val) { if (val) {
this.userInfo.certiexpiredate = '' this.userInfo.certiexpiredate = ''
this.isRequired = false
this.idLimit = true
this.certiexpiredateRequired = false this.certiexpiredateRequired = false
} else { } else {
this.certiexpiredateRequired = true this.certiexpiredateRequired = true
this.isRequired = true
this.idLimit = false
} }
}, },
//获取身份证扫描信息 //获取身份证扫描信息
getIdentityInfo(data) { getIdentityInfo(data) {
console.log(data) getIdentityInfo(this, data, '2')
if (data.name && data.name != '待识别') {
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}`
this.userInfo.sex = data.gender == '男' ? '0' : '1'
}
this.isScan = false
this.$jump({
flag: 'navigation',
extra: {
title: '被保人信息',
hiddenRight: '1'
}
})
}, },
//时间戳格式处理 //时间戳格式处理
timeStampFormat(timeStamp) { timeStampFormat(timeStamp) {
@@ -1443,7 +1453,7 @@ export default {
return this.$toast('体重输入有误') return this.$toast('体重输入有误')
} }
}, },
getRelatedData(val) { getRelatedData(val, from) {
// debugger // debugger
if (this.userInfo.idType != '1') { if (this.userInfo.idType != '1') {
return return
@@ -1460,6 +1470,32 @@ export default {
this.effectiveDateTypeAble = idToData(val).age < 45 this.effectiveDateTypeAble = idToData(val).age < 45
this.userInfo.birthday = idToData(val).birthday this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex this.userInfo.sex = idToData(val).sex
if (!from) {
if (idToData(val).age < 16) {
this.userInfo.salarySource = 4
this.userInfo.otherSalarySource = '无'
this.userInfo.averageAnnualIncome = '0'
this.userInfo.liabilitiesMoney = '0'
this.userInfo.jobStatus = '3'
this.userInfo.marriage = '2'
} else {
this.userInfo.salarySource = ''
this.userInfo.averageAnnualIncome = ''
this.userInfo.liabilitiesMoney = ''
this.userInfo.jobStatus = ''
this.userInfo.marriage = ''
}
}
if (idToData(val).age >= 45) {
this.idLimit = true
this.isRequired = false
this.userInfo.effectiveDateType = true
this.effectiveDateTypeAble = true
} else {
this.idLimit = false
this.isRequired = true
this.userInfo.effectiveDateType = false
}
//如果选择户口本 //如果选择户口本
// if (this.userInfo.idType == '2') { // if (this.userInfo.idType == '2') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31') // let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')

View File

@@ -96,6 +96,11 @@
round round
>重新支付</van-button >重新支付</van-button
> >
<template v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '55'">
<van-button @click="changeCard(order)" size="small" class="mr5" type="danger" round>修改卡号</van-button>
<van-button @click="againPay(order)" size="small" class="mr5" type="danger" round>重新支付</van-button>
</template>
<van-button <van-button
@click="goPay(order)" @click="goPay(order)"
v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '02'" v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '02'"
@@ -179,6 +184,7 @@ export default {
localStorage.orderNo = order.orderInfoDTO.orderNo localStorage.orderNo = order.orderInfoDTO.orderNo
// 再次支付 salelist为 0 // 再次支付 salelist为 0
localStorage.salelist = '0' localStorage.salelist = '0'
localStorage.removeItem('changeCard')
this.$jump({ this.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -187,6 +193,30 @@ export default {
routerInfo: { path: '/sale/payMent' } routerInfo: { path: '/sale/payMent' }
}) })
}, },
//支付失败去换卡
changeCard(order) {
let url = ''
let orderStatus = order.orderInfoDTO.orderStatus
localStorage.setItem('changeCard', true)
switch (orderStatus) {
case '55': //账户信息页
url = '/sale/AccountInformation'
break
case '48': //账户信息填写成功,跳到影像上传页
url = '/sale/AttachmentManagement'
break
case '49': //影像上传页填写成功,跳到银行卡号确认页
url = '/sale/SignatureConfirmation'
break
}
this.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#${url}`
},
routerInfo: { path: url }
})
},
// 去人工核保 // 去人工核保
// goNucleus() { // goNucleus() {
// let data = { // let data = {
@@ -218,6 +248,7 @@ export default {
goPay(order) { goPay(order) {
localStorage.orderNo = order.orderInfoDTO.orderNo localStorage.orderNo = order.orderInfoDTO.orderNo
localStorage.salelist = '1' localStorage.salelist = '1'
localStorage.removeItem('changeCard')
this.$jump({ this.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -229,6 +260,7 @@ export default {
//查看保单 //查看保单
seePolicy(order) { seePolicy(order) {
localStorage.orderNo = order.orderInfoDTO.orderNo localStorage.orderNo = order.orderInfoDTO.orderNo
localStorage.removeItem('changeCard')
this.$jump({ this.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -300,12 +332,16 @@ export default {
//投保单详情 //投保单详情
goDetail(order) { goDetail(order) {
window.localStorage.setItem('detailJump', '') window.localStorage.setItem('detailJump', '')
if (order.insuredDTOs[0].riskDTOLst[0]) {
localStorage.setItem('productCode', order.insuredDTOs[0].riskDTOLst[0].mainRiskCode)
}
let orderStatus = order.orderInfoDTO.orderStatus let orderStatus = order.orderInfoDTO.orderStatus
let orderNo = order.orderInfoDTO.orderNo let orderNo = order.orderInfoDTO.orderNo
let url = '' let url = ''
//保存对应的订单号 //保存对应的订单号
localStorage.orderNo = orderNo localStorage.orderNo = orderNo
localStorage.isFrom = 'sale' localStorage.isFrom = 'sale'
localStorage.removeItem('changeCard')
console.log('---orderStatus', orderStatus, orderNo) console.log('---orderStatus', orderStatus, orderNo)
switch (orderStatus) { switch (orderStatus) {
case '01': //已签名待客户确认, 跳到签名确认页面 case '01': //已签名待客户确认, 跳到签名确认页面

View File

@@ -12,10 +12,12 @@
<van-collapse v-model="activeNames"> <van-collapse v-model="activeNames">
<van-collapse-item :name="indx + 1"> <van-collapse-item :name="indx + 1">
<div slot="title" class="flex align-items-c justify-content-s"> <div slot="title" class="flex align-items-c justify-content-s">
<!--投保人 0 2 4 6 被保人 1 3 5 7 --> <!--投保人 0 2 4 6 8 10 被保人 1 3 5 7 9 11-->
{{ impartTypeNumber[im.impartType] }} {{ impartTypeNumber[im.impartType] }}
<span class="ml145">{{ <span class="ml145">{{
im.impartType == 0 || im.impartType == 2 || im.impartType == 4 || im.impartType == 6 ? saleInsuredInfo.name : saleInsuredPersonInfo.name im.impartType == 0 || im.impartType == 2 || im.impartType == 4 || im.impartType == 6 || im.impartType == 9 || im.impartType == 11
? saleInsuredInfo.name
: saleInsuredPersonInfo.name
}}</span> }}</span>
<img :src="$assetsUrl + 'images/avatar.png'" class="w20 ml15" /> <img :src="$assetsUrl + 'images/avatar.png'" class="w20 ml15" />
@@ -32,37 +34,65 @@
</div> </div>
</div> </div>
<!-- 第一题 --> <!-- 第一题 -->
<div class="mt10" v-for="(item, index) in im.impartItemDTOS" :key="index"> <div v-for="(item, index) in im.impartItemDTOS" :key="index">
<div class="mb20 ml20"> <div class="mt10 pb2" v-if="item.impartCode != '2b'">
<span>{{ item.impartCode + '.' + item.impartContent }}</span> <div class="mb20 ml20">
</div> <span>{{ item.impartCode + '.' + item.impartContent }}</span>
<van-radio-group
v-model="item.impartAnswer"
class="flex mb10"
@change="change(item.extra2, $event)"
v-validate="'required'"
data-vv-name="单选"
>
<van-radio name="0" class="mr150 ml70"></van-radio>
<van-radio name="1"></van-radio>
</van-radio-group>
<van-cell-group v-for="(it, ind) in item.questions" :key="ind">
<div v-if="it.extra">
<van-field v-model="it.answer" placeholder="请输入" :label="it.questionContent" clearable v-validate="'required'" data-vv-name="答案" />
</div> </div>
</van-cell-group> <van-radio-group
<div v-if="item.show"> v-model="item.impartAnswer"
class="flex mb10 pb10"
@change="change(item.isSelect, $event, item.impartCode, im.impartType)"
v-validate="'required'"
data-vv-name="单选"
>
<van-radio name="0" class="mr150 ml70"></van-radio>
<van-radio name="1"></van-radio>
</van-radio-group>
<van-cell-group v-for="(it, ind) in item.questions" :key="ind"> <van-cell-group v-for="(it, ind) in item.questions" :key="ind">
<van-field <div v-if="it.extra">
v-model="it.answer" <van-field v-model="it.answer" placeholder="请输入" :label="it.questionContent" clearable v-validate="'required'" data-vv-name="答案" />
placeholder="请输入" </div>
:label="it.questionContent"
clearable
v-validate="'required'"
data-vv-name="答案"
v-if="!it.extra"
/>
</van-cell-group> </van-cell-group>
<div v-if="item.show">
<van-cell-group v-for="(it, ind) in item.questions" :key="ind">
<van-field
v-model="it.answer"
placeholder="请输入"
:label="it.questionContent"
clearable
v-validate="'required'"
data-vv-name="答案"
v-if="!it.extra"
/>
</van-cell-group>
</div>
</div>
<div class="mt10 pb2" :class="{ special: !showFlag || !isShow }" v-else>
<!-- 被保人题目为2b -->
<div v-if="im.impartType == 3 || im.impartType == 7 || im.impartType == 11">
<div class="mb20 ml20" v-if="item.impartCode == '2b' && showFlag && isShow">
<span>{{ item.impartCode + '.' + item.impartContent }}</span>
</div>
<van-cell-group v-for="(it, ind) in item.questions" :key="ind">
<div v-if="it.extra && showFlag && isShow">
<van-field v-model="it.answer" placeholder="请输入" :label="it.questionContent" clearable v-validate="'required'" data-vv-name="答案" />
</div>
</van-cell-group>
<div v-if="showFlag && isShow">
<van-cell-group v-for="(it, ind) in item.questions" :key="ind">
<van-field
v-model="it.answer"
placeholder="请输入"
:label="it.questionContent"
clearable
v-validate="'required'"
data-vv-name="答案"
v-if="!it.extra"
/>
</van-cell-group>
</div>
</div>
</div> </div>
</div> </div>
</van-collapse-item> </van-collapse-item>
@@ -103,6 +133,9 @@ export default {
saleInsuredSex: '', saleInsuredSex: '',
saleInsuredPersonAge: '', saleInsuredPersonAge: '',
saleInsuredPersonSex: '', saleInsuredPersonSex: '',
showFlag: false,
isShow: false,
isShows: false,
impartTypeNumber: { impartTypeNumber: {
'0': '投保人健康告知', '0': '投保人健康告知',
'2': '投保人财务告知', '2': '投保人财务告知',
@@ -111,7 +144,11 @@ export default {
'4': '投保人健康告知', '4': '投保人健康告知',
'5': '被保人健康告知', '5': '被保人健康告知',
'6': '投保人财务告知', '6': '投保人财务告知',
'7': '被保人财务告知' '7': '被保人财务告知',
'8': '投保人健康告知',
'10': '投保人财务告知',
'9': '被保人健康告知',
'11': '被保人财务告知'
} }
} }
}, },
@@ -130,7 +167,7 @@ export default {
this.saleInsuredAge = utilsAge.getAge(this.saleInsuredInfo.birthday, new Date()) this.saleInsuredAge = utilsAge.getAge(this.saleInsuredInfo.birthday, new Date())
this.saleInsuredSex = this.saleInsuredInfo.sex this.saleInsuredSex = this.saleInsuredInfo.sex
//投被不同人取到年纪和性别去判断是是否显示内容 //投被不同人取到年纪和性别去判断是是否显示内容
this.saleInsuredPersonAge = utilsAge.getAge(this.saleInsuredPersonInfo.birthday, new Date()) this.saleInsuredPersonAge = this.saleInsuredPersonInfo.age
this.saleInsuredPersonSex = this.saleInsuredPersonInfo.sex this.saleInsuredPersonSex = this.saleInsuredPersonInfo.sex
} else { } else {
this.$toast(res.resultMessage) this.$toast(res.resultMessage)
@@ -138,7 +175,7 @@ export default {
}) })
// this.relationToAppnt = `1` // this.relationToAppnt = `1`
this.productCodes = JSON.parse(localStorage.chooseProductCodes) this.productCodes = JSON.parse(localStorage.chooseProductCodes)
this.information() //this.information()
}, },
methods: { methods: {
// 一键全否 // 一键全否
@@ -148,6 +185,9 @@ export default {
that.impartDTOS.map(it => { that.impartDTOS.map(it => {
it.impartItemDTOS.map(itm => { it.impartItemDTOS.map(itm => {
itm.impartAnswer = '1' itm.impartAnswer = '1'
if (itm.impartCode == '2b') {
itm.impartAnswer = ''
}
// console.log(itm.impartAnswer) // console.log(itm.impartAnswer)
// console.log(itm.show) // console.log(itm.show)
}) })
@@ -190,7 +230,21 @@ export default {
} }
}) })
} }
}) // 被保人财务告知添加判断
if (item.impartType == 3 || item.impartType == 7 || item.impartType == 11) {
item.impartItemDTOS.map((items, index, array) => {
if (items.extra3) {
let obj = JSON.parse(items.extra3)
if (obj.age && obj.sex == '2') {
//小于18岁显示
if (that.saleInsuredPersonAge < Number(obj.age)) {
this.isShow = true
}
}
}
})
}
})
//去除数组里面的空字符串 //去除数组里面的空字符串
that.impartDTOS.map(item => { that.impartDTOS.map(item => {
if (item.impartType == 0 || item.impartType == 4) { if (item.impartType == 0 || item.impartType == 4) {
@@ -214,14 +268,14 @@ export default {
}) })
}, },
// 单选改变时候 // 单选改变时候
change(item, val) { change(item, val, impartCode, impartType) {
// console.log(item) // console.log(item)
// console.log(val) // console.log(val)
let that = this let that = this
if (val == '0') { if (val == '0') {
that.impartDTOS.map(it => { that.impartDTOS.map(it => {
it.impartItemDTOS.map(itm => { it.impartItemDTOS.map(itm => {
if (item == itm.extra2) { if (item == itm.isSelect) {
// itm.isTrue = val // itm.isTrue = val
itm.show = true itm.show = true
} }
@@ -231,13 +285,41 @@ export default {
} else { } else {
that.impartDTOS.map(it => { that.impartDTOS.map(it => {
it.impartItemDTOS.map(itm => { it.impartItemDTOS.map(itm => {
if (item == itm.extra2) { if (item == itm.isSelect) {
// itm.isTrue = val // itm.isTrue = val
itm.show = false itm.show = false
} }
}) })
}) })
} }
if (impartType == '3' || impartType == '7' || impartType == '11') {
if (impartCode == '2a') {
if (val == '0') {
this.showFlag = true
} else {
this.showFlag = false
}
that.impartDTOS.map(it => {
it.impartItemDTOS.map(itm => {
if (itm.impartCode == '2b') {
itm.impartAnswer = ''
}
})
})
}
}
},
formatDateTime() {
var date = new Date()
var y = date.getFullYear()
var m = date.getMonth() + 1
m = m < 10 ? '0' + m : m
var d = date.getDate()
d = d < 10 ? '0' + d : d
var h = date.getHours()
var minute = date.getMinutes()
var second = date.getSeconds()
return y + m + d + h + minute + second
}, },
// 获取告知消息, // 获取告知消息,
information() { information() {
@@ -253,7 +335,7 @@ export default {
if (res.result == '0') { if (res.result == '0') {
res.productImpartLstDTO.impartDTOS.map(item => { res.productImpartLstDTO.impartDTOS.map(item => {
item.impartItemDTOS.map(im => { item.impartItemDTOS.map(im => {
// debugger im.isSelect = this.formatDateTime() +Math.random().toString(36).substr(2)
im.impartAnswer = '' im.impartAnswer = ''
if (im.questions) { if (im.questions) {
if (im.questions.length == '0') { if (im.questions.length == '0') {
@@ -328,26 +410,26 @@ export default {
// let arr = [] // let arr = []
that.impartDTOS.map(item => { that.impartDTOS.map(item => {
// 投保人健康告知 // 投保人健康告知
if (item.impartType == '0' || item.impartType == '4') { if (item.impartType == '0' || item.impartType == '4' || item.impartType == '8') {
item.impartItemDTOS.map(i => { item.impartItemDTOS.map(i => {
delete i.extra2 delete i.isSelect
delete i.show delete i.show
}) })
obj = item obj = item
return obj return obj
} else if (item.impartType == '2' || item.impartType == '6') { } else if (item.impartType == '2' || item.impartType == '6' || item.impartType == '10') {
// 投保人财富 // 投保人财富
item.impartItemDTOS.map(i => { item.impartItemDTOS.map(i => {
delete i.extra2 delete i.isSelect
delete i.show delete i.show
}) })
// console.log(item.impartType) // console.log(item.impartType)
financeImpartDTO = item financeImpartDTO = item
return financeImpartDTO return financeImpartDTO
} else if (item.impartType == '1' || item.impartType == '5') { } else if (item.impartType == '1' || item.impartType == '5' || item.impartType == '9') {
// 被保人健康 // 被保人健康
item.impartItemDTOS.map(i => { item.impartItemDTOS.map(i => {
delete i.extra2 delete i.isSelect
delete i.show delete i.show
// if (i.impartCode == '14a') { // if (i.impartCode == '14a') {
// i.questions.map(items => { // i.questions.map(items => {
@@ -357,10 +439,10 @@ export default {
}) })
objInsured = item objInsured = item
return objInsured return objInsured
} else if (item.impartType == '3' || item.impartType == '7') { } else if (item.impartType == '3' || item.impartType == '7' || item.impartType == '11') {
// 被保人财富 // 被保人财富
item.impartItemDTOS.map(i => { item.impartItemDTOS.map(i => {
delete i.extra2 delete i.isSelect
delete i.show delete i.show
}) })
financeImpart = item financeImpart = item
@@ -373,7 +455,8 @@ export default {
orderType: 'IMPART_ORDER', orderType: 'IMPART_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo'),
productCode: this.$route.query.edit ? localStorage.productCode : JSON.parse(localStorage.trialList)[0].productCode
}, },
// 投保人 // 投保人
@@ -386,6 +469,7 @@ export default {
} }
saveInformation(data).then(res => { saveInformation(data).then(res => {
if (res.result == '0') { if (res.result == '0') {
localStorage.removeItem('changeCard')
that.$jump({ that.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -404,7 +488,8 @@ export default {
orderType: 'IMPART_ORDER', orderType: 'IMPART_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo'),
productCode: this.$route.query.edit ? localStorage.productCode : JSON.parse(localStorage.trialList)[0].productCode
}, },
// 投保人 // 投保人
@@ -418,6 +503,7 @@ export default {
} }
saveInformation(data).then(res => { saveInformation(data).then(res => {
if (res.result == '0') { if (res.result == '0') {
localStorage.removeItem('changeCard')
that.$jump({ that.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -436,7 +522,8 @@ export default {
orderType: 'IMPART_ORDER', orderType: 'IMPART_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo') orderNo: window.localStorage.getItem('orderNo'),
productCode: this.$route.query.edit ? localStorage.productCode : JSON.parse(localStorage.trialList)[0].productCode
}, },
// 投保人 // 投保人
@@ -450,6 +537,7 @@ export default {
} }
saveInformation(data).then(res => { saveInformation(data).then(res => {
if (res.result == '0') { if (res.result == '0') {
localStorage.removeItem('changeCard')
that.$jump({ that.$jump({
flag: 'h5', flag: 'h5',
extra: { extra: {
@@ -500,7 +588,6 @@ export default {
color: #4a90e2; color: #4a90e2;
} }
} }
/deep/ .van-field__label { /deep/ .van-field__label {
width: 38%; width: 38%;
} }
@@ -510,6 +597,9 @@ export default {
/deep/.van-collapse-item__content { /deep/.van-collapse-item__content {
padding: 0; padding: 0;
} }
/deep/ .special .van-hairline--top-bottom:first-child::after {
border: none;
}
.allFalse { .allFalse {
position: fixed; position: fixed;
overflow: hidden; overflow: hidden;

View File

@@ -37,6 +37,10 @@
<van-button class="m-btn w250" type="danger" size="normal" @click="rePayMent">重新支付</van-button> <van-button class="m-btn w250" type="danger" size="normal" @click="rePayMent">重新支付</van-button>
<van-button class="m-btn w250" type="danger" size="normal" @click="next">返回列表页</van-button> <van-button class="m-btn w250" type="danger" size="normal" @click="next">返回列表页</van-button>
</div> </div>
<div class="bottom-area bottom-btn flex" v-if="payStatus == '9'">
<van-button class="m-btn w250" type="danger" size="normal" @click="rePayMent">重新支付</van-button>
<van-button class="m-btn w250" type="danger" size="normal" @click="changeCard">更换卡号</van-button>
</div>
</div> </div>
</template> </template>
@@ -49,7 +53,7 @@ export default {
// 保融收银台返回的支付流水号 // 保融收银台返回的支付流水号
paySeqNo: '', paySeqNo: '',
// 接口返回数据前,不做页面渲染 // 接口返回数据前,不做页面渲染
isReady: false, isReady: true,
// 是否已重新获取支付状态。(首次进入本页,立即查询支付结果。如果是‘支付中’,两秒后再次(最后一次)再次获取一次支付状态。) // 是否已重新获取支付状态。(首次进入本页,立即查询支付结果。如果是‘支付中’,两秒后再次(最后一次)再次获取一次支付状态。)
isReloaded: false, isReloaded: false,
// 结果原因 // 结果原因
@@ -130,6 +134,19 @@ export default {
path: '/sale/payMent' path: '/sale/payMent'
} }
}) })
},
//更换卡号
changeCard() {
localStorage.setItem('changeCard', true)
this.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/sale/AccountInformation'
},
routerInfo: {
path: '/sale/AccountInformation'
}
})
} }
}, },
mounted() { mounted() {
@@ -142,11 +159,11 @@ export default {
} }
this.paySeqNo = this.$route.query.RdSeq this.paySeqNo = this.$route.query.RdSeq
if (!this.paySeqNo) { // if (!this.paySeqNo) {
this.$toast({ message: '参数错误缺少支付流水号RdSeq查询参数', duration: 5000 }) // this.$toast({ message: '参数错误缺少支付流水号RdSeq查询参数', duration: 5000 })
} else { // } else {
this.queryPayState() // this.queryPayState()
} // }
}, },
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
document.body.style.backgroundColor = '' document.body.style.backgroundColor = ''

View File

@@ -18,7 +18,6 @@
</van-cell-group> </van-cell-group>
<div v-if="!isWeixin"> <div v-if="!isWeixin">
<!-- 不再微信 --> <!-- 不再微信 -->
<van-collapse v-model="activeNames" class="mt10"> <van-collapse v-model="activeNames" class="mt10">
<van-collapse-item name="1"> <van-collapse-item name="1">
<div slot="title"> <div slot="title">
@@ -27,14 +26,23 @@
</div> </div>
<p class="mb20">以下内容需要您按照顺序阅读并签字确认:</p> <p class="mb20">以下内容需要您按照顺序阅读并签字确认:</p>
<div v-for="(item, index) in appntSign" :key="index"> <div v-if="changeCard">
<p>{{ item.documentCode == '1' ? '需阅读' : '需签署' }}</p> <p>需阅读</p>
<p class="mb20"> <p class="mb20">
<span class="text">{{ item.documentName }}</span> <span class="text">{{ appntSign.documentName }}</span>
<img :src="src" v-if="item.documentCode == '1' && item.documentStatus == '1'" /> <img :src="src" v-if="appntSign.documentStatus == '1'" />
<img :src="src" v-if="item.documentCode !== '1' && item.documentStatus == '3'" />
</p> </p>
</div> </div>
<div v-else>
<div v-for="(item, index) in appntSign" :key="index">
<p>{{ item.documentCode == '1' ? '需阅读' : '需签署' }}</p>
<p class="mb20">
<span class="text">{{ item.documentName }}</span>
<img :src="src" v-if="item.documentCode == '1' && item.documentStatus == '1'" />
<img :src="src" v-if="item.documentCode !== '1' && item.documentStatus == '3'" />
</p>
</div>
</div>
<p class="start" v-if="airSign != '1'">点击开始按钮进行相关操作</p> <p class="start" v-if="airSign != '1'">点击开始按钮进行相关操作</p>
<div v-if="!isInvalid" class="flex justify-content-a mt20"> <div v-if="!isInvalid" class="flex justify-content-a mt20">
<van-button <van-button
@@ -44,7 +52,7 @@
class="w150" class="w150"
plain plain
v-no-more-click="1000" v-no-more-click="1000"
:disabled="appntSignStatus == '3'" :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
@click="share(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')" @click="share(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
>分享</van-button >分享</van-button
> >
@@ -53,7 +61,7 @@
size="normal" size="normal"
class="w150" class="w150"
plain plain
:disabled="appntSignStatus == '3'" :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
v-no-more-click="1000" v-no-more-click="1000"
@click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')" @click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
>开始</van-button >开始</van-button
@@ -63,7 +71,7 @@
</van-collapse-item> </van-collapse-item>
</van-collapse> </van-collapse>
<div v-if="relationToAppnt != '1'" class="mt10"> <div v-if="relationToAppnt != '1' && !changeCard" class="mt10">
<van-collapse v-model="activeNames" v-for="(item, index) in insured" :key="index"> <van-collapse v-model="activeNames" v-for="(item, index) in insured" :key="index">
<van-collapse-item :name="index + 2"> <van-collapse-item :name="index + 2">
<div slot="title"> <div slot="title">
@@ -111,14 +119,23 @@
<span class="ml20">{{ appnt.name }}</span> <span class="ml20">{{ appnt.name }}</span>
</div> </div>
<p class="mb20">以下内容需要您按照顺序阅读并签字确认:</p> <p class="mb20">以下内容需要您按照顺序阅读并签字确认:</p>
<div v-for="(item, index) in appntSign" :key="index"> <div v-if="changeCard">
<p>{{ item.documentCode == '1' ? '需阅读' : '需签署' }}</p> <p>需阅读</p>
<p class="mb20"> <p class="mb20">
<span class="text">{{ item.documentName }}</span> <span class="text">{{ appntSign.documentName }}</span>
<img :src="src" v-if="item.documentCode == '1' && item.documentStatus == '1'" /> <img :src="src" v-if="appntSign.documentStatus == '1'" />
<img :src="src" v-if="item.documentCode !== '1' && item.documentStatus == '3'" />
</p> </p>
</div> </div>
<div v-else>
<div v-for="(item, index) in appntSign" :key="index">
<p>{{ item.documentCode == '1' ? '需阅读' : '需签署' }}</p>
<p class="mb20">
<span class="text">{{ item.documentName }}</span>
<img :src="src" v-if="item.documentCode == '1' && item.documentStatus == '1'" />
<img :src="src" v-if="item.documentCode !== '1' && item.documentStatus == '3'" />
</p>
</div>
</div>
<p class="start" v-if="airSign != '1'">点击开始按钮进行相关操作</p> <p class="start" v-if="airSign != '1'">点击开始按钮进行相关操作</p>
<div v-if="!isInvalid" class="flex justify-content-a mt20"> <div v-if="!isInvalid" class="flex justify-content-a mt20">
<van-button <van-button
@@ -126,7 +143,7 @@
size="normal" size="normal"
style="width: 157px;" style="width: 157px;"
plain plain
:disabled="appntSignStatus == '3'" :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
v-no-more-click="1000" v-no-more-click="1000"
@click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')" @click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
>开始</van-button >开始</van-button
@@ -172,15 +189,29 @@
</div> </div>
</div> </div>
<div v-if="!isWeixin"> <div v-if="!isWeixin">
<div class="bottom-btn bg-white" v-if="appntSignStatus == '3'"> <div v-if="changeCard">
<van-button <div class="bottom-btn bg-white" v-if="appntSign.documentStatus == '1'">
type="danger" <van-button
v-if="relationToAppnt == '1' ? true : insuredSignStatus == '3' ? true : false" type="danger"
size="large" v-if="relationToAppnt == '1' ? true : appntSign.documentStatus == '1' ? true : false"
@click="next" size="large"
v-no-more-click="1000" @click="rePayMent"
>提交</van-button v-no-more-click="1000"
> >支付</van-button
>
</div>
</div>
<div v-else>
<div class="bottom-btn bg-white" v-if="appntSignStatus == '3'">
<van-button
type="danger"
v-if="relationToAppnt == '1' ? true : insuredSignStatus == '3' ? true : false"
size="large"
@click="next"
v-no-more-click="1000"
>提交</van-button
>
</div>
</div> </div>
</div> </div>
<UploadImageFile :typeface="idcardData.typeface" :realName="idcardData.idcardName" :idno="idcardData.idcardNumber" @sendimage="sendimage"> <UploadImageFile :typeface="idcardData.typeface" :realName="idcardData.idcardName" :idno="idcardData.idcardNumber" @sendimage="sendimage">
@@ -245,7 +276,8 @@ export default {
idcardNumber: '' idcardNumber: ''
}, },
appntSignStatus: '', //投保人电子签名状态 appntSignStatus: '', //投保人电子签名状态
insuredSignStatus: '' //被保人电子签名状态 insuredSignStatus: '', //被保人电子签名状态
changeCard: localStorage.changeCard
} }
}, },
methods: { methods: {
@@ -261,7 +293,9 @@ export default {
window.localStorage.setItem('orderNo', this.$route.query.orderNo) window.localStorage.setItem('orderNo', this.$route.query.orderNo)
window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt) window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt)
window.localStorage.setItem('productCode', this.$route.query.productCode) window.localStorage.setItem('productCode', this.$route.query.productCode)
if (this.$route.query.changeCard && this.$route.query.changeCard != 'undefined') {
localStorage.setItem('changeCard', true)
}
if (this.$route.query.signInvalid) { if (this.$route.query.signInvalid) {
sessionStorage.setItem('signInvalid', this.$route.query.signInvalid) sessionStorage.setItem('signInvalid', this.$route.query.signInvalid)
} }
@@ -279,17 +313,27 @@ export default {
} }
this.airSign = sessionStorage.getItem('airSign') this.airSign = sessionStorage.getItem('airSign')
this.shareCode = sessionStorage.getItem('shareCode') this.shareCode = sessionStorage.getItem('shareCode')
this.changeCard = localStorage.getItem('changeCard')
this.relationToAppnt = this.$route.query.relationToAppnt this.relationToAppnt = this.$route.query.relationToAppnt
this.isShow = false this.isShow = false
this.getOrderDetail().then(() => { this.getOrderDetail().then(() => {
// console.log('this.appntSignStatus', this.appntSignStatus) // console.log('this.appntSignStatus', this.appntSignStatus)
// console.log('this.appntSignStatus', this.appntSignStatus) // console.log('this.appntSignStatus', this.appntSignStatus)
if (this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '0' || this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '2') { console.log('this.appntSignStatus', this.appntSignStatus)
console.log('this.shareCode', this.shareCode)
console.log('this.changeCard', this.changeCard)
if (
(this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '0') ||
(this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '2')
) {
// this.$toast('签名成功,请联系业务员进行后续流程!') // this.$toast('签名成功,请联系业务员进行后续流程!')
Dialog.alert({ title: '提示', message: '签名成功,请联系业务员进行后续流程!' }) Dialog.alert({ title: '提示', message: '签名成功,请联系业务员进行后续流程!' })
} else if (this.insuredSignStatus == '3' && sessionStorage.getItem('shareCode') == '1') { } else if (this.insuredSignStatus == '3' && sessionStorage.getItem('shareCode') == '1') {
Dialog.alert({ title: '提示', message: '签名成功,请联系业务员进行后续流程!' }) Dialog.alert({ title: '提示', message: '签名成功,请联系业务员进行后续流程!' })
} }
if (this.changeCard && this.appntSign.documentStatus == '1') {
Dialog.alert({ title: '提示', message: '确认完成,请联系业务员完成后续流程!' })
}
}) })
if (sessionStorage.shareCode == '1') { if (sessionStorage.shareCode == '1') {
console.log('进来被保人') console.log('进来被保人')
@@ -325,7 +369,7 @@ export default {
window.localStorage.setItem('sign-val', val) window.localStorage.setItem('sign-val', val)
window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign)) window.localStorage.setItem('sign-appnt', JSON.stringify(that.appntSign))
if (val == '0' || val == '2') { if (val == '0' || val == '2') {
//idtype为身份证年纪小于18岁跳过人脸识别 //idtype为身份证年纪小于18岁跳过人脸识别
if (JSON.parse(this.$route.query.saleInsuredInfo).idType != '1' || JSON.parse(this.$route.query.saleInsuredInfo).age < '18') { if (JSON.parse(this.$route.query.saleInsuredInfo).idType != '1' || JSON.parse(this.$route.query.saleInsuredInfo).age < '18') {
that.goUrl() that.goUrl()
} else { } else {
@@ -387,23 +431,27 @@ export default {
goUrl() { goUrl() {
let that = this let that = this
let path = '' let path = ''
if (localStorage.productCode == 'GFRS_M0003') { if (that.changeCard) {
if (that.appntSign[0].documentStatus == 0) { path = 'insuranceInformation'
path = 'insuranceInformation'
} else if (that.appntSign[1].documentStatus == 2) {
path = 'productTip'
} else if (that.appntSign[2].documentStatus == 2) {
path = 'InsuranceTip'
} else if (that.appntSign[3].documentStatus == 2) {
path = 'SignatureOfElectronic'
}
} else { } else {
if (that.appntSign[0].documentStatus == 0) { if (localStorage.productCode == 'GFRS_M0003') {
path = 'insuranceInformation' if (that.appntSign[0].documentStatus == 0) {
} else if (that.appntSign[1].documentStatus == 2) { path = 'insuranceInformation'
path = 'InsuranceTip' } else if (that.appntSign[1].documentStatus == 2) {
} else if (that.appntSign[2].documentStatus == 2) { path = 'productTip'
path = 'SignatureOfElectronic' } else if (that.appntSign[2].documentStatus == 2) {
path = 'InsuranceTip'
} else if (that.appntSign[3].documentStatus == 2) {
path = 'SignatureOfElectronic'
}
} else {
if (that.appntSign[0].documentStatus == 0) {
path = 'insuranceInformation'
} else if (that.appntSign[1].documentStatus == 2) {
path = 'InsuranceTip'
} else if (that.appntSign[2].documentStatus == 2) {
path = 'SignatureOfElectronic'
}
} }
} }
that.$jump({ that.$jump({
@@ -461,12 +509,14 @@ export default {
'&signInvalid=' + '&signInvalid=' +
this.signInvalid + this.signInvalid +
'&productCode=' + '&productCode=' +
localStorage.productCode localStorage.productCode +
'&changeCard=' +
this.changeCard
) )
EWebBridge.webCallAppInJs('bridge', { EWebBridge.webCallAppInJs('bridge', {
flag: 'share', flag: 'share',
extra: { extra: {
title: `国富人寿电子投保单(${shareName})签字`, title: this.changeCard ? '国富人寿修改银行卡号确认' : `国富人寿电子投保单(${shareName})签字`,
content: '签字进行', content: '签字进行',
url: url:
location.origin + location.origin +
@@ -485,7 +535,9 @@ export default {
'&signInvalid=' + '&signInvalid=' +
this.signInvalid + this.signInvalid +
'&productCode=' + '&productCode=' +
localStorage.productCode, localStorage.productCode +
'&changeCard=' +
this.changeCard,
img: this.$assetsUrl + 'images/logo.png' img: this.$assetsUrl + 'images/logo.png'
} }
}) })
@@ -589,6 +641,20 @@ export default {
} }
}) })
}, },
// 重新支付
rePayMent() {
// 再次支付 salelist为 0
localStorage.salelist = '0'
this.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/sale/payMent'
},
routerInfo: {
path: '/sale/payMent'
}
})
},
// 获取消息和阅读状态 // 获取消息和阅读状态
getOrderDetail() { getOrderDetail() {
let that = this let that = this
@@ -627,31 +693,39 @@ export default {
that.appnt = res.orderDTO.appntDTO that.appnt = res.orderDTO.appntDTO
that.date = res.orderDTO.orderInfoDTO.appntDateLabel that.date = res.orderDTO.orderInfoDTO.appntDateLabel
res.orderDTO.ebizSignDTOS.map(item => { res.orderDTO.ebizSignDTOS.map(item => {
if (item.signType == '0') { if (item.signType == '0' || item.signType == '2') {
that.appntSign.push(item) //投保 if (!localStorage.changeCard) {
that.addKey(item) if (item.documentCode != '5') {
} else if (item.signType == '1') { that.appntSign.push(item) //投保
that.insuredSign.push(item) //被保 that.addKey(item)
}
} else {
//阅读授权书
if (item.documentCode == '5') {
that.appntSign = item //投保
}
}
} else { } else {
that.appntSign.push(item) //本人 that.insuredSign.push(item) //被保
that.addKey(item)
}
})
//将投保人数组排序
that.appntSign.sort(function(a, b) {
return a.key - b.key
})
//获取投保和被保人电子投保单签字状态
that.appntSign.map(item => {
if (item.documentCode == '2') {
that.appntSignStatus = item.documentStatus
}
})
that.insuredSign.map(item => {
if (item.documentCode == '2') {
that.insuredSignStatus = item.documentStatus
} }
}) })
if (!that.changeCard) {
//将投保人数组排序
that.appntSign.sort(function(a, b) {
return a.key - b.key
})
//获取投保和被保人电子投保单签字状态
that.appntSign.map(item => {
if (item.documentCode == '2') {
that.appntSignStatus = item.documentStatus
}
})
that.insuredSign.map(item => {
if (item.documentCode == '2') {
that.insuredSignStatus = item.documentStatus
}
})
}
resolve('success') resolve('success')
} }
}) })
@@ -730,6 +804,7 @@ export default {
}, },
mounted() { mounted() {
let that = this let that = this
document.title = this.changeCard ? '修改银行卡号确认' : '签名确认'
// 初始化 // 初始化
that.init() that.init()
// localStorage.orderNo = '19090510425500178912' // localStorage.orderNo = '19090510425500178912'

View File

@@ -52,6 +52,7 @@ function closeBtn(that) {
* @param {*} type 1 投保人 2 被保人 * @param {*} type 1 投保人 2 被保人
*/ */
export function getIdentityInfo(that, data, type) { export function getIdentityInfo(that, data, type) {
console.log(data)
// 正面 // 正面
if (data.name && data.name != '待识别') { if (data.name && data.name != '待识别') {
that.userInfo.name = data.name that.userInfo.name = data.name
@@ -68,6 +69,8 @@ export function getIdentityInfo(that, data, type) {
that.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(5, 2)}-${data.endDate.substr(8, 2)}` that.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(5, 2)}-${data.endDate.substr(8, 2)}`
// that.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(4, 2)}-${data.endDate.substr(6, 2)}` // that.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(4, 2)}-${data.endDate.substr(6, 2)}`
that.effectiveDateTypeAble = true that.effectiveDateTypeAble = true
that.idLimit = false
that.isRequired = true
} else { } else {
// 勾选长期 // 勾选长期
that.userInfo.effectiveDateType = true that.userInfo.effectiveDateType = true
@@ -75,6 +78,9 @@ export function getIdentityInfo(that, data, type) {
that.effectiveDateTypeAble = false that.effectiveDateTypeAble = false
// 证件截止日期不需要校验 // 证件截止日期不需要校验
that.certiexpiredateRequired = false that.certiexpiredateRequired = false
//截止日期不可编辑
that.idLimit = true
that.isRequired = false
} }
} }
that.isScan = false that.isScan = false