mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-07 01:56:44 +08:00
Compare commits
111 Commits
hotfix/【20
...
20240914上线
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5fc51effa | ||
|
|
5a7a6a0374 | ||
|
|
b21278491c | ||
|
|
5875fc0a7c | ||
|
|
dc757b0f22 | ||
|
|
f8db6ce6b7 | ||
|
|
0d75ad4bd2 | ||
|
|
4a968d8d90 | ||
|
|
b9c064ef69 | ||
|
|
f75e96b701 | ||
|
|
704e4465dc | ||
|
|
ccdff7fa70 | ||
|
|
3d465e17bd | ||
|
|
701dad7dd4 | ||
|
|
a6f57ffa35 | ||
|
|
73ad9b233a | ||
|
|
285a5779df | ||
|
|
116aa3daaf | ||
|
|
8712dd1d4e | ||
|
|
a209cd4248 | ||
|
|
c099d82230 | ||
|
|
1dd7a9368c | ||
|
|
96aca1c83a | ||
|
|
f085152e7e | ||
|
|
64677c7046 | ||
|
|
f937a9c376 | ||
|
|
d5ccffba9f | ||
|
|
169831792c | ||
|
|
6975dbd2a4 | ||
|
|
0d07f33c20 | ||
|
|
b4cdafbd9b | ||
|
|
88ade7e51c | ||
|
|
e5d01e1fe1 | ||
|
|
c3f62c0f0f | ||
|
|
e949d990b9 | ||
|
|
3129686bc4 | ||
|
|
4286f43d85 | ||
|
|
182ab6229c | ||
|
|
d27541f8fd | ||
|
|
5a7f09f5d8 | ||
|
|
5818898564 | ||
|
|
b1de132117 | ||
|
|
2454b5ee44 | ||
|
|
ea8eb2990a | ||
|
|
9a2845160c | ||
|
|
566b497a75 | ||
|
|
0c451caf34 | ||
|
|
894a57801e | ||
|
|
17c4cc955b | ||
|
|
c1b4f6e1b7 | ||
|
|
8de047c8fa | ||
|
|
9238ad698b | ||
|
|
1224b3e2d8 | ||
|
|
8b96bea8e7 | ||
|
|
4dd71eb80d | ||
|
|
3aabd2cd47 | ||
|
|
ccc2bd1eaf | ||
|
|
502a35fdc0 | ||
|
|
1364105990 | ||
|
|
23f843f53b | ||
|
|
7a4de61cca | ||
|
|
78f6343af3 | ||
|
|
f4e8f8b4b0 | ||
|
|
2f93dbbc6d | ||
|
|
2eadcc4c4e | ||
|
|
05b8dbb703 | ||
|
|
141b9d6a24 | ||
|
|
76a7e379b7 | ||
|
|
07dc5fa96e | ||
|
|
fbe59da7fa | ||
|
|
f2c230b3e7 | ||
|
|
14e236f9cc | ||
|
|
df590bc2d0 | ||
|
|
a6a2e5b749 | ||
|
|
eebb84093f | ||
|
|
c11ba15a0f | ||
|
|
e94249475e | ||
|
|
67148b4721 | ||
|
|
bdbebc7ad8 | ||
|
|
6e58fbb33d | ||
|
|
5104f52f40 | ||
|
|
6baffe50a8 | ||
|
|
62de743fbc | ||
|
|
6cd71bb8d5 | ||
|
|
e8453879a0 | ||
|
|
d57c539de4 | ||
|
|
b068888067 | ||
|
|
4190d65579 | ||
|
|
54f474dda2 | ||
|
|
988efd34d1 | ||
|
|
0ad0575414 | ||
|
|
3477f9ffd8 | ||
|
|
ccb2b12762 | ||
|
|
1a5b8c2a9e | ||
|
|
31b1485e23 | ||
|
|
0842b27a62 | ||
|
|
65e41ed410 | ||
|
|
7739e8b90b | ||
|
|
33e6b150b4 | ||
|
|
d037b8e36a | ||
|
|
5a9512b5b7 | ||
|
|
570cc88b30 | ||
|
|
7ef7799545 | ||
|
|
e21e16ddbe | ||
|
|
02c408f5ef | ||
|
|
247ad5e13e | ||
|
|
44bd097ae2 | ||
|
|
c20dda510e | ||
|
|
cf0661b6ba | ||
|
|
a9809d32bd | ||
|
|
2be815d1bd |
17698
package-lock.json
generated
Normal file
17698
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -88,4 +88,40 @@ export function getGBCappntConnectSave(data) {
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 获取GBC一级产品
|
||||
export function getGBCRiskList(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/product/getGBCRiskList ', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// GBC一级产品校验
|
||||
export function gbcAppntCheckProdect(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/gbc/appnt/checkProdect ', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// GBC一级产品校验
|
||||
export function saveOrUpdateGbc(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/gbc/appnt/saveOrUpdateGbc', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// GBC数据看板
|
||||
export function dataShow(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/gbc/data/show', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* @Date: 2021-03-26 10:38:37
|
||||
* @LastEditTime: 2021-04-02 16:10:30
|
||||
* @LastEditors: PangXingYue
|
||||
* @Description:
|
||||
* @Description:
|
||||
* @FilePath: \ebiz-h5\src\api\ebiz\cardList\cardList.js
|
||||
*/
|
||||
// 卡单接口
|
||||
@@ -95,7 +95,7 @@ export function getPayTemp(data) {
|
||||
//
|
||||
export function getShareParam(data) {
|
||||
return request({
|
||||
url: getUrl('/customer/account/getShareParam', 1),
|
||||
url: getUrl('/customer/account/getShareParam', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
@@ -168,4 +168,12 @@ export function deleteGroupCardByInsured(data) {
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
}
|
||||
// 不让跨天支付 单新契约出单跨天支付流程优化
|
||||
export function cardContIsPay(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/card/contIsPay', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -117,4 +117,15 @@ export function funcPermCheck(data) {
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/** add by zhangweiwei FCRS-764 国富无忧两全保险(B款)新增主险职业校验逻辑 start at 20240807 */
|
||||
// 校验职业是否符合产品要求
|
||||
export function occupationCodeCheck(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/product/occupationCodeCheck', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
/** add by zhangweiwei FCRS-764 国富无忧两全保险(B款)新增主险职业校验逻辑 end at 20240807 */
|
||||
@@ -335,17 +335,6 @@ export function getBankCardSignState(data) {
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 入司人自互保件校验
|
||||
export function CommitmentSelfCheck(data) {
|
||||
return request1({
|
||||
url: getUrl('/sale/commitment/CommitmentSelfCheck', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 获取柳州分红万能投连型产品编码集合
|
||||
export function getUniversalCodeLst(data) {
|
||||
return request({
|
||||
@@ -390,3 +379,18 @@ export function saveOrderType(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function changeOrderStatus(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/order/changeOrderStatus', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function riskLevelCheck(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/order/riskLevelCheck', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
BIN
src/assets/images/GBC/submitResult.png
Normal file
BIN
src/assets/images/GBC/submitResult.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 56 KiB |
BIN
src/assets/images/home_product_center_m0092.png
Normal file
BIN
src/assets/images/home_product_center_m0092.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 228 KiB |
BIN
src/assets/images/home_product_center_m0094.png
Normal file
BIN
src/assets/images/home_product_center_m0094.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 342 KiB |
@@ -16,12 +16,12 @@ export default {
|
||||
if(date2_29 == '02-29'){
|
||||
let thisyear = Number(endDate.slice(0, 4)) - 5
|
||||
if (thisyear % 4 == 0 && thisyear % 100 != 0 || thisyear % 400 == 0){
|
||||
return startDate = thisyear + '-02-29'
|
||||
startDate = thisyear + '-02-29'
|
||||
} else {
|
||||
return startDate = thisyear + '-02-28'
|
||||
startDate = thisyear + '-02-28'
|
||||
}
|
||||
}else{
|
||||
return startDate = String(Number(endDate.slice(0, 4)) - 5) + endDate.slice(4, 11)
|
||||
startDate = String(Number(endDate.slice(0, 4)) - 5) + endDate.slice(4, 11)
|
||||
}
|
||||
}
|
||||
/**
|
||||
@@ -37,12 +37,12 @@ export default {
|
||||
if(date2_29 == '02-29') {
|
||||
let thisyear = Number(endDate.slice(0, 4)) - 10
|
||||
if (thisyear % 4 == 0 && thisyear % 100 != 0 || thisyear % 400 == 0){
|
||||
return startDate = thisyear + '-02-29'
|
||||
startDate = thisyear + '-02-29'
|
||||
} else {
|
||||
return startDate = thisyear + '-02-28'
|
||||
startDate = thisyear + '-02-28'
|
||||
}
|
||||
} else {
|
||||
return startDate
|
||||
startDate
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -59,12 +59,12 @@ export default {
|
||||
if(date2_29 == '02-29') {
|
||||
let thisyear = Number(endDate.slice(0, 4)) - 20
|
||||
if (thisyear % 4 == 0 && thisyear % 100 != 0 || thisyear % 400 == 0){
|
||||
return startDate = thisyear + '-02-29'
|
||||
startDate = thisyear + '-02-29'
|
||||
} else {
|
||||
return startDate = thisyear + '-02-28'
|
||||
startDate = thisyear + '-02-28'
|
||||
}
|
||||
} else {
|
||||
return startDate
|
||||
startDate
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -74,8 +74,12 @@ export default {
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (endage - 20 >= 46) {
|
||||
return startDate
|
||||
startDate
|
||||
}
|
||||
if(new Date(birthday).getTime() >= new Date(startDate).getTime() || new Date().getTime() < new Date(startDate).getTime()){
|
||||
startDate = ''
|
||||
}
|
||||
return startDate
|
||||
},
|
||||
|
||||
//计算身份证截止日期
|
||||
|
||||
@@ -3891,6 +3891,62 @@ export default {
|
||||
{
|
||||
code: "GFRS_M0087__cashValue",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "deathDisabilityInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "middleDiseaseMildillnessExemptionPremium",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "malignantTumorAdditionalInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "specCardiovascularCerebrovascularDiseasesInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "firstCriticalIllnessCareFund",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "firstModerateIllnessCareFund",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "firstLightIllnessCareFund",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "GFRS_M0086__cashValue",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "wuyouliangquanbkx",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "currentPaidUpAdditions_L",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "currentPaidUpAdditions_M",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "totalPaidUpAdditions_L",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "totalPaidUpAdditions_M",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "GFRS_M0094__cashValue",
|
||||
label: "元"
|
||||
}
|
||||
],
|
||||
// 卡单与短期险重新投保选择职业类别时,两个模块职业类型数据的排序不同,创建这个数据字典,用于在选择职业类别时,作为一个参数传入组件,
|
||||
@@ -3920,7 +3976,7 @@ export default {
|
||||
{ id: 'M', text: '母亲' }
|
||||
],
|
||||
// <!--------- 津贴申请专用 end --------->
|
||||
imageInfoType:[
|
||||
imageInfoType: [
|
||||
{ id: '1', text: '居民身份证正面' },
|
||||
{ id: '2', text: '居民身份证反面' },
|
||||
{ id: '3', text: '银行卡正面' },
|
||||
|
||||
@@ -62,7 +62,8 @@ let sale = [
|
||||
'/sale/insure/selfToHuman',
|
||||
'/sale/insure/orderPayStatusQuery',
|
||||
'/sale/order/revokeOrder',
|
||||
'/sale/product/getcompany'
|
||||
'/sale/product/getcompany',
|
||||
'/sale/product/occupationCodeCheck'
|
||||
] //在线投保
|
||||
let agentEnter = [
|
||||
'/agent/enter/share',
|
||||
|
||||
@@ -59,16 +59,19 @@ Validator.extend('email', {
|
||||
Validator.extend('name', {
|
||||
getMessage: () => '姓名长度为2-120个字符之内,只能输入汉字或者英文',
|
||||
validate: value => {
|
||||
return value
|
||||
// return /^[\u4e00-\u9fa5·]{1,15}$/.test(value)
|
||||
return /^[a-zA-Z\.\s\u4e00-\u9fa5]{2,120}$/.test(value);
|
||||
// return /^[a-zA-Z\.\s\u4e00-\u9fa5]{2,120}$/.test(value);
|
||||
}
|
||||
});
|
||||
//sale 投保名字 2个汉字,4个字母
|
||||
Validator.extend('salename', {
|
||||
getMessage: () => '亲,请确认您录入的姓名是否正确哦~',
|
||||
validate: value => {
|
||||
return value
|
||||
// return /^[\u4e00-\u9fa5·]{1,15}$/.test(value)
|
||||
return /^[\u4e00-\u9fa5·]{2,120}$|^[a-zA-Z\s]{4,120}$/.test(value);
|
||||
// return /^[a-zA-Z\.\s\u4e00-\u9fa5]{2,120}$/.test(value);
|
||||
// return /^[\u4e00-\u9fa5·]{2,120}$|^[a-zA-Z\s]{4,120}$/.test(value);
|
||||
}
|
||||
});
|
||||
// sale - 详细地址 - 详细地址须同时包含汉字和数字,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="search_box" ref="search_box">
|
||||
<van-field :label="label" required>
|
||||
<van-field :label="label" :class="{ 'van-cell--required': required }">
|
||||
<template #input>
|
||||
<input
|
||||
style="width: 100%; border: none"
|
||||
@@ -40,6 +40,10 @@ export default {
|
||||
value: {
|
||||
type: String
|
||||
},
|
||||
required: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
},
|
||||
isAsync: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
|
||||
@@ -29,29 +29,29 @@ function getSearchString (key) {
|
||||
}
|
||||
return obj[key]
|
||||
}
|
||||
let apiVersion = 'v2'
|
||||
var ua = window.navigator.userAgent.toLowerCase()
|
||||
//通过正则表达式匹配ua中是否含有MicroMessenger字符串, 在微信
|
||||
if (localStorage.getItem('apiVersion')) {
|
||||
apiVersion = localStorage.getItem('apiVersion')
|
||||
} else {
|
||||
if (ua.match(/MicroMessenger/i) == 'micromessenger') {
|
||||
//report/reportList数据报表页面在浏览器可以打开了,但在微信或企业微信中打开不了,接口请求不需要token
|
||||
if (window.location.href.indexOf('apiVersion') > 0) {
|
||||
apiVersion = getSearchString('apiVersion') == 'V3' ? 'v3' : 'v2';//url中apiVersion没有时,为v2
|
||||
} else {
|
||||
apiVersion = 'v3'
|
||||
}
|
||||
} else {
|
||||
// 在app
|
||||
if (navigator.userAgent.indexOf('JZG_') > 0) {
|
||||
apiVersion = navigator.userAgent.split('JZG_')[1].split('/')[0].split('_')[1] == 'V3' ? 'v3' : 'v2'
|
||||
}
|
||||
}
|
||||
window.localStorage.setItem('apiVersion', apiVersion)
|
||||
}
|
||||
// 可以多个接口域名,按需添加
|
||||
console.log('环境:', process.env.VUE_APP_FLAG)
|
||||
let apiVersion = 'v1'
|
||||
// var ua = window.navigator.userAgent.toLowerCase()
|
||||
// //通过正则表达式匹配ua中是否含有MicroMessenger字符串, 在微信
|
||||
// if (localStorage.getItem('apiVersion')) {
|
||||
// apiVersion = localStorage.getItem('apiVersion')
|
||||
// } else {
|
||||
// if (ua.match(/MicroMessenger/i) == 'micromessenger') {
|
||||
// //report/reportList数据报表页面在浏览器可以打开了,但在微信或企业微信中打开不了,接口请求不需要token
|
||||
// if (window.location.href.indexOf('apiVersion') > 0) {
|
||||
// apiVersion = getSearchString('apiVersion') == 'V3' ? 'v3' : 'v2';//url中apiVersion没有时,为v2
|
||||
// } else {
|
||||
// apiVersion = 'v3'
|
||||
// }
|
||||
// } else {
|
||||
// // 在app
|
||||
// if (navigator.userAgent.indexOf('JZG_') > 0) {
|
||||
// apiVersion = navigator.userAgent.split('JZG_')[1].split('/')[0].split('_')[1] == 'V3' ? 'v3' : 'v2'
|
||||
// }
|
||||
// }
|
||||
// window.localStorage.setItem('apiVersion', apiVersion)
|
||||
// }
|
||||
// // 可以多个接口域名,按需添加
|
||||
// console.log('环境:', process.env.VUE_APP_FLAG)
|
||||
switch (process.env.VUE_APP_FLAG) {
|
||||
case 'dev':
|
||||
apiDomain = 'https://iagentsales-test2.e-guofu.com:5200/api/' + apiVersion // 国富api ///api/v1
|
||||
|
||||
@@ -3,6 +3,8 @@ const GBC_home = () => import('@/views/GBC/home')
|
||||
const GBC_projectList = () => import('@/views/GBC/projectList')
|
||||
const GBC_projectDetail = () => import('@/views/GBC/projectDetail')
|
||||
const GBC_customerDetail = () => import('@/views/GBC/customerDetail')
|
||||
const GBC_InsuredInfo = () => import('@/views/GBC/InsuredInfo')
|
||||
const GBC_submitResult = () => import('@/views/GBC/submitResult')
|
||||
|
||||
export default [
|
||||
{
|
||||
@@ -41,4 +43,22 @@ export default [
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/GBC/InsuredInfo',
|
||||
name: 'GBC_InsuredInfo',
|
||||
component: GBC_InsuredInfo,
|
||||
meta: {
|
||||
title: '信息录入',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/GBC/submitResult',
|
||||
name: 'GBC_submitResult',
|
||||
component: GBC_submitResult,
|
||||
meta: {
|
||||
title: '提交结果',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
]
|
||||
|
||||
@@ -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: '旺季实时贺报'
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
1439
src/views/GBC/InsuredInfo.vue
Normal file
1439
src/views/GBC/InsuredInfo.vue
Normal file
File diff suppressed because it is too large
Load Diff
@@ -9,16 +9,20 @@
|
||||
</div>
|
||||
<div style="display: flex;font-size: 13px;color: #999;margin-top: 10px;">
|
||||
<span style="width: 25%;display: flex;align-items: flex-end;align-items: baseline;justify-content: center;">
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 7px;font-weight: bold;">{{infoContent.contSize}}</span>份
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 2px;font-weight: bold;">{{infoContent.contSize}}</span>
|
||||
<span>份</span>
|
||||
</span>
|
||||
<span style="width: 25%;display: flex;align-items: flex-end;align-items: baseline;justify-content: center;">
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 7px;font-weight: bold;">{{infoContent.members.length}}</span>人
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 2px;font-weight: bold;">{{infoContent.members.length}}</span>
|
||||
<span>人</span>
|
||||
</span>
|
||||
<span style="width: 25%;display: flex;align-items: flex-end;align-items: baseline;justify-content: center;">
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 7px;font-weight: bold;">{{infoContent.totalAmt}}</span>
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 2px;font-weight: bold;">{{infoContent.totalAmt}}</span>
|
||||
<span>万元</span>
|
||||
</span>
|
||||
<span style="width: 25%;display: flex;align-items: flex-end;align-items: baseline;justify-content: center;">
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 7px;font-weight: bold;">{{infoContent.totalPrem}}</span>
|
||||
<span style="color: #EC5449;font-size: 22px;margin-right: 2px;font-weight: bold;">{{infoContent.totalPrem}}</span>
|
||||
<span>万元</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -131,22 +135,22 @@
|
||||
</div>
|
||||
<div style="padding: 10px 0px;">
|
||||
<div style="display: flex;line-height: 30px;align-items: center;">
|
||||
<p style="width: 30%;color: #666;">投保人:</p>
|
||||
<p style="width: 25%;color: #666;">投保人:</p>
|
||||
<p style="width: 25%;color: #000;">{{item.appntName}}</p>
|
||||
<p style="width: 25%;color: #666;">被保险人:</p>
|
||||
<p style="width: 20%;color: #000;">{{item.insuredName}}</p>
|
||||
<p style="width: 25%;color: #000;">{{item.insuredName}}</p>
|
||||
</div>
|
||||
<div style="display: flex;line-height: 30px;align-items: center;">
|
||||
<p style="width: 30%;color: #666;">保额(元):</p>
|
||||
<p style="width: 25%;color: #000;">{{item.amt}}</p>
|
||||
<p style="width: 25%;color: #666;">保额(元):</p>
|
||||
<p style="width: 25%;color: #000;">{{Number(item.amt).toFixed(2)}}</p>
|
||||
<p style="width: 25%;color: #666;">保费(元):</p>
|
||||
<p style="width: 20%;color: #000;">{{item.prem}}</p>
|
||||
<p style="width: 25%;color: #000;">{{Number(item.prem).toFixed(2)}}</p>
|
||||
</div>
|
||||
<div style="display: flex;line-height: 30px;align-items: center;">
|
||||
<p style="width: 30%;color: #666;">交费期间:</p>
|
||||
<p style="width: 25%;color: #666;">交费期间:</p>
|
||||
<p style="width: 25%;color: #000;">{{item.paymentPeriod}}</p>
|
||||
<p style="width: 25%;color: #666;">保险期间:</p>
|
||||
<p style="width: 20%;color: #000;">{{item.insuredPeriod}}</p>
|
||||
<p style="width: 25%;color: #000;">{{item.insuredPeriod}}</p>
|
||||
</div>
|
||||
<div style="display: flex;line-height: 30px;align-items: center;">
|
||||
<p style="width: 30%;color: #666;">保险生效日期:</p>
|
||||
@@ -224,12 +228,14 @@ export default {
|
||||
],
|
||||
connectContent: "",
|
||||
maxLength: 500,
|
||||
activeAppntId:'',
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
},
|
||||
mounted(){
|
||||
this.activeAppntId = this.$route.query.appntId
|
||||
this.getGBCappntDetail()
|
||||
},
|
||||
methods: {
|
||||
@@ -237,6 +243,7 @@ export default {
|
||||
this.activeMembersIndex = thisIndex
|
||||
this.infoContent.appntName = thisData.name
|
||||
this.infoContent.age = thisData.age
|
||||
this.activeAppntId = thisData.appntId
|
||||
this.infoContent.gender = thisData.gender
|
||||
this.infoContent.mobile = thisData.mobile
|
||||
this.infoContent.departmentName = thisData.departmentName
|
||||
@@ -257,12 +264,14 @@ export default {
|
||||
getGBCappntConnectSave(){
|
||||
let params = {
|
||||
"projectCode": this.$route.query.projectCode,
|
||||
"appntId": this.$route.query.projectCode,
|
||||
"appntId": this.activeAppntId,
|
||||
"connectContent": this.connectContent
|
||||
}
|
||||
getGBCappntConnectSave(params).then(res=>{
|
||||
if(res.result == 0) {
|
||||
this.$toast('保存成功')
|
||||
this.connectContent = ''
|
||||
this.activeConnectRecords = false
|
||||
this.getGBCappntDetail()
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
@@ -275,7 +284,7 @@ export default {
|
||||
this.infoContent.appntType = value.id
|
||||
let params = {
|
||||
"projectCode": this.$route.query.projectCode,
|
||||
"appntId": this.$route.query.appntId,
|
||||
"appntId": this.activeAppntId,
|
||||
"appntType": this.infoContent.appntType
|
||||
}
|
||||
getGBCappntTypeSave(params).then(res=>{
|
||||
|
||||
@@ -5,128 +5,176 @@
|
||||
<van-tab title="数据看板" name="dataBoard"></van-tab>
|
||||
<van-tab title="产品列表" name="productList"></van-tab>
|
||||
</van-tabs>
|
||||
<div v-if="tabActive == 'customerList'">
|
||||
<div style="display: flex;align-items: center;padding-left: 10px;background: #fff;">
|
||||
<div style="width: 30%;">
|
||||
<van-dropdown-menu :overlay="dropdownmenuoverlay">
|
||||
<van-dropdown-item v-model="filterType" :options="filterTypeOption" @change="dropdownMenuChange"/>
|
||||
</van-dropdown-menu>
|
||||
</div>
|
||||
<van-search v-if="filterType == 1 || filterType == 2 || filterType == 3" v-model="searchvalue" shape="round" @search="getGBCappntlist" placeholder="搜索客户姓名/部门/科室/服务人员" style="width: 70%;"/>
|
||||
<div v-if="filterType == 4" style="display: flex;align-items: center;height: 54px;">
|
||||
<div @click="toChooseDate('startDate')" style="background: #f5f5f5;height: 34px;border-radius: 17px;width: 90px;display: flex;align-items: center;padding:0px 10px;">
|
||||
<van-icon name="notes-o" />
|
||||
<span v-if="!startDate" style="font-size: 12px;margin-left: 5px;color: #666;">请选择日期</span>
|
||||
<span v-if="startDate" style="font-size: 12px;margin-left: 5px;color: #333;">{{startDate}}</span>
|
||||
<div style="height: calc(100vh - 50px);overflow: auto;">
|
||||
<div v-if="tabActive == 'customerList'">
|
||||
<div style="display: flex;align-items: center;padding-left: 10px;background: #fff;">
|
||||
<div style="width: 30%;">
|
||||
<van-dropdown-menu :overlay="dropdownmenuoverlay">
|
||||
<van-dropdown-item v-model="filterType" :options="filterTypeOption" @change="dropdownMenuChange"/>
|
||||
</van-dropdown-menu>
|
||||
</div>
|
||||
<span style="margin: 0px 5px;font-size: 14px;">至</span>
|
||||
<div @click="toChooseDate('endDate')" style="background: #f5f5f5;height: 34px;border-radius: 17px;width: 90px;display: flex;align-items: center;padding: 0px 10px;">
|
||||
<van-icon name="notes-o" />
|
||||
<span v-if="!endDate" style="font-size: 12px;margin-left: 5px;color: #666;">请选择日期</span>
|
||||
<span v-if="endDate" style="font-size: 12px;margin-left: 5px;color: #333;">{{endDate}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="padding: 0px 10px 10px;">
|
||||
<div v-for="(item,index) in customerList" :key="index">
|
||||
<div style="padding: 20px 20px 10px;border-radius: 5px;background: #fff;margin-top: 20px;">
|
||||
<div style="display: flex;font-size: 14px;line-height: 30px;border-bottom: 1px solid #eee;padding-bottom: 10px;">
|
||||
<div style="width: 55%;overflow: hidden;white-space: nowrap;">
|
||||
<p>客户姓名:{{item.appntName}}</p>
|
||||
<p>手机号码:{{item.mobile}}</p>
|
||||
<p>服务组长:{{item.teamLeader}}</p>
|
||||
</div>
|
||||
<div style="width: 45%;overflow: hidden;white-space: nowrap;">
|
||||
<p>部门/科室:{{item.departmentName}}</p>
|
||||
<p>承包保单:{{item.contSize}}份</p>
|
||||
<p>服务组员:{{item.teamMember}}</p>
|
||||
</div>
|
||||
<van-search v-if="filterType == 1 || filterType == 2 || filterType == 3" v-model="searchvalue" shape="round" @search="getGBCappntlist" placeholder="搜索客户姓名/部门/科室/服务人员" style="width: 70%;"/>
|
||||
<div v-if="filterType == 4" style="display: flex;align-items: center;height: 54px;">
|
||||
<div @click="toChooseDate('startDate')" style="background: #f5f5f5;height: 34px;border-radius: 17px;width: 90px;display: flex;align-items: center;padding:0px 10px;">
|
||||
<van-icon name="notes-o" />
|
||||
<span v-if="!startDate" style="font-size: 12px;margin-left: 5px;color: #666;">请选择日期</span>
|
||||
<span v-if="startDate" style="font-size: 12px;margin-left: 5px;color: #333;">{{startDate}}</span>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: flex-end;margin-top: 10px;">
|
||||
<van-button @click="goCustomerDetail(item)" type="danger" size="small" style="border-radius:5px;">查看编辑</van-button>
|
||||
<span style="margin: 0px 5px;font-size: 14px;">至</span>
|
||||
<div @click="toChooseDate('endDate')" style="background: #f5f5f5;height: 34px;border-radius: 17px;width: 90px;display: flex;align-items: center;padding: 0px 10px;">
|
||||
<van-icon name="notes-o" />
|
||||
<span v-if="!endDate" style="font-size: 12px;margin-left: 5px;color: #666;">请选择日期</span>
|
||||
<span v-if="endDate" style="font-size: 12px;margin-left: 5px;color: #333;">{{endDate}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="tabActive == 'dataBoard'">
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目名称:国富人寿北京协和医院AA项目</p>
|
||||
<p style="color: #a7a7a7;font-size: 14px;">数据截止日期:2024-03-30</p>
|
||||
<div style="display: flex;justify-content: center;margin-top: 20px;">
|
||||
<van-circle v-model="currentRate" color="#E9332E" :stroke-width="60" size="80px" :rate="85" :speed="100" :text="text" />
|
||||
</div>
|
||||
<p style="display: flex;justify-content: center;font-weight: bold;font-size: 14px;margin: 10px;">面谈转化率</p>
|
||||
<div style="padding: 10px;background: rgba(251, 235, 230, 0.5);border-radius: 5px;display: flex;justify-content: flex-start;flex-wrap:wrap;">
|
||||
<div v-for="(item,index) in dataList1" style="width: 33%;display: flex;justify-content: space-around;align-items: center;">
|
||||
<div>
|
||||
<div style="font-size: 12px;line-height: 22px;margin: 7px 0px;">
|
||||
<p style="display: flex;justify-content: center;font-size: 14px;">{{item.value}}</p>
|
||||
<p style="display: flex;justify-content: center;align-items: center;">
|
||||
<span class="colorBlock" :style="{background:colorList[index]}"></span>
|
||||
{{item.name}}
|
||||
</p>
|
||||
<div style="padding: 0px 10px 10px;">
|
||||
<div v-for="(item,index) in customerList" :key="index">
|
||||
<div style="padding: 20px 20px 10px;border-radius: 5px;background: #fff;margin-top: 20px;">
|
||||
<div style="display: flex;font-size: 14px;line-height: 30px;border-bottom: 1px solid #eee;padding-bottom: 10px;">
|
||||
<div style="width: 55%;overflow: hidden;white-space: nowrap;">
|
||||
<p>客户姓名:{{item.appntName}}</p>
|
||||
<p>手机号码:{{item.mobile}}</p>
|
||||
<p>服务组长:{{item.teamLeader}}</p>
|
||||
</div>
|
||||
<div style="width: 45%;overflow: hidden;white-space: nowrap;">
|
||||
<p>部门/科室:{{item.departmentName}}</p>
|
||||
<p>承保保单:{{item.contSize}}份</p>
|
||||
<p>服务组员:{{item.teamMember}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: flex-end;margin-top: 10px;">
|
||||
<van-button @click="goCustomerDetail(item)" type="danger" size="small" style="border-radius:5px;">查看编辑</van-button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div v-if="(index + 1) % 3 != 0 || index < 2" style="width: 1px;background: #FFC9AF;height: 60%;"></div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<div style="border-bottom: 1px dashed #666;padding-bottom: 15px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目成员分配</p>
|
||||
<p style="color: #a7a7a7;font-size: 14px;">数据截止日期:2024-03-30</p>
|
||||
</div>
|
||||
<div style="margin-top: 10px;margin-bottom: 3px;background: rgba(255, 87, 83, 0.7);line-height: 30px;display: flex;align-items: center;color: #fff;font-size: 14px;">
|
||||
<span style="width: 18%;display: flex;justify-content: center;">成员</span>
|
||||
<span style="width: 22%;display: flex;justify-content: center;">角色</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">累计标保(元)</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">受理标保(元)</span>
|
||||
</div>
|
||||
<div>
|
||||
<div v-for="item in dataList2" style="background: rgba(251, 235, 230, 0.44);margin-bottom: 1px;line-height: 30px;display: flex;align-items: center;color: #333;font-size: 13px;">
|
||||
<span style="width: 18%;display: flex;justify-content: center;">{{item.name}}</span>
|
||||
<span style="width: 22%;display: flex;justify-content: center;">{{item.role}}</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">{{item.value1}}</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">{{item.value2}}</span>
|
||||
<div v-if="tabActive == 'dataBoard'">
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目名称:{{calGbcProject.projectName}}</p>
|
||||
<p style="color: #a7a7a7;font-size: 14px;">数据截止日期:{{calGbcProject.endDate}}</p>
|
||||
<div style="display: flex;justify-content: center;margin-top: 20px;">
|
||||
<van-circle v-model="currentRate" color="#E9332E" :stroke-width="60" size="80px" :rate="interviewConversionRate" :speed="100" :text="text" />
|
||||
</div>
|
||||
<p style="display: flex;justify-content: center;font-weight: bold;font-size: 14px;margin: 10px;">面谈转化率</p>
|
||||
<div style="padding: 10px;background: rgba(251, 235, 230, 0.5);border-radius: 5px;display: flex;justify-content: flex-start;flex-wrap:wrap;">
|
||||
<div v-for="(item,index) in calGbcProjectDataList" style="width: 33%;display: flex;justify-content: space-around;align-items: center;">
|
||||
<div>
|
||||
<div style="font-size: 12px;line-height: 22px;margin: 7px 0px;">
|
||||
<p style="display: flex;justify-content: center;font-size: 14px;">{{item.value}}</p>
|
||||
<p style="display: flex;justify-content: center;align-items: center;">
|
||||
<span class="colorBlock" :style="{background:colorList[index]}"></span>
|
||||
{{item.name}}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div v-if="(index + 1) % 3 != 0 || index < 2" style="width: 1px;background: #FFC9AF;height: 60%;"></div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<div style="border-bottom: 1px dashed #666;padding-bottom: 15px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目成员分配</p>
|
||||
<p v-if="calGbcPersonList.length != 0" style="color: #a7a7a7;font-size: 14px;">数据截止日期:{{calGbcPersonList[0].endDate}}</p>
|
||||
</div>
|
||||
<div style="margin-top: 10px;margin-bottom: 3px;background: rgba(255, 87, 83, 0.7);line-height: 30px;display: flex;align-items: center;color: #fff;font-size: 14px;">
|
||||
<span style="width: 18%;display: flex;justify-content: center;">成员</span>
|
||||
<span style="width: 22%;display: flex;justify-content: center;">角色</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">累计标保(元)</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">受理标保(元)</span>
|
||||
</div>
|
||||
<div>
|
||||
<div v-for="item in calGbcPersonList" style="background: rgba(251, 235, 230, 0.44);margin-bottom: 1px;line-height: 30px;display: flex;align-items: center;color: #333;font-size: 13px;">
|
||||
<span style="width: 18%;display: flex;justify-content: center;">{{item.personName}}</span>
|
||||
<span style="width: 22%;display: flex;justify-content: center;">{{item.roleName}}</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">{{item.sumStandardPrem}}</span>
|
||||
<span style="width: 30%;display: flex;justify-content: center;">{{item.sumAcceptedPrem}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<div style="border-bottom: 1px dashed #666;padding-bottom: 15px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目数据统计</p>
|
||||
<p style="color: #a7a7a7;font-size: 14px;">数据截止日期:2024-03-30</p>
|
||||
</div>
|
||||
<div style="margin-top: 10px;margin-bottom: 3px;background: rgba(255, 87, 83, 0.7);line-height: 30px;display: flex;align-items: center;color: #fff;font-size: 14px;">
|
||||
<span style="width: 25%;display: flex;justify-content: center;">小组</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">组长</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">获客人数</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">获客率</span>
|
||||
</div>
|
||||
<div>
|
||||
<div style="background: rgba(251, 235, 230, 0.44);margin-bottom: 1px;line-height: 30px;display: flex;align-items: center;color: #333;font-size: 13px;">
|
||||
<span style="width: 50%;display: flex;justify-content: center;">项目合并</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">890</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">89%</span>
|
||||
<div style="margin: 10px;padding: 10px;background: #fff;border-radius: 5px;">
|
||||
<div style="border-bottom: 1px dashed #666;padding-bottom: 15px;">
|
||||
<p style="font-size: 18px;line-height: 35px;font-weight: bold;">项目数据统计</p>
|
||||
<p v-if="calGbcTeamList.length != 0" style="color: #a7a7a7;font-size: 14px;">数据截止日期:{{calGbcTeamList[0].endDate}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div v-for="(item,index) in dataList3" :key="index" style="background: rgba(251, 235, 230, 0.44);margin-bottom: 1px;line-height: 30px;display: flex;align-items: center;color: #333;font-size: 13px;">
|
||||
<span style="width: 25%;display: flex;justify-content: center;">{{item.name}}</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">{{item.role}}</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">{{item.value1}}</span>
|
||||
<span style="width: 25%;display: flex;justify-content: center;">{{item.value2}}</span>
|
||||
<div style="overflow: auto;">
|
||||
<table cellspacing=0 style="margin-top: 10px;">
|
||||
<thead style="background: rgba(255, 87, 83, 0.7);color: #fff;">
|
||||
<tr class="theadClass">
|
||||
<th style="padding: 0px 40px;">小组</th>
|
||||
<th>组长</th>
|
||||
<th>承保保费(元)</th>
|
||||
<th>获客人数</th>
|
||||
<th>获客率</th>
|
||||
<th>筛客人数</th>
|
||||
<th>筛客率</th>
|
||||
<th>累计标保(元)</th>
|
||||
<th>承保人数</th>
|
||||
<th>承保件数(件)</th>
|
||||
<th>件均(元)</th>
|
||||
<th>面谈转化率</th>
|
||||
<th>受理承保率</th>
|
||||
<th>受理标保(元)</th>
|
||||
<th>受理件数</th>
|
||||
<th>重疾险件数</th>
|
||||
<th>重疾标保(元)</th>
|
||||
<th>重疾件均(元)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="tbodyClass">
|
||||
<td colspan="2">项目合并</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumInsuredPrem}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.guestNum}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.guestRate}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.guestSelectNum}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.guestSelectRate}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumStandardPrem}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumInsuredNum}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumInsuredCases}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.averagePrem}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.interviewConversionRate}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.acceptedRate}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumAcceptedPrem}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumAcceptedCases}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumMajorDiseaseCases}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.sumMajorDiseasePrem}}</td>
|
||||
<td>{{calGbcTeamTotalDTO.averageMajorDiseasePrem}}</td>
|
||||
</tr>
|
||||
<tr v-for="(item,index) in calGbcTeamList" :key="index" class="tbodyClass">
|
||||
<td class="teamNameTdClass">{{item.teamName}}</td>
|
||||
<td>{{item.leaderName}}</td>
|
||||
<td>{{item.sumInsuredPrem}}</td>
|
||||
<td>{{item.guestNum}}</td>
|
||||
<td>{{item.guestRate}}</td>
|
||||
<td>{{item.guestSelectNum}}</td>
|
||||
<td>{{item.guestSelectRate}}</td>
|
||||
<td>{{item.sumStandardPrem}}</td>
|
||||
<td>{{item.sumInsuredNum}}</td>
|
||||
<td>{{item.sumInsuredCases}}</td>
|
||||
<td>{{item.averagePrem}}</td>
|
||||
<td>{{item.interviewConversionRate}}</td>
|
||||
<td>{{item.acceptedRate}}</td>
|
||||
<td>{{item.sumAcceptedPrem}}</td>
|
||||
<td>{{item.sumAcceptedCases}}</td>
|
||||
<td>{{item.sumMajorDiseaseCases}}</td>
|
||||
<td>{{item.sumMajorDiseasePrem}}</td>
|
||||
<td>{{item.averageMajorDiseasePrem}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="tabActive == 'productList'">
|
||||
<div v-for="(item,index) in dataList4" @click="goProductDetail(item.productCode)" :key="index" style="background: #fff;border-radius: 5px;margin: 5px;display: flex;padding: 5px;">
|
||||
<img :src="item.productImageUrl" style="display: inline-block;width: 35%;border-radius: 5px;"/>
|
||||
<div style="display: inline-block;width: 65%;padding-left: 10px;">
|
||||
<p style="font-size: 16px;">{{item.productName}}</p>
|
||||
<p style="font-size: 14px;color: #bdbdbd;margin-top: 20px;">{{item.productDesc}}</p>
|
||||
<div v-if="tabActive == 'productList'">
|
||||
<div v-for="(item,index) in dataList4" @click="goProductDetail(item.productCode)" :key="index" style="background: #fff;border-radius: 5px;margin: 5px;display: flex;padding: 5px;">
|
||||
<img :src="item.productImageUrl" style="display: inline-block;width: 35%;border-radius: 5px;"/>
|
||||
<div style="display: inline-block;width: 65%;padding-left: 10px;">
|
||||
<p style="font-size: 16px;">{{item.productName}}</p>
|
||||
<p style="font-size: 14px;color: #bdbdbd;margin-top: 20px;">{{item.productDesc}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -140,7 +188,7 @@
|
||||
<script>
|
||||
import { Tab, Tabs, Search, DropdownMenu, DropdownItem, Circle } from 'vant'
|
||||
import { getList } from '@/api/ebiz/product/product.js'
|
||||
import { getGBCappntlist } from '@/api/GBC/GBC.js'
|
||||
import { getGBCappntlist, dataShow } from '@/api/GBC/GBC.js'
|
||||
export default {
|
||||
components: {
|
||||
[Tab.name]: Tab,
|
||||
@@ -172,33 +220,20 @@ export default {
|
||||
customerList:[],
|
||||
currentRate: 0,
|
||||
colorList:['#E9332E','#CB9BFF','#54C6FA','#FF9B39','#60D64D','#4045F3','#FF59D9','#E8C0A2','#FCD338','#7584A2'],
|
||||
dataList1:[
|
||||
{name:'累计受理保费(元)',value:'150,000.00'},
|
||||
{name:'累计标保(元)',value:'250,000.00'},
|
||||
{name:'件均保费(元)',value:'130,000.00'},
|
||||
{name:'件均保费(元)',value:'10856'},
|
||||
{name:'累计受理件数(件)',value:'356'},
|
||||
{name:'累计承保人数(人)',value:'9569'},
|
||||
{name:'累计承保件数(件)',value:'262'},
|
||||
],
|
||||
dataList2:[
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
{name:'张大大',role:'项目经理',value1:'15,000.00',value2:'15,000.00'},
|
||||
],
|
||||
dataList3:[
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
{name:'A组',role:'李艾',value1:'600',value2:'60'},
|
||||
calGbcProject: {},
|
||||
interviewConversionRate: 0,
|
||||
calGbcProjectDataList:[
|
||||
{name:'累计受理保费(元)',value:'150,000.00', code: 'sumAcceptedPrem'},
|
||||
{name:'累计标保(元)',value:'250,000.00', code: 'sumStandardPrem'},
|
||||
{name:'件均保费(元)',value:'130,000.00', code: 'averagePrem'},
|
||||
{name:'累计受理人数(人)',value:'10856', code: 'sumAcceptedNum'},
|
||||
{name:'累计受理件数(件)',value:'356', code: 'sumAcceptedCases'},
|
||||
{name:'累计承保人数(人)',value:'9569', code: 'sumInsuredNum'},
|
||||
{name:'累计承保件数(件)',value:'262', code: 'sumInsuredCases'},
|
||||
],
|
||||
calGbcPersonList:[],
|
||||
calGbcTeamList:[],
|
||||
calGbcTeamTotalDTO: {},
|
||||
dataList4:[],
|
||||
}
|
||||
},
|
||||
@@ -206,10 +241,37 @@ export default {
|
||||
|
||||
},
|
||||
mounted(){
|
||||
document.title = this.$route.query.projectName
|
||||
this.getGBCappntlist()
|
||||
this.getProductList()
|
||||
this.getDataShow()
|
||||
},
|
||||
methods: {
|
||||
getDataShow() {
|
||||
let params = {
|
||||
projectCode: this.$route.query.projectCode
|
||||
}
|
||||
dataShow(params).then(res => {
|
||||
this.calGbcPersonList = []
|
||||
this.calGbcTeamList = []
|
||||
if(res.result == '0') {
|
||||
this.calGbcProject = res.content.calGbcProject
|
||||
this.interviewConversionRate = Number(res.content.calGbcProject.interviewConversionRate)
|
||||
for(let key in res.content.calGbcProject) {
|
||||
this.calGbcProjectDataList.forEach(item => {
|
||||
if(item.code == key) {
|
||||
item.value = res.content.calGbcProject[key]
|
||||
}
|
||||
})
|
||||
}
|
||||
this.calGbcPersonList = res.content.calGbcPersonList
|
||||
this.calGbcTeamList = res.content.calGbcTeamList
|
||||
this.calGbcTeamTotalDTO = res.content.calGbcTeamTotalDTO
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
dropdownMenuChange(value){
|
||||
this.filterType = value
|
||||
this.searchvalue = ''
|
||||
@@ -302,9 +364,6 @@ export default {
|
||||
getList(params).then(res=>{
|
||||
if(res.result == '0') {
|
||||
this.dataList4 = this.dataList4.concat(res.productList)
|
||||
this.dataList4 = this.dataList4.concat(res.productList)
|
||||
this.dataList4 = this.dataList4.concat(res.productList)
|
||||
this.dataList4 = this.dataList4.concat(res.productList)
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
@@ -376,4 +435,28 @@ export default {
|
||||
/deep/ [data-v-3f765cce] .van-dropdown-item__content{
|
||||
box-shadow: 0px 0px 5px 5px #f5f5f5;
|
||||
}
|
||||
.theadClass{
|
||||
th{
|
||||
white-space: nowrap;
|
||||
padding: 0px 10px;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 30px;
|
||||
}
|
||||
}
|
||||
.tbodyClass{
|
||||
background: rgba(251, 235, 230, 0.44);
|
||||
line-height: 30px;
|
||||
margin-bottom: 1px;
|
||||
font-size: 13px;
|
||||
/*color: #fff;*/
|
||||
td{
|
||||
text-align: center;
|
||||
border-bottom:1px solid #fff;
|
||||
}
|
||||
}
|
||||
.teamNameTdClass{
|
||||
display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
||||
//width: 105px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<van-search v-model="searchvalue" shape="round" background="#fff" placeholder="搜索项目名称"/>
|
||||
<van-search v-model="searchvalue" shape="round" background="#fff" @search="getGBCprojectlistByYear" placeholder="搜索项目名称"/>
|
||||
<div style="padding: 10px;">
|
||||
<van-collapse v-for="item in yearList" :key="item.year" v-model="activeNames" style="margin-top: 10px;border-radius: 5px;">
|
||||
<van-collapse-item :title="item.year" :name="item.year">
|
||||
@@ -45,7 +45,7 @@ export default {
|
||||
methods: {
|
||||
getGBCprojectlistByYear(){
|
||||
let params = {
|
||||
|
||||
projectName: this.searchvalue
|
||||
}
|
||||
getGBCprojectlistByYear(params).then(res=>{
|
||||
if(res.result == '0') {
|
||||
@@ -62,7 +62,8 @@ export default {
|
||||
this.$router.push({
|
||||
path:'/GBC/projectDetail',
|
||||
query:{
|
||||
projectCode:data.projectCode
|
||||
projectCode:data.projectCode,
|
||||
projectName:data.projectName
|
||||
},
|
||||
})
|
||||
},
|
||||
|
||||
40
src/views/GBC/submitResult.vue
Normal file
40
src/views/GBC/submitResult.vue
Normal file
@@ -0,0 +1,40 @@
|
||||
<template>
|
||||
<div>
|
||||
<div style="text-align: center;margin-top: 10vh;">
|
||||
<img :src="submitResultImg" style="width: 60vw;"/>
|
||||
</div>
|
||||
<p style="font-size: 20px;text-align: center;margin-top: 5vh;">提交成功</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import submitResultImg from '@/assets/images/GBC/submitResult.png'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
submitResultImg,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
||||
},
|
||||
created() {
|
||||
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
|
||||
},
|
||||
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
</style>
|
||||
@@ -149,7 +149,8 @@
|
||||
keyWord: '乙方锟斤拷:'
|
||||
}
|
||||
window.sessionStorage.setItem('signInfo',JSON.stringify(signInfo))
|
||||
window.location.href = 'http://'+window.location.host + '/signH5/1.html'
|
||||
// window.location.href = 'http://'+window.location.host + '/signH5/1.html'
|
||||
window.location.href = this.$mainUrl + '/signH5/1.html'
|
||||
},
|
||||
goNext(){
|
||||
let params = {
|
||||
|
||||
@@ -683,8 +683,8 @@ let bankListJson = [
|
||||
},
|
||||
{
|
||||
code: '50002',
|
||||
name: '广西壮族自治区农村信用社联合社',
|
||||
child: [{ code: '402611099974', name: '广西壮族自治区农村信用社联合社' }]
|
||||
name: '广西农村商业联合银行股份有限公司',
|
||||
child: [{ code: '402611099974', name: '广西农村商业联合银行股份有限公司' }]
|
||||
},
|
||||
{
|
||||
code: '20041',
|
||||
|
||||
@@ -1,23 +1,22 @@
|
||||
<template>
|
||||
<div class='insured-info-container pb50'>
|
||||
<div class="insured-info-container pb50">
|
||||
<!-- 基本信息 -->
|
||||
<van-cell-group class='mt10'>
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>推荐人信息</p>
|
||||
<van-field v-model='recommender.name' label='推荐人姓名' name='推荐人姓名' readonly />
|
||||
<van-field :value='getAgentGrade(recommender.agentGrade)' label='推荐人职级' name='推荐人职级' readonly />
|
||||
<van-cell-group class="mt10">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">推荐人信息</p>
|
||||
<van-field v-model="recommender.name" label="推荐人姓名" name="推荐人姓名" readonly />
|
||||
<van-field :value="getAgentGrade(recommender.agentGrade)" label="推荐人职级" name="推荐人职级" readonly />
|
||||
<!-- <van-field v-model="recommender.applyNo" label="推荐人工号" name="推荐人工号" readonly /> -->
|
||||
<van-field v-model='recommender.unitName' label='销售机构' name='销售机构' readonly />
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>个人信息</p>
|
||||
<van-field v-model='userInfo.name' label='姓名' name='姓名' placeholder='请输入' v-validate="'required|name'"
|
||||
clearable />
|
||||
<van-field v-model="recommender.unitName" label="销售机构" name="销售机构" readonly />
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">个人信息</p>
|
||||
<van-field v-model="userInfo.name" label="姓名" name="姓名" placeholder="请输入" v-validate="'required|name'" clearable />
|
||||
<van-field
|
||||
:value="userInfo.applGrade | idToText('applGrade')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
label='职级'
|
||||
name='职级'
|
||||
right-icon='arrow'
|
||||
placeholder='请选择职级'
|
||||
label="职级"
|
||||
name="职级"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择职级"
|
||||
@click="toSelect('13')"
|
||||
/>
|
||||
|
||||
@@ -25,62 +24,57 @@
|
||||
:value="userInfo.idType | idToText('idType')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
label='证件类型'
|
||||
name='证件类型'
|
||||
right-icon='arrow'
|
||||
placeholder='请选择证件类型'
|
||||
label="证件类型"
|
||||
name="证件类型"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择证件类型"
|
||||
@click="toSelect('1')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='userInfo.idNo'
|
||||
placeholder='请输入证件号码'
|
||||
label='证件号码'
|
||||
name='证件号码'
|
||||
v-model="userInfo.idNo"
|
||||
placeholder="请输入证件号码"
|
||||
label="证件号码"
|
||||
name="证件号码"
|
||||
v-validate="'required'"
|
||||
maxlength='18'
|
||||
maxlength="18"
|
||||
clearable
|
||||
@blur='getRelatedData(userInfo.idNo)'
|
||||
@blur="getRelatedData(userInfo.idNo)"
|
||||
/>
|
||||
<select-radio :radios='sexRadio' label='性别' name='性别' v-validate="'required'" :required='false'
|
||||
:value.sync='userInfo.sex'></select-radio>
|
||||
<van-field v-model='userInfo.mobile' label='手机号' name='手机号' placeholder='请输入手机号' v-validate="'required|mobile'"
|
||||
maxlength='11' clearable />
|
||||
<van-field v-model='userInfo.authCode' center clearable label name='短信验证码' placeholder='请输入短信验证码'
|
||||
v-validate="'required'" maxlength='6'>
|
||||
<van-button slot='button' size='small' type='danger' @click='getCode' :disabled='codeDisabled'
|
||||
v-no-more-click='1000'>
|
||||
<select-radio :radios="sexRadio" label="性别" name="性别" v-validate="'required'" :required="false" :value.sync="userInfo.sex"></select-radio>
|
||||
<van-field v-model="userInfo.mobile" label="手机号" name="手机号" placeholder="请输入手机号" v-validate="'required|mobile'" maxlength="11" clearable />
|
||||
<van-field v-model="userInfo.authCode" center clearable label name="短信验证码" placeholder="请输入短信验证码" v-validate="'required'" maxlength="6">
|
||||
<van-button slot="button" size="small" type="danger" @click="getCode" :disabled="codeDisabled" v-no-more-click="1000">
|
||||
{{ codeDisabled ? `${countDown}s后重新获取` : '获取验证码' }}
|
||||
</van-button>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
<van-button type='danger' class='bottom-btn' @click='nextStep' v-no-more-click='1000'>提交信息</van-button>
|
||||
<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 v-model="popupShow" position="bottom">
|
||||
<van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="popupShow = false" />
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { Field, CellGroup, Checkbox, Popup, Picker, Area, RadioGroup, Radio, Dialog } from 'vant';
|
||||
import SelectRadio from '@/components/ebiz/SelectRadio';
|
||||
import FieldDatePicter from '@/components/ebiz/FieldDatePicter';
|
||||
import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker';
|
||||
import CustomerPicker from '@/components/ebiz/customer/CustomerPicker';
|
||||
import DataDictionary from '@/assets/js/utils/data-dictionary';
|
||||
import areaList from '@/assets/js/utils/area';
|
||||
import { getTokenForAgent, agentInfowxSubmit, getTokenForUserModel } from '@/api/ebiz/agentEenter/agentEenter';
|
||||
import utilsAge from '@/assets/js/utils/age';
|
||||
import getAreaName from '@/assets/js/utils/get-area-name';
|
||||
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan';
|
||||
import idNoCheck from '@/assets/js/utils/idNoCheck';
|
||||
import beforeDate from '@/assets/js/utils/getBeforeDate.js';
|
||||
import { idToData } from '@/assets/js/utils/verification';
|
||||
import { weixinShare } from '@/assets/js/utils/wxShare.js';
|
||||
import axios from 'axios';
|
||||
import index from '@/config/index';
|
||||
import { getAuthCode,CommitmentSelfCheck } from '@/api/ebiz/sale/sale';
|
||||
|
||||
import { Field, CellGroup, Checkbox, Popup, Picker, Area, RadioGroup, Radio, Dialog } from 'vant'
|
||||
import SelectRadio from '@/components/ebiz/SelectRadio'
|
||||
import FieldDatePicter from '@/components/ebiz/FieldDatePicter'
|
||||
import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
|
||||
import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
|
||||
import DataDictionary from '@/assets/js/utils/data-dictionary'
|
||||
import areaList from '@/assets/js/utils/area'
|
||||
import { getTokenForAgent, agentInfowxSubmit, getTokenForUserModel } from '@/api/ebiz/agentEenter/agentEenter'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
import getAreaName from '@/assets/js/utils/get-area-name'
|
||||
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
|
||||
import idNoCheck from '@/assets/js/utils/idNoCheck'
|
||||
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
|
||||
import { idToData } from '@/assets/js/utils/verification'
|
||||
import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
||||
import axios from 'axios'
|
||||
import index from '@/config/index'
|
||||
import { getAuthCode } from '@/api/ebiz/sale/sale'
|
||||
|
||||
export default {
|
||||
name: 'insuredInfo',
|
||||
@@ -130,7 +124,7 @@ export default {
|
||||
sex: '', //投保人性别
|
||||
idType: '1', //证件类型
|
||||
idNo: '', //证件号码
|
||||
mobile: '',//手机号
|
||||
mobile: '', //手机号
|
||||
applGrade: '' // 职级
|
||||
},
|
||||
areaList: areaList,
|
||||
@@ -139,51 +133,52 @@ export default {
|
||||
codeDisabled: false, //获取验证码按钮是否禁用
|
||||
countDown: 60, //获取短信验证码倒计时
|
||||
sessionId: '' //后台返回的 id
|
||||
};
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
if (this.$route.query.content) {
|
||||
window.localStorage.setItem('wxShareDesc', this.$route.query.content);
|
||||
window.localStorage.setItem('wxShareDesc', this.$route.query.content)
|
||||
}
|
||||
weixinShare({
|
||||
title: '国富人寿欢迎你!',
|
||||
imgUrl: this.$assetsUrl + 'images/logo.png',
|
||||
desc: localStorage.wxShareDesc,
|
||||
link: location.origin + '/#/agentEenter/ShareInfo?token=' + localStorage.token
|
||||
});
|
||||
})
|
||||
},
|
||||
created() {
|
||||
if (this.$route.query.token) {
|
||||
// this.token = this.$route.query.token
|
||||
window.localStorage.setItem('token', this.$route.query.token);
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
} else {
|
||||
this.$toast.fail('链接已失效,请联系代理人重新分享!');
|
||||
this.$toast.fail('链接已失效,请联系代理人重新分享!')
|
||||
}
|
||||
this.getData();
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData: function() {
|
||||
let self = this;
|
||||
getData: function () {
|
||||
let self = this
|
||||
self.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
});
|
||||
})
|
||||
getTokenForUserModel({
|
||||
token: this.$CacheUtils.getLocItem('token')
|
||||
}).then(function(response) {
|
||||
self.$toast.clear();
|
||||
console.log('response', response);
|
||||
if (response.result == '0') {
|
||||
self.recommender = response;
|
||||
} else {
|
||||
this.$toast.fail(response.resultMessage);
|
||||
}
|
||||
})
|
||||
.catch(function(error) {
|
||||
.then(function (response) {
|
||||
self.$toast.clear()
|
||||
console.log('response', response)
|
||||
if (response.result == '0') {
|
||||
self.recommender = response
|
||||
} else {
|
||||
this.$toast.fail(response.resultMessage)
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
// this.$toast.fail(error)
|
||||
});
|
||||
})
|
||||
// var self = this
|
||||
// //获取推荐人信息
|
||||
// let data = {
|
||||
@@ -203,75 +198,59 @@ export default {
|
||||
// })
|
||||
},
|
||||
getAgentGrade(agentGrade) {
|
||||
let result = '';
|
||||
let result = ''
|
||||
DataDictionary.agentGrade.map((item, index) => {
|
||||
for (var key in item) {
|
||||
if (key == agentGrade) {
|
||||
result = item[agentGrade];
|
||||
result = item[agentGrade]
|
||||
}
|
||||
}
|
||||
});
|
||||
return result;
|
||||
})
|
||||
return result
|
||||
},
|
||||
// 下一步
|
||||
nextStep() {
|
||||
var self = this;
|
||||
var self = this
|
||||
self.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
});
|
||||
this.$validator.validate().then(valid => {
|
||||
})
|
||||
this.$validator.validate().then((valid) => {
|
||||
if (true === valid) {
|
||||
self.$toast.clear();
|
||||
self.$toast.clear()
|
||||
if (this.userInfo.idType == '1') {
|
||||
//身份证
|
||||
// 证件号码规则校验
|
||||
if (!idNoCheck.isIdno(this.userInfo.idNo)) {
|
||||
return this.$toast('请录入正确的身份证');
|
||||
return this.$toast('请录入正确的身份证')
|
||||
}
|
||||
if (this.userInfo.idNo.length == '18') {
|
||||
//18位身份证第17位是性别位, 奇男偶女
|
||||
let sexSign = this.userInfo.idNo.substr(16, 1);
|
||||
let sexSign = this.userInfo.idNo.substr(16, 1)
|
||||
if ((parseInt(sexSign) % 2 == 0 && this.userInfo.sex != 1) || (parseInt(sexSign) % 2 != 0 && this.userInfo.sex != 0)) {
|
||||
return this.$toast('性别录入与身份证不符');
|
||||
return this.$toast('性别录入与身份证不符')
|
||||
}
|
||||
}
|
||||
self.save();
|
||||
self.save()
|
||||
} else {
|
||||
self.save();
|
||||
self.save()
|
||||
}
|
||||
} else {
|
||||
this.$toast(this.$validator.errors.all()[0]);
|
||||
this.$toast(this.$validator.errors.all()[0])
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
async save() {
|
||||
let checkStr ='';
|
||||
let recmd=this.userInfo;
|
||||
recmd.source='XG';
|
||||
recmd.agentCode='A860101000001';
|
||||
recmd.birthday='';
|
||||
let checkData = {
|
||||
token: this.$CacheUtils.getLocItem('token'),
|
||||
recmdDTO:recmd
|
||||
};
|
||||
const resp = await CommitmentSelfCheck(checkData);
|
||||
if (resp.result == '0' && resp.content.data.ruleList && resp.content.data.ruleList.length ) {
|
||||
checkStr='<span style="color: red;width:auto; display: block;text-align: left">温馨提示:</span>'+resp.content.data.ruleList[0].retMsg
|
||||
}
|
||||
// else {
|
||||
// console.log(resp.resultMessage);
|
||||
// }
|
||||
let str ='是否确认提交?手机号与证件信息会作为您入司的重要信息,一旦提交无法再次修改!<br/> '
|
||||
+checkStr;
|
||||
// let str ='是否确认提交?手机号与证件信息会作为您入司的重要信息,一旦提交无法再次修改!<br/> ' +
|
||||
// '<span style="color: red;width:auto; display: block;text-align: left">温馨提示:</span>尊敬的代理人,您好!您在我司属于二次入司人员,原名下保单85668955426144655640已失效,为更好的维护您的利益,建议您先将保单复效后再继续提交入司申请,否则上号后两年内不可投保新契约自保件,保单复效办理,详询4006946688';
|
||||
async save() {
|
||||
// else {
|
||||
// console.log(resp.resultMessage);
|
||||
// }
|
||||
let str = '是否确认提交?手机号与证件信息会作为您入司的重要信息,一旦提交无法再次修改!'
|
||||
Dialog.confirm({
|
||||
title: '提示',
|
||||
message: str,
|
||||
messageAlign:'left'
|
||||
messageAlign: 'left'
|
||||
}).then(() => {
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
@@ -281,21 +260,21 @@ export default {
|
||||
ebizEnterCustomerDto: this.userInfo,
|
||||
smsCodeDTO: { smsId: this.sessionId, code: this.userInfo.authCode }
|
||||
// ebizReferrerDto: this.recommender
|
||||
};
|
||||
console.log(data);
|
||||
let that = this;
|
||||
}
|
||||
console.log(data)
|
||||
let that = this
|
||||
that.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
});
|
||||
})
|
||||
agentInfowxSubmit(data)
|
||||
.then(res => {
|
||||
.then((res) => {
|
||||
// console.log(res)
|
||||
if (res.result == '0') {
|
||||
this.$store.commit('updateAgentEnterApplyMsg', this.userInfo);
|
||||
that.$toast.clear();
|
||||
this.$store.commit('updateAgentEnterApplyMsg', this.userInfo)
|
||||
that.$toast.clear()
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
@@ -306,80 +285,80 @@ export default {
|
||||
routerInfo: {
|
||||
path: `/agentEenter/ShareInfoSuccess`
|
||||
}
|
||||
});
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage);
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
.then(function(err) {
|
||||
console.log(err);
|
||||
});
|
||||
});
|
||||
.then(function (err) {
|
||||
console.log(err)
|
||||
})
|
||||
})
|
||||
},
|
||||
//弹框选择
|
||||
toSelect(pickerType, valueKey) {
|
||||
;[this.popupShow, this.pickerType] = [true, pickerType];
|
||||
if (valueKey) this.valueKey = valueKey;
|
||||
;[this.popupShow, this.pickerType] = [true, pickerType]
|
||||
if (valueKey) this.valueKey = valueKey
|
||||
if (pickerType == '1') {
|
||||
this.columns = DataDictionary.idType;
|
||||
this.columns = DataDictionary.idType
|
||||
} else if (pickerType == '13') {
|
||||
this.columns = DataDictionary.applGrade;
|
||||
this.columns = DataDictionary.applGrade
|
||||
}
|
||||
},
|
||||
// //确认选择字段
|
||||
onConfirm(value) {
|
||||
this.popupShow = false;
|
||||
this.popupShow = false
|
||||
if (this.pickerType == '1') {
|
||||
this.userInfo.idType = value.id;
|
||||
this.userInfo.idType = value.id
|
||||
} else if (this.pickerType == '13') {
|
||||
this.userInfo.applGrade = value.id;
|
||||
this.userInfo.applGrade = value.id
|
||||
}
|
||||
},
|
||||
getRelatedData(val) {
|
||||
if (this.userInfo.idType != '1') {
|
||||
return;
|
||||
return
|
||||
}
|
||||
if (idToData(val).text) {
|
||||
;[this.userInfo.idNo, this.userInfo.sex] = ['', '']
|
||||
return this.$toast(idToData(val).text)
|
||||
}
|
||||
this.userInfo.sex = idToData(val).sex;
|
||||
this.userInfo.sex = idToData(val).sex
|
||||
},
|
||||
|
||||
//获取验证码
|
||||
getCode() {
|
||||
if (this.userInfo.mobile == '') {
|
||||
return this.$toast('请填写手机号');
|
||||
return this.$toast('请填写手机号')
|
||||
}
|
||||
this.codeDisabled = true;
|
||||
this.codeDisabled = true
|
||||
//倒计时
|
||||
this.timeId = setInterval(() => {
|
||||
this.countDown--;
|
||||
this.countDown--
|
||||
if (this.countDown <= 0) {
|
||||
window.clearInterval(this.timeId);
|
||||
this.codeDisabled = false;
|
||||
this.countDown = 60;
|
||||
window.clearInterval(this.timeId)
|
||||
this.codeDisabled = false
|
||||
this.countDown = 60
|
||||
}
|
||||
}, 1000);
|
||||
}, 1000)
|
||||
let data = {
|
||||
operateType: 'appntInfoEntry',
|
||||
type: 'H5',
|
||||
operateCode: this.userInfo.mobile,
|
||||
system: 'agentApp',
|
||||
operateCodeType: '0'
|
||||
};
|
||||
}
|
||||
//获取验证码
|
||||
getAuthCode(data).then(res => {
|
||||
console.log(res);
|
||||
getAuthCode(data).then((res) => {
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.sessionId = res.sessionId;
|
||||
this.sessionId = res.sessionId
|
||||
} else {
|
||||
this.$toast(res.resultMessage);
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.insured-info-container {
|
||||
|
||||
@@ -131,6 +131,29 @@
|
||||
placeholder='请选择'
|
||||
@click="toSelect('6')"
|
||||
/>
|
||||
<div class="p15 pl8 fs14" style="border-bottom: 1px solid #eee;display: flex;justify-content: space-between;align-items: center;" v-if="manageComCode == '45'">
|
||||
<van-radio-group v-model="userInfo.isNewPeopleFlag" class="flex">
|
||||
<label>
|
||||
<i class="red">*</i>
|
||||
新市民身份
|
||||
</label>
|
||||
<van-radio name="1" class="ml30">是</van-radio>
|
||||
<van-radio name="0" class="ml20">否</van-radio>
|
||||
</van-radio-group>
|
||||
<van-icon name="question-o" size="20" @click="isNewPeopleFlagTip = true"/>
|
||||
</div>
|
||||
<van-field
|
||||
v-if="userInfo.isNewPeopleFlag == 1"
|
||||
:value="userInfo.npType | idToText('npType')"
|
||||
readonly
|
||||
label="新市民类型"
|
||||
name="新市民类型"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('11')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='userInfo.homeName'
|
||||
readonly
|
||||
@@ -188,6 +211,17 @@
|
||||
<van-popup v-model='isScan2' position='bottom'>
|
||||
<IdentityCardScan @getScanInfo='getIdentityInfo'></IdentityCardScan>
|
||||
</van-popup>
|
||||
<van-dialog v-model="isNewPeopleFlagTipshow" :showConfirmButton="false">
|
||||
<div slot="title">
|
||||
<p style="color: #E9332E;">新市民身份说明</p>
|
||||
</div>
|
||||
<div style="padding: 20px 30px 30px;font-size: 14px;">
|
||||
<div style="line-height: 25px;">新市民是指因本人创业就业、子女上学、投靠子女等原因来到城镇常住,未获得当地户籍或获得当地户籍不满三年的各类群体,包括但不限于进城务工人员、新就业大中专毕业生等。</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="isNewPeopleFlagTipshow = false">我知道了</van-button>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@@ -211,6 +245,7 @@ import OccupationForLoop from '@/components/ebiz/occipation/OccupationForLoop'
|
||||
import { selectComp, getIdentityInfo } from './js/methods'
|
||||
import Vue from 'vue'
|
||||
import { GoodsAction, GoodsActionIcon, GoodsActionButton } from 'vant'
|
||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
|
||||
DataDictionary.relationToAppnt = DataDictionary.relationToAppnt.slice(0, 4)
|
||||
Vue.use(Checkbox).use(CheckboxGroup)
|
||||
@@ -312,7 +347,9 @@ export default {
|
||||
mobile: '', //移动电话
|
||||
email: '', //电子邮箱
|
||||
schoolName: '',
|
||||
className: ''
|
||||
className: '',
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
// effectiveDate: '' //指定生效日期
|
||||
},
|
||||
selectUser: '',
|
||||
@@ -337,34 +374,15 @@ export default {
|
||||
load: false, //防止重复请求
|
||||
value: false
|
||||
},
|
||||
occupationalType: DataDictionary.queryOccupationalByType[0].id
|
||||
occupationalType: DataDictionary.queryOccupationalByType[0].id,
|
||||
manageComCode: '',
|
||||
isNewPeopleFlagTipshow: false,
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// document.body.style.backgroundColor = '#F5F5F5'
|
||||
//如果是编辑进来
|
||||
// if (this.$route.query.edit) {
|
||||
// getOrderDetail({ orderNo: localStorage.orderNo }).then(res => {
|
||||
// if (res.result == 0) {
|
||||
// //投保人信息返显
|
||||
// this.userInfo = res.orderDTO.appntDTO
|
||||
// //是否长期
|
||||
// this.userInfo.effectiveDateType = res.orderDTO.appntDTO.effectiveDateType == 'false' ? false : true
|
||||
// //有无社保
|
||||
// this.userInfo.medical = '1'
|
||||
// //设为联系地址
|
||||
// this.userInfo.addressStatus = '0'
|
||||
// //证件类型
|
||||
// this.userInfo.idType = '1'
|
||||
// //国家/地区
|
||||
// this.userInfo.nativeplace = '1'
|
||||
// this.$utils.intLocalStorage(res)
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
this.userInfo.homeName = getAreaName([{ code: 450000 }, { code: 450100 }, { code: 450101 }]) //家庭地址
|
||||
},
|
||||
mounted() {
|
||||
async mounted() {
|
||||
let that = this
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
@@ -375,6 +393,8 @@ export default {
|
||||
}, 100)
|
||||
// 筛选按钮的点击事件
|
||||
window.appCallBack = this.appCallBack
|
||||
let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
this.manageComCode = dataReturn.manageComCode
|
||||
if (this.$route.query.cardOrderNo) {
|
||||
this.cardOrderNo = this.$route.query.cardOrderNo
|
||||
//根据后台数据来展示
|
||||
@@ -548,6 +568,8 @@ export default {
|
||||
this.columns = DataDictionary.workCondition
|
||||
} else if (pickerType == '8') {
|
||||
this.columns = DataDictionary.salarySource
|
||||
} else if (pickerType == '11') {
|
||||
this.columns = DataDictionary.npType
|
||||
}
|
||||
},
|
||||
//确认选择字段
|
||||
@@ -585,6 +607,8 @@ export default {
|
||||
this.proScheme = value.text
|
||||
this.proSchemeCode = value.id
|
||||
this.chooseKind = value.label
|
||||
} else if (this.pickerType === '11') {
|
||||
this.userInfo.npType = value.id
|
||||
}
|
||||
},
|
||||
//证件起始截止日期
|
||||
@@ -730,6 +754,8 @@ export default {
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
// 长期按钮是否禁用
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
this.userInfo.isNewPeopleFlag = data.isNewPeopleFlag //新市民身份
|
||||
this.userInfo.npType = data.npType //新市民类型
|
||||
this.getRelatedData(this.userInfo.idNo, '1')
|
||||
}
|
||||
// console.log(data, val)
|
||||
@@ -826,6 +852,12 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.manageComCode == '45' && (this.userInfo.isNewPeopleFlag == '' || this.userInfo.isNewPeopleFlag == null || this.userInfo.isNewPeopleFlag == undefined)) {
|
||||
return this.$toast('投保人新市民身份不能为空')
|
||||
}
|
||||
if(this.manageComCode == '45' && this.userInfo.isNewPeopleFlag != '0' && !this.userInfo.npType) {
|
||||
return this.$toast('投保人新市民类型不能为空')
|
||||
}
|
||||
this.infoUpdate()
|
||||
// console.log('success')
|
||||
} else {
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<van-cell-group class='mt10'>
|
||||
<p style='border-bottom: 1px solid #ebedf0' class='fs15 fwb pl10 pv12'>产品信息</p>
|
||||
<van-field :value='riskDTO.riskName' label='保障方案' name='保障方案' readonly />
|
||||
<van-field value='保额' label='保险责任' name='保险责任' readonly />
|
||||
<van-field class="dutyAmt" value='保额' label='保险责任' name='保险责任' readonly input-align="right"/>
|
||||
<div v-if='riskDTO.dutyLst && riskDTO.dutyLst.length>0'>
|
||||
<div class='duty' v-for='(item, index) in riskDTO.dutyLst' :key='index'>
|
||||
<van-field :value="item.amt/10000 +'万'" :label='item.dutyName' :name='item.dutyName' readonly />
|
||||
@@ -194,4 +194,13 @@ export default {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.dutyAmt{
|
||||
.van-field__label {
|
||||
width: 60vw;
|
||||
}
|
||||
|
||||
.van-field__control {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -147,6 +147,29 @@
|
||||
placeholder='请选择'
|
||||
@click="toSelect('66')"
|
||||
/>
|
||||
<div class="p15 pl8 fs14" style="border-bottom: 1px solid #eee;display: flex;justify-content: space-between;align-items: center;" v-if="manageComCode == '45'">
|
||||
<van-radio-group v-model="insuredInfo.isNewPeopleFlag" class="flex">
|
||||
<label>
|
||||
<i class="red">*</i>
|
||||
新市民身份
|
||||
</label>
|
||||
<van-radio name="1" class="ml30">是</van-radio>
|
||||
<van-radio name="0" class="ml20">否</van-radio>
|
||||
</van-radio-group>
|
||||
<van-icon name="question-o" size="20" @click="isNewPeopleFlagTip = true"/>
|
||||
</div>
|
||||
<van-field
|
||||
v-if="insuredInfo.isNewPeopleFlag == 1"
|
||||
:value="userInfo.npType | idToText('npType')"
|
||||
readonly
|
||||
label="新市民类型"
|
||||
name="新市民类型"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('npType')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='insuredInfo.homeName'
|
||||
readonly
|
||||
@@ -254,6 +277,17 @@
|
||||
<van-popup v-model='isScan2' position='bottom'>
|
||||
<IdentityCardScan @getScanInfo='getIdentityInfo'></IdentityCardScan>
|
||||
</van-popup>
|
||||
<van-dialog v-model="isNewPeopleFlagTipshow" :showConfirmButton="false">
|
||||
<div slot="title">
|
||||
<p style="color: #E9332E;">新市民身份说明</p>
|
||||
</div>
|
||||
<div style="padding: 20px 30px 30px;font-size: 14px;">
|
||||
<div style="line-height: 25px;">新市民是指因本人创业就业、子女上学、投靠子女等原因来到城镇常住,未获得当地户籍或获得当地户籍不满三年的各类群体,包括但不限于进城务工人员、新就业大中专毕业生等。</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="isNewPeopleFlagTipshow = false">我知道了</van-button>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@@ -278,6 +312,7 @@ import { selectComp, getIdentityInfo } from './js/methods'
|
||||
import dateUtils from '@/assets/js/utils/date-utils'
|
||||
import Vue from 'vue'
|
||||
import { GoodsAction, GoodsActionIcon, GoodsActionButton } from 'vant'
|
||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
|
||||
DataDictionary.relationToAppnt = DataDictionary.relationToAppnt.slice(0, 4)
|
||||
Vue.use(Checkbox).use(CheckboxGroup)
|
||||
@@ -388,7 +423,9 @@ export default {
|
||||
email: '', //电子邮箱
|
||||
medical:'0',//有无社保
|
||||
schoolName: '',
|
||||
className: ''
|
||||
className: '',
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
// effectiveDate: '' //指定生效日期
|
||||
},
|
||||
//被保人信息
|
||||
@@ -446,7 +483,9 @@ export default {
|
||||
},
|
||||
occupationalType: DataDictionary.queryOccupationalByType[0].id,
|
||||
isInsuredCertiexpiredate:true, //被保人有效止期是否显示
|
||||
isAppnt: false // 是否投被同人
|
||||
isAppnt: false, // 是否投被同人
|
||||
manageComCode: '',
|
||||
isNewPeopleFlagTipshow: false,
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -482,7 +521,7 @@ export default {
|
||||
this.expireDate = afterDate.getAfterDateTime(val,2)
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
async mounted() {
|
||||
let that = this
|
||||
window.appCallBack = this.appCallBack
|
||||
// 2516--除万福卡,投保人、被保险人年收入,默认为0,允许修改
|
||||
@@ -496,6 +535,8 @@ export default {
|
||||
if (this.$route.query.cardOrderNo) {
|
||||
this.cardOrderNo = this.$route.query.cardOrderNo
|
||||
}
|
||||
let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
this.manageComCode = dataReturn.manageComCode
|
||||
//根据后台数据来展示
|
||||
let cardInfoDTO = {
|
||||
orderNo: this.cardOrderNo
|
||||
@@ -738,6 +779,8 @@ export default {
|
||||
// })
|
||||
} else if (pickerType == '22') {
|
||||
this.columns = DataDictionary.cardListInsuredIdType
|
||||
} else if(pickerType == 'npType') {
|
||||
this.columns = DataDictionary.npType
|
||||
}
|
||||
},
|
||||
//确认选择字段
|
||||
@@ -823,6 +866,8 @@ export default {
|
||||
// this.isInsuredCertiexpiredate = true
|
||||
}
|
||||
this.insuredInfo.idType = value.id
|
||||
} else if(this.pickerType == 'npType') {
|
||||
this.userInfo.npType = value.id
|
||||
}
|
||||
},
|
||||
//试算逻辑
|
||||
@@ -1086,6 +1131,8 @@ export default {
|
||||
// 长期按钮是否禁用
|
||||
this.effectiveDateTypeAbleInsured = age <= 45
|
||||
console.log(this.insuredInfo,'this.insuredInfo')
|
||||
this.userInfo.isNewPeopleFlag = data.isNewPeopleFlag //新市民身份
|
||||
this.userInfo.npType = data.npType //新市民类型
|
||||
this.getRelatedData(this.insuredInfo.idNo, '2')
|
||||
}
|
||||
// console.log(data, val)
|
||||
@@ -1313,6 +1360,12 @@ export default {
|
||||
if (this.insuredInfo.effectiveDateType) {
|
||||
this.insuredInfo.certiexpiredate = '9999-12-31'
|
||||
}
|
||||
if (this.manageComCode == '45' && (this.insuredInfo.isNewPeopleFlag == '' || this.insuredInfo.isNewPeopleFlag == null || this.insuredInfo.isNewPeopleFlag == undefined)) {
|
||||
return this.$toast('投保人新市民身份不能为空')
|
||||
}
|
||||
if(this.manageComCode == '45' && this.insuredInfo.isNewPeopleFlag != '0' && !this.insuredInfo.npType) {
|
||||
return this.$toast('投保人新市民类型不能为空')
|
||||
}
|
||||
this.infoUpdate()
|
||||
// console.log('success')
|
||||
} else {
|
||||
|
||||
@@ -198,7 +198,7 @@ Vue.use(Checkbox).use(CheckboxGroup)
|
||||
Vue.use(Field)
|
||||
Vue.use(Button)
|
||||
import { acceptInsurance, getBankList, underWrite, getOrderDetail } from '@/api/ebiz/sale/sale'
|
||||
import { saveOrUpdateAccount, getPayTemp, getShareParam } from '@/api/ebiz/cardList/cardList.js'
|
||||
import { saveOrUpdateAccount, getPayTemp, getShareParam, cardContIsPay } from '@/api/ebiz/cardList/cardList.js'
|
||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||
import areaList from '@/assets/js/utils/area'
|
||||
import Loading from '@/components/ebiz/Loading'
|
||||
@@ -219,7 +219,7 @@ export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
insuredDTOs:[],//被保人信息
|
||||
insuredDTOs: [], //被保人信息
|
||||
// 银行卡支付图片地址
|
||||
src: this.$assetsUrl + 'images/cardImg.png',
|
||||
// 微信支付图片地址
|
||||
@@ -291,7 +291,7 @@ export default {
|
||||
accBankCity: '',
|
||||
areaStr: '',
|
||||
mainRiskCode: '',
|
||||
isGroupCard:'' //1 团险标识
|
||||
isGroupCard: '' //1 团险标识
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -311,9 +311,9 @@ export default {
|
||||
this.bankListName = orderDetail.orderAccountDTO.bankName
|
||||
this.orderStatus = orderDetail.orderInfoDTO.orderStatus
|
||||
localStorage.orderNo = orderDetail.orderInfoDTO.orderNo
|
||||
orderDetail.insuredDTOs.forEach(item=>{
|
||||
item.riskDTOLst.forEach(ii=>{
|
||||
if(ii.isMainRisk == '0'){
|
||||
orderDetail.insuredDTOs.forEach((item) => {
|
||||
item.riskDTOLst.forEach((ii) => {
|
||||
if (ii.isMainRisk == '0') {
|
||||
this.mainRiskCode = ii.mainRiskCode
|
||||
}
|
||||
})
|
||||
@@ -478,7 +478,7 @@ export default {
|
||||
let data = {
|
||||
operateType: 'bank_type'
|
||||
}
|
||||
getBankList(data).then(res => {
|
||||
getBankList(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
console.log('银行卡列表', res.content)
|
||||
self.bankList = res.content
|
||||
@@ -496,23 +496,23 @@ export default {
|
||||
},
|
||||
getPayTemp() {
|
||||
getPayTemp({ orderNo: window.localStorage.getItem('orderNo') })
|
||||
.then(res => {
|
||||
.then((res) => {
|
||||
if (res.result == '0') {
|
||||
this.noEdit = res.content.flag != 'false'
|
||||
}
|
||||
})
|
||||
.catch(e => {
|
||||
.catch((e) => {
|
||||
console.error(e)
|
||||
})
|
||||
},
|
||||
// 获取支付详情
|
||||
getOrderDetail() {
|
||||
getOrderDetail({ orderNo: window.localStorage.getItem('orderNo') }).then(res => {
|
||||
getOrderDetail({ orderNo: window.localStorage.getItem('orderNo') }).then((res) => {
|
||||
if (res.result == '0') {
|
||||
this.insuredDTOs = res.orderDTO.insuredDTOs
|
||||
res.orderDTO.insuredDTOs.forEach(item=>{
|
||||
item.riskDTOLst.forEach(ii=>{
|
||||
if(ii.isMainRisk == '0'){
|
||||
res.orderDTO.insuredDTOs.forEach((item) => {
|
||||
item.riskDTOLst.forEach((ii) => {
|
||||
if (ii.isMainRisk == '0') {
|
||||
this.mainRiskCode = ii.mainRiskCode
|
||||
}
|
||||
})
|
||||
@@ -544,7 +544,7 @@ export default {
|
||||
result: '',
|
||||
resultMessage: '交易处理成功',
|
||||
uwResult: '02',
|
||||
cvalidate:res.orderDTO.orderInfoDTO.cvalidate //生效日期
|
||||
cvalidate: res.orderDTO.orderInfoDTO.cvalidate //生效日期
|
||||
}
|
||||
// this.bankListName = res.orderDTO.orderAccountDTO.bankName
|
||||
this.underWriteData.bankCode =
|
||||
@@ -573,7 +573,7 @@ export default {
|
||||
result: '',
|
||||
resultMessage: '交易处理失败',
|
||||
uwResult: '00',
|
||||
cvalidate:res.orderDTO.orderInfoDTO.cvalidate //生效日期
|
||||
cvalidate: res.orderDTO.orderInfoDTO.cvalidate //生效日期
|
||||
}
|
||||
// window.localStorage.setItem('underWriteData', JSON.stringify(underWriteData))
|
||||
this.$toast(res.resultMessage)
|
||||
@@ -615,21 +615,38 @@ export default {
|
||||
if (true !== valid) {
|
||||
return this.$toast(this.$validator.errors.all()[0])
|
||||
}
|
||||
switch (this.orderStatus) {
|
||||
case '56':
|
||||
case '57':
|
||||
this.payMent()
|
||||
break
|
||||
// case '02':
|
||||
// break
|
||||
default:
|
||||
if (!this.noEdit) {
|
||||
this.payMent(true)
|
||||
return true
|
||||
} else {
|
||||
this.acceptInsurance()
|
||||
return this.$toast('当前不可支付')
|
||||
}
|
||||
let data = {
|
||||
orderNo: window.localStorage.getItem('orderNo')
|
||||
}
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// 支付之前要先调用一下是否跨天,不让跨天支付 过了24点 保费不一样 CYN 2024.06.28
|
||||
let res = await cardContIsPay(data)
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
switch (this.orderStatus) {
|
||||
case '56':
|
||||
case '57':
|
||||
this.payMent()
|
||||
break
|
||||
// case '02':
|
||||
// break
|
||||
default:
|
||||
if (!this.noEdit) {
|
||||
this.payMent(true)
|
||||
return true
|
||||
} else {
|
||||
this.acceptInsurance()
|
||||
return this.$toast('当前不可支付')
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
this.isLoading = false
|
||||
}
|
||||
},
|
||||
acceptInsurance() {
|
||||
@@ -638,7 +655,7 @@ export default {
|
||||
cardOrder: 'cardOrder',
|
||||
payType: this.radio
|
||||
}
|
||||
acceptInsurance(data).then(res => {
|
||||
acceptInsurance(data).then((res) => {
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
@@ -748,13 +765,44 @@ export default {
|
||||
let res = await saveOrUpdateAccount(data)
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
if(this.mainRiskCode == 'GFRS_M0058'){
|
||||
if (this.mainRiskCode == 'GFRS_M0058') {
|
||||
Dialog.alert({
|
||||
title: '特别提醒',
|
||||
messageAlign: 'left',
|
||||
confirmButtonText: '确认',
|
||||
message: `2023年9月1日起生效的惠桂保保单,不能参保的5类既往症中增加了“神经性耳聋”,敬请注意!`,
|
||||
message: `2023年9月1日起生效的惠桂保保单,不能参保的5类既往症中增加了“神经性耳聋”,敬请注意!`
|
||||
})
|
||||
.then(() => {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.acceptInsurance()
|
||||
})
|
||||
.catch(() => {})
|
||||
} else {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.acceptInsurance()
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
this.isLoading = false
|
||||
}
|
||||
} else {
|
||||
if (this.mainRiskCode == 'GFRS_M0058') {
|
||||
Dialog.alert({
|
||||
title: '特别提醒',
|
||||
messageAlign: 'left',
|
||||
confirmButtonText: '确认',
|
||||
message: `2023年9月1日起生效的惠桂保保单,不能参保的5类既往症中增加了“神经性耳聋”,敬请注意!`
|
||||
})
|
||||
.then(() => {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
@@ -764,42 +812,8 @@ export default {
|
||||
})
|
||||
this.acceptInsurance()
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
}else{
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.acceptInsurance()
|
||||
}
|
||||
|
||||
.catch(() => {})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
this.isLoading = false
|
||||
}
|
||||
} else {
|
||||
if(this.mainRiskCode == 'GFRS_M0058'){
|
||||
Dialog.alert({
|
||||
title: '特别提醒',
|
||||
messageAlign: 'left',
|
||||
confirmButtonText: '确认',
|
||||
message: `2023年9月1日起生效的惠桂保保单,不能参保的5类既往症中增加了“神经性耳聋”,敬请注意!`,
|
||||
})
|
||||
.then(() => {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.acceptInsurance()
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
}else{
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -808,7 +822,6 @@ export default {
|
||||
})
|
||||
this.acceptInsurance()
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
// 选择微信支付校验身份证类型
|
||||
|
||||
@@ -25,9 +25,9 @@
|
||||
<div v-if="payStatus == '1'" class=" p10 pb250 bg-white">
|
||||
<span class="pt150 fs14"> 核心承保中,请您稍后查看</span>
|
||||
<div class="pt20 red"> 温馨提示:<br />
|
||||
1.保单承保后,您或被保险人可拨打国富人寿客户服务电话(400-694-6688)、或登陆国富人寿官网(www.e-guofu.com)以及关注官方微信公众号【国富人寿保险】查询、下载电子保单。<br />
|
||||
2.本保险产品提供电子发票。如您需要发票,您可以关注微信公众号【国富人寿保险】自助下载电子发票。<br />
|
||||
3.为保障您的权益,投保成功后广西保险行业协会对您进行短信调研,了解您本次保险消费的相关情况,请您注意查看短信。如您满意,请回复“1”。如有疑问,可拨打国富人寿全国服务热线400-694-6688咨询。<br />
|
||||
1.请关注微信公众号【国富人寿保险】查询、下载电子保单及电子发票。<br />
|
||||
2.为保障您的权益,投保成功后广西保险行业协会对您进行短信调研,请您注意查看短信。如您满意,请回复“1”。<br />
|
||||
如有疑问,可拨打国富人寿全国服务热线400-694-6688咨询。<br />
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="payStatus == '2' || payStatus == '4' || payStatus == '8'" class=" p10 pb250 bg-white">
|
||||
@@ -78,6 +78,7 @@ export default {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
isWeixin,
|
||||
orderNo: '',
|
||||
// 保融收银台返回的支付流水号
|
||||
paySeqNo: '',
|
||||
// 接口返回数据前,不做页面渲染
|
||||
@@ -209,6 +210,10 @@ export default {
|
||||
} else {
|
||||
this.queryPayState()
|
||||
}
|
||||
this.card.orderNo = window.localStorage.getItem('orderNo')
|
||||
let orderDetail = JSON.parse(sessionStorage.orderDetail)
|
||||
this.card.insuredName = orderDetail.insuredDTOs[0].name
|
||||
this.card.cvalidate = orderDetail.insuredDTOs[0].riskDTOLst[0].cvaliDate
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
|
||||
@@ -92,7 +92,7 @@ export default {
|
||||
//只有惠桂保团险添加此提示
|
||||
if( this.$route.query.isGroupCard == '1' ){
|
||||
Dialog.alert({
|
||||
title: '温馨提示',
|
||||
title: '投保提示',
|
||||
messageAlign: 'left',
|
||||
confirmButtonText: '确认',
|
||||
message: `1、您即将进入投保流程,为维护您的合法权益,投保时请您务必仔细阅读和确认保险条款、投保须知、免除保险人责任条款、犹豫期条款等页面所有内容。<br/>2.您的投保过程和操作将被记录。`,
|
||||
|
||||
@@ -142,6 +142,29 @@
|
||||
placeholder='请选择'
|
||||
@click="toSelect('6')"
|
||||
/>
|
||||
<div class="p15 pl8 fs14" style="border-bottom: 1px solid #eee;display: flex;justify-content: space-between;align-items: center;" v-if="manageComCode == '45'">
|
||||
<van-radio-group v-model="userInfo.isNewPeopleFlag" class="flex">
|
||||
<label>
|
||||
<i class="red">*</i>
|
||||
新市民身份
|
||||
</label>
|
||||
<van-radio name="1" class="ml30">是</van-radio>
|
||||
<van-radio name="0" class="ml20">否</van-radio>
|
||||
</van-radio-group>
|
||||
<van-icon name="question-o" size="20" @click="isNewPeopleFlagTipshow = true"/>
|
||||
</div>
|
||||
<van-field
|
||||
v-if="userInfo.isNewPeopleFlag == 1"
|
||||
:value="userInfo.npType | idToText('npType')"
|
||||
readonly
|
||||
label="新市民类型"
|
||||
name="新市民类型"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('appntNpType')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='userInfo.homeName'
|
||||
readonly
|
||||
@@ -249,6 +272,7 @@
|
||||
label='职业类别'
|
||||
placeholder='请输入'
|
||||
name='职业类别'
|
||||
readonly
|
||||
:value='insuredInfo.occupationName'
|
||||
right-icon='arrow'
|
||||
/>
|
||||
@@ -299,6 +323,29 @@
|
||||
placeholder='请选择'
|
||||
@click="toSelect('66')"
|
||||
/>
|
||||
<div class="p15 pl8 fs14" style="border-bottom: 1px solid #eee;display: flex;justify-content: space-between;align-items: center;" v-if="manageComCode == '45'">
|
||||
<van-radio-group v-model="insuredInfo.isNewPeopleFlag" class="flex">
|
||||
<label>
|
||||
<i class="red">*</i>
|
||||
新市民身份
|
||||
</label>
|
||||
<van-radio name="1" class="ml30">是</van-radio>
|
||||
<van-radio name="0" class="ml20">否</van-radio>
|
||||
</van-radio-group>
|
||||
<van-icon name="question-o" size="20" @click="isNewPeopleFlagTipshow = true"/>
|
||||
</div>
|
||||
<van-field
|
||||
v-if="insuredInfo.isNewPeopleFlag == 1"
|
||||
:value="insuredInfo.npType | idToText('npType')"
|
||||
readonly
|
||||
label="新市民类型"
|
||||
name="新市民类型"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('insuredNpType')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='insuredInfo.homeName'
|
||||
readonly
|
||||
@@ -432,6 +479,29 @@
|
||||
right-icon='arrow'
|
||||
placeholder='请选择'
|
||||
/>
|
||||
<div class="p15 pl8 fs14" style="border-bottom: 1px solid #eee;display: flex;justify-content: space-between;align-items: center;" v-if="manageComCode == '45'">
|
||||
<van-radio-group v-model="userInfo.isNewPeopleFlag" class="flex">
|
||||
<label>
|
||||
<i class="red">*</i>
|
||||
新市民身份
|
||||
</label>
|
||||
<van-radio name="1" class="ml30">是</van-radio>
|
||||
<van-radio name="0" class="ml20">否</van-radio>
|
||||
</van-radio-group>
|
||||
<van-icon name="question-o" size="20" @click="isNewPeopleFlagTipshow = true"/>
|
||||
</div>
|
||||
<van-field
|
||||
v-if="userInfo.isNewPeopleFlag == 1"
|
||||
:value="userInfo.npType | idToText('npType')"
|
||||
readonly
|
||||
label="新市民类型"
|
||||
name="新市民类型"
|
||||
required
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
v-validate="'required'"
|
||||
@click="toSelect('appntNpType')"
|
||||
/>
|
||||
<van-field
|
||||
v-model='userInfo.homeName'
|
||||
readonly
|
||||
@@ -467,7 +537,7 @@
|
||||
placeholder='请选择'
|
||||
@click="toSelect('10')"
|
||||
/>
|
||||
<van-field v-if="this.itemProductDTOS.productCode === 'GFRS_M0041'||this.itemProductDTOS.productCode === 'GFRS_M0052'||this.itemProductDTOS.productCode === 'GFRS_M0071'" v-model='cvaliDate' readonly label='生效日期' name='生效日期' placeholder='请输入' />
|
||||
<van-field v-if="this.itemProductDTOS.productCode === 'GFRS_M0041'||this.itemProductDTOS.productCode === 'GFRS_M0052'||this.itemProductDTOS.productCode === 'GFRS_M0071'||this.itemProductDTOS.productCode === 'GFRS_M0091'" v-model='cvaliDate' readonly label='生效日期' name='生效日期' placeholder='请输入' />
|
||||
<FieldDatePicter
|
||||
v-else
|
||||
label='指定生效日期'
|
||||
@@ -526,14 +596,17 @@
|
||||
||this.itemProductDTOS.productCode === 'GFRS_M0052' || this.itemProductDTOS.productCode === 'GFRS_M0062' || this.itemProductDTOS.productCode === 'GFRS_M0063'||this.itemProductDTOS.productCode === 'GFRS_M0064'">
|
||||
注:为未成年子女投保的人身保险,在被保险人成年之前,因被保险人身故给付的保险金总和不得超过国务院保险监督管理机构规定的限额,身故给付的保险金额总和的约定也不得超过前述限额。但航空意外死亡保险金额及重大自然灾害意外死亡保险金额不计算在上述规定限额之中。
|
||||
</div>
|
||||
<div class='tips'
|
||||
v-if="this.itemProductDTOS.productCode === 'GFRS_M0091'">
|
||||
注:为未成年子女投保的人身保险,在被保险人成年之前,因被保险人身故给付的保险金总和不得超过国务院保险监督管理机构规定的限额,身故给付的保险金额总和的约定也不得超过前述限额。
|
||||
</div>
|
||||
<van-goods-action style='z-index: 99'>
|
||||
<van-button type='default' style='width: 50%; font-size: 14px; height: 40px; background: white'
|
||||
>总保费:<span style='color: red; font-weight: bold; font-size: 18px; font-weight: 400'>{{ allPrice }}</span
|
||||
>元
|
||||
</van-button
|
||||
>
|
||||
<van-goods-action-button type='danger' text='立即投保' @click='nextStep' v-no-more-click='1000'
|
||||
style='border-radius: 0em; width: 50%; height: 40px' />
|
||||
<van-goods-action-button type='danger' text='立即投保' @click='nextStep' v-no-more-click='1000' style='border-radius: 0em; width: 50%; height: 40px' />
|
||||
</van-goods-action>
|
||||
<!-- <van-dialog v-model="showDialog" title="温馨提示" message="被保险人年龄与所投保的方案不一致,请核实。" show-cancel-button @confirm="nextStep" confirmButtonText="继续投保" cancelButtonText="核对信息"> -->
|
||||
|
||||
@@ -568,6 +641,17 @@
|
||||
<van-popup v-model='isScan2' position='bottom'>
|
||||
<IdentityCardScan @getScanInfo='getIdentityInfo'></IdentityCardScan>
|
||||
</van-popup>
|
||||
<van-dialog v-model="isNewPeopleFlagTipshow" :showConfirmButton="false">
|
||||
<div slot="title">
|
||||
<p style="color: #E9332E;">新市民身份说明</p>
|
||||
</div>
|
||||
<div style="padding: 20px 30px 30px;font-size: 14px;">
|
||||
<div style="line-height: 25px;">新市民是指因本人创业就业、子女上学、投靠子女等原因来到城镇常住,未获得当地户籍或获得当地户籍不满三年的各类群体,包括但不限于进城务工人员、新就业大中专毕业生等。</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="isNewPeopleFlagTipshow = false">我知道了</van-button>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@@ -595,6 +679,7 @@ import Vue from 'vue'
|
||||
import { GoodsAction, GoodsActionIcon, GoodsActionButton } from 'vant'
|
||||
import riskRules from '../common/risk-rules'
|
||||
import occupationList from '@/components/ebiz/occipation/data/occupation'
|
||||
import {idNoCheck8} from "../sale/js/verification";
|
||||
|
||||
DataDictionary.relationToAppnt = DataDictionary.relationToAppnt.slice(0, 4)
|
||||
Vue.use(Checkbox).use(CheckboxGroup)
|
||||
@@ -706,7 +791,9 @@ export default {
|
||||
mobile: '', //移动电话
|
||||
email: '', //电子邮箱
|
||||
schoolName: '',
|
||||
className: ''
|
||||
className: '',
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
// effectiveDate: '' //指定生效日期
|
||||
},
|
||||
//被保人信息
|
||||
@@ -735,7 +822,9 @@ export default {
|
||||
mobile: '', //移动电话
|
||||
email: '',//电子邮箱
|
||||
schoolName: '',
|
||||
className: ''
|
||||
className: '',
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
},
|
||||
selectUser: '',
|
||||
areaList: areaList,
|
||||
@@ -767,7 +856,9 @@ export default {
|
||||
},
|
||||
occupationalType: DataDictionary.queryOccupationalByType[0].id,
|
||||
isInsuredCertiexpiredate:true, //被保人有效止期是否显示
|
||||
trialDTOS:[] //产品详情信息
|
||||
trialDTOS:[], //产品详情信息
|
||||
manageComCode: '',
|
||||
isNewPeopleFlagTipshow: false,
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -868,7 +959,7 @@ export default {
|
||||
}
|
||||
//金掌桂无忧卡,少儿安康卡两款卡单产品关闭指定生效日功能,默认自承保之日起第四日零时生效
|
||||
//GFRS_M0052 国富人寿少儿安康保险产品组合、GFRS_M0041 国富无忧卡-国富人寿综合意外伤害保险计划
|
||||
if (this.itemProductDTOS.productCode === 'GFRS_M0052' || this.itemProductDTOS.productCode === 'GFRS_M0041' || this.itemProductDTOS.productCode === 'GFRS_M0071') {
|
||||
if (this.itemProductDTOS.productCode === 'GFRS_M0052' || this.itemProductDTOS.productCode === 'GFRS_M0041' || this.itemProductDTOS.productCode === 'GFRS_M0071'|| this.itemProductDTOS.productCode === 'GFRS_M0091') {
|
||||
this.cvaliDate = dateUtils.formatDate(afterDate.getAfterDays(Number(this.trialList[0].timeliness)), 'yyyy-MM-dd')
|
||||
//保险期间计算逻辑
|
||||
let val = this.cvaliDate
|
||||
@@ -905,7 +996,9 @@ export default {
|
||||
}
|
||||
this.userInfo.homeName = getAreaName([{ code: 450000 }, { code: 450100 }, { code: 450101 }]) //家庭地址
|
||||
},
|
||||
mounted() {
|
||||
async mounted() {
|
||||
let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
this.manageComCode = dataReturn.manageComCode
|
||||
// 2516--除万福卡,投保人、被保险人年收入,默认为0,允许修改
|
||||
if (this.itemProductDTOS.productCode != 'GFRS_M0032') {
|
||||
this.userInfo.averageAnnualIncome = '0'
|
||||
@@ -941,7 +1034,6 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
//试算逻辑国富万福卡GFRS_M0071
|
||||
insureTrial() {
|
||||
// if(this.insuredInfo.birthday || that.$route.query.relationToAppnt == '1'){
|
||||
if (this.userInfo.relationToInsured == 1) {
|
||||
@@ -1039,9 +1131,11 @@ export default {
|
||||
let { code, name, healthGrade, lifeGrade } = data
|
||||
//校验主合同被保险人寿险职业等级
|
||||
//投保同人时,验证投保人职业,投被不同人时验证被保人职业
|
||||
if(!(this.userInfo.relationToInsured != 1 && this.insureType === '1')){
|
||||
if (riskRules.lifeGradeLimitCard(this.trialDTOS, this, lifeGrade)) {
|
||||
return
|
||||
if(this.itemProductDTOS.productCode != 'GFRS_M0091') {
|
||||
if(!(this.userInfo.relationToInsured != 1 && this.insureType === '1')){
|
||||
if (riskRules.lifeGradeLimitCard(this.trialDTOS, this, lifeGrade)) {
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1058,10 +1152,14 @@ export default {
|
||||
this.userInfo.occupationName = name
|
||||
this.userInfo.occupationCode = code
|
||||
this.userInfo.occupationType = lifeGrade
|
||||
this.userInfo.lifeGrade = lifeGrade
|
||||
this.userInfo.healthGrade = healthGrade
|
||||
} else if (this.insureType === '2') {
|
||||
this.insuredInfo.occupationName = name
|
||||
this.insuredInfo.occupationCode = code
|
||||
this.insuredInfo.occupationType = lifeGrade
|
||||
this.insuredInfo.lifeGrade = lifeGrade
|
||||
this.insuredInfo.healthGrade = healthGrade
|
||||
}
|
||||
},
|
||||
/**
|
||||
@@ -1327,7 +1425,12 @@ export default {
|
||||
} else {
|
||||
this.columns = DataDictionary.idType
|
||||
}
|
||||
} else if(pickerType == 'appntNpType') {
|
||||
this.columns = DataDictionary.npType
|
||||
} else if(pickerType == 'insuredNpType') {
|
||||
this.columns = DataDictionary.npType
|
||||
}
|
||||
|
||||
},
|
||||
//确认选择字段
|
||||
onConfirm(value) {
|
||||
@@ -1425,6 +1528,10 @@ export default {
|
||||
this.isInsuredCertiexpiredate = true
|
||||
}
|
||||
this.insuredInfo.idType = value.id
|
||||
} else if (this.pickerType === 'appntNpType') {
|
||||
this.userInfo.npType = value.id
|
||||
} else if (this.pickerType === 'insuredNpType') {
|
||||
this.insuredInfo.npType = value.id
|
||||
}
|
||||
},
|
||||
//证件起始截止日期
|
||||
@@ -1664,9 +1771,13 @@ export default {
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
// 长期按钮是否禁用
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
this.userInfo.isNewPeopleFlag = data.isNewPeopleFlag //新市民身份
|
||||
this.userInfo.npType = data.npType //新市民类型
|
||||
this.getRelatedData(this.userInfo.idNo, '1')
|
||||
} else if (this.selectUser == '1') {
|
||||
let { customerName, customerSex } = data
|
||||
let { customerName, customerSex, isNewPeopleFlag, npType } = data
|
||||
this.insuredInfo.isNewPeopleFlag = isNewPeopleFlag //新市民身份
|
||||
this.insuredInfo.npType = npType //新市民类型
|
||||
this.insuredInfo.name = customerName //用户名
|
||||
this.insuredInfo.sex = customerSex ? customerSex.toString() : '0' //性别
|
||||
this.insuredInfo.birthday = data.birthday //出生日期
|
||||
@@ -1689,7 +1800,8 @@ export default {
|
||||
this.insuredInfo.certiexpiredate = '9999-12-31'
|
||||
this.effectiveDateTypeAbleInsured = true
|
||||
this.isInsuredCertiexpiredate = false
|
||||
}else{
|
||||
}
|
||||
else{
|
||||
this.isInsuredCertiexpiredate = true
|
||||
// 因为学平险产品 和 少儿卡单 被保人证件类型只有身份证和户口本 所以回显被保人信息时 如果不是身份证和户口本 就隐藏被保人证件类型
|
||||
if ((this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0049' || this.itemProductDTOS.productCode == 'GFRS_M0050'
|
||||
@@ -1722,9 +1834,14 @@ export default {
|
||||
this.insuredInfo.homeAddress = data.homeAddress //家庭详细地址
|
||||
//2516--三个学平险--被保险人职业类别默认学生,允许修改。
|
||||
if (this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0049' || this.itemProductDTOS.productCode == 'GFRS_M0050'
|
||||
|| this.itemProductDTOS.productCode === 'GFRS_M0062' || this.itemProductDTOS.productCode === 'GFRS_M0063'||this.itemProductDTOS.productCode === 'GFRS_M0064') {
|
||||
|| this.itemProductDTOS.productCode === 'GFRS_M0063'||this.itemProductDTOS.productCode === 'GFRS_M0064') {
|
||||
this.insuredInfo.occupationCode = '2099907'
|
||||
this.insuredInfo.occupationName = '一般学生'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
} else if (this.itemProductDTOS.productCode === 'GFRS_M0062') {
|
||||
this.insuredInfo.occupationCode = '2099908'
|
||||
this.insuredInfo.occupationName = '学龄前儿童'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
} else {
|
||||
this.insuredInfo.occupationCode = data.occupationCode
|
||||
this.insuredInfo.occupationName = data.occupationName
|
||||
@@ -1732,6 +1849,7 @@ export default {
|
||||
this.insuredInfo.lifeGrade = data.lifeGrade
|
||||
this.insuredInfo.occupationType = data.lifeGrade
|
||||
this.insuredInfo.healthGrade = data.healthGrade
|
||||
|
||||
//除万福卡,投保人、被保险人年收入填写项去掉,默认为0,卡产品不满足反洗钱识别线
|
||||
this.insuredInfo.averageAnnualIncome = this.itemProductDTOS.productCode == 'GFRS_M0032' ? data.averageYearlyIncome : '0' //平均年收入
|
||||
//2516--三个学平险--被保险人婚姻默认未婚,允许修改
|
||||
@@ -1760,9 +1878,12 @@ export default {
|
||||
// console.log(data, val)
|
||||
},
|
||||
nextStep() {
|
||||
// console.log(this.userInfo.idType)
|
||||
// console.log(this.userInfo.salarySource)
|
||||
// console.log(this.userInfo.otherSalarySource)
|
||||
if (this.manageComCode == '45' && (this.userInfo.isNewPeopleFlag == '' || this.userInfo.isNewPeopleFlag == null || this.userInfo.isNewPeopleFlag == undefined)) {
|
||||
return this.$toast('投保人新市民身份不能为空')
|
||||
}
|
||||
if(this.manageComCode == '45' && this.userInfo.isNewPeopleFlag != '0' && !this.userInfo.npType) {
|
||||
return this.$toast('投保人新市民类型不能为空')
|
||||
}
|
||||
//表单校验, 成功跳转
|
||||
if (this.userInfo.relationToInsured == 1) {
|
||||
Object.assign(this.insuredInfo, this.userInfo)
|
||||
@@ -1807,6 +1928,12 @@ export default {
|
||||
if (this.userInfo.relationToInsured == 2 && this.userInfo.sex == this.insuredInfo.sex) {
|
||||
return this.$toast('哦~配偶性别不能相同的哟~')
|
||||
}
|
||||
if (this.manageComCode == '45' && (this.insuredInfo.isNewPeopleFlag == '' || this.insuredInfo.isNewPeopleFlag == null || this.insuredInfo.isNewPeopleFlag == undefined)) {
|
||||
return this.$toast('被保人新市民身份不能为空')
|
||||
}
|
||||
if (this.manageComCode == '45' && this.insuredInfo.isNewPeopleFlag != '0' && !this.insuredInfo.npType) {
|
||||
return this.$toast('被保人新市民类型不能为空')
|
||||
}
|
||||
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
console.log('计算年龄', age)
|
||||
@@ -1891,7 +2018,8 @@ export default {
|
||||
}
|
||||
}
|
||||
//如果证件类型是户口本
|
||||
}else if(this.userInfo.idType == '2'){
|
||||
}
|
||||
else if(this.userInfo.idType == '2'){
|
||||
if (this.userInfo.nativeplace != '1') {
|
||||
return this.$toast('证件类型”为“身份证,国籍必须为中国哦')
|
||||
}
|
||||
@@ -1942,7 +2070,12 @@ export default {
|
||||
// return this.$toast('户口本的证件号码长度应等于18位')
|
||||
// }
|
||||
}
|
||||
let insuredAge = utilsAge.getAge(this.insuredInfo.birthday, new Date())
|
||||
else if (this.userInfo.idType == '8') {
|
||||
if (idNoCheck8(this.userInfo,'cardList').text){
|
||||
return this.$toast(idNoCheck8(this.userInfo,'cardList').text)
|
||||
}
|
||||
}
|
||||
let insuredAge = utilsAge.getAge(this.insuredInfo.birthday, new Date(this.cvaliDate))
|
||||
console.log('计算年龄', insuredAge)
|
||||
//如果证件类型是身份证或户口本
|
||||
if (this.insuredInfo.idType == '1') {
|
||||
@@ -2019,7 +2152,8 @@ export default {
|
||||
return this.$toast('证件有效期不正常,26周岁至45周岁公民身份证有效期应小于等于20年')
|
||||
}
|
||||
}
|
||||
}else if (this.insuredInfo.idType == '2'){
|
||||
}
|
||||
else if (this.insuredInfo.idType == '2'){
|
||||
if (this.insuredInfo.nativeplace != '1') {
|
||||
return this.$toast('证件类型”为“身份证,国籍必须为中国哦')
|
||||
}
|
||||
@@ -2069,7 +2203,8 @@ export default {
|
||||
// else if (this.insuredInfo.idNo.length != 18) {
|
||||
// return this.$toast('户口本的证件号码长度应等于18位')
|
||||
// }
|
||||
}else if (this.insuredInfo.idType == '3'){
|
||||
}
|
||||
else if (this.insuredInfo.idType == '3'){
|
||||
if (insuredAge >= 2) {
|
||||
return this.$toast('客户年龄在2周岁及以上,不能使用出生证作为有效证件')
|
||||
}
|
||||
@@ -2079,6 +2214,11 @@ export default {
|
||||
return this.$toast('您填写的证件号码有误')
|
||||
}
|
||||
}
|
||||
else if (this.insuredInfo.idType == '8') {
|
||||
if (idNoCheck8(this.insuredInfo,'cardList').text){
|
||||
return this.$toast(idNoCheck8(this.insuredInfo,'cardList').text)
|
||||
}
|
||||
}
|
||||
if (this.itemProductDTOS.productCode === 'GFRS_M0022') {
|
||||
// return
|
||||
// 如果是未成年人
|
||||
@@ -2092,7 +2232,8 @@ export default {
|
||||
if (insuredAge < 0) {
|
||||
return this.$toast('被保险人的年龄需要大于28天')
|
||||
}
|
||||
} else if (this.itemProductDTOS.productCode === 'GFRS_M0041') {
|
||||
}
|
||||
else if (this.itemProductDTOS.productCode === 'GFRS_M0041') {
|
||||
console.log(this.proSchemeCode)
|
||||
if (this.proSchemeCode == '00000227') {
|
||||
if (insuredAge < 18) {
|
||||
@@ -2120,35 +2261,21 @@ export default {
|
||||
return this.$toast('被保险人的年龄不可以超过65周岁')
|
||||
}
|
||||
}
|
||||
|
||||
//投保人需大于等于 18 周岁
|
||||
// if (age < 18) {
|
||||
// return this.$toast('投保人必须是具有民事行为能力且有固定职业和收入的自然人,请确定')
|
||||
// }
|
||||
|
||||
let insuredInfoAge = utilsAge.getAge(this.insuredInfo.birthday, new Date())
|
||||
// if (this.itemProductDTOS.productCode === 'GFRS_M0049') {
|
||||
// //幼儿园:2岁≤被保险人≤7岁
|
||||
// if (insuredInfoAge < 2 || insuredInfoAge > 7) {
|
||||
// return this.$toast('被保险人年龄应为2岁-7岁,请重新选择。')
|
||||
// }
|
||||
// } else if (this.itemProductDTOS.productCode === 'GFRS_M0048') {
|
||||
// //义务教育:5岁≤被保险人≤18岁
|
||||
// if (insuredInfoAge < 5 || insuredInfoAge > 18) {
|
||||
// return this.$toast('被保险人年龄应为5岁-18岁,请重新选择。')
|
||||
// }
|
||||
// } else if (this.itemProductDTOS.productCode === 'GFRS_M0050') {
|
||||
// //高中及高等教育:15岁≤被保险人≤40岁
|
||||
// if (insuredInfoAge < 15 || insuredInfoAge > 40) {
|
||||
// return this.$toast('被保险人年龄应为15岁-40岁,请重新选择。')
|
||||
// }
|
||||
// } else if (this.itemProductDTOS.productCode === 'GFRS_M0052') {
|
||||
// //GFRS-2641--少儿安康:17岁≤被保险人
|
||||
// if (insuredInfoAge > 17) {
|
||||
// return this.$toast('被保险人年龄应为0岁-17岁,请重新选择。')
|
||||
// }
|
||||
// }
|
||||
|
||||
else if (this.itemProductDTOS.productCode === 'GFRS_M0091') {
|
||||
console.log(this.proSchemeCode)
|
||||
if (this.proSchemeCode == '06860438-B') {
|
||||
if (insuredAge < 10) {
|
||||
return this.$toast('被保险人的年龄需要大于10岁')
|
||||
}
|
||||
}
|
||||
if (insuredAge < 0) {
|
||||
return this.$toast('被保险人的年龄需要大于28天')
|
||||
}
|
||||
if (insuredAge > 65) {
|
||||
return this.$toast('被保险人的年龄不可以超过65周岁')
|
||||
}
|
||||
}
|
||||
let insuredInfoAge = utilsAge.getAge(this.insuredInfo.birthday, new Date(this.cvaliDate))
|
||||
if(this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0049' || this.itemProductDTOS.productCode == 'GFRS_M0050'
|
||||
|| this.itemProductDTOS.productCode == 'GFRS_M0052' ||this.itemProductDTOS.productCode === 'GFRS_M0062' || this.itemProductDTOS.productCode === 'GFRS_M0063'
|
||||
|| this.itemProductDTOS.productCode === 'GFRS_M0064'){
|
||||
@@ -2183,14 +2310,6 @@ export default {
|
||||
if (this.insuredInfo.effectiveDateType) {
|
||||
this.insuredInfo.certiexpiredate = '9999-12-31'
|
||||
}
|
||||
if ((this.userInfo.relationToInsured != '1' && this.userInfo.relationToInsured != '3')
|
||||
|| (this.userInfo.relationToInsured == '3' && insuredAge >= 18)){
|
||||
//金掌桂投保的所有卡单产品:
|
||||
//(1)与被保人关系非本人(不含父母)
|
||||
//(2)与被保人关系为父母,被保人年龄大于等于18周岁
|
||||
// 点击【立即投保】时,提示以下内容并阻断投保
|
||||
return this.$toast('以死亡为给付条件的保险合同,投保人和被保险人需为同一人(父母为未成年子女投保除外)。请分享给参保人完成投保。')
|
||||
}
|
||||
switch (this.userInfo.homeArea) {
|
||||
case "500129":
|
||||
this.userInfo.homeArea = '500229'
|
||||
@@ -2267,6 +2386,27 @@ export default {
|
||||
this.insuredInfo.homeArea = '500243'
|
||||
break
|
||||
}
|
||||
console.log(this.insuredInfo,'this.insuredInfo')
|
||||
if(this.itemProductDTOS.productCode === 'GFRS_M0091'){
|
||||
if(this.proSchemeCode == '06860438-A') {
|
||||
if (Number(this.insuredInfo.lifeGrade) > 3) {
|
||||
this.$toast('寿险职业等级不适合此款险种,请选择其他险种!')
|
||||
return
|
||||
}
|
||||
}
|
||||
if(this.proSchemeCode == '06860438-B') {
|
||||
if (Number(this.insuredInfo.lifeGrade) > 4) {
|
||||
this.$toast('寿险职业等级不适合此款险种,请选择其他险种!')
|
||||
return
|
||||
}
|
||||
}
|
||||
if(!this.proSchemeCode) {
|
||||
if (Number(this.insuredInfo.lifeGrade) > 4) {
|
||||
this.$toast('寿险职业等级不适合此款险种,请选择其他险种!')
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
this.infoUpdate()
|
||||
// console.log('success')
|
||||
} else {
|
||||
@@ -2412,6 +2552,9 @@ export default {
|
||||
return
|
||||
}
|
||||
params.orderDTO.insuredDTOs[0].riskDTOLst = riskDTOLst
|
||||
if(params.orderDTO.insuredDTOs[0].occupationCode == '2099907') {
|
||||
params.orderDTO.insuredDTOs[0].occupationType = '1'
|
||||
}
|
||||
|
||||
let resultData = await saveOrUpdateCard(params)
|
||||
if (resultData.result == 0) {
|
||||
@@ -2595,7 +2738,9 @@ export default {
|
||||
homeAddress: '', //详细地址
|
||||
mobile: '', //移动电话
|
||||
email: '', //电子邮箱
|
||||
effectiveDateType: false //是否长期
|
||||
effectiveDateType: false, //是否长期
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
}
|
||||
// 设置选中‘同投保人’的勾选项
|
||||
this.withRootUser.value = true
|
||||
@@ -2614,10 +2759,11 @@ export default {
|
||||
// GFRS-2641--被保险人职业:幼儿园版默认学龄前儿童,义务教育、高中/高等教育默认一般学生
|
||||
// 被保险人婚姻默认未婚,允许修改
|
||||
// 被保险人手机及邮箱默认投保人,允许修改
|
||||
if (this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0050' || this.itemProductDTOS.productCode === 'GFRS_M0062'
|
||||
if (this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0050'
|
||||
|| this.itemProductDTOS.productCode === 'GFRS_M0064') {
|
||||
this.insuredInfo.occupationCode = '2099907'
|
||||
this.insuredInfo.occupationName = '一般学生'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
this.insuredInfo.marriage = '2'
|
||||
this.insuredInfo.mobile = this.userInfo.mobile
|
||||
this.insuredInfo.email = this.userInfo.email
|
||||
@@ -2629,8 +2775,22 @@ export default {
|
||||
// this.isInsuredCertiexpiredate = false
|
||||
this.isInsuredCertiexpiredate = true
|
||||
} else if (this.itemProductDTOS.productCode == 'GFRS_M0049' || this.itemProductDTOS.productCode === 'GFRS_M0063') {
|
||||
this.insuredInfo.occupationCode = '2099907'
|
||||
this.insuredInfo.occupationName = '一般学生'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
this.insuredInfo.marriage = '2'
|
||||
this.insuredInfo.idType = '2'
|
||||
// this.insuredInfo.effectiveDateType = true
|
||||
// this.insuredInfo.certiexpiredate = '9999-12-31'
|
||||
// 去掉--选择户口本时,是否长期默认为是,不可点击,有效止期隐藏(证件类型为户口本时,被保人年龄小于16周岁时,户口本有效止期长期变更为第16周岁日期)
|
||||
// this.effectiveDateTypeAbleInsured = true
|
||||
// this.isInsuredCertiexpiredate = false
|
||||
this.isInsuredCertiexpiredate = true
|
||||
}
|
||||
else if (this.itemProductDTOS.productCode === 'GFRS_M0062') {
|
||||
this.insuredInfo.occupationCode = '2099908'
|
||||
this.insuredInfo.occupationName = '学龄前儿童'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
this.insuredInfo.marriage = '2'
|
||||
this.insuredInfo.idType = '2'
|
||||
// this.insuredInfo.effectiveDateType = true
|
||||
@@ -2647,6 +2807,7 @@ export default {
|
||||
// this.insuredInfo.effectiveDateType = true
|
||||
this.insuredInfo.occupationCode = '2099907'
|
||||
this.insuredInfo.occupationName = '一般学生'
|
||||
this.insuredInfo.occupationType = '1'
|
||||
this.insuredInfo.marriage = '2'
|
||||
// 去掉--选择户口本时,是否长期默认为是,不可点击,有效止期隐藏(证件类型为户口本时,被保人年龄小于16周岁时,户口本有效止期长期变更为第16周岁日期)
|
||||
this.effectiveDateTypeAbleInsured = true
|
||||
@@ -2718,7 +2879,7 @@ export default {
|
||||
//被保人职业变化时,重新调用试算接口
|
||||
'insuredInfo.occupationName': {
|
||||
handler(newV) {
|
||||
if (newV && this.itemProductDTOS.productCode === 'GFRS_M0071') {
|
||||
if (newV && (this.itemProductDTOS.productCode === 'GFRS_M0071' || this.itemProductDTOS.productCode === 'GFRS_M0091')) {
|
||||
this.insureTrial()
|
||||
}
|
||||
},
|
||||
@@ -2728,8 +2889,7 @@ export default {
|
||||
//投被同人时,投保人职业变化时,重新调用试算接口
|
||||
'userInfo.occupationName': {
|
||||
handler(newV) {
|
||||
// if (newV && this.itemProductDTOS.productCode === 'GFRS_M0071'&& this.userInfo.relationToInsured == 1) {
|
||||
if (newV && this.itemProductDTOS.productCode === 'GFRS_M0071') {
|
||||
if (newV && (this.itemProductDTOS.productCode === 'GFRS_M0071' || this.itemProductDTOS.productCode === 'GFRS_M0091')) {
|
||||
this.insureTrial()
|
||||
}
|
||||
},
|
||||
|
||||
@@ -90,7 +90,7 @@ export default {
|
||||
gotoInformation() {
|
||||
if(this.productType != '7'){ //7代表是团险 10卡单
|
||||
Dialog.confirm({
|
||||
title: '温馨提示',
|
||||
title: '投保提示',
|
||||
messageAlign: 'left',
|
||||
confirmButtonColor: '#ee0a24',
|
||||
confirmButtonText: '立即投保',
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
<van-radio class="radio" name="-2">否</van-radio>
|
||||
</van-radio-group>
|
||||
</div>
|
||||
<!-- 桂企产品——GFRS_M0024/GFRS_M0040——不显示责任保费及(万元),只显示责任名称及勾选框 -->
|
||||
<!-- 桂企产品——GFRS_M0024/GFRS_M0040等——不显示责任保费及(万元),只显示责任名称及勾选框 -->
|
||||
<div class="border-bottom" v-if="riskFactor.type == 3">
|
||||
<div class="pv12 border-bd">{{ riskFactor.name }}</div>
|
||||
<div class="duty">
|
||||
@@ -110,7 +110,9 @@
|
||||
item.productCode == 'GFRS_M0051' ||
|
||||
item.productCode == 'GFRS_M0054' ||
|
||||
item.productCode == 'GFRS_M0073' ||
|
||||
item.productCode == 'GFRS_M0057'
|
||||
item.productCode == 'GFRS_M0057' ||
|
||||
item.productCode == 'GFRS_M0086' ||
|
||||
item.productCode == 'GFRS_M0092'
|
||||
)
|
||||
"
|
||||
class="fs14 w100"
|
||||
@@ -128,7 +130,9 @@
|
||||
item.productCode == 'GFRS_M0051' ||
|
||||
item.productCode == 'GFRS_M0054' ||
|
||||
item.productCode == 'GFRS_M0073' ||
|
||||
item.productCode == 'GFRS_M0057'
|
||||
item.productCode == 'GFRS_M0057' ||
|
||||
item.productCode == 'GFRS_M0086' ||
|
||||
item.productCode == 'GFRS_M0092'
|
||||
)
|
||||
"
|
||||
v-model="dutyItem.defaultDutyAmt"
|
||||
@@ -136,7 +140,7 @@
|
||||
:max="dutyItem.maxDutyAmt"
|
||||
:show-plus="false"
|
||||
:show-minus="false"
|
||||
:disabled="item.productCode == 'GFRS_A0012' || (item.productCode == 'GFRS_M0077' && !dutyItem.necess) || (item.productCode == 'GFRS_M0077' && dutyItem.duty == '311507')"
|
||||
:disabled="item.productCode == 'GFRS_M0088' || item.productCode == 'GFRS_A0012' || (item.productCode == 'GFRS_M0077' && !dutyItem.necess) || (item.productCode == 'GFRS_M0077' && dutyItem.duty == '311507')"
|
||||
class="ml10 mr10"
|
||||
@focus="focusStep"
|
||||
@blur="blurStep(dutyItem, index,item.productCode)"
|
||||
@@ -798,7 +802,6 @@
|
||||
}
|
||||
})
|
||||
}
|
||||
console.log(item,'123231321321')
|
||||
let payEndYearVal
|
||||
//初始化时交费期间为一次性交清时,在就是中介渠道, 附加险GFRS_A0007,GFRS_A0009,GFRS_A0010去掉后,附加险list就为空--隐藏’附‘icon
|
||||
item.calFactorLst.map((i) => {
|
||||
@@ -871,7 +874,6 @@
|
||||
//初始化数据试算
|
||||
this.getTrial()
|
||||
})
|
||||
console.log(this.trialList, '')
|
||||
// 判断是否 含有 后台配置js验证函数
|
||||
if (localStorage.ruleExpression) {
|
||||
let ruleExpression = JSON.parse(localStorage.ruleExpression)
|
||||
@@ -918,7 +920,7 @@
|
||||
let detailPromise = this.isFrom === 'proposal' ? localStorage.proposalMedical : await getOrderDetail({ orderNo })
|
||||
this.chooseProducts.map((item) => {
|
||||
if (
|
||||
!(item.mainRiskCode === 'GFRS_M0016' ||item.mainRiskCode === 'GFRS_M0070' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005')
|
||||
!(item.mainRiskCode === 'GFRS_M0016' ||item.mainRiskCode === 'GFRS_M0070' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005' || item.productCode === 'GFRS_M0088')
|
||||
) {
|
||||
//其他产品删掉两个字段
|
||||
let calFactorLst = item.calFactorLst
|
||||
@@ -1053,6 +1055,34 @@
|
||||
// let productCode = this.chooseProducts[this.productIndex].productCode
|
||||
let currentFactor = this.chooseProducts[this.productIndex].calFactorLst
|
||||
let currentEle = currentFactor[this.calFactorIndex]
|
||||
console.log(currentEle.code)
|
||||
if(currentEle.code == 'insuYear'){
|
||||
if(value.value == '70') {
|
||||
this.chooseProducts.forEach((item, index) => {
|
||||
if (item.mainRiskCode == 'GFRS_M0086') {
|
||||
item.calFactorLst.forEach((i) => {
|
||||
if (i.code == "inputAmt") {
|
||||
i.minPrem = 20
|
||||
i.displayAmount = 20
|
||||
i.defaultValue = 20
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
} else if(value.value == '106') {
|
||||
this.chooseProducts.forEach((item, index) => {
|
||||
if (item.mainRiskCode == 'GFRS_M0086') {
|
||||
item.calFactorLst.forEach((i) => {
|
||||
if (i.code == "inputAmt") {
|
||||
i.minPrem = 10
|
||||
i.displayAmount = 10
|
||||
i.defaultValue = 10
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
// let sex = this.saleInsuredPersonInfo.sex //0男 1女
|
||||
|
||||
// //特殊设置:如果需要填写的保费/保额校验规则跟缴费期间挂钩,当改变缴费期间时,将输入框的值恢复默认值1
|
||||
@@ -1215,6 +1245,30 @@
|
||||
})
|
||||
}
|
||||
}
|
||||
if (validateRiskCode === 'GFRS_M0088'){
|
||||
if(dutyItem.duty == '411200' || dutyItem.duty == '411206' || dutyItem.duty == '411207'){
|
||||
this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules.forEach((i) => {
|
||||
if(i.duty == '411200' || i.duty == '411206' || i.duty == '411207'){
|
||||
i.necess = dutyItem.necess
|
||||
} else {
|
||||
if(dutyItem.necess){
|
||||
i.necess = !dutyItem.necess
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
if(dutyItem.duty == '411200_GBC' || dutyItem.duty == '411206_GBC' || dutyItem.duty == '411207_GBC'){
|
||||
this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules.forEach((i) => {
|
||||
if(i.duty == '411200_GBC' || i.duty == '411206_GBC' || i.duty == '411207_GBC'){
|
||||
i.necess = dutyItem.necess
|
||||
} else {
|
||||
if(dutyItem.necess){
|
||||
i.necess = !dutyItem.necess
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
this.valiAndSend(dutyItem, productIndex)
|
||||
},
|
||||
valiAndSend(dutyItem, productIndex) {
|
||||
@@ -1289,7 +1343,6 @@
|
||||
const rule = dutdutyGFRS_M0070RulesyRules[duty]
|
||||
const mutiple = rule.mutiple || DUTY_DEFAULT_MIN
|
||||
const min = rule.min || DUTY_DEFAULT_MIN
|
||||
console.log(rule.min,'rule.min')
|
||||
if (!value || value < min || value % mutiple !== 0) {
|
||||
this.$toast(rule.msg)
|
||||
this.nextStepFlag = true
|
||||
@@ -1565,7 +1618,6 @@
|
||||
},
|
||||
trialBeforeRule() {
|
||||
let that = this
|
||||
console.log('走试算前规则')
|
||||
// 针对于国富人寿附加两全保险附加险(GFRS_A0011),缴费期间期间要等于主险的缴费期间
|
||||
let mainRiskInfo = this.getMainRiskInfo()
|
||||
this.chooseProducts.forEach((item) => {
|
||||
@@ -2492,10 +2544,6 @@
|
||||
}
|
||||
else if (productCode == 'GFRS_M0035' || productCode == 'GFRS_M0044'
|
||||
|| productCode == 'GFRS_M0056' || productCode == 'GFRS_M0057' || productCode == 'GFRS_M0060') {
|
||||
console.log('defalutValue==', defalutValue)
|
||||
console.log("currentEle['amt']==", currentEle['amt'])
|
||||
console.log('riskFactor.rules', riskFactor.rules)
|
||||
console.log('this.saleInsuredPersonInfo.insuredAge ', this.saleInsuredPersonInfo.insuredAge)
|
||||
//被保险人年龄如果在50-65区间
|
||||
if (this.saleInsuredPersonInfo.insuredAge >= 56 && this.saleInsuredPersonInfo.insuredAge <= 60) {
|
||||
//使用rules规则里的第二条控制保额份数
|
||||
@@ -2715,6 +2763,21 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (productCode == 'GFRS_M0087') {
|
||||
if(this.saleInsuredPersonInfo.insuredAge>=18 && this.saleInsuredPersonInfo.insuredAge <= 40) {
|
||||
currentEle['maxAmt'] = 70
|
||||
}
|
||||
else if(this.saleInsuredPersonInfo.insuredAge>=41 && this.saleInsuredPersonInfo.insuredAge <= 45) {
|
||||
currentEle['maxAmt'] = 50
|
||||
}
|
||||
else if(this.saleInsuredPersonInfo.insuredAge>=46 && this.saleInsuredPersonInfo.insuredAge <= 50) {
|
||||
currentEle['maxAmt'] = 40
|
||||
}
|
||||
else if(this.saleInsuredPersonInfo.insuredAge>=51 && this.saleInsuredPersonInfo.insuredAge <= 60) {
|
||||
currentEle['maxAmt'] = 30
|
||||
}
|
||||
this.getTrial()
|
||||
}
|
||||
else if (this.isTrial === '0' && this.chooseProducts[productIndex].isMainRisk == '0') {
|
||||
if (Number(defalutValue) < Number(min)) {
|
||||
if (riskFactor.yearWay == "一次性交清") {
|
||||
@@ -2769,9 +2832,6 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
// let currentEle = this.chooseProducts[this.productIndex].calFactorLst[this.calFactorIndex]
|
||||
// defalutValue = value
|
||||
console.log('进来几次')
|
||||
this.mult = Math.ceil(Number(defalutValue) / Number(riskFactor.defaultValue))
|
||||
},
|
||||
//下一步
|
||||
@@ -2875,7 +2935,9 @@
|
||||
this.trialList[index].productCode == 'GFRS_M0054' ||
|
||||
this.trialList[index].productCode == 'GFRS_M0073' ||
|
||||
this.trialList[index].productCode == 'GFRS_M0077' ||
|
||||
this.trialList[index].productCode == 'GFRS_M0057'
|
||||
this.trialList[index].productCode == 'GFRS_M0057' ||
|
||||
this.trialList[index].productCode == 'GFRS_M0086'||
|
||||
this.trialList[index].productCode == 'GFRS_M0092'
|
||||
) {
|
||||
riskItem['dutyLst'] = this.trialInfos[index].duty
|
||||
}
|
||||
@@ -2925,8 +2987,6 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// console.log(riskItem)
|
||||
riskItem = Object.assign(riskItem, this.trialInfos[index])
|
||||
riskDTOLst.push(riskItem)
|
||||
}
|
||||
|
||||
@@ -50,9 +50,9 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { Cell, CellGroup, Tag, Radio, RadioGroup,Tab,Tabs} from 'vant'
|
||||
import { mainRiskList,mainRiskListProposal,calculatePremium,getActProductList } from '@/api/ebiz/common/common'
|
||||
import { getOrderDetail } from '@/api/ebiz/sale/sale'
|
||||
import { Cell, CellGroup, Tag, Radio, RadioGroup, Tab, Tabs } from 'vant'
|
||||
import { mainRiskList, mainRiskListProposal, calculatePremium, getActProductList, occupationCodeCheck } from '@/api/ebiz/common/common'
|
||||
import { getOrderDetail, riskLevelCheck } from '@/api/ebiz/sale/sale'
|
||||
import { getDetail } from '@/api/ebiz/proposal/proposal.js'
|
||||
import riskRules from './risk-rules'
|
||||
export default {
|
||||
@@ -63,14 +63,14 @@ export default {
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Tag.name]: Tag,
|
||||
[Cell.name]: Cell,
|
||||
[Tab.name]:Tab,
|
||||
[Tabs.name]:Tabs,
|
||||
[Tab.name]: Tab,
|
||||
[Tabs.name]: Tabs
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
recommendType: '', // 渠道控制
|
||||
isCrossChannel: 0, // 是否选择交叉渠道列表 0-否 1-是
|
||||
active: 2,
|
||||
recommendType: '', // 渠道控制
|
||||
isCrossChannel: 0, // 是否选择交叉渠道列表 0-否 1-是
|
||||
active: 'normal',
|
||||
specilFlag: '0',
|
||||
flag: true,
|
||||
list: [],
|
||||
@@ -79,7 +79,7 @@ export default {
|
||||
radioVal: '',
|
||||
isFrom: localStorage.isFrom,
|
||||
activeFlag: '',
|
||||
isActivityCode:'' //activityCode 有值的话代表是活动,无值代表是普通产品
|
||||
isActivityCode: '' //activityCode 有值的话代表是活动,无值代表是普通产品
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
@@ -87,16 +87,16 @@ export default {
|
||||
flag: 'navigation',
|
||||
extra: {
|
||||
title: '主险选择列表'
|
||||
},
|
||||
}
|
||||
})
|
||||
if (localStorage.isFrom == 'sale') {
|
||||
return new Promise((resolve, reject) => {
|
||||
getOrderDetail({ orderNo: this.$route.query.orderNo }).then(
|
||||
res => {
|
||||
(res) => {
|
||||
if (res.result == 0) {
|
||||
//------------------------专为桂/惠企写死--begin---------------//
|
||||
if (res.orderDTO.insuredDTOs[0] && res.orderDTO.insuredDTOs[0].riskDTOLst) {
|
||||
this.flag = this.specilFlag = res.orderDTO.insuredDTOs[0].riskDTOLst.some(v => {
|
||||
this.flag = this.specilFlag = res.orderDTO.insuredDTOs[0].riskDTOLst.some((v) => {
|
||||
return v.riskCode == 'GFRS_M0024' || v.riskCode == 'GFRS_M0040'
|
||||
})
|
||||
if (this.flag) {
|
||||
@@ -105,21 +105,19 @@ export default {
|
||||
} else if (res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0024' || res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0040') {
|
||||
this.specilFlag = '1'
|
||||
}
|
||||
// 处理活动产品
|
||||
// this.activeFlag = res.orderDTO.orderInfoDTO.activeType
|
||||
//isActivityCode 有值代表是活动,无值代表是普通产品
|
||||
this.isActivityCode = res.orderDTO.orderInfoDTO.activityCode
|
||||
// recommendType 03 银保渠道
|
||||
this.recommendType = res.orderDTO.recmdDTO.recommendType;
|
||||
this.recommendType = res.orderDTO.recmdDTO.recommendType
|
||||
if (this.recommendType == '02' || this.recommendType == '11' || (this.recommendType == '03' && this.isActivityCode)) {
|
||||
// 电投 团险渠道产品 均为交叉渠道销售
|
||||
this.isCrossChannel = '1';
|
||||
this.isCrossChannel = '1'
|
||||
}
|
||||
// ------------------------专为桂/惠企写死--end---------------//
|
||||
}
|
||||
resolve(this.isActivityCodeFunc())
|
||||
},
|
||||
error => {
|
||||
(error) => {
|
||||
reject(this.isActivityCodeFunc())
|
||||
}
|
||||
)
|
||||
@@ -128,69 +126,51 @@ export default {
|
||||
return new Promise((resolve, reject) => {
|
||||
getDetail({
|
||||
orderNo: this.$route.query.proposalOrderNo
|
||||
}).then(res => {
|
||||
if (res.result == '0') {
|
||||
this.recommendType = res.content[0].recmdDTO?res.content[0].recmdDTO.recommendType:'';
|
||||
if (this.recommendType == '02' || this.recommendType == '11') {
|
||||
// 电投 团险渠道产品 均为交叉渠道销售
|
||||
this.isCrossChannel = '1';
|
||||
}).then(
|
||||
(res) => {
|
||||
if (res.result == '0') {
|
||||
this.recommendType = res.content[0].recmdDTO ? res.content[0].recmdDTO.recommendType : ''
|
||||
if (this.recommendType == '02' || this.recommendType == '11') {
|
||||
// 电投 团险渠道产品 均为交叉渠道销售
|
||||
this.isCrossChannel = '1'
|
||||
}
|
||||
}
|
||||
resolve(this.isActivityCodeFunc())
|
||||
},
|
||||
(error) => {
|
||||
reject(this.isActivityCodeFunc())
|
||||
}
|
||||
resolve(this.isActivityCodeFunc())
|
||||
},
|
||||
error => {
|
||||
reject(this.isActivityCodeFunc())
|
||||
})
|
||||
)
|
||||
})
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// checkItemShow(item) {
|
||||
// if (this.activeFlag != 'KMH' && this.activeFlag != 'SQY') {
|
||||
// return true
|
||||
// }
|
||||
// let showFlag = false
|
||||
// if (item.activeLst && item.activeLst.length > 0) {
|
||||
// item.activeLst.forEach(subItem => {
|
||||
// if (this.activeFlag && this.activeFlag == 'KMH') {
|
||||
// if (subItem == 'KMH') {
|
||||
// showFlag = true;
|
||||
// }
|
||||
// }else if (this.activeFlag && this.activeFlag == 'SQY') {
|
||||
// if (subItem == 'SQY') {
|
||||
// showFlag = true;
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
// return showFlag
|
||||
// },
|
||||
onChangeMainList(name){
|
||||
onChangeMainList(name) {
|
||||
if (name == 'cross') {
|
||||
this.isCrossChannel = '1';
|
||||
}else{
|
||||
this.isCrossChannel = '0';
|
||||
this.isCrossChannel = '1'
|
||||
} else {
|
||||
this.isCrossChannel = '0'
|
||||
}
|
||||
this.isActivityCodeFunc();
|
||||
this.isActivityCodeFunc()
|
||||
},
|
||||
isActivityCodeFunc(){
|
||||
//isActivityCode 有值代表是活动,无值代表是普通产品
|
||||
isActivityCodeFunc() {
|
||||
//isActivityCode 有值代表是活动,无值代表是普通产品
|
||||
// if(this.isActivityCode && this.isCrossChannel == '0'){
|
||||
if(this.isActivityCode){
|
||||
this.getActProductListFunc()
|
||||
}else{
|
||||
this.getMainRiskList()
|
||||
}
|
||||
if (this.isActivityCode) {
|
||||
this.getActProductListFunc()
|
||||
} else {
|
||||
this.getMainRiskList()
|
||||
}
|
||||
},
|
||||
//获取主险列表--活动下的产品
|
||||
async getActProductListFunc() {
|
||||
let mainRiskCodes = localStorage.mainRiskCodes && JSON.parse(localStorage.mainRiskCodes)
|
||||
let resultData = await getActProductList({
|
||||
activityCode:this.isActivityCode,
|
||||
type:'app'
|
||||
activityCode: this.isActivityCode,
|
||||
type: 'app'
|
||||
})
|
||||
if (resultData.result == 0) {
|
||||
resultData.content.mainRiskDTOS.forEach(item => {
|
||||
resultData.content.mainRiskDTOS.forEach((item) => {
|
||||
//已选主险不能再选、险种互斥
|
||||
if (mainRiskCodes && mainRiskCodes.includes(item.riskProductCode)) {
|
||||
this.delList.push(item.riskProductCode)
|
||||
@@ -217,31 +197,32 @@ export default {
|
||||
// ------------------------专为惠企写死--end---------------//
|
||||
//如果是选择产品, 进入电子投保, 在主险列表能默认选中我在产品列表选择的产品
|
||||
if (this.list.length > 0) {
|
||||
console.log(localStorage.productCodeChooseFromList)
|
||||
this.result = this.list.find(v => {
|
||||
console.log(localStorage.productCodeChooseFromList)
|
||||
this.result = this.list.find((v) => {
|
||||
return v.riskProductCode == localStorage.productCodeChooseFromList
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
if (this.list.length == 0) {
|
||||
this.$dialog({ message: '暂无可选产品!' }).then(() => {
|
||||
let thismyurl = ''
|
||||
if (this.$route.query.orderNo) {
|
||||
thismyurl = '?orderNo=' + this.$route.query.orderNo
|
||||
} else if (this.$route.query.proposalOrderNo) {
|
||||
thismyurl = '?proposalOrderNo=' + this.$route.query.proposalOrderNo
|
||||
}
|
||||
this.$jump({
|
||||
flag: 'goBack',
|
||||
// extra: {
|
||||
// url: location.origin + '/#/common/selectedProduct'
|
||||
// },
|
||||
routerInfo: {
|
||||
type: 1,
|
||||
path: '/common/selectedProduct' + thismyurl
|
||||
}
|
||||
})
|
||||
})
|
||||
this.$route('暂无可选产品')
|
||||
// this.$dialog({ message: '暂无可选产品!' }).then(() => {
|
||||
// let thismyurl = ''
|
||||
// if (this.$route.query.orderNo) {
|
||||
// thismyurl = '?orderNo=' + this.$route.query.orderNo
|
||||
// } else if (this.$route.query.proposalOrderNo) {
|
||||
// thismyurl = '?proposalOrderNo=' + this.$route.query.proposalOrderNo
|
||||
// }
|
||||
// this.$jump({
|
||||
// flag: 'goBack',
|
||||
// // extra: {
|
||||
// // url: location.origin + '/#/common/selectedProduct'
|
||||
// // },
|
||||
// routerInfo: {
|
||||
// type: 1,
|
||||
// path: '/common/selectedProduct' + thismyurl
|
||||
// }
|
||||
// })
|
||||
// })
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -258,16 +239,16 @@ export default {
|
||||
break
|
||||
}
|
||||
if (this.isCrossChannel == '1') {
|
||||
mainListDate.platform = 'cross'
|
||||
mainListDate.platform = 'cross'
|
||||
}
|
||||
let resultData
|
||||
if(this.isFrom == 'proposal'){
|
||||
if (this.isFrom == 'proposal') {
|
||||
resultData = await mainRiskListProposal(mainListDate)
|
||||
}else{
|
||||
} else {
|
||||
resultData = await mainRiskList(mainListDate)
|
||||
}
|
||||
if (resultData.result == 0) {
|
||||
resultData.mainRiskDTOS.forEach(item => {
|
||||
resultData.mainRiskDTOS.forEach((item) => {
|
||||
//已选主险不能再选、险种互斥
|
||||
if (mainRiskCodes && mainRiskCodes.includes(item.riskProductCode)) {
|
||||
this.delList.push(item.riskProductCode)
|
||||
@@ -294,47 +275,90 @@ export default {
|
||||
// 如果是选择产品, 进入电子投保, 在主险列表能默认选中我在产品列表选择的产品
|
||||
if (this.list.length > 0) {
|
||||
console.log(localStorage.productCodeChooseFromList)
|
||||
this.result = this.list.find(v => {
|
||||
this.result = this.list.find((v) => {
|
||||
return v.riskProductCode == localStorage.productCodeChooseFromList
|
||||
})
|
||||
}
|
||||
|
||||
if (this.list.length == 0) {
|
||||
this.$dialog({ message: '暂无可选产品!' }).then(() => {
|
||||
let thismyurl = ''
|
||||
if (this.$route.query.orderNo) {
|
||||
thismyurl = '?orderNo=' + this.$route.query.orderNo
|
||||
} else if (this.$route.query.proposalOrderNo) {
|
||||
thismyurl = '?proposalOrderNo=' + this.$route.query.proposalOrderNo
|
||||
}
|
||||
this.$jump({
|
||||
flag: 'goBack',
|
||||
// extra: {
|
||||
// url: location.origin + '/#/common/selectedProduct'
|
||||
// },
|
||||
routerInfo: {
|
||||
type: 1,
|
||||
path: '/common/selectedProduct' + thismyurl
|
||||
}
|
||||
})
|
||||
})
|
||||
this.$route('暂无可选产品')
|
||||
// this.$dialog({ message: '暂无可选产品!' }).then(() => {
|
||||
// let thismyurl = ''
|
||||
// if (this.$route.query.orderNo) {
|
||||
// thismyurl = '?orderNo=' + this.$route.query.orderNo
|
||||
// } else if (this.$route.query.proposalOrderNo) {
|
||||
// thismyurl = '?proposalOrderNo=' + this.$route.query.proposalOrderNo
|
||||
// }
|
||||
// this.$jump({
|
||||
// flag: 'goBack',
|
||||
// // extra: {
|
||||
// // url: location.origin + '/#/common/selectedProduct'
|
||||
// // },
|
||||
// routerInfo: {
|
||||
// type: 1,
|
||||
// path: '/common/selectedProduct' + thismyurl
|
||||
// }
|
||||
// })
|
||||
// })
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//下一步
|
||||
nextStep() {
|
||||
console.log(this.result)
|
||||
if (!this.result) {
|
||||
this.$toast('请选择产品')
|
||||
return
|
||||
}
|
||||
//置空产品
|
||||
localStorage.chooseProducts = ''
|
||||
|
||||
//添加主险
|
||||
this.addMainRisk()
|
||||
/** add by zhangweiwei FCRS-764 国富无忧两全保险(B款)新增主险职业校验逻辑 start at 20240807 */
|
||||
let insuredPersonInfo = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo'))
|
||||
occupationCodeCheck({
|
||||
occupationCode: insuredPersonInfo.occupationCode,
|
||||
productCode: this.result.riskProductCode
|
||||
}).then((res) => {
|
||||
if (res.result == 0) {
|
||||
this.handleMainRisk()
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
/** add by zhangweiwei FCRS-764 国富无忧两全保险(B款)新增主险职业校验逻辑 end at 20240807 */
|
||||
},
|
||||
|
||||
/**
|
||||
* 处理主险
|
||||
*/
|
||||
handleMainRisk() {
|
||||
if (localStorage.getItem('isFrom') == 'sale') {
|
||||
let params = {
|
||||
productCode: this.result.riskProductCode,
|
||||
orderNo: this.$route.query.orderNo
|
||||
}
|
||||
if (this.recommendType == '03' && !this.isActivityCode) {
|
||||
params.productChannl = this.isCrossChannel
|
||||
}
|
||||
riskLevelCheck(params).then((res) => {
|
||||
if (res.result == 0) {
|
||||
if (res.saLevelMatch == 'Y') {
|
||||
//置空产品
|
||||
localStorage.chooseProducts = ''
|
||||
//添加主险
|
||||
this.addMainRisk()
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
//置空产品
|
||||
localStorage.chooseProducts = ''
|
||||
//添加主险
|
||||
this.addMainRisk()
|
||||
}
|
||||
},
|
||||
|
||||
//储存主险
|
||||
async addMainRisk() {
|
||||
localStorage.setItem('isTrial', '1')
|
||||
@@ -345,7 +369,7 @@ export default {
|
||||
localStorage.isTrial = resultData.productTrialInfoDTO.productTrialYearDTOS != null ? '0' : '1'
|
||||
localStorage.hint = resultData.hint
|
||||
if (resultData.productTrialInfoDTO.dutyGroup != null) {
|
||||
resultData.productTrialInfoDTO.dutyGroup.map(item => {
|
||||
resultData.productTrialInfoDTO.dutyGroup.map((item) => {
|
||||
if (item.dutyName == '意外身故/伤残保险金') {
|
||||
item.defaultDutyAmt = item.minDutyAmt
|
||||
}
|
||||
@@ -373,7 +397,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
if (riskRules.ageLimit(resultData, this, null,riskProductCode)) {
|
||||
if (riskRules.ageLimit(resultData, this, null, riskProductCode)) {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -400,12 +424,17 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
let flagPermission = await riskRules.getProductSellPermissionList(resultData.productCode, this,this.isCrossChannel)
|
||||
let flagPermission = await riskRules.getProductSellPermissionList(resultData.productCode, this, this.isCrossChannel)
|
||||
if (flagPermission.flag && localStorage.isFrom != 'proposal') {
|
||||
//校验该代理人是否有该产品的售卖权限
|
||||
return this.$toast(flagPermission.resultMessage)
|
||||
}
|
||||
let flagCompany = await riskRules.checkCompany(resultData.productCode, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).workcompany, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).isAsync,this)
|
||||
let flagCompany = await riskRules.checkCompany(
|
||||
resultData.productCode,
|
||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).workcompany,
|
||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).isAsync,
|
||||
this
|
||||
)
|
||||
if (flagCompany && localStorage.isFrom != 'proposal') {
|
||||
//校验该投保人的工作单位是否能够投保该产品
|
||||
return this.$toast('该投保人工作单位不能投保该产品')
|
||||
@@ -421,11 +450,11 @@ export default {
|
||||
|
||||
let calFactorLst = this.getFactorList(resultData)
|
||||
let productTrialYearDTOS = resultData.productTrialInfoDTO.productTrialYearDTOS != null ? resultData.productTrialInfoDTO.productTrialYearDTOS : null
|
||||
let hasAddtionRisk = (resultData.productTrialInfoDTO.addtionRiskLst != null && resultData.productTrialInfoDTO.addtionRiskLst.length) ? true : false
|
||||
let hasAddtionRisk = resultData.productTrialInfoDTO.addtionRiskLst != null && resultData.productTrialInfoDTO.addtionRiskLst.length ? true : false
|
||||
let currentProductInfo =
|
||||
localStorage.isTrial == '1'
|
||||
? {
|
||||
isCrossChannel:this.isCrossChannel,
|
||||
isCrossChannel: this.isCrossChannel,
|
||||
calFactorLst,
|
||||
hasAddtionRisk,
|
||||
isMainRisk: 0,
|
||||
@@ -441,7 +470,7 @@ export default {
|
||||
predictTransferPrem: null //建议书使用 预计转入保费字段
|
||||
}
|
||||
: {
|
||||
isCrossChannel:this.isCrossChannel,
|
||||
isCrossChannel: this.isCrossChannel,
|
||||
productTrialYearDTOS,
|
||||
calFactorLst,
|
||||
hasAddtionRisk,
|
||||
@@ -479,27 +508,27 @@ export default {
|
||||
let calFactorLst = resultData.productTrialInfoDTO.calFactorLst
|
||||
console.log('calFactorLst', calFactorLst)
|
||||
|
||||
calFactorLst.forEach(item => {
|
||||
calFactorLst.forEach((item) => {
|
||||
item['isMainRisk'] = 0
|
||||
item.columns = []
|
||||
if (item.type == 0) {
|
||||
//1、type=0 select 2、type=1 input+stepper
|
||||
productTrialInfoDTO[item.code].forEach(factor => {
|
||||
productTrialInfoDTO[item.code].forEach((factor) => {
|
||||
if (factor.defaultValue == 0) {
|
||||
item.showContent = factor.showContent
|
||||
if (factor[item.code + 'Flag'] != undefined) {
|
||||
item[item.code] = factor[item.code]
|
||||
item[item.code + 'Flag'] = factor[item.code + 'Flag']
|
||||
item.hasFlag = '1'
|
||||
}else if(item.code == 'pensionAge'){
|
||||
} else if (item.code == 'pensionAge') {
|
||||
//养老保险金领取年龄
|
||||
item[item.code] = factor[item.code]
|
||||
item['sex'] = factor.sex
|
||||
}else {
|
||||
} else {
|
||||
item[item.code] = factor[item.code]
|
||||
}
|
||||
}
|
||||
let itemColumns = { text: factor.showContent, value: factor[item.code], flag: factor[item.code + 'Flag'],sex:factor.sex}
|
||||
let itemColumns = { text: factor.showContent, value: factor[item.code], flag: factor[item.code + 'Flag'], sex: factor.sex }
|
||||
if (factor.medical !== undefined) {
|
||||
itemColumns.medical = factor.medical
|
||||
}
|
||||
@@ -508,10 +537,13 @@ export default {
|
||||
} else if (item.type == 1) {
|
||||
//按年龄选择
|
||||
if (productTrialInfoDTO[item.code] != null) {
|
||||
productTrialInfoDTO[item.code].forEach(factor => {
|
||||
productTrialInfoDTO[item.code].forEach((factor) => {
|
||||
// item = Object.assign(item, factor)
|
||||
if(JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).insuredAge >= Number(factor.minAge) && JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).insuredAge <= Number(factor.maxAge)){
|
||||
// if(JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age >= Number(factor.minAge) && JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age <= Number(factor.maxAge)){
|
||||
if (
|
||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).insuredAge >= Number(factor.minAge) &&
|
||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).insuredAge <= Number(factor.maxAge)
|
||||
) {
|
||||
// if(JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age >= Number(factor.minAge) && JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).age <= Number(factor.maxAge)){
|
||||
item = Object.assign(item, factor)
|
||||
}
|
||||
})
|
||||
|
||||
@@ -750,6 +750,10 @@
|
||||
if (this.chooseProducts.length == 0) {
|
||||
return this.$toast('请添加产品')
|
||||
}
|
||||
if(!this.isElecCont && localStorage.isFrom == 'sale') {
|
||||
this.$toast('请选择保单形式')
|
||||
return false
|
||||
}
|
||||
//重新校验该产品是否需要为协同单位
|
||||
let flagCompany = await riskRules.checkCompany(this.chooseProducts[0].riskCode, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).workcompany, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo')).isAsync,this)
|
||||
if (flagCompany && localStorage.isFrom != 'proposal') {
|
||||
@@ -817,6 +821,32 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
if(this.manageComCode == '45') {
|
||||
console.log(this.chooseProducts)
|
||||
if(this.appntDTO.age >= 60) {
|
||||
this.chooseProducts.map(item => {
|
||||
if (item.insuYearFlag == 'A' || (item.insuYearFlag == 'Y' && item.insuYear != '1')) {
|
||||
showFlag = true
|
||||
return true
|
||||
}
|
||||
})
|
||||
if(!showFlag){
|
||||
let doubleRecordRes = await getDoubleRecordProductLst({})
|
||||
if(doubleRecordRes.result == 0){
|
||||
if(doubleRecordRes.content && doubleRecordRes.content.length != 0){
|
||||
doubleRecordRes.content.forEach(items=>{
|
||||
this.chooseProducts.map(item => {
|
||||
if (item.riskCode == items ) {
|
||||
showFlag = true
|
||||
return true
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (showFlag) {
|
||||
this.thisdoubledialogshow = true
|
||||
} else {
|
||||
@@ -961,35 +991,6 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
async showTipForDoubleRecord() {
|
||||
//判断投保人年龄是否大于等于60岁
|
||||
let showFlag = false
|
||||
let age = this.appntDTO.birthday?utilsAge.getAge(this.appntDTO.birthday, new Date()):this.appntDTO.age
|
||||
if (this.manageComCode == '52') {
|
||||
this.chooseProducts.map(item => {
|
||||
if (item.insuYearFlag == 'A' || (item.insuYearFlag == 'Y' && item.insuYear != '1')) {
|
||||
showFlag = true
|
||||
return true
|
||||
}
|
||||
})
|
||||
}
|
||||
if(showFlag){
|
||||
let doubleRecordRes = await getDoubleRecordProductLst({})
|
||||
if(doubleRecordRes.result == 0){
|
||||
if(doubleRecordRes.content && doubleRecordRes.content.length != 0){
|
||||
doubleRecordRes.content.forEach(items=>{
|
||||
this.chooseProducts.map(item => {
|
||||
if (item.riskCode == items ) {
|
||||
showFlag = true
|
||||
return true
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
return showFlag
|
||||
},
|
||||
nextPageShow() {
|
||||
let thismyurl = ''
|
||||
if (this.$route.query.orderNo) {
|
||||
@@ -1001,47 +1002,30 @@
|
||||
localStorage.fromAddBeneficiaryInfo = ''
|
||||
localStorage.removeItem('applicant')
|
||||
if(this.isFrom == 'sale') {
|
||||
if(!this.isElecCont) {
|
||||
this.$toast('请选择保单形式')
|
||||
return false
|
||||
let params = {
|
||||
orderNO: this.$route.query.orderNo,
|
||||
isElecCont: this.isElecCont
|
||||
}
|
||||
else {
|
||||
let params = {
|
||||
orderNO: this.$route.query.orderNo,
|
||||
isElecCont: this.isElecCont
|
||||
if(this.isElecCont == '1') {
|
||||
params.isElecCont = '0'
|
||||
}
|
||||
saveOrderType(params).then(res => {
|
||||
if(res.result == 0) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
forbidSwipeBack: '1',
|
||||
url: location.origin + '/#' + thismyurl,
|
||||
needRefresh: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: thismyurl
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
if(this.isElecCont == '1') {
|
||||
params.isElecCont = '0'
|
||||
}
|
||||
saveOrderType(params).then(res => {
|
||||
if(res.result == 0) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
forbidSwipeBack: '1',
|
||||
url: location.origin + '/#' + thismyurl,
|
||||
needRefresh: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: thismyurl
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// forbidSwipeBack: '1',
|
||||
// url: location.origin + '/#' + thismyurl,
|
||||
// needRefresh: '1'
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: thismyurl
|
||||
// }
|
||||
// })
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
})
|
||||
|
||||
@@ -44,10 +44,10 @@
|
||||
<div class="pcenter-list mr20 mb10 ml15">
|
||||
<template v-if="branchType != '6'">
|
||||
<div class="pcenter-item text-center">
|
||||
<img src="../../../assets/images/home_cp_1.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0073')" />
|
||||
<img src="../../../assets/images/home_product_center_m0092.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0092')" />
|
||||
</div>
|
||||
<div class="pcenter-item text-center">
|
||||
<img src="../../../assets/images/home_cp_2.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0072')" />
|
||||
<img src="../../../assets/images/home_product_center_m0094.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0094')" />
|
||||
</div>
|
||||
</template>
|
||||
<template v-else-if="branchType == '6'">
|
||||
@@ -122,11 +122,11 @@
|
||||
<div class="home-product-pcenter">
|
||||
<div class="pcenter-list mr20 mb10 ml15">
|
||||
<div class="pcenter-item text-center">
|
||||
<img src="../../../assets/images/home_cp_1.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0073')" />
|
||||
</div>
|
||||
<div class="pcenter-item text-center">
|
||||
<img src="../../../assets/images/home_cp_2.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0072')" />
|
||||
</div>
|
||||
<img src="../../../assets/images/home_product_center_m0092.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0092')" />
|
||||
</div>
|
||||
<div class="pcenter-item text-center">
|
||||
<img src="../../../assets/images/home_product_center_m0094.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0094')" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -310,10 +310,10 @@ export default {
|
||||
if(this.appntDTO.name == name){
|
||||
this.appntDTO.name = ''
|
||||
}
|
||||
let ageRule = /^[a-zA-Z0-9\.\s\u4e00-\u9fa5]{2,120}$/
|
||||
if (this.appntDTO.name && !ageRule.test(this.appntDTO.name)) {
|
||||
return Toast.fail('姓名长度为2-120个字符之内,只能输入汉字、数字或者英文')
|
||||
}
|
||||
// let ageRule = /^[a-zA-Z\.\s\u4e00-\u9fa5]{2,120}$/
|
||||
// if (this.appntDTO.name && !ageRule.test(this.appntDTO.name)) {
|
||||
// return Toast.fail('姓名长度为2-120个字符之内,只能输入汉字或者英文')
|
||||
// }
|
||||
this.appntDTO.age = String(this.appntDTO.age)
|
||||
this.$validator.validate().then(valid => {
|
||||
if (true === valid) {
|
||||
|
||||
@@ -339,10 +339,10 @@ export default {
|
||||
let localSex = this.insured.sex
|
||||
let relation = this.localInfo.relationToAppnt
|
||||
let resultSex = checkSex(cacheSex, localSex, relation)
|
||||
let ageRule = /^[a-zA-Z0-9\.\s\u4e00-\u9fa5]{2,120}$/
|
||||
if (this.insured.name && !ageRule.test(this.insured.name)) {
|
||||
return Toast.fail('姓名长度为2-120个字符之内,只能输入汉字、数字或者英文')
|
||||
}
|
||||
// let ageRule = /^[a-zA-Z0-9\.\s\u4e00-\u9fa5]{2,120}$/
|
||||
// if (this.insured.name && !ageRule.test(this.insured.name)) {
|
||||
// return Toast.fail('姓名长度为2-120个字符之内,只能输入汉字、数字或者英文')
|
||||
// }
|
||||
if (!resultSex) {
|
||||
return Toast.fail('被保险人性别有误')
|
||||
}
|
||||
|
||||
@@ -1487,26 +1487,10 @@
|
||||
this.$CacheUtils.setLocItem('orderNo', resultData.orderNo)
|
||||
// localStorage.insuredDetail = JSON.stringify(this.userInfo)
|
||||
// 添加提示
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
if (age >= 60 && this.manageComCode == '45') {
|
||||
this.thisdoubledialogshow = true
|
||||
// this.$dialog
|
||||
// .alert({
|
||||
// message: '根据监管要求,本单需要您配合对销售过程进行录音录像!',
|
||||
// confirmButtonColor: '#000000',
|
||||
// })
|
||||
// .then(() => {
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/sale/insuredPerson?${str}` + '&orderNo=' + resultData.orderNo,
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/sale/insuredPerson?${str}` + '&orderNo=' + resultData.orderNo,
|
||||
// },
|
||||
// })
|
||||
// })
|
||||
} else {
|
||||
// let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
// if (age >= 60 && this.manageComCode == '45') {
|
||||
// this.thisdoubledialogshow = true
|
||||
// } else {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
@@ -1516,7 +1500,7 @@
|
||||
path: `/sale/insuredPerson?${this.thismystr}` + '&orderNo=' + this.thismyorderNo,
|
||||
},
|
||||
})
|
||||
}
|
||||
// }
|
||||
} else {
|
||||
this.$toast(resultData.resultMessage)
|
||||
}
|
||||
|
||||
@@ -16,6 +16,12 @@
|
||||
<van-cell title="销售人员工号" :value="recmd.agentCode" />
|
||||
<van-cell title="销售人员姓名" :value="recmd.name" />
|
||||
<van-cell title="投保单号" :value="orderInfo.orderNo"></van-cell>
|
||||
<!-- 电投签名确认新增交费期间 start at 20240910 -->
|
||||
<div v-if="riskInfo">
|
||||
<van-cell v-if="riskInfo.payEndYear == '1000'" title="交费期间" value="一次性交清" />
|
||||
<van-cell v-else title="交费期间" :value="riskInfo.payEndYearFlag == 'Y' ? `${riskInfo.payEndYear}年` : `至${riskInfo.payEndYear}岁`" />
|
||||
</div>
|
||||
<!-- 电投签名确认新增交费期间 end at 20240910 -->
|
||||
<van-cell title="投保日期" :value="date" />
|
||||
<van-cell title="保费合计(元)" :value="orderInfo.orderAmount == undefined ? '' : orderInfo.orderAmount | moneyFormat" />
|
||||
<van-cell v-if="cvalidateStr" title="指定保单生效日" :value="cvalidateStr" />
|
||||
@@ -353,6 +359,8 @@ export default {
|
||||
riskName: '',
|
||||
// 员工信息
|
||||
recmd: {},
|
||||
// 险种信息 获取交费期间
|
||||
riskInfo: null,
|
||||
// 投保时间
|
||||
date: '',
|
||||
// 订单信息
|
||||
@@ -1062,7 +1070,7 @@ export default {
|
||||
})
|
||||
getAgentInfo({}).then((res) => {
|
||||
console.log(res)
|
||||
if ((res.branchType == 'N1' || res.branchType == '1') && !this.isVideo) {
|
||||
if ((res.branchType == 'N1' || res.branchType == '1'||res.branchType == '12' || res.branchType == '13') && !this.isVideo) {
|
||||
this.$jump({
|
||||
flag: 'navigation',
|
||||
extra: {
|
||||
@@ -1449,6 +1457,7 @@ export default {
|
||||
let documentCodeType = res.orderDTO.ebizSignDTOS.filter(item=>item.documentCode == '14').length>0
|
||||
localStorage.setItem('documentCodeType', documentCodeType)
|
||||
let riskDTOLst = res.orderDTO.insuredDTOs[0].riskDTOLst[0]
|
||||
this.riskInfo = res.orderDTO.insuredDTOs[0].riskDTOLst[0]
|
||||
// 判断是否为长期险
|
||||
if ((riskDTOLst.insuYearFlag == 'Y' && riskDTOLst.insuYear > 1) || riskDTOLst.insuYearFlag == 'A') {
|
||||
this.$CacheUtils.setLocItem('isLongInsuranceFlag', "Y");
|
||||
|
||||
@@ -31,7 +31,8 @@
|
||||
data-vv-name="单选"
|
||||
v-for="(items, indexs) in item.options" :key="indexs"
|
||||
>
|
||||
<van-radio :name="items.option" :label="items.option" class="mr150 ml70">{{items.item}} ({{items.score}}分)</van-radio>
|
||||
<!-- <van-radio :name="items.option" :label="items.option" class="mr150 ml70">{{items.item}} ({{items.score}}分)</van-radio>-->
|
||||
<van-radio :name="items.option" :label="items.option" class="mr150 ml70">{{items.item}}</van-radio>
|
||||
</van-radio-group>
|
||||
<div style=" font-size:13px" v-if="item.remarks" v-html="item.remarks">
|
||||
</div>
|
||||
@@ -43,11 +44,23 @@
|
||||
<div class="bottom-btn bg-white">
|
||||
<van-button type="danger" size="large" @click="next" :disabled="isDisabled" v-no-more-click="1000">提交问卷</van-button>
|
||||
</div>
|
||||
<van-dialog v-model="thisdialogshow" :showConfirmButton="false">
|
||||
<div slot="title">
|
||||
<p style="color: #E9332E;">提示</p>
|
||||
</div>
|
||||
<div style="padding: 20px 30px 20px;font-size: 14px;">
|
||||
<div style="line-height: 20px;">根据风险测评结果,您不适合投保万能型或分红型保险产品,建议您停止投保。</div>
|
||||
</div>
|
||||
<div style="text-align: center;display: flex;align-items: end;">
|
||||
<van-button type="danger" style="font-size: 12px;background: #fff;color: #e9332e;line-height: 15px;width: 50%;padding: 0px 2px;" @click="thisdialogfunc1">已知晓不适宜继续投保,但本人仍申请继续投保</van-button>
|
||||
<van-button type="danger" style="font-size: 14px;width: 50%;" @click="thisdialogfunc2">停止投保</van-button>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { Collapse, CollapseItem, RadioGroup, Radio, Field, CellGroup, Icon } from 'vant'
|
||||
import { saveInformation, getOrderDetail } from '@/api/ebiz/sale/sale'
|
||||
import { saveInformation, getOrderDetail, changeOrderStatus } from '@/api/ebiz/sale/sale'
|
||||
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
||||
export default {
|
||||
data() {
|
||||
@@ -56,6 +69,8 @@ export default {
|
||||
],
|
||||
isDisabled:true,
|
||||
salePageFlag: '6',
|
||||
thisdialogshow:false,
|
||||
productType:'',
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -72,6 +87,7 @@ created(){
|
||||
getOrderDetail({ orderNo: this.$route.query.orderNo }).then(res => {
|
||||
if (res.result == 0) {
|
||||
this.question =JSON.parse( res.orderDTO.riskEvaluationDTO.quentionAnswer)
|
||||
this.productType = res.orderDTO.orderInfoDTO.productType
|
||||
this.isDisabledType()
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
@@ -100,6 +116,38 @@ mounted(){
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
thisdialogfunc1(){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/answerSuccess?orderNo=' + this.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/answerSuccess?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
},
|
||||
thisdialogfunc2(){
|
||||
let params = {
|
||||
orderNO:this.$route.query.orderNo
|
||||
}
|
||||
changeOrderStatus(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/list',
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/list'
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
return this.$dialog
|
||||
@@ -159,21 +207,42 @@ methods:{
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
let that = this
|
||||
localStorage.removeItem('changeCard')
|
||||
if (!this.$route.query.salePageFlag) {
|
||||
//不是从导航栏进入
|
||||
localStorage.salePageFlag = '7'
|
||||
}
|
||||
that.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/answerSuccess?orderNo=' + this.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/answerSuccess?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
if(this.productType == '1' || this.productType == '2') {
|
||||
getOrderDetail({ orderNo: this.$route.query.orderNo }).then(res => {
|
||||
if (res.result == 0) {
|
||||
if(res.orderDTO.riskEvaluationDTO.totalScore >= 60 && res.orderDTO.riskEvaluationDTO.totalScore <= 85){
|
||||
this.thisdialogshow = true
|
||||
} else {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/answerSuccess?orderNo=' + this.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/answerSuccess?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/answerSuccess?orderNo=' + this.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/answerSuccess?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user