This commit is contained in:
dwq
2021-10-27 10:08:17 +08:00
2 changed files with 125 additions and 118 deletions

View File

@@ -809,7 +809,9 @@ export default {
this.chooseProducts[productIndex].productCode === 'GFRS_A0009' ||
this.chooseProducts[productIndex].productCode === 'GFRS_A0010'
) {
setTimeout(() => {
this.getTrial()
}, 500);
return
}
let currentEle = this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules[dutyItemIndex]
@@ -1299,9 +1301,91 @@ export default {
return currentInfluences
},
trialBeforeRule() {
let that = this
console.log('走试算前规则')
// 针对于国富人寿附加两全保险附加险(GFRS_A0011),缴费期间期间要等于主险的缴费期间
let mainRiskInfo = this.getMainRiskInfo()
this.chooseProducts.forEach((item) => {
if (item.productCode == 'GFRS_A0011') {
item.calFactorLst.map((item2) => {
if (item2.code == 'payEndYear') {
item2.hasFlag = '1'
item2.payEndYearFlag = 'Y'
item2.payEndYear = Number(mainRiskInfo.payEndYear.payEndYear)
item2.showContent = item2.payEndYear + '年交'
}else if (item2.code == 'amt') {
// GFRS_A0011-附加两全 属于非豁免险 但附加两全保额=主险年交保费+其他不带豁免责任的长期期交附加险年交保费
let trialList = JSON.parse(localStorage.trialList)
item2.amt = trialList[0].prem
item2.defaultValue = trialList[0].prem
item2.moneyUnit = 1
item2.suffix = '元'
}
})
}
})
if(this.chooseProducts[0].productCode == 'GFRS_M0035' || this.chooseProducts[0].productCode == 'GFRS_M0044' || this.chooseProducts[0].productCode == 'GFRS_M0040'){
if (this.trialList.length) {
let showPrem //计算后的保费
//(被保险人)国富人寿附加豁免保险费重大疾病保险(B款GFRS_A0010
//(投保人)国富人寿附加豁免保险费重大疾病保险(B款 GFRS_A0009
//国富人寿附加两全保险条款 GFRS_A0011
//只有在搭配附加两全时才能搭配被保险人附加豁免重疾B;
//获取两全险的保费
let showPrem001
this.trialList.forEach((item, index) => {
if (item.productCode == 'GFRS_A0011') {
showPrem001 = item.showPrem //获取两全险的保费
}
})
this.chooseProducts.forEach((item, index) => {
if (item.productCode == 'GFRS_A0010' || item.productCode == 'GFRS_A0009') {
//(投保人)国富人寿附加豁免保险费重大疾病保险(B款
// 投被不同人:投保人豁免险单独搭配主险时,投保人豁免险,豁免主险保费,当投保人豁免险加两全(有长险附加险时),豁免主险保费加两全保费
if (item.productCode == 'GFRS_A0009') {
if (this.saleInsuredPersonInfo.relationToAppnt != 1) {
//不同人
if (showPrem001) {
//加两全时
showPrem = Number(showPrem001) + Number(that.trialList[0].showPrem)
} else {
showPrem = Number(that.trialList[0].showPrem)
}
}
item.calFactorLst.map((item2) => {
if (item2.code == 'dutyGroup') {
item2.rules.map((item3) => {
item3.defaultDutyAmt = (showPrem / 10000).toFixed(6)
})
}
})
} else if (item.productCode == 'GFRS_A0010') {
//(被保险人)国富人寿附加豁免保险费重大疾病保险(B款GFRS_A0010
//投被同人,不同人:被保人豁免险搭配两全(有长险附加险时)时,可选责任为必选,豁免两全保费
if (showPrem001) {
showPrem = Number(showPrem001)
}else{
showPrem = Number(that.trialList[0].showPrem)
}
item.calFactorLst.map((item2) => {
if (item2.code == 'dutyGroup') {
item2.rules.map((item3) => {
item3.defaultDutyAmt = (showPrem / 10000).toFixed(6)
item3.defaultValue = '0'
item3.necess = true
})
}
})
}
}
})
}
}
},
//特殊规则3、设置豁免险
setRemitRisk() {
let that = this
//1、一次性交清和交费期间单位为A时删除豁免险
let mainRiskInfo = this.getMainRiskInfo()
let mainRiskPayIntv = mainRiskInfo.payIntv.payIntv
@@ -1442,27 +1526,6 @@ export default {
})
}
// 3.针对于国富人寿附加两全保险附加险(GFRS_A0011),缴费期间期间要等于主险的缴费期间
this.chooseProducts.forEach((item) => {
if (item.productCode == 'GFRS_A0011') {
item.calFactorLst.map((item2) => {
if (item2.code == 'payEndYear') {
item2.hasFlag = '1'
item2.payEndYearFlag = 'Y'
item2.payEndYear = Number(mainRiskInfo.payEndYear.payEndYear)
item2.showContent = item2.payEndYear + '年交'
}else if (item2.code == 'amt') {
// GFRS_A0011-附加两全 属于非豁免险 但附加两全保额=主险年交保费+其他不带豁免责任的长期期交附加险年交保费
let trialList = JSON.parse(localStorage.trialList)
item2.amt = trialList[0].prem
item2.defaultValue = trialList[0].prem
item2.moneyUnit = 1
item2.suffix = '元'
}
})
}
})
let product = this.chooseProducts.find((item) => {
return item.productCode === 'GFRS_A0006'
})
@@ -1496,63 +1559,7 @@ export default {
})
}
}
if(this.chooseProducts[0].productCode == 'GFRS_M0035' || this.chooseProducts[0].productCode == 'GFRS_M0044' || this.chooseProducts[0].productCode == 'GFRS_M0040'){
if (this.trialList.length) {
let showPrem //计算后的保费
//(被保险人)国富人寿附加豁免保险费重大疾病保险(B款GFRS_A0010
//(投保人)国富人寿附加豁免保险费重大疾病保险(B款 GFRS_A0009
//国富人寿附加两全保险条款 GFRS_A0011
//只有在搭配附加两全时才能搭配被保险人附加豁免重疾B;
//获取两全险的保费
let showPrem001
this.trialList.forEach((item, index) => {
if (item.productCode == 'GFRS_A0011') {
showPrem001 = item.showPrem //获取两全险的保费
}
})
this.chooseProducts.forEach((item, index) => {
if (item.productCode == 'GFRS_A0010' || item.productCode == 'GFRS_A0009') {
//(投保人)国富人寿附加豁免保险费重大疾病保险(B款
// 投被不同人:投保人豁免险单独搭配主险时,投保人豁免险,豁免主险保费,当投保人豁免险加两全(有长险附加险时),豁免主险保费加两全保费
if (item.productCode == 'GFRS_A0009') {
if (this.saleInsuredPersonInfo.relationToAppnt != 1) {
//不同人
if (showPrem001) {
//加两全时
showPrem = Number(showPrem001) + Number(that.trialList[0].showPrem)
} else {
showPrem = Number(that.trialList[0].showPrem)
}
}
item.calFactorLst.map((item2) => {
if (item2.code == 'dutyGroup') {
item2.rules.map((item3) => {
item3.defaultDutyAmt = (showPrem / 10000).toFixed(6)
})
}
})
} else if (item.productCode == 'GFRS_A0010') {
//(被保险人)国富人寿附加豁免保险费重大疾病保险(B款GFRS_A0010
//投被同人,不同人:被保人豁免险搭配两全(有长险附加险时)时,可选责任为必选,豁免两全保费
if (showPrem001) {
showPrem = Number(showPrem001)
}else{
showPrem = Number(that.trialList[0].showPrem)
}
item.calFactorLst.map((item2) => {
if (item2.code == 'dutyGroup') {
item2.rules.map((item3) => {
item3.defaultDutyAmt = (showPrem / 10000).toFixed(6)
item3.defaultValue = '0'
item3.necess = true
})
}
})
}
}
})
}
}
this.trialBeforeRule()
},
//获取当前产品编码下的索引值
getProductCodeIndex(productCode) {
@@ -1834,30 +1841,30 @@ export default {
this.setRemitRisk()
this.nextStepFlag = false
//针对八桂D产品 计算被保人重疾B附加险保额 ==其他附加险的保额 重新试算后面添加的其他附加险
if (this.chooseProducts[0].mainRiskCode == 'GFRS_M0051' || this.chooseProducts[0].mainRiskCode == 'GFRS_M0044') {
let tParams = this.getParams()
// 开门红产品试算增加标识
if (this.activeType == 'KMH' && this.isFrom != 'proposal') {
for (let product of tParams.trialInfos) {
product.isKmh = '1'
}
}
let tResult = await trial(tParams)
if (tResult.result == 0) {
if (tResult.flag === '1') {
this.richChildrenFlag = true
}
this.trialList = tResult.trialList
localStorage.trialList = JSON.stringify(tResult.trialList)
//设置豁免险保额
this.setRemitRisk()
this.nextStepFlag = false
}
if(this.chooseProducts.length==2&&this.chooseProducts[1].productCode=='GFRS_A0010'){
this.$toast('当前未投保其他长险附加险,请删除该险种重新选择附加险!')
this.nextStepFlag = true
}
}
// if ( this.chooseProducts[0].mainRiskCode == 'GFRS_M0051'||this.chooseProducts[0].mainRiskCode == 'GFRS_M0044') {
// let tParams = this.getParams()
// // 开门红产品试算增加标识
// if (this.activeType == 'KMH' && this.isFrom != 'proposal') {
// for (let product of tParams.trialInfos) {
// product.isKmh = '1'
// }
// }
// let tResult = await trial(tParams)
// if (tResult.result == 0) {
// if (tResult.flag === '1') {
// this.richChildrenFlag = true
// }
// this.trialList = tResult.trialList
// localStorage.trialList = JSON.stringify(tResult.trialList)
// //设置豁免险保额
// this.setRemitRisk()
// this.nextStepFlag = false
// }
// if(this.chooseProducts.length==2&&this.chooseProducts[1].productCode=='GFRS_A0010'){
// this.$toast('当前未投保其他长险附加险,请删除该险种重新选择附加险!')
// this.nextStepFlag = true
// }
// }
// this.againGetTrial()
} else {
this.nextStepFlag = true

View File

@@ -134,7 +134,7 @@ import product from '@/assets/images/goodStart/product.png'
import { getAgentInfo } from '@/api/ebiz/my/my'
import { getCongratulationList } from '@/api/ebiz/congratulation/congratulation.js'
import dateUtil from '@/assets/js/utils/date-utils.js'
import { orgShortNames } from '@/assets/js/utils/orgShortName'
// import { orgShortNames } from '@/assets/js/utils/orgShortName'
import CacheUtils from '@/assets/js/utils/cacheUtils'
export default {
components: {
@@ -179,22 +179,22 @@ export default {
let data = await getCongratulationList({ date: currMonth, queryType: 'm', type: 'kmh' })
if (this.isInner) {
this.organizationData = data.content
for (let org of this.organizationData) {
for (let shortName of orgShortNames) {
if (org.code === shortName.code) {
org.name = shortName.name
}
}
}
// for (let org of this.organizationData) {
// for (let shortName of orgShortNames) {
// if (org.code === shortName.code) {
// org.name = shortName.name
// }
// }
// }
} else {
this.performanceData = data.content.list
for (let org of this.performanceData) {
for (let shortName of orgShortNames) {
if (org.comCode === shortName.code) {
org.comName = shortName.name
}
}
}
// for (let org of this.performanceData) {
// for (let shortName of orgShortNames) {
// if (org.comCode === shortName.code) {
// org.comName = shortName.name
// }
// }
// }
}
this.$nextTick(() => {
this.isTableDataLoad = true