diff --git a/src/assets/js/utils/age.js b/src/assets/js/utils/age.js index c5b3b24d8..4e51bd4a0 100644 --- a/src/assets/js/utils/age.js +++ b/src/assets/js/utils/age.js @@ -30,6 +30,30 @@ export default { return age } }, + getAge29: function(value = '', today) { + // value: 身份证号码获取的生日, today: 当前的时间 + var b = value.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/) + if (b == null) { + return null + } else { + var month = b[3] * 1 + var day = b[4] * 1 + var nowY = today.getFullYear() + var age = nowY - b[1] + if (today.getMonth() + 1 < month) { + age-- + } else if (today.getMonth() + 1 == month && today.getDate() < day) { + age-- + } + if (age < 1) { + var dayNum = this.getDateDiff(value, nowY + '-' + (today.getMonth() + 1) + '-' + today.getDate()) + if (dayNum <= 29) { + age-- + } + } + return age + } + }, /** * 取得两个日期的时间差 diff --git a/src/views/ebiz/common/MainRiskList.vue b/src/views/ebiz/common/MainRiskList.vue index 627ba8502..f58d83a7f 100644 --- a/src/views/ebiz/common/MainRiskList.vue +++ b/src/views/ebiz/common/MainRiskList.vue @@ -353,7 +353,7 @@ export default { } } - if (riskRules.ageLimit(resultData, this)) { + if (riskRules.ageLimit(resultData, this, null,riskProductCode)) { return } diff --git a/src/views/ebiz/common/risk-rules.js b/src/views/ebiz/common/risk-rules.js index 75f27c320..2c3af558a 100644 --- a/src/views/ebiz/common/risk-rules.js +++ b/src/views/ebiz/common/risk-rules.js @@ -1,6 +1,7 @@ import { productCheck } from '@/api/ebiz/common/common' import { getCompany } from '@/api/ebiz/sale/sale' import { getAgentInfo } from '@/api/ebiz/my/my.js' +import utilsAge from '@/assets/js/utils/age' import CacheUtils from '@/assets/js/utils/cacheUtils' import DataDictionary from '@/assets/js/utils/data-dictionary' export default { @@ -41,13 +42,17 @@ export default { return false }, //投、被保险人年龄对险种的限制 - ageLimit(resultData, vm, isApplicant) { + ageLimit(resultData, vm, isApplicant,riskProductCode) { let age, tips if (isApplicant) { age = this.getSaleInsuredInfo().age tips = '投保人年龄不适合此款险种,请选择其他险种!' } else { - age = this.getSaleInsuredPersonInfo().age + if(riskProductCode == 'GFRS_M0061'){ + age = utilsAge.getAge29(this.getSaleInsuredPersonInfo().birthday, new Date()) + }else{ + age = this.getSaleInsuredPersonInfo().age + } tips = '被保险人年龄不适合此款险种,请选择其他险种!' } let minAge = resultData.productTrialInfoDTO.ageRange && resultData.productTrialInfoDTO.ageRange.minAge