mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-06 16:36:44 +08:00
FM20250523024-银保非实时单金掌桂投保系统需求
This commit is contained in:
@@ -36,3 +36,12 @@ export function getSpecialAreaProList(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 首页底部图
|
||||
export function getHomeBottomPic(data) {
|
||||
return request({
|
||||
url: getUrl('/app/code/getCodeValue', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div ref="product" class="home-product-container pb20">
|
||||
<!-- 非个险 -->
|
||||
<template v-if="!isPersonalInsu">
|
||||
<div class="home-product-content" v-if="branchType != '12'">
|
||||
<div class="home-product-content" v-if="branchType != '12' && branchType != '14'">
|
||||
<!-- 产品中心 -->
|
||||
<div class="pcenter-title flex pt10 mr20 mb10 ml15 justify-content-s align-items-c" style="height: 30px;">
|
||||
<h3 class="center-title fs15 pl10" style="border-left: 4px solid red;">知识社区</h3>
|
||||
@@ -34,7 +34,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 10px;width: 100%;background-color: #f5f5f5;" />
|
||||
<div class="home-product-content">
|
||||
<div class="home-product-content" v-if="branchType != '14'">
|
||||
<!-- 产品中心 -->
|
||||
<div class="pcenter-title flex pt10 mr20 mb10 justify-content-s align-items-c">
|
||||
<h3 class="center-title fs15 pl10 ml15" style="border-left: 4px solid red;">产品中心</h3>
|
||||
@@ -113,8 +113,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 10px;width: 100%;background-color: #f5f5f5;" />
|
||||
<div class="home-product-content">
|
||||
<!-- 产品中心 -->
|
||||
<div class="home-product-content" v-if="branchType != '14'">
|
||||
<!-- 银保渠道不显示 产品中心 -->
|
||||
<div class="pcenter-title flex pt10 mr20 mb10 justify-content-s align-items-c">
|
||||
<img class="title-img" :src="productCenterImgUrl" />
|
||||
<span class="more fs13 c-gray-base" @click="getMore"><span>查看更多</span><van-icon name="arrow"/></span>
|
||||
@@ -131,6 +131,17 @@
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template>
|
||||
<!-- 后台配置图 -->
|
||||
<div class="home-product-content pt20">
|
||||
<div class="pcenter-list mr20 mb10 ml15">
|
||||
<div class="pcenter-item text-center">
|
||||
<img :src="homeBottomPicUrl" style="width: 100%" alt=""/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -140,6 +151,7 @@ import performance from '@/assets/images/goodStart/performanceIcon.png'
|
||||
import product from '@/assets/images/goodStart/product.png'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my'
|
||||
import { getCongratulationList } from '@/api/ebiz/congratulation/congratulation.js'
|
||||
import { getHomeBottomPic } from '@/api/ebiz/product/product.js'
|
||||
import dateUtil from '@/assets/js/utils/date-utils.js'
|
||||
// import { orgShortNames } from '@/assets/js/utils/orgShortName'
|
||||
import CacheUtils from '@/assets/js/utils/cacheUtils'
|
||||
@@ -170,7 +182,8 @@ export default {
|
||||
productCenterImgUrl: '', // 产品中心图片
|
||||
productCenterKmhImgUrl: this.$assetsUrl + 'images/goodStart/productKmh.png', // 产品中心开门红图片
|
||||
productCenterNormalImgUrl: this.$assetsUrl + 'images/goodStart/product.png', // 产品中心普通蓝色图片
|
||||
personalInsu: ['1','N1','N2','N3','N5','T','S','JZG'] // 个险渠道编码及其他展示个险渠道类型的渠道编码
|
||||
personalInsu: ['1','N1','N2','N3','N5','T','S','JZG'], // 个险渠道编码及其他展示个险渠道类型的渠道编码
|
||||
homeBottomPicUrl: null
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@@ -193,6 +206,12 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async getHomeBottomImg() {
|
||||
const result = await getHomeBottomPic({ operateType: 'nonRealYB' })
|
||||
if (result.result === '0' && result.content && result.content.length > 0) {
|
||||
this.homeBottomPicUrl = result.content[0].picUrl
|
||||
}
|
||||
},
|
||||
async getTableData() {
|
||||
let currMonth = dateUtil.formatDate(new Date(), 'yyyy-MM-dd')
|
||||
let data = await getCongratulationList({ date: currMonth, queryType: 'm', type: 'kmh' })
|
||||
@@ -234,11 +253,14 @@ export default {
|
||||
// 内外勤判断
|
||||
this.isInner = /^N{1}/.test(result.branchType) || /^S/.test(result.branchType) || /^T/.test(result.branchType) || /^JZG/.test(result.branchType) // 判断是否内勤
|
||||
this.branchType = result.branchType //6 网销渠道
|
||||
this.isGoodStart = result.showTemplateKmh === 'KMH'? '1':'2' // 判断是否开门红 1-开门红 2-否
|
||||
this.isPersonalInsu = this.personalInsu.indexOf(result.branchType) > -1 // 判断是否个险渠道
|
||||
this.organizationImgUrl = this.isGoodStart =='1'?this.organizationKmhImgUrl:this.organizationNormalImgUrl
|
||||
this.performanceImgUrl = this.isGoodStart =='1'?this.performanceKmhImgUrl:this.performanceNormalImgUrl
|
||||
this.productCenterImgUrl = this.isGoodStart =='1'?this.productCenterKmhImgUrl:this.productCenterNormalImgUrl
|
||||
this.isGoodStart = result.showTemplateKmh === 'KMH' ? '1' : '2' // 判断是否开门红 1-开门红 2-否
|
||||
this.isPersonalInsu = this.personalInsu.indexOf(result.branchType) > -1 // 判断是否个险渠道
|
||||
this.organizationImgUrl = this.isGoodStart == '1' ? this.organizationKmhImgUrl : this.organizationNormalImgUrl
|
||||
this.performanceImgUrl = this.isGoodStart == '1' ? this.performanceKmhImgUrl : this.performanceNormalImgUrl
|
||||
this.productCenterImgUrl = this.isGoodStart == '1' ? this.productCenterKmhImgUrl : this.productCenterNormalImgUrl
|
||||
if (this.branchType == '14') {
|
||||
this.getHomeBottomImg()
|
||||
}
|
||||
} else {
|
||||
this.$toast(result.resultMessage)
|
||||
}
|
||||
|
||||
@@ -12,6 +12,12 @@
|
||||
<van-field v-model="projectDTO.personCode" label="录单人工号" name="录单人工号" readonly placeholder="请输入"/>
|
||||
<van-field v-model="projectDTO.leaderCode" label="出单人工号" name="出单人工号" readonly placeholder="请输入"/>
|
||||
<!-- <van-field :value="projectDTO.departmentName" @click="toSelect('GBCKS')" readonly required label="部门/科室" name="部门/科室" right-icon="arrow" placeholder="请选择"/>-->
|
||||
</van-cell-group>
|
||||
<!-- 保单信息 -->
|
||||
<van-cell-group :border="false" v-if="branchType == 14">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 mt10 pv12">保单信息</p>
|
||||
<van-field v-model="insureInfo.branchName" label="网点名称" name="网点名称" readonly placeholder="请输入"/>
|
||||
<van-field v-model="insureInfo.orderNo" label="投保单号" name="投保单号" readonly placeholder="请输入"/>
|
||||
</van-cell-group>
|
||||
<van-cell-group class="mt10">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
||||
@@ -401,7 +407,11 @@
|
||||
<!-- <van-field v-model="userInfo.homeZip" required label="邮编" name="邮编" placeholder="请输入" v-validate="'required|zipCode'" maxlength="6" clearable /> -->
|
||||
<!-- <van-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="13" clearable /> -->
|
||||
</van-cell-group>
|
||||
<van-button type="danger" class="bottom-btn" @click="nextStep" v-no-more-click="1000">下一步</van-button>
|
||||
<div class="bottom-btn flex">
|
||||
<van-button color="#E9332E" plain v-no-more-click="1000" @click="generateInsureNo" v-if="branchType == '14'">生成投保单号</van-button>
|
||||
<van-button type="danger" @click="nextStep" v-no-more-click="1000" class="flex1">下一步</van-button>
|
||||
</div>
|
||||
<!-- <van-button type="danger" class="bottom-btn" @click="nextStep" v-no-more-click="1000">下一步</van-button> -->
|
||||
|
||||
<!-- 字段选择 -->
|
||||
<van-popup v-model="popupShow" position="bottom"><van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" /></van-popup>
|
||||
@@ -441,6 +451,49 @@
|
||||
<van-button type="danger" block style="font-size: 14px;" @click="thisdoubledialogfunc">确定</van-button>
|
||||
</div>
|
||||
</van-dialog>
|
||||
<van-dialog v-model="insureNoshow" :showConfirmButton="false">
|
||||
<div slot="title">
|
||||
<p style="color: #e9332e">生成投保单号</p>
|
||||
</div>
|
||||
<div style="padding: 20px 15px 30px; font-size: 14px" v-if="!insureInfo.orderNo">
|
||||
<div style="line-height: 25px">请您输入证件号码,输入完成后系统将自动生成投保单号</div>
|
||||
<van-field
|
||||
:value="insuredDialogInfo.idType | idToText('insuredIdType')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
required
|
||||
label="证件类型"
|
||||
name="证件类型"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('dialogInsuredIdType')"
|
||||
/>
|
||||
<van-field
|
||||
v-model="insuredDialogInfo.idNo"
|
||||
maxlength="18"
|
||||
required
|
||||
label="证件号码"
|
||||
v-validate="'required'"
|
||||
name="证件号码"
|
||||
placeholder="请输入投保人证件号码"
|
||||
clearable
|
||||
@blur="idNoVerification(insuredDialogInfo.idNo)"
|
||||
>
|
||||
</van-field>
|
||||
</div>
|
||||
<div style="padding: 20px 15px 30px; font-size: 14px" v-if="insureInfo.orderNo">
|
||||
<div style="line-height: 25px">根据您输入的证件号码,我们己为您生成投保单号</div>
|
||||
<div style="line-height: 25px">{{ insureInfo.orderNo }}</div>
|
||||
</div>
|
||||
<div style="text-align: center; margin-bottom: 30px">
|
||||
<van-button round type="danger" size="small" style="padding: 0px 35px; font-size: 14px" @click="insureConfirm" v-if="!insureInfo.orderNo"
|
||||
>确定</van-button
|
||||
>
|
||||
<van-button round type="danger" size="small" style="padding: 0px 35px; font-size: 14px" @click="insureNoshow = false" v-if="insureInfo.orderNo"
|
||||
>完成</van-button
|
||||
>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@@ -465,6 +518,7 @@
|
||||
import SearchField from '@/components/common/SearchField'
|
||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
import { gbcProjectDetail, getDepartmentByProjectNo } from '@/api/GBC/GBC'
|
||||
import { getCheckModelAgentInfo } from '@/api/ebiz/common/common'
|
||||
|
||||
export default {
|
||||
name: 'insuredInfo',
|
||||
@@ -623,10 +677,27 @@
|
||||
salePageFlag: '1',
|
||||
userWorkcompanys: [], //单位数据
|
||||
manageComCode:'',//代理人管理机构 52贵州 45广西
|
||||
areaValue:'' //代理人管理机构--省级编号
|
||||
areaValue:'', //代理人管理机构--省级编号
|
||||
insureNoshow: false, // 生成保单弹窗
|
||||
insureInfo: {
|
||||
branchName: '',
|
||||
orderNo: '',
|
||||
},
|
||||
insuredDialogInfo: {
|
||||
idType:'',
|
||||
idNo:'',
|
||||
},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
async created() {
|
||||
this.branchType = window.localStorage.getItem('branchType') || null
|
||||
if(this.branchType == '14'){
|
||||
// 网点名称
|
||||
const userInfo = await getCheckModelAgentInfo({})
|
||||
if(userInfo.result == 0) {
|
||||
this.insureInfo.branchName = userInfo.comName
|
||||
}
|
||||
}
|
||||
this.specilFlag = this.$route.query.specilFlag
|
||||
localStorage.removeItem('bankCardUrlPath')
|
||||
localStorage.removeItem('bankCard')
|
||||
@@ -647,6 +718,8 @@
|
||||
this.renovate = new Date().getTime()
|
||||
//投保人信息返显
|
||||
this.userInfo = res.orderDTO.appntDTO
|
||||
// 保单信息-投保单号返显
|
||||
this.insureInfo.orderNo = this.userInfo.orderNo || ''
|
||||
this.setCustomerMarriage(res.orderDTO.appntDTO.marriage)
|
||||
//是否长期
|
||||
this.userInfo.effectiveDateType = res.orderDTO.appntDTO.effectiveDateType == 'false' ? false : true
|
||||
@@ -737,6 +810,53 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
idNoVerification(val) {
|
||||
if (this.insuredDialogInfo.idType == '1') {
|
||||
if (!idNoCheck.isIdno(val)) {
|
||||
this.insuredDialogInfo.idNo = ""
|
||||
return this.$toast('您填写的证件号码有误')
|
||||
}
|
||||
}
|
||||
},
|
||||
generatePolicyNo(){
|
||||
let params = {
|
||||
orderType: 'ORDER_NO',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: this.$route.query.orderNo,
|
||||
isElecCont: this.isElecCont
|
||||
},
|
||||
appntDTO: {}
|
||||
}
|
||||
}
|
||||
params.orderDTO.appntDTO.idType = this.insuredDialogInfo.idType
|
||||
params.orderDTO.appntDTO.idNo = this.insuredDialogInfo.idNo
|
||||
saveOrUpdateOrderInfo(params).then((res) => {
|
||||
if (res.result == 0) {
|
||||
this.insureInfo.orderNo = res.orderNo
|
||||
this.insureNoshow = true
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
insureConfirm(){
|
||||
if(!this.insuredDialogInfo.idNo) {
|
||||
return this.$toast('请输入投保人证件号码!')
|
||||
} else {
|
||||
this.generatePolicyNo()
|
||||
}
|
||||
},
|
||||
// 生成保单号
|
||||
generateInsureNo(){
|
||||
this.insuredDialogInfo.idType = this.userInfo.idType
|
||||
this.insuredDialogInfo.idNo = this.userInfo.idNo
|
||||
if (this.userInfo.idType && this.userInfo.idNo && !this.insureInfo.orderNo){
|
||||
this.generatePolicyNo()
|
||||
} else{
|
||||
this.insureNoshow = true
|
||||
}
|
||||
},
|
||||
getDepartmentByProjectNo(){
|
||||
let params = {
|
||||
|
||||
@@ -903,6 +1023,8 @@
|
||||
case 'GBCKS':
|
||||
this.columns = this.departmentList
|
||||
break
|
||||
case 'dialogInsuredIdType':
|
||||
this.columns = DataDictionary.insuredIdType
|
||||
}
|
||||
|
||||
// if (pickerType == '1') {
|
||||
@@ -989,6 +1111,9 @@
|
||||
} else if (this.pickerType === 'GBCKS') {
|
||||
this.projectDTO.departmentCode = value.id
|
||||
this.projectDTO.departmentName = value.text
|
||||
} else if (this.pickerType == 'dialogInsuredIdType') {
|
||||
this.insuredDialogInfo.idNo = ''
|
||||
this.insuredDialogInfo.idType = value.id
|
||||
}
|
||||
},
|
||||
//证件起始截止日期
|
||||
|
||||
Reference in New Issue
Block a user