Files
ebiz-h5/src/views/ebiz/agentEenter/js/methods.js
nimengmeng_1990 42b3734c78 修改bug及码表
2019-12-04 21:43:25 +08:00

928 lines
29 KiB
JavaScript

// insuredInfo.vue; insuredPersonInfo.vue; addBeneficiaryInfo.vue 方法抽取
import DataDictionary from '@/assets/js/utils/data-dictionary'
import utilsAge from '@/assets/js/utils/age'
import dateUtils from '@/assets/js/utils/date-utils'
import {
saveOrUpdateOrderInfo,
getAuthCode,
getOrderDetail
} from '@/api/ebiz/sale/sale'
import getAreaName from '@/assets/js/utils/get-area-name'
// import idNoCheck from '@/assets/js/utils/idNoCheck'
import {
idToData
} from './verification'
let relationToInsured = [{
id: 2,
text: '配偶'
}, {
id: 3,
text: '父母'
}, {
id: 4,
text: '子女'
}, {
id: 5,
text: '其他'
}]
//点击弹出组件
export function selectComp(that, index, type = '') {
console.log(index)
that.currentPopupIndex = index
let title = ''
if (index == 1) {
;
[that.customerShowPicker, title] = [true, '客户列表']
} else if (index == 2) {
;
[that.occupationShowPicker, title] = [true, '职业类别']
} else if (index == 3) {
if (type == '1') {
//投保人
localStorage.scanFromInsured = 'true'
} else if (type == '2') {
//被保人
localStorage.scanFromInsured = 'false'
};
[that.isScan, title] = [true, '身份证扫描']
} else if (index == 4) {
localStorage.scanFromInsured = 0;
[that.bankisScan, title] = [true, '银行卡扫描']
}
setTimeout(() => {
that.$jump({
flag: 'navigation',
extra: {
title,
hiddenLeft: '1'
}
})
closeBtn(that)
}, 400)
}
// 关闭按钮的显示
function closeBtn(that) {
that.$jump({
flag: 'webview_right_button',
extra: {
btns: [{
img: that.$assetsUrl + 'images/del-close.png',
route: {
flag: '',
extra: {}
}
}]
}
})
}
// appCallBack回调
/**
*
* @param {*} that 上下文
* @param {String} type 1 投保人; 2 被保人; 3 受益人
*/
export function appCallBack(that, type) {
return function () {
let title
switch (type) {
case '1':
title = '投保人信息'
break
case '2':
title = '被保人信息'
break
case '3':
title = '指定受益人信息'
break
}
console.log(that.currentPopupIndex)
// 筛选按钮的点击事件
that.$jump({
flag: 'navigation',
extra: {
title,
hiddenRight: '1'
}
})
if (that.currentPopupIndex == 1) {
that.customerShowPicker = false
} else if (that.currentPopupIndex == 2) {
that.occupationShowPicker = false
} else if (that.currentPopupIndex == 3) {
that.isScan = false
} else if (that.currentPopupIndex == 4) {
that.bankisScan = false
}
}
}
//职业类别选择
export function chooseOccupation(that, type) {
// return function() {
let title
switch (type) {
case '1':
title = '投保人信息'
break
case '2':
title = '被保人信息'
break
case '3':
title = '指定受益人信息'
break
}
that.$jump({
flag: 'navigation',
extra: {
title,
hiddenRight: '1'
}
})
that.occupationShowPicker = false
}
//弹框选择
/**
*
* @param {*} that 上下文
* @param {*} pickerType 弹框类型
* @param {*} valueKey 弹框编号
* @param {*} type 1 投保人; 2 被保人; 3 受益人
*/
export function toSelect(that, pickerType, valueKey, type) {
//pickerType 1、民族 2、证件类型 3、文化程度 4、有无社保(弃用) 5、税收居民身份 6、婚姻状况 7、在职情况
;[that.popupShow, that.pickerType] = [true, pickerType]
if (valueKey) that.valueKey = valueKey
if (pickerType == '1') {
that.columns = DataDictionary.nationType
} else if (pickerType == '2') {
that.columns = type == '1' ? DataDictionary.rsIdType : DataDictionary.idType
} else if (pickerType == '3') {
that.columns = DataDictionary.rshealthCondition
} else if (pickerType == '4') {
that.columns = DataDictionary.rsmarriage
} else if (pickerType == '5') {
that.columns = DataDictionary.rspoliticsStatus
} else if (pickerType == '6') {
// console.log(that.colums)
that.columns = DataDictionary.rsdegree
} else if (pickerType == '7') {
switch (type) {
case '1':
that.columns = DataDictionary.workCondition
break
case '2':
that.columns = DataDictionary.relationToAppnt
break
case '3':
that.columns = relationToInsured
break
}
} else if (pickerType == '8') {
that.columns = DataDictionary.workCondition
} else if (pickerType == '10') {
that.columns = DataDictionary.rsnativePlace
} else if (pickerType == '11') {
that.columns = DataDictionary.oldOccupation
} else if (pickerType == '12') {
that.columns = DataDictionary.rsnativeplace
} else if (pickerType == '13') {
that.columns = DataDictionary.applGrade
} else if (pickerType == '14') {
that.columns = DataDictionary.rsnativePlace
} else if (pickerType == '15') {
that.columns = DataDictionary.rshealthCondition
}
}
//确认选择字段
/**
*
* @param {*} that 上下文
* @param {*} value 值
* @param {*} type 1 投保人 2 被保人 3 受益人
*/
export function onConfirm(that, value, type) {
that.popupShow = false
if (that.pickerType == '1') {
that.userInfo.ethnic = value.id
} else if (that.pickerType == '2') {
//清空证件号码, 证件起始日期, 证件截止日期, 生日, 性别
that.userInfo.idNo = that.userInfo.certificateValidate = that.userInfo.certiexpiredate = that.userInfo.birthday = ''
that.userInfo.sex = '0'
if (type != '1') {
that.idLimit = false
that.effectiveDateTypeAble = false
}
//身份证以外的证件类型可以使用长期
if (value.id == '1') {
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
that.effectiveDateTypeAble = age <= 45
} else if (value.id == 2 || value.id == 3) {
that.effectiveDateTypeAble = true
} else {
that.effectiveDateTypeAble = false
}
type == '3' ? ([that.userInfo.idType, that.idType] = [value.id, value.text]) : (that.userInfo.idType = value.id)
} else if (that.pickerType == '3') {
that.userInfo.sameTrade = value.id
} else if (that.pickerType == '4') {
that.userInfo.marriage = value.id
} else if (that.pickerType == '5') {
that.userInfo.political = value.id
} else if (that.pickerType == '6') {
that.userInfo.degree = value.id
} else if (that.pickerType == '7') {
switch (type) {
case '1':
that.userInfo.jobStatus = value.id
break
case '2': {
//如果关系是本人
if (value.id == 1) {
//获取订单详情
getOrderDetail({
orderNo: localStorage.orderNo
}).then(res => {
if (res.result == 0) {
that.isAppnt = true
//获取投保人信息
let insuredInfo = res.orderDTO.appntDTO
//清空验证码
insuredInfo.authCode = ''
for (let key in that.userInfo) {
that.userInfo[key] = insuredInfo[key]
}
that.userInfo.birthday = insuredInfo.birthday
//户籍
that.sureArea([{
code: insuredInfo.householdProvince
}, {
code: insuredInfo.householdCity
}], '3')
//单位地址
that.sureArea([{
code: insuredInfo.companyProvince
}, {
code: insuredInfo.companyCity
}, {
code: insuredInfo.companyArea
}], '1')
//家庭地址
that.sureArea([{
code: insuredInfo.homeProvince
}, {
code: insuredInfo.homeCity
}, {
code: insuredInfo.homeArea
}], '2')
//是否长期
if (insuredInfo.effectiveDateType == 'false') {
that.userInfo.effectiveDateType = false
} else {
that.userInfo.effectiveDateType = true
that.userInfo.certiexpiredate = ''
that.$refs.certiexpiredate.date = ''
}
//数据不是从用户列表拉取
that.fromCustomer = false
that.userInfo.relationToAppnt = value.id
//长期判断
if (that.userInfo.idType == '1') {
// 计算年龄
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
// 长期按钮是否禁用
that.effectiveDateTypeAble = age <= 45
}
} else {
that.$toast(res.resultMessage)
}
})
} else {
that.isAppnt = false
//数据是否从用户列表拉取
if (that.fromCustomer) {
return (that.userInfo.relationToAppnt = value.id)
}
//如果关系不是本人(选了本人之后修改), 清空 userInfo 信息
for (var key in that.userInfo) {
if (!['rsnationType', 'sex', 'idType', 'effectiveDateType', 'medical'].includes(key)) {
that.userInfo[key] = ''
}
}
that.userInfo.effectiveDateType = false
that.effectiveDateTypeAble = false
that.areaName = that.homeName = that.census = ''
that.userInfo.relationToAppnt = value.id
}
}
break
case '3': {
//如果受益人是被保人本人
if (value.id == 1) {
//获取投保人数据
getOrderDetail({
orderNo: localStorage.orderNo
}).then(res => {
if (res.result == 0) {
that.isInsured = true
//获取被保人信息
let insuredInfo = res.orderDTO.insuredDTOs[0]
for (let key in that.userInfo) {
that.userInfo[key] = insuredInfo[key]
}
setTimeout(() => {
that.userInfo.city = insuredInfo.homeCity //家庭市
that.userInfo.area = insuredInfo.homeArea //家庭区
that.userInfo.province = insuredInfo.homeProvince //家庭省
that.areaName = getAreaName([{
code: insuredInfo.homeProvince
}, {
code: insuredInfo.homeCity
}, {
code: insuredInfo.homeArea
}]) //家庭地址
that.userInfo.village = insuredInfo.homeAddress //家庭详细地址
}, 0)
//受益人类型
that.userInfo.bnfType = '0'
//是否长期
that.userInfo.effectiveDateType = insuredInfo.effectiveDateType == 'false' ? false : true
//受益顺序
that.userInfo.bnfOrder = '1'
//长期判断
if (that.userInfo.idType == '1') {
// 计算年龄
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
// 长期按钮是否禁用
that.effectiveDateTypeAble = age <= 45
}
} else {
that.$toast(res.resultMessage)
};
[that.userInfo.relationToInsured, that.relationToAppnt] = [value.id, value.text]
})
} else {
that.isInsured = false
for (var key in that.userInfo) {
if (!['rsnationType', 'sex', 'idType', 'bnfOrder', 'bnfType'].includes(key)) {
that.userInfo[key] = ''
}
}
that.areaName = '';
[that.userInfo.relationToInsured, that.relationToAppnt] = [value.id, value.text]
}
}
break
}
} else if (that.pickerType == '8') {
that.userInfo.jobStatus = value.id
} else if (that.pickerType == '10') {
that.userInfo.rgtAddress = value.id
} else if (that.pickerType == '11') {
that.userInfo.oldOccupation = value.id
} else if (that.pickerType == '12') {
that.userInfo.nationality = value.id
} else if (that.pickerType == '13') {
that.userInfo.applGrade = value.id
} else if (that.pickerType == '14') {
that.userInfo.nativePlace = value.id
} else if (that.pickerType == '15') {
that.userInfo.foreigners = value.id
}
}
//日期确认
/**
*
* @param {*} that 上下文
* @param {*} val 日期值
* @param {*} type 0 证件起始日期; 1 证件截止日期; 2 出生日期
*/
export function onDateConfirm(that, val, type) {
console.log(type)
switch (type) {
case '0': {
//证件起始日期
//如果录入日期早于出生日期或晚于当前日期
if (Date.parse(val) > Date.parse(new Date()) || Date.parse(val) < Date.parse(that.userInfo.birthday)) {
that.userInfo.certificateValidate = ''
that.$refs.certificateValidate.date = ''
return that.$toast('证件起始日期填写错误')
}
// 计算年龄
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
// 长期按钮是否禁用
that.effectiveDateTypeAble = age <= 45
}
break
case '1': {
console.log('证件截止日期')
//证件截止日期
//如果已经勾选了长期
if (that.userInfo.effectiveDateType) {
//清空数据并返回
that.userInfo.certiexpiredate = ''
that.$refs.certiexpiredate.date = ''
return
}
//如果录入日期早于当前日期
if (Date.parse(val) < Date.parse(new Date())) {
that.userInfo.certiexpiredate = ''
that.$refs.certiexpiredate.date = ''
return that.$toast('您的证件已过期')
}
//不同证件类型的判断
// if (that.userInfo.idType) {
// //获取年龄
// let age = utilsAge.getAge(that.userInfo.birthday, new Date())
// console.log(age)
// //年龄在16-25周岁之间
// if (age >= 16 && age <= 25) {
// if (new Date(val).getFullYear() - new Date(that.userInfo.certificateValidate).getFullYear() != 10) {
// that.userInfo.certiexpiredate = ''
// that.$refs.certiexpiredate.date = ''
// return that.$toast('16周岁~25周岁的证件有效期为10年')
// }
// //年龄在26-45周岁之间
// } else if (age >= 26 && age <= 45) {
// if (new Date(val).getFullYear() - new Date(that.userInfo.certificateValidate).getFullYear() != 20) {
// that.userInfo.certiexpiredate = ''
// that.$refs.certiexpiredate.date = ''
// return that.$toast('26周岁~45周岁的证件有效期为20年')
// }
// //此外的年龄段不支持
// } else {
// that.userInfo.certiexpiredate = ''
// that.$refs.certiexpiredate.date = ''
// return that.$toast('身份证不支持此年龄段')
// }
// }
}
break
case '2': {
//出生日期
//如果录入日期晚于当前日期
if (Date.parse(val) > Date.parse(new Date())) {
that.userInfo.birthday = ''
that.$refs.birthday.date = ''
return that.$toast('出生日期不晚于当日')
}
//长期判断
if (that.userInfo.idType == '1') {
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
that.effectiveDateTypeAble = age <= 45
}
//出生证有效期
if (that.userInfo.idType == '3' && that.userInfo.idNo.length != 15 && that.userInfo.idNo.length != 18) {
let exipreDate = Date.parse(val) + Date.parse('1972-12-31')
that.userInfo.certificateValidate = val
that.userInfo.certiexpiredate = that.timeStampFormat(exipreDate)
that.idLimit = true
}
// 由日期算周岁
let age = dateUtils.jsGetAge(val)
that.userInfo.age = age
}
break
}
}
//拉取客户列表信息
/**
*
* @param {*} that 上下文
* @param {*} data 客户列表数据
* @param {*} type 1 投保人; 2 被保人; 3 受益人
*/
export function chooseCustomer(that, data, type) {
let title
switch (type) {
case '1':
title = '投保人信息'
break
case '2':
title = '被保人信息'
break
case '3':
title = '指定受益人信息'
break
}
that.customerShowPicker = false
that.$jump({
flag: 'navigation',
extra: {
title,
hiddenRight: '1'
}
})
that.userInfo.name = data.customerName //用户名
that.userInfo.sex = String(data.customerSex) //性别
that.userInfo.rsnationType = data.country //国家地区
that.userInfo.birthday = data.birthday //出生日期
that.userInfo.idType = data.customerIdType //证件类型
that.userInfo.idNo = data.customerIdNumber //证件类别
that.userInfo.certificateValidate = data.idEffectStartDate //证件起始日期
that.userInfo.certiexpiredate = data.idEffectEndDate //证件截止日期
that.userInfo.effectiveDateType = data.idEffectEndDate == '9999-01-01' //是否长期
that.userInfo.occupationCode = data.occupationCode //职业类别编码
that.userInfo.occupationName = data.occupationName //职业类别名称
that.userInfo.lifeGrade = data.lifeGrade //寿险等级
that.userInfo.healthGrade = data.healthGrade //健康等级
that.userInfo.mobile = data.customerPhone //移动电话
that.userInfo.email = data.email //电子邮箱
if (data.companyProvince.length) {
that.areaName = getAreaName([{
code: data.companyProvince
}, {
code: data.companyCity
}, {
code: data.companyArea
}]) //单位地址
}
if (type != '3') {
that.userInfo.stature = data.height //身高
that.userInfo.avoirdupois = data.weight //体重
that.userInfo.rshealthCondition = data.educationLevel //教育水平
that.userInfo.medical = data.socialSecurity //有无社保
that.userInfo.taxResidentId = data.residentStatus //税收居民身份
that.userInfo.averageAnnualIncome = data.averageYearlyIncome //平均年收入
that.userInfo.workcompany = data.workUnits //工作单位
that.userInfo.jobStatus = data.jobStatus //工作情况
that.userInfo.marriage = data.marryStatus //婚姻状况
that.userInfo.familyAnnualIncome = data.familyAnnualIncome //家庭年收入
that.userInfo.liabilitiesMoney = data.liabilitiesMoney //负债金额
that.userInfo.companyProvince = data.companyProvince //单位省
that.userInfo.companyCity = data.companyCity //单位市
that.userInfo.companyArea = data.companyArea //单位区
that.userInfo.companyAddress = data.companyAddress //单位详细地址
that.userInfo.companyZip = data.companyZip //单位邮编
that.userInfo.companyPhone = data.companyPhone //单位电话
that.userInfo.homeProvince = data.homeProvince //家庭省
that.userInfo.homeCity = data.homeCity //家庭市
that.userInfo.homeArea = data.homeArea //家庭区
that.userInfo.homeAddress = data.homeAddress //家庭详细地址
that.userInfo.homeZip = data.homeZip //家庭邮编
that.userInfo.homePhone = data.homePhone //家庭电话
that.userInfo.householdProvince = data.province //户籍省
that.userInfo.householdCity = data.city //户籍市
if (data.province.length) {
that.census = getAreaName([{
code: data.province
}, {
code: data.city
}]) //户籍
}
if (data.homeProvince.length) {
that.homeName = getAreaName([{
code: data.homeProvince
}, {
code: data.homeCity
}, {
code: data.homeArea
}]) //家庭地址
}
} else {
that.userInfo.province = data.homeProvince //家庭省
that.userInfo.city = data.homeCity //家庭市
that.userInfo.area = data.homeArea //家庭区
that.userInfo.village = data.homeAddress //家庭详细地址
}
// 计算年龄
let age = utilsAge.getAge(that.userInfo.birthday, new Date())
// 长期按钮是否禁用
that.effectiveDateTypeAble = age <= 45
//数据是否从客户列表拉取
that.fromCustomer = true
}
//下一步
/**
*
* @param {*} that 上下文
* @param {*} type 1 投保人; 2 被保人; 3 受益人
*/
export function nextStep(that, type) {
//表单校验, 成功跳转
that.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#/agentEenter/basicEdu`
},
routerInfo: {
path: `/agentEenter/basicEdu`
}
})
// that.$validator.validate().then(valid => {
// if (true === valid) {
// // 计算年龄
// that.$jump({
// flag: 'goBack',
// extra: {
// refresh: '1'
// // url: location.origin + '/#/sale/beneficiary'
// },
// routerInfo: {
// path: '/sale/beneficiary'
// }
// })
// } else {
// console.log(that.$validator.errors)
// that.$toast(that.$validator.errors.all()[0])
// }
// })
}
//信息变更
export function infoUpdate(that, type) {
//local 里面是否存有险种信息
let chooseProductCodes = localStorage.chooseProductCodes && JSON.parse(localStorage.chooseProductCodes)
if (chooseProductCodes && chooseProductCodes.length) {
let flag
switch (type) {
case '1': {
//取出local中的投被保人信息
let saleInsuredInfo = JSON.parse(localStorage.saleInsuredInfo)
//如果 性别, 出生日期, 有无社保, 职业 发生变化
if (that.userInfo.sex != saleInsuredInfo.sex || that.userInfo.birthday != saleInsuredInfo.birthday) {
flag = true
}
}
break
case '2': {
//取出local中的被保人信息
let saleInsuredPersonInfo = JSON.parse(localStorage.saleInsuredPersonInfo)
//如果 性别, 出生日期, 有无社保, 职业 发生变化
if (
that.userInfo.sex != saleInsuredPersonInfo.sex ||
that.userInfo.birthday != saleInsuredPersonInfo.birthday ||
that.userInfo.medical != saleInsuredPersonInfo.medical ||
that.userInfo.occupationCode != saleInsuredPersonInfo.occupationCode
) {
flag = true
}
}
break
}
if (flag) {
//提示用户
return that.$dialog
.confirm({
className: 'dialog-delete',
title: '提示',
message: '当前信息已经发生改变,有可能影响险种费率,是否确认修改并清除险种信息?',
cancelButtonColor: '#4FC6B3',
confirmButtonColor: '#FFFFFF'
})
.then(() => {
localStorage.from = 'anotherChanged'
type == '1' ? that.save('isShow=1') : that.save()
})
.catch(() => {
return
})
}
}
that.save()
}
//保存
/**
*
* @param {*} that 上下文
* @param {*} type 1 投保人 2 被保人
*/
export function save(that, type, str) {
let params = {
// 投被保人入参不同
orderType: type == '1' ? 'APPNT_ORDER' : 'INSURED_ORDER',
orderDTO: {
orderInfoDTO: {
orderNo: localStorage.orderNo
},
smsCodeDTO: {
smsId: that.sessionId,
code: that.userInfo.authCode
},
appntDTO: {}
}
}
if (type == '2' && that.userInfo.mediaDTOS == '') {
delete that.userInfo.mediaDTOS
}
// 投被保人入参不同
type == '1' ? (params.orderDTO.appntDTO = that.userInfo) : (params.orderDTO.insuredDTOs = [that.userInfo])
saveOrUpdateOrderInfo(params).then(res => {
if (res.result == 0) {
type == '1' ? (localStorage.orderNo = res.orderNo) : (localStorage.isFrom = 'sale')
//清理计时器
window.clearInterval(that.timeId)
that.timeId = null
that.countDown = 60
that.codeDisabled = false
// let url
// 投被保人跳转路径不同
if (type == '1') {
that.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#/sale/insuredPerson?${str}`
},
routerInfo: {
path: `/sale/insuredPerson?${str}`
}
})
} else {
that.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/common/selectedProduct'
},
routerInfo: {
path: '/common/selectedProduct'
}
})
}
// url = type == '1' ? `/#/sale/insuredPerson?${str}` : '/#/common/selectedProduct'
// that.$jump({
// flag: 'h5',
// extra: {
// url: location.origin + url
// },
// routerInfo: {
// path: url
// }
// })
} else {
that.$toast(res.resultMessage)
}
})
}
//区域选择
/**
*
* @param {*} that 上下文
* @param {*} area 省市区编码
* @param {*} type 1 单位地址 2 家庭地址 3 户籍
* @param {*} flag 是否受益人
*/
export function sureArea(that, area, type, flag = false) {
switch (type) {
case '1': //单位地址
that.areaName = getAreaName(area)
if (flag) {
;
[that.userInfo.province, that.userInfo.city, that.userInfo.area] = [area[0].code, area[1].code, area[2].code]
} else {
;
[that.userInfo.companyProvince, that.userInfo.companyCity, that.userInfo.companyArea] = [area[0].code, area[1].code, area[2].code]
}
that.areaShow = false
break
case '2': //家庭地址
that.homeName = getAreaName(area);
[that.userInfo.homeProvince, that.userInfo.homeCity, that.userInfo.homeArea] = [area[0].code, area[1].code, area[2].code]
that.homeShow = false
break
case '3': //户籍
that.census = getAreaName(area);
[that.userInfo.householdProvince, that.userInfo.householdCity] = [area[0].code, area[1].code]
that.censusShow = false
break
}
}
// 获取身份证扫描信息
/**
*
* @param {*} that 上下文
* @param {*} data 扫描数据
* @param {*} type 1 投保人 2 被保人
*/
export function getIdentityInfo(that, data, type) {
if (data.name && data.name != '待识别') {
that.userInfo.certificateValidate = `${data.startDate.substr(0, 4)}-${data.startDate.substr(4, 2)}-${data.startDate.substr(6, 2)}`
that.userInfo.certiexpiredate = `${data.endDate.substr(0, 4)}-${data.endDate.substr(4, 2)}-${data.endDate.substr(6, 2)}`
that.userInfo.name = data.name
that.userInfo.idNo = data.idNo
that.userInfo.birthday = `${data.birthYear}-${data.birthMonth}-${data.birthDay}`
that.userInfo.sex = data.gender == '男' ? '0' : '1'
that.effectiveDateTypeAble = idToData(data.idNo).age <= 45
}
that.isScan = false
that.bankisScan = false
let title = type == '1' ? '投保人信息' : '被保人信息'
that.$jump({
flag: 'navigation',
extra: {
title,
hiddenRight: '1'
}
})
}
//证件号码返显相关信息
export function getRelatedData(that, val) {
//如果证件类型不为"身份证", "出生证明", "户口本", 返回
if (!['1', '2', '3', 1, 2, 3].includes(that.userInfo.idType)) {
return
}
//如果证件类型是出生证明,并且证件号码不是身份证号, 返回
if (that.userInfo.idType == '3' && that.userInfo.idNo.length != 15 && that.userInfo.idNo.length != 18) {
console.log('证件类型是出生证明,并且证件号码不是身份证号, 返回')
return
}
//如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;
[that.userInfo.idNo, that.userInfo.sex, that.userInfo.birthday, that.effectiveDateTypeAble] = ['', '0', '', false]
return that.$toast(idToData(val).text)
}
that.userInfo.effectiveDateType = false
that.effectiveDateTypeAble = idToData(val).age <= 45
that.userInfo.birthday = idToData(val).birthday
that.userInfo.sex = idToData(val).sex
//如果选择户口本
if (that.userInfo.idType == '2') {
let exipreDate = Date.parse(that.userInfo.birthday) + Date.parse('1985-12-31')
that.userInfo.certificateValidate = that.userInfo.birthday
that.userInfo.certiexpiredate = that.timeStampFormat(exipreDate)
that.idLimit = true
//如果选择出生证明
} else if (that.userInfo.idType == '3') {
let exipreDate = Date.parse(that.userInfo.birthday) + Date.parse('1972-12-31')
that.userInfo.certificateValidate = that.userInfo.birthday
that.userInfo.certiexpiredate = that.timeStampFormat(exipreDate)
that.idLimit = true
} else {
that.idLimit = false
}
}
// 获取验证码
/**
*
* @param {*} that 上下文
* @param {*} type 1 投保人 2 被保人
*/
export function getCode(that, type) {
if (that.userInfo.mobile == '') {
return that.$toast('请填写移动电话')
}
that.codeDisabled = true
//倒计时
that.timeId = setInterval(() => {
that.countDown--
if (that.countDown <= 0) {
window.clearInterval(that.timeId)
that.codeDisabled = false
that.countDown = 60
}
}, 1000)
let data = {
operateType: type == '1' ? 'appntInfoEntry' : 'insureInfoEntry',
type: 'H5',
operateCode: that.userInfo.mobile,
system: 'agentApp',
operateCodeType: '0'
}
//获取验证码
getAuthCode(data).then(res => {
console.log(res)
if (res.result == 0) {
that.sessionId = res.sessionId
} else {
that.$toast(res.resultMessage)
}
})
}
// 长期状态改变
export function effectiveDataTypeChange(that, val) {
//勾选长期状态时,证件截止日期置空
if (val) {
that.userInfo.certiexpiredate = ''
that.certiexpiredateRequired = false
} else {
that.certiexpiredateRequired = true
}
}