Compare commits

...

59 Commits

Author SHA1 Message Date
liu.xiaofeng@ebiz-digits.com
c6144902dd 大单榜保留数据从10天改为30天 2024-01-15 09:17:52 +08:00
liu.xiaofeng@ebiz-digits.com
b236bbc14f 大单帮日期选择范围修改 2024-01-10 17:59:23 +08:00
liu.xiaofeng@ebiz-digits.com
fc3f261800 大单帮修改以及接口对接 2024-01-10 15:41:01 +08:00
liu.xiaofeng@ebiz-digits.com
181b7c017e 全局替换标保为期交 2024-01-08 21:34:50 +08:00
liu.xiaofeng@ebiz-digits.com
3cd271e952 接口加密 2024-01-05 21:37:42 +08:00
liu.xiaofeng@ebiz-digits.com
c240263c6d 补充校验健康险保单费用落地管控规则的申请 2024-01-05 21:23:32 +08:00
liu.xiaofeng@ebiz-digits.com
2e9a15222e 卡单接口对接 2024-01-05 21:23:09 +08:00
liu.xiaofeng@ebiz-digits.com
6d513d12d8 隐藏排名人力模块数据 2024-01-03 15:23:36 +08:00
liu.xiaofeng@ebiz-digits.com
aae3993f82 排名页面标保改为期交 2024-01-03 09:58:08 +08:00
liu.xiaofeng@ebiz-digits.com
f4a5c1fc48 证件起始日期自动计算修改 2023-12-29 14:41:52 +08:00
liu.xiaofeng@ebiz-digits.com
4a9535c31b 保费试算选择投保人附加险试算参数投保人年龄获取修改 2023-12-28 13:17:35 +08:00
liu.xiaofeng@ebiz-digits.com
24b482d2ee 鑫管家B款产品 利益演示档位显示文字调整 2023-12-27 13:57:14 +08:00
liu.xiaofeng@ebiz-digits.com
1731646a29 被保人证件类型选择户口本时起始截止日期自动计算修改 2023-12-23 22:18:37 +08:00
liu.xiaofeng@ebiz-digits.com
ebc791e9e3 被保人证件类型选择户口本时起始截止日期自动计算修改 2023-12-23 22:09:54 +08:00
liu.xiaofeng@ebiz-digits.com
41395776d4 中介渠道鑫管家B款产品保费输入限制调整 2023-12-22 21:28:07 +08:00
liu.xiaofeng@ebiz-digits.com
97c3f943d7 中介渠道鑫管家B款产品试算页面逻辑处理以及建议书利益演算隐藏保额 2023-12-22 21:28:01 +08:00
liu.xiaofeng@ebiz-digits.com
42168ab7cd 国富人寿鑫管家B款终身寿险(万能型)增加抄录 2023-12-22 21:27:57 +08:00
liu.xiaofeng@ebiz-digits.com
7e85f5ad00 独立代理人渠道首页增加渠道逻辑判断展示内容 2023-12-22 10:24:13 +08:00
liu.xiaofeng@ebiz-digits.com
777eff7f3c 一月业绩查询标题标保修改为期交 2023-12-14 17:44:20 +08:00
liu.xiaofeng@ebiz-digits.com
fd47414a0a 一月业绩查询【标保】修改为【期交】 2023-12-14 17:44:16 +08:00
liu.xiaofeng@ebiz-digits.com
abf8969c76 【标保】修改为【期交】 2023-12-14 17:44:13 +08:00
liu.xiaofeng@ebiz-digits.com
19009e943d 核保状态提示语修改 2023-12-14 10:59:01 +08:00
liu.xiaofeng@ebiz-digits.com
59cc88bc43 投保须知和转账授权文件阅读时长修改 2023-12-14 10:12:24 +08:00
liu.xiaofeng@ebiz-digits.com
f3e7907626 微信环境 人脸识别失败后不触发短信验证修复 2023-12-13 14:01:16 +08:00
liu.xiaofeng@ebiz-digits.com
f55bf256ef 订单状态为公司谢绝修改为提交失败 2023-12-13 11:44:39 +08:00
liu.xiaofeng@ebiz-digits.com
29caa2a03f 出单信息页面功能优化 2023-12-12 15:30:40 +08:00
liu.xiaofeng@ebiz-digits.com
8621137660 首页业绩排名表头字段修改 2023-12-12 11:26:45 +08:00
liu.xiaofeng@ebiz-digits.com
1e0113b597 更新指定生效日说明文件内容 更换标题 2023-12-11 10:55:15 +08:00
liu.xiaofeng@ebiz-digits.com
1b68a6f001 更新指定生效日说明文件内容2 2023-12-11 10:40:23 +08:00
liu.xiaofeng@ebiz-digits.com
4b68721ab4 更新指定生效日说明文件内容 2023-12-11 10:40:20 +08:00
liu.xiaofeng@ebiz-digits.com
4a2a41f31e 开门红专区改了一月专区 2023-12-08 23:24:58 +08:00
liu.xiaofeng@ebiz-digits.com
f4ae03c78c 选择开门红产品页面图片更换 2023-12-08 22:45:44 +08:00
liu.xiaofeng@ebiz-digits.com
e572bae4ff 更换页面标题 2023-12-08 22:36:50 +08:00
liu.xiaofeng@ebiz-digits.com
532592851f 开门红专区标题修改为一月专区 2023-12-08 20:38:42 +08:00
liu.xiaofeng@ebiz-digits.com
ffab856a30 更换开门红图片 2023-12-08 20:26:00 +08:00
liu.xiaofeng@ebiz-digits.com
44607614ca 健康险续保测试问题修复6 2023-12-06 21:26:55 +08:00
liu.xiaofeng@ebiz-digits.com
bd071eadef 健康险续保测试问题修复5 2023-12-06 21:26:52 +08:00
liu.xiaofeng@ebiz-digits.com
f440cee91a 健康险续保测试问题修复4 2023-12-06 21:26:49 +08:00
liu.xiaofeng@ebiz-digits.com
ae3847fec6 健康险续保测试问题修复3 2023-12-06 21:26:45 +08:00
liu.xiaofeng@ebiz-digits.com
84a2036eba 健康险续保测试问题修复2 2023-12-06 21:26:42 +08:00
liu.xiaofeng@ebiz-digits.com
1328f504f7 健康险续保测试问题修复1 2023-12-06 21:26:39 +08:00
liu.xiaofeng@ebiz-digits.com
fa199309a8 健康险续保测试问题修复 2023-12-06 21:26:35 +08:00
liu.xiaofeng@ebiz-digits.com
2097fab789 健康险续保营业部经理可以编辑未续报原因 2023-12-06 21:26:33 +08:00
liu.xiaofeng@ebiz-digits.com
8808228c81 由列表页面跳转详情页面路由传参由原来的固定调整为动态的值 2023-12-06 21:26:29 +08:00
liu.xiaofeng@ebiz-digits.com
a399ce7a1b 健康险续保搜索栏操作逻辑修改2 2023-12-06 21:26:25 +08:00
liu.xiaofeng@ebiz-digits.com
76d944b07b 健康险续保搜索栏操作逻辑修改1 2023-12-06 21:26:22 +08:00
liu.xiaofeng@ebiz-digits.com
03ffd1106d 健康险续保搜索栏操作逻辑修改 2023-12-06 21:26:19 +08:00
liu.xiaofeng@ebiz-digits.com
d2523b2deb 健康险续保列表页面搜索框功能修改并新增模糊搜索营业部经理下的代理人列表数据 2023-12-06 21:26:16 +08:00
liu.xiaofeng@ebiz-digits.com
002d0a0be4 选择服务经理的弹窗数据展示效果调整为两个字段展示并做切换效果 2023-12-06 21:26:12 +08:00
liu.xiaofeng@ebiz-digits.com
8c969e235e 营业部经理增加选择按钮并添加下拉弹窗 2023-12-06 21:26:09 +08:00
liu.xiaofeng@ebiz-digits.com
8ec51b01c8 区分营业部经理和服务经理的数据显示 2023-12-06 21:26:06 +08:00
liu.xiaofeng@ebiz-digits.com
7f9130542b 自动计算健康险续保选择月份的第一天和最后一天的日期 2023-12-06 21:26:03 +08:00
liu.xiaofeng@ebiz-digits.com
946d3b80c1 对接健康险续保得接口并调整相关字段展示1 2023-12-06 21:25:58 +08:00
liu.xiaofeng@ebiz-digits.com
18f42946ff 对接健康险续保得接口并调整相关字段展示 2023-12-06 21:25:55 +08:00
liu.xiaofeng@ebiz-digits.com
2ddde67c40 增加健康险清单和健康险详情接口 2023-12-06 21:25:50 +08:00
liu.xiaofeng@ebiz-digits.com
dbdb41fecd 健康险续保列表接口对接 2023-12-06 21:25:45 +08:00
liu.xiaofeng@ebiz-digits.com
d96ae3f51f 续保列表与详情页面效果细节调整 2023-12-06 21:25:40 +08:00
liu.xiaofeng@ebiz-digits.com
965d5b0abf xubao 2023-12-06 21:25:35 +08:00
liu.xiaofeng@ebiz-digits.com
1a090b7073 修改订单状态58为待支付 2023-11-30 22:11:40 +08:00
46 changed files with 1078 additions and 353 deletions

View File

@@ -90,3 +90,11 @@ export function queryOutPosters(data) {
})
}
//大单榜海报列表接口
export function queryOutPostersBig(data) {
return request({
url: getUrl(`/sale/makePosters/queryOutPostersBig`, 1),
method: 'post',
data
})
}

View File

@@ -0,0 +1,34 @@
import request from '@/assets/js/utils/request'
import getUrl from '@/assets/js/utils/get-url'
export function healthgetRenewalList(data) {
return request({
url: getUrl('/sale/health/getRenewalList', 1),
method: 'post',
data
})
}
export function healthgetRenewalListDetail(data) {
return request({
url: getUrl('/sale/health/getRenewalListDetail', 1),
method: 'post',
data
})
}
export function reasonForNonRenewalSubmitted(data) {
return request({
url: getUrl('/sale/health/reasonForNonRenewalSubmitted', 1),
method: 'post',
data
})
}
export function getAgentManager(data) {
return request({
url: getUrl('/sale/health/getAgentManager', 1),
method: 'post',
data
})
}

View File

@@ -372,3 +372,12 @@ export function checkAppointBnf(data) {
data
})
}
export function appntIsAgent(data) {
return request({
url: getUrl('/sale/insure/appntIsAgent', 1),
method: 'post',
data
})
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 579 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 613 KiB

After

Width:  |  Height:  |  Size: 303 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -21,7 +21,7 @@ export default {
return startDate = thisyear + '-02-28'
}
}else{
return startDate = String(Number(endDate.slice(0, 4)) - 5) + startDate.slice(4, 11)
return startDate = String(Number(endDate.slice(0, 4)) - 5) + endDate.slice(4, 11)
}
}
/**

View File

@@ -1773,7 +1773,7 @@ export default {
},
{
id: '07',
text: '公司谢绝'
text: '核保失败'
},
{
id: '08',
@@ -1977,7 +1977,7 @@ export default {
},
{
id: '58',
text: '转人核支付'
text: '支付'
},
{
id: '59',

View File

@@ -23,7 +23,7 @@ export default [
name: 'Prefecture',
component: PerformanceReport,
meta: {
title: '开门红业绩查询'
title: '一月业绩查询'
}
},
{
@@ -31,7 +31,7 @@ export default [
name: 'Prefecture',
component: Prefecture,
meta: {
title: '开门红专区'
title: '一月专区'
}
},
{
@@ -53,7 +53,7 @@ export default [
name: 'GoodStartScheme',
component: GoodStartScheme,
meta: {
title: '开门红方案'
title: '一月方案'
}
},
{
@@ -61,7 +61,7 @@ export default [
name: 'businessMap',
component: businessMap,
meta: {
title: '开门红业务地图'
title: '一月业务地图'
}
},
{
@@ -77,7 +77,7 @@ export default [
name: 'newsPaper',
component: newsPaper,
meta: {
title: '开门红实时贺报'
title: '一月实时贺报'
}
}
]

View File

@@ -0,0 +1,23 @@
//健康险续保 定义相关组件
const healthInsuranceRenewalList = () => import('@/views/ebiz/healthInsuranceRenewal/list')
const healthInsuranceRenewalDetail = () => import('@/views/ebiz/healthInsuranceRenewal/detail')
export default [
{
path: '/healthInsuranceRenewal/list',
name: 'healthInsuranceRenewalList',
component: healthInsuranceRenewalList,
meta: {
title: '健康险续保清单',
index: 1
}
},
{
path: '/healthInsuranceRenewal/detail',
name: 'healthInsuranceRenewalDetail',
component: healthInsuranceRenewalDetail,
meta: {
title: '保单详情',
index: 1
}
}
]

View File

@@ -49,6 +49,8 @@ import allowance from './allowance'
import cooperativeUnit from './cooperativeUnit'
// YB_APP
import YB_APP from '../YB_APP/index'
//健康险续保
import healthInsuranceRenewal from './healthInsuranceRenewal'
export default [
...proposal,
...sale,
@@ -86,5 +88,6 @@ export default [
...laurelClub,
...allowance,
...cooperativeUnit,
...YB_APP
...YB_APP,
...healthInsuranceRenewal
] //根据需要进行删减

View File

@@ -173,6 +173,19 @@ export default {
}
}
},
created() {
},
mounted() {
let date = new Date()
let month = date.getMonth() + 1
if (month <= 9) {
month = '0' + month
}
//默认展示当天数据
this.postDate = date.getFullYear() + '-' + month + '-' + date.getDate()
this.initData()
},
methods: {
//切换当月、当天
switchDayOrMonth(index) {
@@ -218,7 +231,14 @@ export default {
* 查询机构下拉列表
* manageCode, manageLv传空查全国所有二级机构
**/
this.$toast.loading({
duration: 0, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '加载中……'
})
let resData = await getBranchByUser({})
this.$toast.clear()
if (resData.result != '0') return this.$toast(resData.resultMessage)
this.manageLv = resData.content.level
//当前token查不出机构时,展示敬请期待
@@ -275,6 +295,12 @@ export default {
},
// 查询列表数据
queryOutOrderListFunc() {
this.$toast.loading({
duration: 0, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '加载中……'
})
queryOutOrderList({
dateFlag: this.dateFlag,
appntDate: this.postDate,
@@ -284,6 +310,7 @@ export default {
pageNum: this.pageNum,
pageSize: this.pageSize
}).then(res => {
this.$toast.clear()
if (res.result == 0) {
if (res.content) {
this.pageNum++
@@ -388,16 +415,6 @@ export default {
this.queryOutOrderListFunc()
}
},
created() {
let date = new Date()
let month = date.getMonth() + 1
if (month <= 9) {
month = '0' + month
}
//默认展示当天数据
this.postDate = date.getFullYear() + '-' + month + '-' + date.getDate()
this.initData()
}
}
</script>

View File

@@ -133,7 +133,7 @@
class="attachmentManagement-next"
size="large"
:disabled="isDisabled"
@click="next"
@click="appntIsAgent"
@touchstart="beforeNext(isDisabled)"
v-no-more-click="1000"
>立即投保</van-button
@@ -148,7 +148,7 @@ import { Cell, CellGroup, Field, Uploader, RadioGroup, Radio, Dialog, Picker, Po
import { cardOrderDetail,saveOrUpdateGroupCard } from '@/api/ebiz/cardList/cardList.js'
import config from '@/config'
import utils from '../../../assets/js/business-common'
import { underWrite } from '@/api/ebiz/sale/sale'
import { underWrite, appntIsAgent } from '@/api/ebiz/sale/sale'
import { uploadImg, IDCardOCR } from '@/api/ebiz/sale/sale'
@@ -1037,6 +1037,35 @@ export default {
}
});
},
appntIsAgent(){
let params = {
orderNo: this.cardOrderNo
}
appntIsAgent(params).then(res=>{
if(res.result == '0') {
if(res.content.isAgengFlag == '0') {
this.$dialog.confirm({
className: 'dialog-delete',
title: '提示',
message: '投保人/法人同时为代理人此代理人费用为0。虚拟账号的提示虚拟代理人费用为0。请确认提交审核或者退回修改',
cancelButtonColor: '#E9332E',
confirmButtonColor: '#FFFFFF',
cancelButtonText: '退回'
})
.then(() => {
this.next()
})
.catch(() => {
return
})
} else {
this.next()
}
} else {
this.$toast(res.resultMessage)
}
})
},
// 点击下一步
next() {

View File

@@ -579,7 +579,7 @@ import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
import DataDictionary from '@/assets/js/utils/data-dictionary'
import areaList from '@/assets/js/utils/areaForSale'
import { getProductInfo,saveOrUpdateCard,insureTrial } from '@/api/ebiz/cardList/cardList.js'
import { underWrite } from '@/api/ebiz/sale/sale'
import { underWrite, appntIsAgent } from '@/api/ebiz/sale/sale'
import utilsAge from '@/assets/js/utils/age'
import getAreaName from '@/assets/js/utils/getAreaNameForSale'
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
@@ -1097,6 +1097,35 @@ export default {
this.areaCode = this.insuredInfo.homeArea
}
},
appntIsAgent(orderNo){
let params = {
orderNo: orderNo
}
appntIsAgent(params).then(res=>{
if(res.result == '0') {
if(res.content.isAgengFlag == '0') {
this.$dialog.confirm({
className: 'dialog-delete',
title: '提示',
message: '投保人/法人同时为代理人此代理人费用为0虚拟账号的提示虚拟代理人费用为0请确认提交审核或者退回修改',
cancelButtonColor: '#E9332E',
confirmButtonColor: '#FFFFFF',
cancelButtonText: '退回'
})
.then(() => {
this.underWrite(orderNo)
})
.catch(() => {
return
})
} else {
this.underWrite(orderNo)
}
} else {
this.$toast(res.resultMessage)
}
})
},
underWrite(orderNo) {
let data = {
platform: 'app',
@@ -2401,8 +2430,8 @@ export default {
// console.log(this.userInfo)
let orderNo = (localStorage.orderNo = resultData.content.object)
this.underWrite(orderNo)
this.appntIsAgent(orderNo)
// this.underWrite(orderNo)
} else {
console.error(resultData.resultMessage)
this.$toast(resultData.resultMessage)

View File

@@ -320,7 +320,7 @@
placeholder="请录入保单号或者投保单号,如果关联多个保单,请用\隔开"
/>
</div>
<div class="flex justify-content-s pv10 border-bottom prem" v-if="item.productCode != 'GFRS_M0080' && item.productCode != 'GFRS_M0083'">
<div class="flex justify-content-s pv10 border-bottom prem" v-if="item.productCode != 'GFRS_M0080' && item.productCode != 'GFRS_M0083' && item.productCode != 'GFRS_M0085'">
<!-- trialType 0-保额算保费1-保费算保额 -->
<!-- isTrial是否需存在特殊配置(规则) 0-是 1-否-->
<span
@@ -789,7 +789,7 @@
this.isEnterAddtionRiskListFunc()
}
}
if (item.mainRiskCode == 'GFRS_M0083' && this.isFrom == 'proposal') {
if ((item.mainRiskCode == 'GFRS_M0083' || item.mainRiskCode == 'GFRS_M0085') && this.isFrom == 'proposal') {
item.calFactorLst.forEach((i) => {
if (i.code == "inputPrem") {
i.minPrem = 0.01
@@ -2019,13 +2019,13 @@
let thisproductInfo = JSON.parse(window.localStorage.getItem('chooseProducts'))
if(thisproductInfo && thisproductInfo.length != 0) {
thisproductInfo.forEach(item => {
if(item.productCode == 'GFRS_M0083') {
if(item.productCode == 'GFRS_M0083' || item.productCode == 'GFRS_M0085') {
productCode = item.productCode
}
})
}
if(this.isFrom != 'proposal'){
if(productCode == 'GFRS_M0083'){
if(productCode == 'GFRS_M0083' || productCode == 'GFRS_M0085'){
if(!that.policyNo){
that.chooseProducts.forEach(item=>{
item.calFactorLst.forEach(ii=>{
@@ -2364,7 +2364,7 @@
this.saleInsuredInfo.sex,
this.saleInsuredInfo.occupationCode,
this.saleInsuredInfo.occupationName,
this.saleInsuredPersonInfo.insuredAge
this.saleInsuredInfo.age?this.saleInsuredInfo.age:this.saleInsuredInfo.insuredAge
]
} else {
;[birthday, sex, occupationCode, occupationName, age] = [
@@ -2699,7 +2699,7 @@
}
}
}
else if (productCode == 'GFRS_M0083') {
else if (productCode == 'GFRS_M0083' || productCode == 'GFRS_M0085') {
if(this.isFrom != 'proposal'){
if(!this.policyNo && defalutValue < 5) {
this.$toast('单独投保保费为大于等于50000元')

View File

@@ -1,200 +1,307 @@
<template>
<div class="wrapper">
<div v-if="posterList.length !== 0">
<van-grid :column-num="3" :gutter="5">
<van-grid-item v-for="(item, index) in posterList" :key="index" @click="previewImg(item, index)">
<van-image class="fill" :src="item.posterUrl" />
</van-grid-item>
</van-grid>
<div class="pageWrapper">
<van-pagination class="bottom-btn" v-model="pageNum" :page-count="totalPage" @change="pageChange" />
<div class="good-start-scheme bg-white">
<div v-if="isShow == true">
<div class="flex justify-content-s pt10 pb15">
<div class="fs12 bntTab">
<span :class="[active == 'appnt' ? 'tab' : 'unTab']" @click="tabChange('appnt')">预收</span>
<span :class="[active == 'sign' ? 'tab' : 'unTab']" @click="tabChange('sign')">承保</span>
</div>
<div>
<div @click="timePopup" class="fs12 red h30 mt5 mr15">
{{ titleTime }}
<img src="@/assets/images/u79.png" alt class="ml5" />
</div>
</div>
</div>
<van-image-preview id="preview" v-model="isPrevShow" :images="images" :start-position="startPosition" @change="onPageChange" />
<div class="flex justify-content-s bottom-btn bottom15 border-color" v-show="isPrevShow">
<van-button square type="default" size="large" @click="shareImg" v-no-more-click="1000"> 分享 </van-button>
<van-button square type="danger" size="large" @click="downLoadImagesFunc" v-no-more-click="1000"> 下载 </van-button>
<div v-if="pics.length">
<van-grid :column-num="3">
<van-grid-item v-for="(pic, i) in pics" :key="i">
<van-image height="200" :src="pic.posterUrl" @click="prevImg(pic, i)" />
</van-grid-item>
</van-grid>
<van-image-preview id="preview" v-model="isPrevShow" :images="images" :start-position="startPosition" @change="onPageChange" />
<!-- <van-button class="share-btn" v-show="isPrevShow" type="danger" block @click="shareImg">分享</van-button> -->
<div class="flex justify-content-s bottom-btn bottom15 border-color" v-show="isPrevShow">
<van-button square type="default" size="large" @click="shareImg" v-no-more-click="1000"> 分享 </van-button>
<van-button square type="danger" size="large" @click="downLoadImagesFunc" v-no-more-click="1000"> 下载 </van-button>
</div>
</div>
</div>
<div v-if="posterList.length === 0" class="text-center">
<!-- {{isShow}} {{pics.length}} -->
<div v-if="isShow == false || pics.length == '0'" class="text-center height100vh">
<img class="mt40 w250" src="@/assets/images/pic_page-non.png" />
<div class="fs17 c-gray-dark mt40">暂无数据</div>
<div class="fs17 c-gray-dark mt40" v-if="isShow == false">您暂无使用权限</div>
<div class="fs17 c-gray-dark mt40" v-if="isShow == true && pics.length == '0'">暂无数据</div>
</div>
<!-- 筛选年月日 -->
<van-popup v-model="dateShow" position="bottom">
<van-datetime-picker v-model="currentDate" type="date" title="选择日期" :min-date="minDate" :max-date="maxDate" @cancel="handleCancel" @confirm="handleEndDateConfirm"/>
</van-popup>
</div>
</template>
<script>
import { Sticky, Grid, GridItem, Pagination, ImagePreview, List, Image } from 'vant'
import { queryBigPosters } from '@/api/ebiz/poster/poster'
// import config from '@/config'
import Vue from 'vue'
import { Grid, GridItem, Image, ImagePreview, Pagination } from 'vant'
import { queryOutPostersBig, getBranchByUser} from '@/api/ebiz/goodStart'
import { getAgentInfo} from '@/api/ebiz/my/my.js'
import utils from '@/assets/js/utils/date-utils'
import Vue from 'vue'
Vue.use(ImagePreview)
export default {
name: 'posterList',
components: {
[Sticky.name]: Sticky,
[Grid.name]: Grid,
[GridItem.name]: GridItem,
[Pagination.name]: Pagination,
[List.name]: List,
[Image.name]: Image
},
data() {
return {
// posterType: 'hb',
srcUrl: '@/images/u10199.png',
pageNum: 1,
pageSize: 9,
posterList: [], // 贺报列表
realImgUrls: [],
// index: 0,
totalPage: 0,
isPrevShow: false,
startPosition: 0,
currentPage: 0,
}
},
computed: {
images() {
const picArr = []
for (let pic of this.posterList) {
picArr.push(pic.posterUrl)
}
return picArr
}
},
created() {
this.getPostList()
},
methods: {
onPageChange(index) {
this.currentPage = index
// 全局注册
Vue.use(ImagePreview)
export default {
components: {
[Grid.name]: Grid,
[GridItem.name]: GridItem,
[Image.name]: Image,
[Pagination.name]: Pagination
},
// 贺报列表查询
async getPostList() {
let param = {
// posterInfoDTO: {
// posterType: this.posterType
// },
pageNum: this.pageNum,
pageSize: this.pageSize
data() {
return {
dateShow: false,
minDate: new Date(),
maxDate: new Date(),
currentDate: new Date(),
titleTime:'', //筛选时间
isFromService: '',
isPrevShow: false,
currentPage: 0,
pics: [],
startPosition: 0,
branchType:'', //以N打头的是内勤 其他是外勤0: 外勤1: 内勤
isShow:false, //是否有权限查看
manageLv:null,
active:'appnt'
}
this.$toast.loading({
message: '加载中...',
forbidClick: true,
loadingType: 'spinner'
})
let res = await queryBigPosters(param)
if (res.result == 0) {
this.realImgUrls.splice(0)
this.totalPage = res.content.pages
this.posterList = res.content.list
for (let item of this.posterList) {
// let narrowUrl = (config.imgDomain + `/returnImageStream?a=b.jpg&imgPath=${item.posterNarrowUrl}`).replace(/\+/g, '%2B')
// let url = (config.imgDomain + `/returnImageStream?a=b.jpg&imgPath=${item.posterUrl}`).replace(/\+/g, '%2B')
// item.narrowUrl = narrowUrl
this.realImgUrls.push(item.posterUrl)
},
computed: {
images() {
const picArr = []
for (let pic of this.pics) {
picArr.push(pic.posterUrl)
}
} else {
this.$toast(res.resultMessage)
return picArr
}
},
previewImg(item, index) {
// this.isPrevShow = true
// ImagePreview({
// images: this.realImgUrls,
// startPosition: index
// })
this.isPrevShow = true
this.startPosition = index
created() {
},
pageChange(pageNum) {
this.pageNum = pageNum
this.getPostList()
mounted() {
this.minDate = new Date(this.getPrevDate(30))
this.titleTime = utils.formatDate(new Date(), 'yyyy-MM-dd')
this.getAgentInfoFunc()
this.getBranchByUserFunc()
},
shareImg() {
console.log(this.images[this.currentPage])
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('bridge', {
flag: 'share',
extra: {
shareType: '1',
img: this.images[this.currentPage]
methods: {
getPrevDate(numDays) {
var today = new Date();
today.setDate(today.getDate() - numDays);
return today.toLocaleDateString();
},
//选择当月时间
seceltCurrentMonth() {
this.titleTime = utils.formatDate(new Date(), 'yyyy-MM-dd')
this.queryOutPostersBig()
},
timePopup() {
this.dateShow = true
},
handleCancel() {
this.dateShow = false
},
//tab按钮切换
tabChange(active) {
this.active = active
this.queryOutPostersBig()
},
//点击筛选年月日--点击确认
handleEndDateConfirm(e) {
this.dateShow = false
this.titleTime = utils.formatDate(e, 'yyyy-MM-dd')
this.queryOutPostersBig()
},
// 获取代理人信息,区分内外勤
async getAgentInfoFunc() {
const res = await getAgentInfo({})
if (res.result == 0) {
// res.branchType 以N打头的是内勤 其他是外勤0: 外勤1: 内勤
this.branchType = /^N{1}/.test(res.branchType) ? '1' : '0'
} else {
return this.$toast(res.resultMessage)
}
})
},
// 原生下载图片的方法
downLoadImagesFunc() {
if (this.images[this.currentPage]) {
},
//获取当前人机构
async getBranchByUserFunc(){
let resData = await getBranchByUser({})
// 内勤一、二、三 级暂无使用权限
this.manageLv = resData.content.level?Number(resData.content.level.substr(1, 1)):9
if(this.manageLv == 4 || this.manageLv == 5 ||this.manageLv == 6 ||this.manageLv == 7 ||this.manageLv == 8 ||this.manageLv == 9){
this.isShow = true //是否有权限查看
this.queryOutPostersBig()
}
},
prevChange(index) {
this.startPosition = index
},
interceptAppBtn() {
setTimeout(() => {
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('webview_left_button', {
intercept: '1'
})
}, 100)
window.appCallBack = this.appCallBack
},
appCallBack(data) {
if (data.trigger == 'left_button_click') {
if (!this.isPrevShow) {
if (this.isFromService) {
this.$jump({
flag: 'service'
})
} else {
this.$jump({
flag: 'h5',
extra: {
title: '开门红专区',
forbidSwipeBack: 1,
url: location.origin + `/#/goodStart/prefecture`
},
routerInfo: {
path: `/goodStart/prefecture/prefecture`,
type: '1'
}
})
}
} else {
this.isPrevShow = false
}
}
},
onPageChange(page) {
this.currentPage = page
},
async queryOutPostersBig() {
const param = {
appntType: this.active,
appntMonth: this.titleTime
}
const result = await queryOutPostersBig(param)
if (result.result === '0') {
this.pics = result.content.list
} else {
this.$toast(result.resultMessage)
}
},
prevImg(pic, i) {
this.isPrevShow = true
this.startPosition = i
},
shareImg() {
console.log(this.images[this.currentPage])
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('download', {
name: '开门红方案.png',
url: this.images[this.currentPage]
}).then(() => {
console.log('下载完成')
}).catch(() => {
this.$toast.fail('图片下载失败,请重新下载!')
EWebBridge.webCallAppInJs('bridge', {
flag: 'share',
extra: {
shareType: '1',
img: this.images[this.currentPage]
}
})
} else {
this.$toast.fail('图片下载失败,请重新下载!')
},
// 原生下载图片的方法
downLoadImagesFunc() {
if (this.images[this.currentPage]) {
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('download', {
name: '开门红方案.png',
url: this.images[this.currentPage]
})
.then(() => {
console.log('下载完成')
})
.catch(() => {
this.$toast.fail('图片下载失败,请重新下载!')
})
} else {
this.$toast.fail('图片下载失败,请重新下载!')
}
}
}
}
}
</script>
<style lang="scss" scoped>
/deep/ .van-grid-item {
height: 30vh;
}
.height100vh{
height: 100vh;
}
.good-start-scheme {
padding-bottom: 20px;
}
/deep/ .fill {
height: 100%;
}
/deep/ .van-grid-item__content {
padding: 5px;
}
.wrapper {
padding-top: 12px;
padding-bottom: 50px;
}
.share-btn {
position: fixed;
bottom: 0;
z-index: 10000;
}
.post-container {
display: flex;
flex-wrap: wrap;
justify-content: start;
}
/deep/ .van-image-preview__image {
bottom: auto;
}
.post {
width: 28vw;
padding: 3px;
background: #fff;
margin: 5px;
}
/deep/ .van-pagination__item {
color: #ff0033;
}
img {
max-width: 100%;
}
/deep/ .van-pagination__item--active {
background-color: #ff0033;
color: #fff;
}
/deep/ .van-list__loading,
/deep/ .van-list__finished-text {
width: 100%;
}
#pagination {
position: fixed;
bottom: 0;
left: 0;
right: 0;
}
/deep/ .van-pagination__item {
color: #ff4040;
}
.border-color {
z-index: 9999;
border: 2px solid;
border-image: radial-gradient(circle, rgba(255, 233, 124, 1), rgba(222, 144, 34, 1)) 2 2;
}
/deep/ .van-button--danger {
background: linear-gradient(to right, #f26e43, #ac0209) !important; /*设置按钮为渐变颜色*/
border: none !important;
}
/deep/.van-pagination__item:active,
/deep/.van-pagination__item--active {
background-color: #ff4040;
color: #fff;
}
.border-color {
z-index: 9999;
border: 2px solid;
border-image: radial-gradient(circle, rgba(255, 233, 124, 1), rgba(222, 144, 34, 1)) 2 2;
}
/deep/ .van-button--danger {
background: linear-gradient(to right, #f26e43, #ac0209) !important; /*设置按钮为渐变颜色*/
border: none !important;
}
// 顶部tab按钮
.bntTab {
text-align: center;
.tab {
background: red;
color: #fff;
border-radius: 14px;
width: 64px;
height: 26px;
line-height: 26px;
display: inline-block;
text-align: center;
margin-left: 10px;
}
.unTab {
background-color: #fff;
color: #333;
border: 1px solid #c1c1c1;
border-radius: 14px;
width: 64px;
height: 26px;
line-height: 26px;
display: inline-block;
text-align: center;
margin-left: 10px;
}
}
</style>

View File

@@ -11,7 +11,7 @@
<th>姓名</th>
<th class="company">营销服务部</th>
<th>预收规保</th>
<th>承保标保</th>
<th>承保期交</th>
</tr>
<tr v-for="(item, index) in showData.topList" :key="item.code">
<td>{{ item.rank }}</td>
@@ -29,7 +29,7 @@
<th>姓名</th>
<th class="company">营销服务部</th>
<th>预收规保</th>
<th>承保标保</th>
<th>承保期交</th>
</tr>
<tr v-for="(item, index) in showData.topList" :key="item.code" :class="{ top3: index <= 2 }">
<td>{{ item.rank }}</td>
@@ -56,7 +56,7 @@
</div>
</van-col>
<van-col span="12" class="detail">
<div class="m-title mt15">本月承保标保</div>
<div class="m-title mt15">本月承保期交</div>
<div class="m-number mt12">
<span class="c-gray-darker fs26 fw500"> {{ showData.achievement.selfAcceptStand }}</span>
<span class="m-gray fs12 c-gray-dark ml20">万元</span>
@@ -78,7 +78,7 @@
</div>
</van-col>
<van-col span="12" class="detail" style="border-right: 1px solid #ff4040;">
<div class="m-title mt15">承保标保排名</div>
<div class="m-title mt15">承保期交排名</div>
<div class="m-number mt12">
<span class="m-gray fs12 c-gray-dark mr20"></span>
<span class="c-gray-darker fs26 fw500">{{ showData.achievement.rankingBb }}</span>
@@ -86,7 +86,7 @@
</div>
</van-col>
<van-col span="12" class="detail">
<div class="m-title mt15">距上一名承保标保差距</div>
<div class="m-title mt15">距上一名承保期交差距</div>
<div class="m-number mt12">
<span class="c-gray-darker fs26 fw500">{{ showData.achievement.previousCbbbGap }}</span>
<span class="m-gray fs12 c-gray-dark ml20"></span>

View File

@@ -59,7 +59,7 @@ export default {
for (var i = 0; i < myseries.data.length; i++) {
if (myseries.data[i].name == params.name) {
res += myseries.data[i].comName + '</br>'
res += '承保标保' + ' : ' + myseries.data[i].sum + '万元</br>'
res += '承保期交' + ' : ' + myseries.data[i].sum + '万元</br>'
res += '目标达成率' + ' : ' + myseries.data[i].rate + '%</br>'
}
}

View File

@@ -64,9 +64,9 @@ export default {
needGettingKey: ['name', 'ysbb', 'ysjs', 'bzbf', 'cbjs'],
tableColumns: [
{ name: '机构', key: 'name' },
{ name: '预收标保(万元)', key: 'ysbb' },
{ name: '预收期交(万元)', key: 'ysbb' },
{ name: '预收件数(件)', key: 'ysjs' },
{ name: '承保标保(万元)', key: 'bzbf' },
{ name: '承保期交(万元)', key: 'bzbf' },
{ name: '承保件数(件)', key: 'cbjs' }
],
values: [],

View File

@@ -5,7 +5,7 @@
<div class="header-left">
<van-button>
<img :src="point" />
<span class="ml5 mr5">标保</span>
<span class="ml5 mr5">期交</span>
</van-button>
</div>
<div class="header-center">
@@ -132,7 +132,7 @@ export default {
// 实时筛选时间条件
timeCondition: dateUtil.formatDate(currentDate, 'yyyy-MM-dd HH:mm'),
dayTimeCondition: currentDate,
// 0: 标保, 1: 人力, 2: 产品
// 0: 期交, 1: 人力, 2: 产品
typeIndex: 0,
//子组件机构名称的角标等于this.availableLevel - 3
active: 0,

View File

@@ -36,7 +36,7 @@ export default {
const res =await getServiceConfig({})
if (res.sections) {
res.sections.forEach(e=>{
if(e.name.indexOf('开门红专区')!=-1){
if(e.name.indexOf('一月专区')!=-1){
this.menuList =e.items;
}
})

View File

@@ -0,0 +1,178 @@
<template>
<div class="detail-container pb50">
<van-cell title="客户名称" :value="dataInfo.name" />
<van-cell title="地址" :value="dataInfo.address" />
<van-cell title="联系人姓名" :value="dataInfo.contactName" />
<van-cell title="联系电话" :value="dataInfo.contactPhone" />
<van-cell title="原保单号" v-if="this.$route.query.renewalFlag == '0'" :value="dataInfo.contNo" />
<van-cell title="保单号" v-if="this.$route.query.renewalFlag == '1' && agentType == '服务经理'" :value="dataInfo.contNo" />
<van-cell title="新保单号" v-if="this.$route.query.renewalFlag == '1' && agentType == '营业部经理'" :value="dataInfo.contNo" />
<div v-if="this.$route.query.renewalFlag == '0'">
<div v-for="item in dataInfo.oldRiskMessageDTOList">
<van-cell title="原保单险种名称" :value="item.riskName" />
<van-cell title="原保单保费" :value="item.prem+'元'" class="lastvancell"/>
</div>
</div>
<van-cell title="保单保费" v-if="this.$route.query.renewalFlag == '1'" :value="dataInfo.prem+'元'" />
<van-cell title="代理人" v-if="agentType == '服务经理'" :value="dataInfo.agentCustomerManagerName" />
<van-cell title="代理人工号" v-if="agentType == '服务经理'" :value="dataInfo.agentCustomerManagertCode" />
<van-cell title="客户经理" v-if="agentType == '营业部经理'" :value="dataInfo.agentCustomerManagerName" />
<van-cell title="客户经理工号" v-if="agentType == '营业部经理'" :value="dataInfo.agentCustomerManagertCode" />
<van-collapse v-if="this.$route.query.renewalFlag == '0'" v-model="activeName1">
<van-collapse-item name="1">
<template #title>
<div style="display: flex;width: 100%;justify-content: space-between">
<span style="width: 33%;">续保意见</span>
<p style="display: inline-block;width: 65%;overflow:hidden;text-overflow: ellipsis;color: #969799;white-space: nowrap;">{{dataInfo.renewalOpinions}}</p></div>
</template>
<div>{{dataInfo.renewalOpinions}}</div>
</van-collapse-item>
</van-collapse>
<van-collapse v-if="this.$route.query.renewalFlag == '0'" v-model="activeName2">
<van-collapse-item name="1">
<template #title>
<div style="display: flex;width: 100%;justify-content: space-between">
<span style="width: 33%;">未续保原因</span>
<p style="display: inline-block;width: 44%;overflow:hidden;text-overflow: ellipsis;color: #969799;white-space: nowrap;">{{dataInfo.reason}}</p>
<van-button type="danger" round size="mini" @click.stop="dialogshow = true" style="margin-right: 10px;">编辑</van-button>
</div>
</template>
<div>{{dataInfo.reason}}</div>
</van-collapse-item>
</van-collapse>
<van-dialog v-model="dialogshow" title="未续保原因" show-cancel-button @confirm="dialogConfirm" @cancel="dialogCancel">
<div style="border: 1px solid #eee;margin: 0px 15px 5px 15px;" class="dialogtextarea">
<van-field v-model="message" rows="3" autosize label="留言" type="textarea" maxlength="200" placeholder="请输入" show-word-limit/>
</div>
</van-dialog>
</div>
</template>
<script>
import { Collapse, CollapseItem, Cell} from 'vant'
import { getAgentInfo } from '@/api/ebiz/my/my.js'
import { healthgetRenewalListDetail, reasonForNonRenewalSubmitted } from '@/api/ebiz/healthInsuranceRenewal/healthInsuranceRenewal'
export default {
components: {
[Collapse.name]: Collapse,
[CollapseItem.name]: CollapseItem,
[Cell.name]: Cell
},
data() {
return {
agentType: '',
dataInfo:{},
activeName1:[],
activeName2:[],
dialogshow: false,
message:''
}
},
created() {
},
mounted() {
this.getAgentInfo()
},
methods:{
getAgentInfo(){
let params = {
}
getAgentInfo(params).then(res=>{
if (res.result == 0) {
if(res.agentGrade == 'G200' || res.agentGrade == 'G201' || res.agentGrade == 'G202' || res.agentGrade == 'G202' || res.agentGrade == 'G204'){
this.agentType = '营业部经理'
} else {
this.agentType = '服务经理'
}
this.healthgetRenewalListDetail()
} else {
this.$toast(res.resultMessage)
}
})
},
healthgetRenewalListDetail(){
let params = {
"renewalFlag":this.$route.query.renewalFlag,
"agentCode":this.$route.query.agentCode,
"cvaliStartDate":this.$route.query.cvaliStartDate,
"cvaliEndDate":this.$route.query.cvaliEndDate,
"grpContNo": this.$route.query.grpContNo
}
healthgetRenewalListDetail(params).then(res=>{
if(res.result == 0){
if(this.$route.query.renewalFlag == '0'){
this.dataInfo = res.getUnRenewaLlistDetailDTO
}
if(this.$route.query.renewalFlag == '1'){
this.dataInfo = res.getRenewaLlistDetailDTO
}
} else {
this.$toast(res.resultMessage)
}
})
},
dialogConfirm(){
let params = {
"grpContNo": this.$route.query.grpContNo, //团保单号,续保清单给扔过
"xbReason":this.message,
"submitter": this.$route.query.agentCode
}
reasonForNonRenewalSubmitted(params).then(res=>{
if(res.result == 0){
this.$toast('提交成功')
this.dataInfo.reason = this.message
this.message = ''
}else{
this.$toast(res.resultMessage)
}
})
},
dialogCancel(){
this.message = ''
this.dialogshow = false
}
}
}
</script>
<style lang="scss" scoped>
/deep/ .van-cell__title{
flex:1;
}
/deep/ .van-cell__value{
flex:2;
}
/deep/ .van-cell__value {
text-align: left !important;
}
/deep/ .van-collapse-item__content{
word-break: break-word;
}
/deep/ .van-collapse-item{
width: 100%;
.van-cell__title{
width: calc(100% - 30px;);
}
}
.dialogtextarea{
/deep/ .van-cell__title{
display: none;
}
}
.lastvancell::after {
border-bottom: 1px solid #dadada;
}
.lastvancell::after {
position: absolute;
box-sizing: border-box;
content: ' ';
pointer-events: none;
right: 0;
bottom: 0;
left: 4.26667vw;
-webkit-transform: scaleY(.5);
transform: scaleY(.5);
}
</style>

View File

@@ -0,0 +1,259 @@
<template>
<div class="sale-list-container pb50">
<div class="topsearch" style="display: flex;background:#fff;align-items: center;">
<div v-if="agentType == '营业部经理'" style="width: 50%;padding: 10px 5px;">
<van-field @click="openchooseagent" v-model="searchName" disabled style="background: #f7f8fa;padding:5px 10px;" label="业务员" right-icon="arrow" placeholder="请选择"/>
</div>
<div style="width: 50%;padding: 10px 5px;">
<van-field @click="openshowDataPicker" v-model="showChooseDate" disabled style="background: #f7f8fa;padding:5px 10px;" label="日期" right-icon="arrow" placeholder="请选择"/>
</div>
</div>
<van-sticky>
<van-tabs :line-width="45" v-model="active" @change="tabChange" sticky>
<van-tab name="0" title="未续保"></van-tab>
<van-tab name="1" title="已续保"></van-tab>
</van-tabs>
</van-sticky>
<van-list
v-model="loading"
:immediate-check="false"
:finished="finished"
:finished-text="finishedText"
error-text="请求失败点击重新加载"
:error.sync="error"
@load="getOrderList"
class="pb45">
<div v-if="listData.length > 0">
<div v-for="(item, index) in listData" :key="index">
<div style="background: #fff;margin: 15px;border-radius: 5px;padding: 15px;">
<div style="line-height: 35px;"><span style="width: 40%;display: inline-block;">客户名称</span><span style="width: 60%;display: inline-block;">{{item.name}}</span></div>
<div style="line-height: 35px;"><span style="width: 40%;display: inline-block;">保单号</span><span style="width: 60%;display: inline-block;">{{item.contNo}}</span></div>
<div style="line-height: 35px;"><span style="width: 40%;display: inline-block;">保单终止时间</span><span style="width: 60%;display: inline-block;">{{item.endDate}}</span></div>
<div style="line-height: 35px;" v-if="item.continueFlag == '0'"><span style="width: 40%;display: inline-block;">是否续保</span><span style="width: 60%;display: inline-block;color: #d9001b;">未续保</span></div>
<div style="line-height: 35px;" v-if="item.continueFlag == '1'"><span style="width: 40%;display: inline-block;">是否续保</span><span style="width: 60%;display: inline-block;">已续保</span></div>
<div style="line-height: 35px;" v-if="agentType == '营业部经理'"><span style="width: 40%;display: inline-block;">服务经理</span><span style="width: 60%;display: inline-block;">{{item.agentManager}}</span></div>
<div style="line-height: 35px;display: flex;justify-content: flex-end;"><van-button round @click="goDetail(item)" size="small" style="height: 26px;line-height: 26px;" class="mr5" type="danger" v-no-more-click="1000">详情</van-button></div>
</div>
</div>
</div>
<div v-else class="text-center">
<img class="mt40" src="@/assets/images/pic_page-non.png" />
<div class="fs17 mt40">暂无数据</div>
</div>
</van-list>
<van-popup v-model="showDataPicker" position="bottom">
<van-datetime-picker type="year-month" v-model="currentDate" title="选择年月" :formatter="formatter" @confirm="onConfirmDate" @cancel="showDataPicker = false" :min-date="minDate" :max-date="maxDate"/>
</van-popup>
<van-popup v-model="popupShow" position="bottom">
<van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" />
</van-popup>
</div>
</template>
<script>
import { Search, Tabs, Tab, List, Tag, Sticky, Field, Icon } from 'vant'
import { healthgetRenewalList, getAgentManager } from '@/api/ebiz/healthInsuranceRenewal/healthInsuranceRenewal'
export default {
name: 'saleList',
components: {
[Field.name]: Field,
[Search.name]: Search,
[Tabs.name]: Tabs,
[Tab.name]: Tab,
[List.name]: List,
[Tag.name]: Tag,
[Sticky.name]: Sticky,
[Icon.name]: Icon,
},
data() {
return {
agentType: '',
searchName: '',
agentCode: '',
active: '0',
listData: [],
loading: false,
finished: false,
total: '',
currentPage: 1,
error: false,
finishedText: '',
pageSize: 5,
showDataPicker:false,
minDate: new Date(2000, 0),
maxDate: new Date(2100, 12),
cvaliStartDate: '',
currentDate: '',
showChooseDate: '',
cvaliEndDate: '',
oldOptionsData:[],
columns: [],
popupShow: false,
}
},
mounted() {
this.initDate()
this.getAgentManager()
},
methods: {
openchooseagent(){
this.popupShow = true
},
onConfirm(val){
let thisIndex = val.indexOf(' ')
this.agentCode = val.slice(0, thisIndex)
this.searchName = val.slice(thisIndex).trim()
this.popupShow = false
this.currentPage = 1
this.listData = []
;[this.loading, this.finished] = [true, false]
this.getOrderList()
},
getAgentManager() {
let params = {
agentCode: 'G0000011'
}
getAgentManager(params).then(res=>{
if(res.result == '0') {
if(res.content.agentManagerFlag == '1') {
this.agentType = '营业部经理'
} else {
this.agentType = '服务经理'
}
if(res.content.getAgentListResDTOList && res.content.getAgentListResDTOList.length != 0){
res.content.getAgentListResDTOList.forEach(item => {
this.columns.push(item.agentCode + ' ' + item.name)
})
}
this.getOrderList()
} else {
this.$toast(res.resultMessage)
}
})
},
//列表查询
getOrderList() {
let params = {
renewalFlag: this.active,
agentCode: this.agentCode,
cvaliStartDate: this.cvaliStartDate,
cvaliEndDate: this.cvaliEndDate,
}
healthgetRenewalList(params).then(res => {
if (res.result == '0') {
if(this.active == '0'){
if(res.unRenewalInformationDTOList && res.unRenewalInformationDTOList.length != 0){
this.listData = res.unRenewalInformationDTOList
}
}
if(this.active == '1'){
if(res.informationDTOList && res.informationDTOList.length != 0){
this.listData = res.informationDTOList
}
}
;[this.loading, this.finished] = [false, true]
} else {
;[this.loading, this.finished] = [false, true]
this.$toast(res.resultMessage)
}
})
},
//切换
tabChange(name) {
this.currentPage = 1
this.active = name
this.listData = []
;[this.loading, this.finished] = [true, false]
this.getOrderList()
},
//搜索
searchList() {
this.currentPage = 1
this.listData = []
;[this.loading, this.finished] = [true, false]
this.getOrderList()
},
//投保单详情
goDetail(item) {
this.$router.push({
path: '/healthInsuranceRenewal/detail',
query: {
grpContNo: item.grpContNo,
renewalFlag: this.active,
agentCode: this.agentCode,
cvaliStartDate: this.cvaliStartDate,
cvaliEndDate: this.cvaliEndDate,
}
})
},
initDate(){
let thisDate = new Date()
let thisYear = thisDate.getFullYear()
let thisMonth = thisDate.getMonth()+1
if(thisMonth < 10){
thisMonth = '0'+thisMonth
}
this.currentDate = thisYear + '-' + thisMonth
this.showChooseDate = thisYear + '-' + thisMonth
let date = new Date(this.currentDate);
date.setDate(1);
let firstDay1 = date.toLocaleDateString();
this.cvaliStartDate = firstDay1.replaceAll('/','-')
date.setMonth(date.getMonth() + 1);
date.setDate(0);
let lastDay1 = date.toLocaleDateString();
this.cvaliEndDate = lastDay1.replaceAll('/','-')
},
//打开日期选择
openshowDataPicker(){
this.currentDate = new Date()
this.showDataPicker = true
},
//日期选择
onConfirmDate(value){
let thisDate = new Date(value)
let thisYear = thisDate.getFullYear()
let thisMonth = thisDate.getMonth()+1
if(thisMonth < 10){
thisMonth = '0'+thisMonth
}
this.currentDate = thisYear + '-' + thisMonth
this.showChooseDate = thisYear + '-' + thisMonth
console.log(this.currentDate)
let date = new Date(this.currentDate);
date.setDate(1);
let firstDay1 = date.toLocaleDateString();
this.cvaliStartDate = firstDay1.replaceAll('/','-')
date.setMonth(date.getMonth() + 1);
date.setDate(0);
let lastDay1 = date.toLocaleDateString();
this.cvaliEndDate = lastDay1.replaceAll('/','-')
this.showDataPicker = false
this.currentPage = 1
this.listData = []
;[this.loading, this.finished] = [true, false]
this.getOrderList()
},
formatter(type, val) {
if (type === 'year') {
return `${val}`;
} else if (type === 'month') {
return `${val}`;
}
return val;
},
}
}
</script>
<style lang="scss" scoped>
.topsearch{
/deep/ .van-field__label{
width: 50px;
}
}
</style>

View File

@@ -74,8 +74,8 @@
<tr v-if="curMainType == '01'" class="title">
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2" style="height: 1.2em;width:8.6em">机构</th>
<th>预收标保</th>
<th>承保标保</th>
<th>预收期交</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -176,8 +176,8 @@ export default {
// 数据
personalDate: [],
timeVal: '',
sortTypeText: '预收标保',
queryColumns: ['预收件数', '预收标保', '承保件数', '承保标保', '承保标保'],
sortTypeText: '预收期交',
queryColumns: ['预收件数', '预收期交', '承保件数', '承保期交', '承保期交'],
// 人力排名
// sortTypeText: '活动人力',
// queryColumns: ['活动人力', '合格人力', '桂冠人力', '新增人力'],
@@ -318,18 +318,18 @@ export default {
case '预收件数':
this.sortType = '1'
break
case '预收标保':
case '预收期交':
this.sortType = '2'
break
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保标保':
this.sortType = '5'
break
// case '承保期交':
// this.sortType = '5'
// break
//
case '活动人力':
this.sortType = '6'

View File

@@ -73,7 +73,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -150,7 +150,7 @@ export default {
tableData: [],
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -293,7 +293,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -303,7 +303,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -70,7 +70,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -147,7 +147,7 @@ export default {
tableData: [],
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -289,7 +289,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -299,7 +299,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -70,7 +70,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -147,7 +147,7 @@ export default {
tableData: [],
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -290,7 +290,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -300,7 +300,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -94,30 +94,30 @@ export default {
[
[
{ isInt: false, name: '机构', key: 'name' },
{ isInt: false, name: '预收标保(万元)', key: 'ysbb' },
{ isInt: false, name: '预收期交(万元)', key: 'ysbb' },
{ isInt: true, name: '预收件数(件)', key: 'ysjs' },
{ isInt: false, name: '承保标保(万元)', key: 'bzbf' },
{ isInt: false, name: '承保期交(万元)', key: 'bzbf' },
{ isInt: true, name: '承保件数(件)', key: 'cbjs' }
],
[
{ isInt: false, name: '机构', key: 'name' },
{ isInt: false, name: '预收标保(万元)', key: 'ysbb' },
{ isInt: false, name: '预收期交(万元)', key: 'ysbb' },
{ isInt: true, name: '预收件数(件)', key: 'ysjs' },
{ isInt: false, name: '承保标保(万元)', key: 'bzbf' },
{ isInt: false, name: '承保期交(万元)', key: 'bzbf' },
{ isInt: true, name: '承保件数(件)', key: 'cbjs' },
{ isInt: false, name: '承保同比', key: 'cbtb' },
{ isInt: false, name: '承保环比', key: 'cbhb' }
],
[
{ isInt: false, name: '机构', key: 'name' },
{ isInt: false, name: '承保标保(万元)', key: 'bzbf' },
{ isInt: false, name: '标保目标', key: 'bbmb' },
{ isInt: false, name: '标保目标达成率', key: 'bbmbdcl' },
{ isInt: false, name: '承保期交(万元)', key: 'bzbf' },
{ isInt: false, name: '期交目标', key: 'bbmb' },
{ isInt: false, name: '期交目标达成率', key: 'bbmbdcl' },
{ isInt: false, name: '差距', key: 'cj' }
],
[
{ isInt: false, name: '机构', key: 'name' },
{ isInt: false, name: '承保标保(万元)', key: 'bzbf' }
{ isInt: false, name: '承保期交(万元)', key: 'bzbf' }
]
],
[
@@ -131,7 +131,7 @@ export default {
],
[
{ isInt: false, name: '产品', key: 'productName' },
{ isInt: false, name: '承保标保(万元)', key: 'cbbb' },
{ isInt: false, name: '承保期交(万元)', key: 'cbbb' },
{ isInt: true, name: '承保件数(件)', key: 'cbItems' },
{ isInt: false, name: '保费占比(%)', key: 'percent' }
]

View File

@@ -70,7 +70,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -146,7 +146,7 @@ export default {
bzbfTotol: 0,
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -279,7 +279,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -289,7 +289,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -70,7 +70,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -147,7 +147,7 @@ export default {
bzbfTotol: 0,
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -290,7 +290,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -300,7 +300,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -70,7 +70,7 @@
<th class="td-1" style="height: 1.2em;">排名</th>
<th class="td-2">机构</th>
<th>预收保费</th>
<th>承保标保</th>
<th>承保期交</th>
<th>承保保费</th>
<th>预收件数</th>
<th>承保件数</th>
@@ -147,7 +147,7 @@ export default {
tableData: [],
timeVal: '',
sortTypeText: '预收保费',
queryColumns: ['预收件数', '预收保费', '承保件数', '承保标保', '承保保费'],
queryColumns: ['预收件数', '预收保费', '承保件数', '承保期交', '承保保费'],
showPicker: false,
// 年月日选择器
showDatePicker: false,
@@ -288,7 +288,7 @@ export default {
onConfirm(value, index) {
this.sortTypeText = value
switch (value) {
// '预收件数', '预收标保', '承保件数', '承保标保', '承保标保
// '预收件数', '预收期交', '承保件数', '承保期交', '承保期交
case '预收件数':
this.sortType = '1'
break
@@ -298,7 +298,7 @@ export default {
case '承保件数':
this.sortType = '3'
break
case '承保标保':
case '承保期交':
this.sortType = '4'
break
case '承保保费':

View File

@@ -11,7 +11,7 @@
<th>达成</th>
</tr>
<tr>
<td class="bleft bright">预收标保</td>
<td class="bleft bright">预收期交</td>
<td class="bright">{{ performance.ysbb | unitFilter(1) | blankFilter }}</td>
</tr>
<tr>
@@ -19,7 +19,7 @@
<td class="bright">{{ performance.ysjs | unitFilter(2) | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">承保标保</td>
<td class="bleft bright">承保期交</td>
<td class="bright">{{ performance.bzbf | unitFilter(1) | blankFilter }}</td>
</tr>
<tr>
@@ -29,43 +29,43 @@
</table>
</div>
</div>
<div class="data-section">
<span ref="manpower" class="title">
人力
</span>
<div class="table-wrapper">
<table class="myTable" cellspacing="0" cellpadding="0">
<tr>
<th style="width: 50%;">人力指标</th>
<th>达成()</th>
</tr>
<tr>
<td class="bleft bright">活动人力</td>
<td class="bright">{{ manpower.hdrl | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">合格人力</td>
<td class="bright">{{ manpower.hgrl | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">桂冠人力</td>
<td class="bright">{{ manpower.ggrl | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">桂冠正式会员</td>
<td class="bright">{{ manpower.gghy | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">双冠人力</td>
<td class="bright">{{ manpower.sgrl | blankFilter }}</td>
</tr>
<tr>
<td class="bleft bright">新增人力</td>
<td class="bright">{{ manpower.xzrl | blankFilter }}</td>
</tr>
</table>
</div>
</div>
<!-- <div class="data-section">-->
<!-- <span ref="manpower" class="title">-->
<!-- 人力-->
<!-- </span>-->
<!-- <div class="table-wrapper">-->
<!-- <table class="myTable" cellspacing="0" cellpadding="0">-->
<!-- <tr>-->
<!-- <th style="width: 50%;">人力指标</th>-->
<!-- <th>达成()</th>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">活动人力</td>-->
<!-- <td class="bright">{{ manpower.hdrl | blankFilter }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">合格人力</td>-->
<!-- <td class="bright">{{ manpower.hgrl | blankFilter }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">桂冠人力</td>-->
<!-- <td class="bright">{{ manpower.ggrl | blankFilter }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">桂冠正式会员</td>-->
<!-- <td class="bright">{{ manpower.gghy | blankFilter }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">双冠人力</td>-->
<!-- <td class="bright">{{ manpower.sgrl | blankFilter }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="bleft bright">新增人力</td>-->
<!-- <td class="bright">{{ manpower.xzrl | blankFilter }}</td>-->
<!-- </tr>-->
<!-- </table>-->
<!-- </div>-->
<!-- </div>-->
<div class="data-section">
<span ref="production" class="title">
产品
@@ -77,7 +77,7 @@
<table class="myTable" style="min-width: 140vw;" cellspacing="0" cellpadding="0">
<tr>
<th class="sticky">产品名称</th>
<th>承保标保(万元)</th>
<th>承保期交(万元)</th>
<th>承保件数()</th>
<th>保费占比(%)</th>
</tr>

View File

@@ -123,9 +123,9 @@ export default {
// 实时筛选时间条件
timeCondition: dateUtil.formatDate(currentDate, 'MM-dd HH:mm'),
dayTimeCondition: currentDate,
// 0: 标保, 1: 人力, 2: 产品
// 0: 期交, 1: 人力, 2: 产品
typeIndex: 0,
dataTypes: ['标保', '人力指标', '产品'],
dataTypes: ['期交', '人力指标', '产品'],
active: 0,
// 侧边栏是否显示
isSideBarShow: false,

View File

@@ -80,7 +80,7 @@ export default {
tableData: [],
items: [],
bzbfTotol: 0,
queryColumns: ['预收保费','承保标保 ', '承保保费', '预收件数', '承保件数'],
queryColumns: ['预收保费','承保期交 ', '承保保费', '预收件数', '承保件数'],
active: 0,
// 当前的机构编码
curCode: '',

View File

@@ -39,7 +39,7 @@
<div class="name">直辖组</div>
</td>
<td>
<div class="name">承保标保</div>
<div class="name">承保期交</div>
</td>
<td>
<div class="date">寿险承保件数</div>
@@ -54,7 +54,7 @@
<div class="date">综合开拓承保保费</div>
</td>-->
<td>
<div class="date">本月预收标保</div>
<div class="date">本月预收期交</div>
</td>
<td>
<div class="date">本月预收件数</div>

View File

@@ -115,7 +115,7 @@
<div>
<div class="h50 bg-white content mh-auto fs13 fw500 mt5">
<div class="pl10 pr10 pt15 flex justify-content-s align-items-c">
<div>本月{{ filterStatusName }}标保</div>
<div>本月{{ filterStatusName }}期交</div>
<div v-if="filterStatus == 1" class="red">{{ ysbb }}</div>
<div v-else-if="filterStatus == 2" class="red">{{ cbbb }}</div>
</div>

View File

@@ -54,7 +54,7 @@
<div class="mt20">
<div class="h50 bg-white content mh-auto fs13 fw500">
<div class="pl10 pr10 pt15 flex justify-content-s align-items-c">
<div>个人承保标保</div>
<div>个人承保期交</div>
<div class="red">{{cbbb}}</div>
</div>
</div>
@@ -78,7 +78,7 @@
</div>-->
<div class="h50 bg-white content mh-auto fs13 fw500 mt5" v-if="isShow">
<div class="pl10 pr10 pt15 flex justify-content-s align-items-c">
<div>本月预收标保</div>
<div>本月预收期交</div>
<div class="red">{{ysbb}}</div>
</div>
</div>

View File

@@ -32,7 +32,7 @@
<div class="mt20">
<div class="h50 bg-white content mh-auto fs13 fw500">
<div class="pl10 pr10 pt15 flex justify-content-s align-items-c">
<div>{{teamName}}承保标保</div>
<div>{{teamName}}承保期交</div>
<div class="red">{{cbbb}}</div>
</div>
</div>
@@ -56,7 +56,7 @@
</div>-->
<div class="h50 bg-white content mh-auto fs13 fw500 mt5" v-if="isShow">
<div class="pl10 pr10 pt15 flex justify-content-s align-items-c">
<div>本月预收标保</div>
<div>本月预收期交</div>
<div class="red">{{ysbb}}</div>
</div>
</div>

View File

@@ -2,7 +2,7 @@
<div ref="product" class="home-product-container pb20">
<!-- 非个险 -->
<template v-if="!isPersonalInsu">
<div class="home-product-content">
<div class="home-product-content" v-if="branchType != '12'">
<!-- 产品中心 -->
<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>
@@ -61,7 +61,7 @@
</template>
<!-- 个险 -->
<template v-if="isPersonalInsu">
<div class="home-product-content">
<div class="home-product-content" v-if="branchType != '12'">
<!-- 机构排名/业绩排名 -->
<div class="pcenter-title flex pt10 pb10 mr15 justify-content-s align-items-c" style="height: 50px;">
<img v-if="isInner" class="title-img" :src="organizationImgUrl" />
@@ -157,8 +157,8 @@ export default {
isGoodStart: '0', // 是否开门红 0-默认
isPersonalInsu: true, // 是否个险渠道
isInner: false,
organizationTheads: ['排名', '机构', '当日预收(标保)', '月预收标保', '日承保标保', '月承保标保'],
performanceTheads: ['排名', '姓名', '营销服务部', '预收规保', '承保标保'],
organizationTheads: ['排名', '机构', '当日预收(期交)', '月预收期交', '日承保期交', '月承保期交'],
performanceTheads: ['排名', '姓名', '营销服务部', '预收期交', '承保期交'],
organizationData: [],
performanceData: [],
organizationImgUrl: '', // 机构排名图片

View File

@@ -51,14 +51,14 @@
<div class="fs12 div_4">
<div class="risk_head flex text-center line-height table fs12 bg_DBEFFE">
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7">投保险种</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080' && mainRiskCodes[0] != 'GFRS_M0083'">保额(</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="ispremshow">保额(</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">保险期间</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">交费期间</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">首年保费()</div>
</div>
<div class="risk_body flex text-center table bg_f7fbff" v-for="(riskItem, index) in pageShowInfo.showInsuredDTO.riskDTOLst" :key="index">
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7">{{ riskItem.riskName }}</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080' && mainRiskCodes[0] != 'GFRS_M0083'">{{ riskItem.amt ? riskItem.amt : '--' }}</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="ispremshow">{{ riskItem.amt ? riskItem.amt : '--' }}</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.insureName }}</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.payName }}</div>
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.showPrem ? riskItem.showPrem : '--' }}</div>
@@ -386,7 +386,8 @@ export default {
mainRiskCodes: [],
time: 5,
proposalNo:'',
mainRiskName: ''
mainRiskName: '',
ispremshow: true, // 是否展示保额
}
},
filters: {
@@ -729,6 +730,9 @@ export default {
that.pageShowInfo.insuredDTOs.forEach(item => {
item.riskDTOLst.forEach(item01 => {
if (item01.isMainRisk == '0') {
if(item01.mainRiskCode == 'GFRS_M0080' || item01.mainRiskCode == 'GFRS_M0083' || item01.mainRiskCode == 'GFRS_M0085') {
that.ispremshow = false
}
mainRiskNameList.push(item01.riskName)
}
})

View File

@@ -150,7 +150,7 @@ export function relevanceByInsure(insured, insuredLabelResult, insuredResult, in
let defaulValue = 'M' //档位默认值
let radios = []
if(currentInsuredInfo.L){
if(risk.mainRiskCode == 'GFRS_M0083') {
if(risk.mainRiskCode == 'GFRS_M0083' || risk.mainRiskCode == 'GFRS_M0085') {
radios.push({
label: '保证' + currentInsuredInfo.L,
value: 'L'
@@ -163,7 +163,7 @@ export function relevanceByInsure(insured, insuredLabelResult, insuredResult, in
}
}
if(currentInsuredInfo.M){
if(risk.mainRiskCode == 'GFRS_M0083') {
if(risk.mainRiskCode == 'GFRS_M0083' || risk.mainRiskCode == 'GFRS_M0085') {
radios.push({
label: '演示' + currentInsuredInfo.M,
value: 'M'

View File

@@ -88,7 +88,7 @@
@confirm="onDateConfirm($event, '1')"
ref="certiexpiredate"
:flag="certiexpiredateShow"
:readonly="isInsured || idLimit"
:readonly="isInsured"
></FieldDatePicter>
<div class="border-bt relative fs14 p10 flex align-center">
<van-checkbox v-model="userInfo.effectiveDateType" class="fr" :disabled="effectiveDateTypeAble" @change="effectiveDataTypeChange">长期</van-checkbox>
@@ -1299,35 +1299,53 @@ export default {
}
this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = idToData(val).age <= 45
this.userInfo.birthday = idToData(val).birthday
//受益人证件类型如果是户口本时证件截止日期证件截止日期应为第16周岁的生日日期。
if(this.userInfo.idType == '2' && idToData(this.userInfo.idNo).age <16){
// 获取出生日期年份16
let year = Number(this.userInfo.birthday.substr(0,4)) + 16
if(this.userInfo.birthday.substr(5,5) == '02-29'){
// 获取某年某月一共多少天
let date = new Date(year, 2, 1)
let dayEnd = new Date(date.getTime() - 864e5).getDate()
this.userInfo.certiexpiredate = year +'-02-'+ dayEnd
}else{
this.userInfo.certiexpiredate = year +'-'+ this.userInfo.birthday.substr(5,5)
}
}
this.userInfo.sex = idToData(val).sex
if (idToData(val).age > 45) {
if (from) {
this.userInfo.effectiveDateType = true
}
this.effectiveDateTypeAble = false
}
//如果选择户口本
if (this.userInfo.idType == '2') {
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
if(this.userInfo.idType == '2' && idToData(this.userInfo.idNo).age <16) {
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
this.userInfo.certificateValidate = this.userInfo.birthday
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
this.idLimit = true
//如果选择出生证明
let date2_29 = this.userInfo.certificateValidate.slice(5, 11)
if(date2_29 == '02-29'){
let thisyear = Number(this.userInfo.certificateValidate.slice(0, 4)) + 16
if (thisyear % 4 == 0 && thisyear % 100 != 0 || thisyear % 400 == 0){
return this.userInfo.certiexpiredate = thisyear + '-02-29'
} else {
return this.userInfo.certiexpiredate = thisyear + '-02-28'
}
}else{
this.userInfo.certiexpiredate = String(Number(this.userInfo.certificateValidate.slice(0, 4)) + 16) + this.userInfo.certificateValidate.slice(4, 11)
}
}
//受益人证件类型如果是户口本时证件截止日期证件截止日期应为第16周岁的生日日期
// if(this.userInfo.idType == '2' && idToData(this.userInfo.idNo).age <16){
// // 获取出生日期年份16
// let year = Number(this.userInfo.birthday.substr(0,4)) + 16
// if(this.userInfo.birthday.substr(5,5) == '02-29'){
// // 获取某年某月一共多少天
// let date = new Date(year, 2, 1)
// let dayEnd = new Date(date.getTime() - 864e5).getDate()
// this.userInfo.certiexpiredate = year +'-02-'+ dayEnd
// // this.userInfo.certiexpiredate = String(Number(this.userInfo.certificateValidate.slice(0, 4)) + 16) + this.userInfo.certificateValidate.slice(4, 11)
// }else{
// // this.userInfo.certiexpiredate = year +'-'+ this.userInfo.birthday.substr(5,5)
// this.userInfo.certiexpiredate = String(Number(this.userInfo.certificateValidate.slice(0, 4)) + 16) + this.userInfo.certificateValidate.slice(4, 11)
// }
// }
// this.userInfo.sex = idToData(val).sex
// if (idToData(val).age > 45) {
// if (from) {
// this.userInfo.effectiveDateType = true
// }
// this.effectiveDateTypeAble = false
// }
// //如果选择户口本
// if (this.userInfo.idType == '2') {
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
// this.userInfo.certificateValidate = this.userInfo.birthday
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
// this.idLimit = true
// //如果选择出生证明
// }
}
},
filters: {

View File

@@ -146,7 +146,7 @@
// 倒计时时间
number: '',
// 定时器时间
time: '2',
time: '10',
// 定时器名称
timer: null,
isOver: false,

View File

@@ -1766,16 +1766,22 @@ export default {
this.goUrl()
}
} else {
this.faceAuthCount.weixin++
console.log('腾讯人脸识别失败', this.faceAuthCount.weixin, typeof this.faceAuthCount.weixin)
if (this.faceAuthCount.weixin >= this.smsAuthNum) {
if (window.sessionStorage.shareCode == '1') {
this.operaFlag = 'insured'
} else {
this.operaFlag = 'appnt'
}
this.realPeopelCheck()
// this.faceAuthCount.weixin++
// console.log('腾讯人脸识别失败', this.faceAuthCount.weixin, typeof this.faceAuthCount.weixin)
// if (this.faceAuthCount.weixin >= this.smsAuthNum) {
// if (window.sessionStorage.shareCode == '1') {
// this.operaFlag = 'insured'
// } else {
// this.operaFlag = 'appnt'
// }
// this.realPeopelCheck()
// }
if (window.sessionStorage.shareCode == '1') {
this.operaFlag = 'insured'
} else {
this.operaFlag = 'appnt'
}
this.realPeopelCheck()
}
},
async recognition() {

View File

@@ -1087,7 +1087,7 @@
that.signVal = window.localStorage.getItem('sign-val')
// 判断是不是万能险
let comment = window.localStorage.getItem('productCode')
if (comment == 'GFRS_M0003' || comment == 'GFRS_M0015' || comment == 'GFRS_M0017' || comment == 'GFRS_M0075' || comment == 'GFRS_M0080' || comment == 'GFRS_M0082' || comment == 'GFRS_M0083') {
if (comment == 'GFRS_M0003' || comment == 'GFRS_M0015' || comment == 'GFRS_M0017' || comment == 'GFRS_M0075' || comment == 'GFRS_M0080' || comment == 'GFRS_M0082' || comment == 'GFRS_M0083' || comment == 'GFRS_M0085') {
this.isComment = true
}
// 获取投保人信息

View File

@@ -5,9 +5,9 @@
<div>
<!-- <h2 v-if="activeType=='KMH'" style="text-align:center" class="mb20">指定保单生效日说明</h2> -->
<!-- <h2 v-if="activeType=='SQY'" style="text-align:center" class="mb20">指定保险合同生效日说明</h2> -->
<h2 style="text-align:center" class="mb20">指定保险合同生效说明</h2>
<h2 style="text-align:center" class="mb20">预录投保单承保生效说明</h2>
<p style="text-indent:2rem;" :class="[activeType=='SQY' ? 'fontb' : '']">
尊敬的客户您好以下为指定保险合同生效重要说明请您务必仔细阅读和确认
尊敬的客户您好以下为预录投保单承保生效重要说明请您务必仔细阅读和确认
</p>
<p style="text-indent:2rem;">
<!-- 如您于{{ activeType=='KMH' ? '2020年12月31日':activeType=='SQY'? '2021年5月31日':'' }}(包含当日之前申请投保并交费成功且国富人寿保险股份有限公司以下简称国富人寿
@@ -17,16 +17,17 @@
<span>{{ cvalidateStrToFormat }}</span>零时起生效您交费成功日或签发保单日如在<span>{{ cvalidateStrToFormat }}</span>
包含当日之后保险合同于国富人寿收取首期保险费并签发保险单次日零时起生效 -->
如您于<span>{{ cvalidateStrOneDayOff }}</span>(包含当日前申请投保且支付保险费经国富人寿保险股份有限公司以下简称国富人寿同意并签发保单
<span>{{ cvalidateStrOneDayOff }}</span>(包含当日前签发保单保险合同自{{ cvalidateStrToFormat }}零时起生效{{ cvalidateStrToFormat }}(包含当日后签发保单
保险合同自签发保险单次日零时起生效国富人寿将通过您投保时预留的银行账户转账扣除保险费为顺利承保请您充足银行账户余额
<!-- 如您于<span>{{ cvalidateStrOneDayOff }}</span>(包含当日前申请投保且支付保险费经国富人寿保险股份有限公司以下简称国富人寿同意并签发保单-->
<!-- <span>{{ cvalidateStrOneDayOff }}</span>(包含当日前签发保单保险合同自{{ cvalidateStrToFormat }}零时起生效{{ cvalidateStrToFormat }}(包含当日后签发保单-->
<!-- 保险合同自签发保险单次日零时起生效国富人寿将通过您投保时预留的银行账户转账扣除保险费为顺利承保请您充足银行账户余额-->
本次投保为预录投保申请国富人寿保险股份有限公司以下简称国富人寿将通过您投保时预留的银行账户转账扣除保险费为顺利承保请您充足银行账户余额如您于{{ cvalidateStrOneDayOff }}(包含当日前提交投保申请且完成转账支付经国富人寿同意于{{ cvalidateStrOneDayOff }}(包含当日前签发保单保险合同自{{ cvalidateStrToFormat }}零时起生效如您于{{ cvalidateStrOneDayOff }}(包含当日前提交投保申请{{ cvalidateStrToFormat }}(包含当日完成转账支付经国富人寿同意于{{ cvalidateStrToFormat }}(包含当日后签发保单保险合同自签发保险单次日零时起生效
</p>
<p style="text-indent:2rem;">
国富人寿承担的保险责任从保险合同生效日零时开始签发保险单后国富人寿将电子保单发送至您的电子邮箱
</p>
<p style="text-indent:2rem;">
请您务必仔细阅读保险条款中的犹豫期保险责任责任免除等各项重要容和提示
请您务必仔细阅读保险条款中的犹豫期保险责任责任免除等各项重要容和提示
</p>
</div>
</div>
@@ -34,7 +35,7 @@
<div class="bg-white bottom-btn">
<van-radio-group v-model="radio" class="pb10 pb20 pl30">
<van-radio name="1" @click="click" class="fs14">
<span>本人已详细阅读并同意上述指定保单生效说明 </span>
<span>本人已详细阅读并同意上述预录投保单承保生效说明 </span>
</van-radio>
</van-radio-group>
<van-button type="danger" size="large" :disabled="isDisable" @click="goNext" v-no-more-click="1000">我已阅读并知晓</van-button>
@@ -112,7 +113,7 @@ export default {
let that = this
// {{switchFlag.Time?pageVariable.msg:pageVariable.number}}
that.timeOut()
document.title = '指定保单生效说明'
document.title = '预录投保单承保生效说明'
that.activeType = window.localStorage.getItem('activeType')
// Notify({
// type: 'warning',