交叉渠道(银保)销售个险产品,分渠道展示险种列表

This commit is contained in:
bai.jinyan
2021-07-22 17:04:35 +08:00
parent 81bbde62c7
commit feb21e41c4
2 changed files with 80 additions and 18 deletions

View File

@@ -426,7 +426,8 @@ export default {
ruleExpression: {}, ruleExpression: {},
mainRiskCode: '', mainRiskCode: '',
renewal: '-1', renewal: '-1',
richChildrenFlag: false richChildrenFlag: false,
isCrossChannel:'0' //是否交叉渠道 1-是 0-否
} }
}, },
mounted() { mounted() {
@@ -476,6 +477,9 @@ export default {
//构建提交数据、渲染险种 //构建提交数据、渲染险种
this.chooseProducts = JSON.parse(localStorage.chooseProducts) this.chooseProducts = JSON.parse(localStorage.chooseProducts)
this.chooseProducts.forEach((item, index) => { this.chooseProducts.forEach((item, index) => {
if (item.isCrossChannel == '1') {
this.isCrossChannel = item.isCrossChannel;
}
if (item.mainRiskCode == 'GFRS_M0006') { if (item.mainRiskCode == 'GFRS_M0006') {
item.isHidden = true item.isHidden = true
} }
@@ -1580,7 +1584,8 @@ export default {
occupationName, occupationName,
platformType: 'app', platformType: 'app',
productCode: item.productCode, productCode: item.productCode,
medical: JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).medical medical: JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).medical,
isCrossChannel:this.isCrossChannel
}) })
params.trialInfos.push(trialInfo) params.trialInfos.push(trialInfo)
}) })
@@ -1984,7 +1989,8 @@ export default {
orderType: 'RISK_ORDER', orderType: 'RISK_ORDER',
orderDTO: { orderDTO: {
orderInfoDTO: { orderInfoDTO: {
orderNo: this.$CacheUtils.getLocItem('orderNo') orderNo: this.$CacheUtils.getLocItem('orderNo'),
productChannel:this.isCrossChannel
}, },
// appntDTO: {}, // appntDTO: {},
insuredDTOs: [insuredDTOItem] insuredDTOs: [insuredDTOItem]

View File

@@ -1,23 +1,56 @@
<template> <template>
<div class="main-risk-list-container pt10 redRadioCheckbox"> <div class="main-risk-list-container pt10 redRadioCheckbox">
<van-radio-group v-model="result"> <template v-if="recommendType == '03'">
<van-cell-group> <van-tabs v-model="active" @click="onChangeMainList">
<!-- <van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index" v-show="checkItemShow(item)"> --> <van-tab title="银保渠道产品" name="normal">
<van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index"> <van-radio-group v-model="result">
<p slot="default"> <van-cell-group>
<van-tag plain class="green fs12 mr10">{{ item.productType }}</van-tag> <!-- <van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index" v-show="checkItemShow(item)"> -->
<span class="c-gray-dark fs14">{{ item.riskName }}</span> <van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index">
</p> <p slot="default">
<van-radio checked-color="red" slot="right-icon" :name="item" /> <van-tag plain class="green fs12 mr10">{{ item.productType }}</van-tag>
</van-cell> <span class="c-gray-dark fs14">{{ item.riskName }}</span>
</van-cell-group> </p>
</van-radio-group> <van-radio checked-color="red" slot="right-icon" :name="item" />
</van-cell>
</van-cell-group>
</van-radio-group>
</van-tab>
<van-tab title="交叉销售个险产品" name="cross">
<van-radio-group v-model="result">
<van-cell-group>
<van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index">
<p slot="default">
<van-tag plain class="green fs12 mr10">{{ item.productType }}</van-tag>
<span class="c-gray-dark fs14">{{ item.riskName }}</span>
</p>
<van-radio checked-color="red" slot="right-icon" :name="item" />
</van-cell>
</van-cell-group>
</van-radio-group>
</van-tab>
</van-tabs>
</template>
<template v-else>
<van-radio-group v-model="result">
<van-cell-group>
<!-- <van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index" v-show="checkItemShow(item)"> -->
<van-cell v-for="(item, index) in list" clickable @click="result = item" :key="index">
<p slot="default">
<van-tag plain class="green fs12 mr10">{{ item.productType }}</van-tag>
<span class="c-gray-dark fs14">{{ item.riskName }}</span>
</p>
<van-radio checked-color="red" slot="right-icon" :name="item" />
</van-cell>
</van-cell-group>
</van-radio-group>
</template>
<div class="white_block"></div> <div class="white_block"></div>
<van-button class="bottom-btn" type="danger" @click="nextStep">完成</van-button> <van-button class="bottom-btn" type="danger" @click="nextStep">完成</van-button>
</div> </div>
</template> </template>
<script> <script>
import { Cell, CellGroup, Tag, Radio, RadioGroup } from 'vant' import { Cell, CellGroup, Tag, Radio, RadioGroup,Tab,Tabs} from 'vant'
import { mainRiskList, calculatePremium,getActProductList } from '@/api/ebiz/common/common' import { mainRiskList, calculatePremium,getActProductList } from '@/api/ebiz/common/common'
import { getOrderDetail } from '@/api/ebiz/sale/sale' import { getOrderDetail } from '@/api/ebiz/sale/sale'
@@ -29,10 +62,15 @@ export default {
[RadioGroup.name]: RadioGroup, [RadioGroup.name]: RadioGroup,
[CellGroup.name]: CellGroup, [CellGroup.name]: CellGroup,
[Tag.name]: Tag, [Tag.name]: Tag,
[Cell.name]: Cell [Cell.name]: Cell,
[Tab.name]:Tab,
[Tabs.name]:Tabs,
}, },
data() { data() {
return { return {
recommendType: '', // 渠道控制
isCrossChannel: 0, // 是否选择交叉渠道列表 0-否 1-是
active: 2,
specilFlag: '0', specilFlag: '0',
flag: true, flag: true,
list: [], list: [],
@@ -61,6 +99,11 @@ export default {
} else if (res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0024' || res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0040') { } else if (res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0024' || res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0040') {
this.specilFlag = '1' this.specilFlag = '1'
} }
this.recommendType = res.orderDTO.recmdDTO.recommendType;
if (this.recommendType == '02') {
// 电投 团险渠道产品 均为交叉渠道销售
this.isCrossChannel = '1';
}
// ------------------------专为桂/惠企写死--end---------------// // ------------------------专为桂/惠企写死--end---------------//
// 处理活动产品 // 处理活动产品
// this.activeFlag = res.orderDTO.orderInfoDTO.activeType // this.activeFlag = res.orderDTO.orderInfoDTO.activeType
@@ -99,9 +142,17 @@ export default {
// } // }
// return showFlag // return showFlag
// }, // },
onChangeMainList(name){
if (name == 'cross') {
this.isCrossChannel = '1';
}else{
this.isCrossChannel = '0';
}
this.isActivityCodeFunc();
},
isActivityCodeFunc(){ isActivityCodeFunc(){
//isActivityCode 有值代表是活动,无值代表是普通产品 //isActivityCode 有值代表是活动,无值代表是普通产品
if(this.isActivityCode){ if(this.isActivityCode && this.isCrossChannel == '0'){
this.getActProductListFunc() this.getActProductListFunc()
}else{ }else{
this.getMainRiskList() this.getMainRiskList()
@@ -168,6 +219,9 @@ export default {
mainListDate.platform = 'app' mainListDate.platform = 'app'
break break
} }
if (this.isCrossChannel == '1') {
mainListDate.platform = 'cross'
}
let resultData = await mainRiskList(mainListDate) let resultData = await mainRiskList(mainListDate)
if (resultData.result == 0) { if (resultData.result == 0) {
resultData.mainRiskDTOS.forEach(item => { resultData.mainRiskDTOS.forEach(item => {
@@ -316,6 +370,7 @@ export default {
let currentProductInfo = let currentProductInfo =
localStorage.isTrial == '1' localStorage.isTrial == '1'
? { ? {
isCrossChannel:this.isCrossChannel,
calFactorLst, calFactorLst,
hasAddtionRisk, hasAddtionRisk,
isMainRisk: 0, isMainRisk: 0,
@@ -331,6 +386,7 @@ export default {
predictTransferPrem: null //建议书使用 预计转入保费字段 predictTransferPrem: null //建议书使用 预计转入保费字段
} }
: { : {
isCrossChannel:this.isCrossChannel,
productTrialYearDTOS, productTrialYearDTOS,
calFactorLst, calFactorLst,
hasAddtionRisk, hasAddtionRisk,