mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-10 15:06:45 +08:00
FM20250523024-银保非实时单金掌桂投保系统需求
This commit is contained in:
@@ -36,3 +36,12 @@ export function getSpecialAreaProList(data) {
|
|||||||
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">
|
<div ref="product" class="home-product-container pb20">
|
||||||
<!-- 非个险 -->
|
<!-- 非个险 -->
|
||||||
<template v-if="!isPersonalInsu">
|
<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;">
|
<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>
|
<h3 class="center-title fs15 pl10" style="border-left: 4px solid red;">知识社区</h3>
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div style="height: 10px;width: 100%;background-color: #f5f5f5;" />
|
<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">
|
<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>
|
<h3 class="center-title fs15 pl10 ml15" style="border-left: 4px solid red;">产品中心</h3>
|
||||||
@@ -113,8 +113,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div style="height: 10px;width: 100%;background-color: #f5f5f5;" />
|
<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">
|
<div class="pcenter-title flex pt10 mr20 mb10 justify-content-s align-items-c">
|
||||||
<img class="title-img" :src="productCenterImgUrl" />
|
<img class="title-img" :src="productCenterImgUrl" />
|
||||||
<span class="more fs13 c-gray-base" @click="getMore"><span>查看更多</span><van-icon name="arrow"/></span>
|
<span class="more fs13 c-gray-base" @click="getMore"><span>查看更多</span><van-icon name="arrow"/></span>
|
||||||
@@ -131,6 +131,17 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</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>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -140,6 +151,7 @@ import performance from '@/assets/images/goodStart/performanceIcon.png'
|
|||||||
import product from '@/assets/images/goodStart/product.png'
|
import product from '@/assets/images/goodStart/product.png'
|
||||||
import { getAgentInfo } from '@/api/ebiz/my/my'
|
import { getAgentInfo } from '@/api/ebiz/my/my'
|
||||||
import { getCongratulationList } from '@/api/ebiz/congratulation/congratulation.js'
|
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 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'
|
import CacheUtils from '@/assets/js/utils/cacheUtils'
|
||||||
@@ -170,7 +182,8 @@ export default {
|
|||||||
productCenterImgUrl: '', // 产品中心图片
|
productCenterImgUrl: '', // 产品中心图片
|
||||||
productCenterKmhImgUrl: this.$assetsUrl + 'images/goodStart/productKmh.png', // 产品中心开门红图片
|
productCenterKmhImgUrl: this.$assetsUrl + 'images/goodStart/productKmh.png', // 产品中心开门红图片
|
||||||
productCenterNormalImgUrl: this.$assetsUrl + 'images/goodStart/product.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: {
|
computed: {
|
||||||
@@ -193,6 +206,12 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
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() {
|
async getTableData() {
|
||||||
let currMonth = dateUtil.formatDate(new Date(), 'yyyy-MM-dd')
|
let currMonth = dateUtil.formatDate(new Date(), 'yyyy-MM-dd')
|
||||||
let data = await getCongratulationList({ date: currMonth, queryType: 'm', type: 'kmh' })
|
let data = await getCongratulationList({ date: currMonth, queryType: 'm', type: 'kmh' })
|
||||||
@@ -239,6 +258,9 @@ export default {
|
|||||||
this.organizationImgUrl = this.isGoodStart == '1' ? this.organizationKmhImgUrl : this.organizationNormalImgUrl
|
this.organizationImgUrl = this.isGoodStart == '1' ? this.organizationKmhImgUrl : this.organizationNormalImgUrl
|
||||||
this.performanceImgUrl = this.isGoodStart == '1' ? this.performanceKmhImgUrl : this.performanceNormalImgUrl
|
this.performanceImgUrl = this.isGoodStart == '1' ? this.performanceKmhImgUrl : this.performanceNormalImgUrl
|
||||||
this.productCenterImgUrl = this.isGoodStart == '1' ? this.productCenterKmhImgUrl : this.productCenterNormalImgUrl
|
this.productCenterImgUrl = this.isGoodStart == '1' ? this.productCenterKmhImgUrl : this.productCenterNormalImgUrl
|
||||||
|
if (this.branchType == '14') {
|
||||||
|
this.getHomeBottomImg()
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.$toast(result.resultMessage)
|
this.$toast(result.resultMessage)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,12 @@
|
|||||||
<van-field v-model="projectDTO.personCode" label="录单人工号" name="录单人工号" readonly placeholder="请输入"/>
|
<van-field v-model="projectDTO.personCode" label="录单人工号" name="录单人工号" readonly placeholder="请输入"/>
|
||||||
<van-field v-model="projectDTO.leaderCode" 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-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>
|
||||||
<van-cell-group class="mt10">
|
<van-cell-group class="mt10">
|
||||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
<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.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-field v-model="userInfo.homePhone" label="家庭电话" name="家庭电话" placeholder="非必填" maxlength="13" clearable /> -->
|
||||||
</van-cell-group>
|
</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>
|
<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>
|
<van-button type="danger" block style="font-size: 14px;" @click="thisdoubledialogfunc">确定</van-button>
|
||||||
</div>
|
</div>
|
||||||
</van-dialog>
|
</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>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
@@ -465,6 +518,7 @@
|
|||||||
import SearchField from '@/components/common/SearchField'
|
import SearchField from '@/components/common/SearchField'
|
||||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||||
import { gbcProjectDetail, getDepartmentByProjectNo } from '@/api/GBC/GBC'
|
import { gbcProjectDetail, getDepartmentByProjectNo } from '@/api/GBC/GBC'
|
||||||
|
import { getCheckModelAgentInfo } from '@/api/ebiz/common/common'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'insuredInfo',
|
name: 'insuredInfo',
|
||||||
@@ -623,10 +677,27 @@
|
|||||||
salePageFlag: '1',
|
salePageFlag: '1',
|
||||||
userWorkcompanys: [], //单位数据
|
userWorkcompanys: [], //单位数据
|
||||||
manageComCode:'',//代理人管理机构 52贵州 45广西
|
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
|
this.specilFlag = this.$route.query.specilFlag
|
||||||
localStorage.removeItem('bankCardUrlPath')
|
localStorage.removeItem('bankCardUrlPath')
|
||||||
localStorage.removeItem('bankCard')
|
localStorage.removeItem('bankCard')
|
||||||
@@ -647,6 +718,8 @@
|
|||||||
this.renovate = new Date().getTime()
|
this.renovate = new Date().getTime()
|
||||||
//投保人信息返显
|
//投保人信息返显
|
||||||
this.userInfo = res.orderDTO.appntDTO
|
this.userInfo = res.orderDTO.appntDTO
|
||||||
|
// 保单信息-投保单号返显
|
||||||
|
this.insureInfo.orderNo = this.userInfo.orderNo || ''
|
||||||
this.setCustomerMarriage(res.orderDTO.appntDTO.marriage)
|
this.setCustomerMarriage(res.orderDTO.appntDTO.marriage)
|
||||||
//是否长期
|
//是否长期
|
||||||
this.userInfo.effectiveDateType = res.orderDTO.appntDTO.effectiveDateType == 'false' ? false : true
|
this.userInfo.effectiveDateType = res.orderDTO.appntDTO.effectiveDateType == 'false' ? false : true
|
||||||
@@ -737,6 +810,53 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
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(){
|
getDepartmentByProjectNo(){
|
||||||
let params = {
|
let params = {
|
||||||
|
|
||||||
@@ -903,6 +1023,8 @@
|
|||||||
case 'GBCKS':
|
case 'GBCKS':
|
||||||
this.columns = this.departmentList
|
this.columns = this.departmentList
|
||||||
break
|
break
|
||||||
|
case 'dialogInsuredIdType':
|
||||||
|
this.columns = DataDictionary.insuredIdType
|
||||||
}
|
}
|
||||||
|
|
||||||
// if (pickerType == '1') {
|
// if (pickerType == '1') {
|
||||||
@@ -989,6 +1111,9 @@
|
|||||||
} else if (this.pickerType === 'GBCKS') {
|
} else if (this.pickerType === 'GBCKS') {
|
||||||
this.projectDTO.departmentCode = value.id
|
this.projectDTO.departmentCode = value.id
|
||||||
this.projectDTO.departmentName = value.text
|
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