【国富人寿综合意外伤害保险(2023版)】险种GFRS_M0070的责任的验证规则

This commit is contained in:
lyt
2023-03-16 13:16:48 +08:00
parent 2a41b41761
commit e434540572

View File

@@ -396,6 +396,40 @@ const dutyRules = {
msg: '意外住院津贴日额最低基本保险金额为10元/天超过最低基本保险金额为10元/天整数倍最高不得超过200元/天' msg: '意外住院津贴日额最低基本保险金额为10元/天超过最低基本保险金额为10元/天整数倍最高不得超过200元/天'
} }
} }
//险种GFRS_M0070的责任的验证规则
//默认 最低基本保险金额min 10000 整数倍要求mutiple 1000
const dutdutyGFRS_M0070RulesyRules = {
410800: {
min: 100000,
msg: '意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍'
},
410805: {
msg: '轨道列车意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍并且小于等于意外基本保险金额的5倍'
},
410801: {
msg: '客运汽车意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍并且小于等于意外基本保险金额的5倍'
},
410802: {
msg: '客运轮船意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍并且小于等于意外基本保险金额的5倍'
},
410803: {
msg: '客运民航班机意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍并且小于等于意外基本保险金额的10倍'
},
410804: {
msg: '自驾车意外基本保险金额最低为100000元超过最低基本保险金额为10000元整数倍并且小于等于意外基本保险金额的5倍'
},
410806: {
min: 2000,
msg: '意外伤害医疗基本保险金额最低为2000元超过最低基本保险金额为1000元整数倍并且小于等于意外基本保险金额的1/5倍'
},
410807: {
min: 10,
mutiple: 10,
msg: '意外住院津贴日额最低基本保险金额为10元/天超过最低基本保险金额为10元/天整数倍最高不得超过200元/天'
}
}
const dutyGFRS_A0004Rules = { const dutyGFRS_A0004Rules = {
320205: { 320205: {
mainRisk: 'GFRS_M0005', mainRisk: 'GFRS_M0005',
@@ -543,7 +577,7 @@ export default {
}, },
methods: { methods: {
renewalShow(productCode) { renewalShow(productCode) {
let codes = ['GFRS_M0016', 'GFRS_M0005', 'GFRS_M0018'] let codes = ['GFRS_M0016', 'GFRS_M0005', 'GFRS_M0018','GFRS_M0070']
return codes.find((item) => { return codes.find((item) => {
return productCode === item return productCode === item
}) })
@@ -811,7 +845,7 @@ export default {
let detailPromise = this.isFrom === 'proposal' ? localStorage.proposalMedical : await getOrderDetail({ orderNo }) let detailPromise = this.isFrom === 'proposal' ? localStorage.proposalMedical : await getOrderDetail({ orderNo })
this.chooseProducts.map((item) => { this.chooseProducts.map((item) => {
if ( if (
!(item.mainRiskCode === 'GFRS_M0016' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005') !(item.mainRiskCode === 'GFRS_M0016' ||item.mainRiskCode === 'GFRS_M0070' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005')
) { ) {
//其他产品删掉两个字段 //其他产品删掉两个字段
let calFactorLst = item.calFactorLst let calFactorLst = item.calFactorLst
@@ -823,7 +857,7 @@ export default {
} }
return return
} }
if (item.mainRiskCode === 'GFRS_M0016' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005') { if (item.mainRiskCode === 'GFRS_M0016' || item.mainRiskCode === 'GFRS_M0070' ||item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005') {
let isMedical = null let isMedical = null
if (this.isFrom === 'proposal') { if (this.isFrom === 'proposal') {
isMedical = detailPromise == '1' isMedical = detailPromise == '1'
@@ -864,6 +898,7 @@ export default {
dutyStepperChange(value, productIndex, calFactorIndex, dutyItemIndex, isChecked, min, max) { dutyStepperChange(value, productIndex, calFactorIndex, dutyItemIndex, isChecked, min, max) {
//这个险种使用其他验证方式 //这个险种使用其他验证方式
if (this.chooseProducts[productIndex].productCode === 'GFRS_M0016') return if (this.chooseProducts[productIndex].productCode === 'GFRS_M0016') return
if (this.chooseProducts[productIndex].productCode === 'GFRS_M0070') return
// 004险种其他验证方式 // 004险种其他验证方式
if (this.chooseProducts[productIndex].productCode === 'GFRS_A0004') return if (this.chooseProducts[productIndex].productCode === 'GFRS_A0004') return
// 008险种其他验证方式 // 008险种其他验证方式
@@ -1086,6 +1121,9 @@ export default {
if (validateRiskCode === 'GFRS_M0016' && !this.valiDuty(inputValue, duty)) { if (validateRiskCode === 'GFRS_M0016' && !this.valiDuty(inputValue, duty)) {
//验证不通过 //验证不通过
return return
}else if (validateRiskCode === 'GFRS_M0070' && !this.valiDuty(inputValue, duty)) {
//验证不通过
return
} else if (validateRiskCode === 'GFRS_A0004' && !this.valiA0004Duty(inputValue, showHint, dutyItem)) { } else if (validateRiskCode === 'GFRS_A0004' && !this.valiA0004Duty(inputValue, showHint, dutyItem)) {
//验证不通过 险种为GFRS_A0004 责任编码为320205 //验证不通过 险种为GFRS_A0004 责任编码为320205
return return
@@ -1110,7 +1148,7 @@ export default {
this.valiAndSend(dutyItem, productIndex) this.valiAndSend(dutyItem, productIndex)
} }
}, },
//险种GFRS_M0016的责任的验证规则 //险种GFRS_M0016\GFRS_M0070的责任的验证规则
valiDuty(value, duty) { valiDuty(value, duty) {
if (this.mainRiskCode === 'GFRS_M0016') { if (this.mainRiskCode === 'GFRS_M0016') {
value *= 10000 value *= 10000
@@ -1125,6 +1163,19 @@ export default {
this.nextStepFlag = false this.nextStepFlag = false
return true return true
} }
}else if(this.mainRiskCode === 'GFRS_M0070'){
value *= 10000
const rule = dutdutyGFRS_M0070RulesyRules[duty]
const mutiple = rule.mutiple || DUTY_DEFAULT_MUTIPLE
const min = rule.min || DUTY_DEFAULT_MIN
if (!value || value < min || value % mutiple !== 0) {
this.$toast(rule.msg)
this.nextStepFlag = true
return false
} else {
this.nextStepFlag = false
return true
}
} }
}, },
//险种 GFRS_A0004 险种验证规则 //险种 GFRS_A0004 险种验证规则
@@ -2442,7 +2493,7 @@ export default {
//下一步 //下一步
async nextStep(isFrom) { async nextStep(isFrom) {
//GFRS_M0016需要验证责任 //GFRS_M0016需要验证责任
if (this.mainRiskCode === 'GFRS_M0016') { if (this.mainRiskCode === 'GFRS_M0016' || this.mainRiskCode === 'GFRS_M0070') {
let calFactorLst = this.chooseProducts[0].calFactorLst let calFactorLst = this.chooseProducts[0].calFactorLst
for (let i = 0; i < calFactorLst.length; i++) { for (let i = 0; i < calFactorLst.length; i++) {
if (calFactorLst[i].code === 'dutyGroup') { if (calFactorLst[i].code === 'dutyGroup') {