Compare commits

...

33 Commits

Author SHA1 Message Date
zhang.weiwei
b3a61b2fcd fix-调整建议书列表初始化实现 2024-10-15 11:37:22 +08:00
zhang.weiwei
e5fc51effa Merge branch 'release/release-20240910' into dev-new 2024-09-10 15:04:18 +08:00
zhang.weiwei
5a7a6a0374 feat-1.放开首页富贵年年C款产品;2.电投签名确认新增交费期间展示项 2024-09-10 15:01:39 +08:00
zhang.weiwei
b21278491c Merge branch 'feature/FCRS-795个险渠道-国富人寿富贵年年终身寿险(C款)' into dev-new
# Conflicts:
#	src/assets/js/utils/data-dictionary.js
2024-09-02 14:26:23 +08:00
zhang.weiwei
5875fc0a7c feat-1.富贵年年终身寿险新增单位;2.首页显示产品中心显示无忧B产品 2024-09-02 14:23:35 +08:00
zhang.weiwei
dc757b0f22 Merge branch 'hotfix/签名确认页面-防范销售误导-新增个险独代渠道和个险GBC渠道校验逻辑' into dev-new 2024-08-28 17:24:45 +08:00
zhang.weiwei
f8db6ce6b7 hotfix-签名确认页面-防范销售误导-新增个险独代渠道和个险GBC渠道校验逻辑 2024-08-28 17:24:35 +08:00
zhang.weiwei
0d75ad4bd2 Merge branch 'feature/FCRS-781【需求】《国富人寿富满盈嘉终身寿险(分红型)》中介渠道产品' into dev-new 2024-08-28 10:56:57 +08:00
zhang.weiwei
4a968d8d90 feat-国富人寿富满盈嘉终身寿险(分红型) 相关费用加单位【元】 2024-08-28 10:56:25 +08:00
zhang.weiwei
b9c064ef69 Merge branch 'feature/FCRS-776【前端】取消入司系统自保件校验And被保人关系与生效年龄校验' into release/20240808-FCRS-764和776 2024-08-08 18:07:00 +08:00
zhang.weiwei
f75e96b701 Merge branch 'feature/FCRS-764-【需求】国富人寿国富无忧两全保险(B款)-新产品-' into release/20240808-FCRS-764和776 2024-08-08 18:06:53 +08:00
zhang.weiwei
704e4465dc Merge branch 'feature/FCRS-764-【需求】国富人寿国富无忧两全保险(B款)-新产品-' into dev-new 2024-08-08 11:36:34 +08:00
zhang.weiwei
ccdff7fa70 feat-建议书利益演示新增无忧两全金额单位【元】 2024-08-08 11:36:23 +08:00
zhang.weiwei
3d465e17bd Merge branch 'feature/FCRS-764-【需求】国富人寿国富无忧两全保险(B款)-新产品-' into dev-new 2024-08-08 11:25:52 +08:00
zhang.weiwei
701dad7dd4 delete-删除入司系统自保件校验&被保人关系与生效年龄校验 2024-08-08 11:09:17 +08:00
zhang.weiwei
a6f57ffa35 feat-主险选择新增职业校验逻辑 2024-08-07 18:34:48 +08:00
liu.xiaofeng@ebiz-digits.com
73ad9b233a Merge remote-tracking branch 'origin/master' 2024-08-07 14:10:16 +08:00
zhang.lei3
285a5779df Merge remote-tracking branch 'origin/feature/【20240525】数据看板接口对接' 2024-08-07 13:52:43 +08:00
种岩宁
116aa3daaf 项目数据统计新增字段--承保保费+1 2024-07-25 17:44:35 +08:00
种岩宁
8712dd1d4e 项目数据统计新增字段--承保保费 2024-07-25 17:44:32 +08:00
liu.xiaofeng@ebiz-digits.com
a209cd4248 项目成员分配以及项目数据统计增加条件判断 2024-07-25 17:44:28 +08:00
liu.xiaofeng@ebiz-digits.com
c099d82230 数据看板接口对接 2024-07-25 17:44:24 +08:00
zhang.weiwei
1dd7a9368c feat-保费试算调整国富无忧两全保险(B款)产品保障责任显示和接口请求参数 2024-07-21 13:49:11 +08:00
种岩宁
96aca1c83a 新增卡单出单支付调用接口 2024-07-18 21:29:34 +08:00
种岩宁
f085152e7e 项目数据统计新增字段--承保保费+1 2024-06-03 10:52:42 +08:00
种岩宁
64677c7046 项目数据统计新增字段--承保保费 2024-06-03 10:28:13 +08:00
liu.xiaofeng@ebiz-digits.com
f937a9c376 修改卡单被保人职业类型 2024-05-29 13:07:22 +08:00
liu.xiaofeng@ebiz-digits.com
d5ccffba9f 项目成员分配以及项目数据统计增加条件判断 2024-05-26 16:15:42 +08:00
liu.xiaofeng@ebiz-digits.com
169831792c 数据看板接口对接 2024-05-25 17:09:43 +08:00
liu.xiaofeng@ebiz-digits.com
6975dbd2a4 选择产品页面提交页面增加判断 2024-05-09 10:03:06 +08:00
liu.xiaofeng@ebiz-digits.com
0d07f33c20 双录改动 2024-05-08 22:48:51 +08:00
liu.xiaofeng@ebiz-digits.com
b4cdafbd9b 双录调整 2024-05-08 22:48:45 +08:00
liu.xiaofeng@ebiz-digits.com
88ade7e51c 广西壮族自治区农村信用社联合社需要改为广西农村商业联合银行股份有限公司 2024-04-28 14:59:03 +08:00
21 changed files with 959 additions and 491 deletions

382
package-lock.json generated
View File

@@ -935,6 +935,12 @@
"to-fast-properties": "^2.0.0"
}
},
"@gar/promisify": {
"version": "1.1.3",
"resolved": "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz",
"integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==",
"dev": true
},
"@hapi/address": {
"version": "2.1.4",
"resolved": "https://registry.npmmirror.com/@hapi/address/-/address-2.1.4.tgz",
@@ -1026,6 +1032,45 @@
"integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
"dev": true
},
"@jridgewell/source-map": {
"version": "0.3.6",
"resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.6.tgz",
"integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
"dev": true,
"requires": {
"@jridgewell/gen-mapping": "^0.3.5",
"@jridgewell/trace-mapping": "^0.3.25"
},
"dependencies": {
"@jridgewell/gen-mapping": {
"version": "0.3.5",
"resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"requires": {
"@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
"@jridgewell/trace-mapping": "^0.3.24"
}
},
"@jridgewell/set-array": {
"version": "1.2.1",
"resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.2.1.tgz",
"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true
},
"@jridgewell/trace-mapping": {
"version": "0.3.25",
"resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
"requires": {
"@jridgewell/resolve-uri": "^3.1.0",
"@jridgewell/sourcemap-codec": "^1.4.14"
}
}
}
},
"@jridgewell/sourcemap-codec": {
"version": "1.4.15",
"resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
@@ -1066,6 +1111,51 @@
"integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==",
"dev": true
},
"@npmcli/fs": {
"version": "1.1.1",
"resolved": "https://registry.npmmirror.com/@npmcli/fs/-/fs-1.1.1.tgz",
"integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==",
"dev": true,
"requires": {
"@gar/promisify": "^1.0.1",
"semver": "^7.3.5"
},
"dependencies": {
"semver": {
"version": "7.6.3",
"resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz",
"integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true
}
}
},
"@npmcli/move-file": {
"version": "1.1.2",
"resolved": "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-1.1.2.tgz",
"integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==",
"dev": true,
"requires": {
"mkdirp": "^1.0.4",
"rimraf": "^3.0.2"
},
"dependencies": {
"mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz",
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
"dev": true
},
"rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
"requires": {
"glob": "^7.1.3"
}
}
}
},
"@soda/friendly-errors-webpack-plugin": {
"version": "1.8.1",
"resolved": "https://registry.npmmirror.com/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz",
@@ -2187,6 +2277,24 @@
"integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==",
"dev": true
},
"aggregate-error": {
"version": "3.1.0",
"resolved": "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz",
"integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
"dev": true,
"requires": {
"clean-stack": "^2.0.0",
"indent-string": "^4.0.0"
},
"dependencies": {
"indent-string": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz",
"integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
"dev": true
}
}
},
"ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
@@ -3803,6 +3911,12 @@
"source-map": "~0.6.0"
}
},
"clean-stack": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz",
"integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
"dev": true
},
"cli-cursor": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-2.1.0.tgz",
@@ -7016,6 +7130,15 @@
"universalify": "^0.1.0"
}
},
"fs-minipass": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz",
"integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
"dev": true,
"requires": {
"minipass": "^3.0.0"
}
},
"fs-write-stream-atomic": {
"version": "1.0.10",
"resolved": "https://registry.npmmirror.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
@@ -10589,6 +10712,68 @@
"resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz",
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
},
"minipass": {
"version": "3.3.6",
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz",
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
"yallist": "^4.0.0"
},
"dependencies": {
"yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
}
}
},
"minipass-collect": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz",
"integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==",
"dev": true,
"requires": {
"minipass": "^3.0.0"
}
},
"minipass-flush": {
"version": "1.0.5",
"resolved": "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz",
"integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
"dev": true,
"requires": {
"minipass": "^3.0.0"
}
},
"minipass-pipeline": {
"version": "1.2.4",
"resolved": "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
"integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
"dev": true,
"requires": {
"minipass": "^3.0.0"
}
},
"minizlib": {
"version": "2.1.2",
"resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz",
"integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
"dev": true,
"requires": {
"minipass": "^3.0.0",
"yallist": "^4.0.0"
},
"dependencies": {
"yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
}
}
},
"mississippi": {
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/mississippi/-/mississippi-3.0.0.tgz",
@@ -14153,6 +14338,15 @@
}
}
},
"serialize-javascript": {
"version": "5.0.1",
"resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
"integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
"dev": true,
"requires": {
"randombytes": "^2.1.0"
}
},
"serve-index": {
"version": "1.9.1",
"resolved": "https://registry.npmmirror.com/serve-index/-/serve-index-1.9.1.tgz",
@@ -15200,6 +15394,188 @@
"inherits": "2"
}
},
"terser": {
"version": "5.31.3",
"resolved": "https://registry.npmmirror.com/terser/-/terser-5.31.3.tgz",
"integrity": "sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==",
"dev": true,
"requires": {
"@jridgewell/source-map": "^0.3.3",
"acorn": "^8.8.2",
"commander": "^2.20.0",
"source-map-support": "~0.5.20"
},
"dependencies": {
"acorn": {
"version": "8.12.1",
"resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.12.1.tgz",
"integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
"dev": true
}
}
},
"terser-webpack-plugin": {
"version": "4.2.3",
"resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz",
"integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==",
"dev": true,
"requires": {
"cacache": "^15.0.5",
"find-cache-dir": "^3.3.1",
"jest-worker": "^26.5.0",
"p-limit": "^3.0.2",
"schema-utils": "^3.0.0",
"serialize-javascript": "^5.0.1",
"source-map": "^0.6.1",
"terser": "^5.3.4",
"webpack-sources": "^1.4.3"
},
"dependencies": {
"cacache": {
"version": "15.3.0",
"resolved": "https://registry.npmmirror.com/cacache/-/cacache-15.3.0.tgz",
"integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==",
"dev": true,
"requires": {
"@npmcli/fs": "^1.0.0",
"@npmcli/move-file": "^1.0.1",
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
"glob": "^7.1.4",
"infer-owner": "^1.0.4",
"lru-cache": "^6.0.0",
"minipass": "^3.1.1",
"minipass-collect": "^1.0.2",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.2",
"mkdirp": "^1.0.3",
"p-map": "^4.0.0",
"promise-inflight": "^1.0.1",
"rimraf": "^3.0.2",
"ssri": "^8.0.1",
"tar": "^6.0.2",
"unique-filename": "^1.1.1"
}
},
"chownr": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz",
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
"dev": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
"jest-worker": {
"version": "26.6.2",
"resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-26.6.2.tgz",
"integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==",
"dev": true,
"requires": {
"@types/node": "*",
"merge-stream": "^2.0.0",
"supports-color": "^7.0.0"
}
},
"lru-cache": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz",
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
"dev": true,
"requires": {
"yallist": "^4.0.0"
}
},
"merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
"dev": true
},
"mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz",
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
"dev": true
},
"p-limit": {
"version": "3.1.0",
"resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz",
"integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
"dev": true,
"requires": {
"yocto-queue": "^0.1.0"
}
},
"p-map": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz",
"integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
"dev": true,
"requires": {
"aggregate-error": "^3.0.0"
}
},
"rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
"requires": {
"glob": "^7.1.3"
}
},
"ssri": {
"version": "8.0.1",
"resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz",
"integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==",
"dev": true,
"requires": {
"minipass": "^3.1.1"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"tar": {
"version": "6.2.1",
"resolved": "https://registry.npmmirror.com/tar/-/tar-6.2.1.tgz",
"integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
"dev": true,
"requires": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
"minipass": "^5.0.0",
"minizlib": "^2.1.1",
"mkdirp": "^1.0.3",
"yallist": "^4.0.0"
},
"dependencies": {
"minipass": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz",
"integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
"dev": true
}
}
},
"yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
}
}
},
"test-exclude": {
"version": "4.2.3",
"resolved": "https://registry.npmmirror.com/test-exclude/-/test-exclude-4.2.3.tgz",
@@ -17239,6 +17615,12 @@
}
}
},
"yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
"dev": true
},
"yorkie": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/yorkie/-/yorkie-2.0.0.tgz",

View File

@@ -116,3 +116,12 @@ export function saveOrUpdateGbc(data) {
data
})
}
// GBC数据看板
export function dataShow(data) {
return request({
url: getUrl('/sale/gbc/data/show', 1),
method: 'post',
data
})
}

View File

@@ -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
})
}

View File

@@ -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 */

View File

@@ -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({

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 KiB

View File

@@ -3923,6 +3923,30 @@ export default {
{
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: "元"
}
],
// 卡单与短期险重新投保选择职业类别时,两个模块职业类型数据的排序不同,创建这个数据字典,用于在选择职业类别时,作为一个参数传入组件,
@@ -3952,7 +3976,7 @@ export default {
{ id: 'M', text: '母亲' }
],
// <!--------- 津贴申请专用 end --------->
imageInfoType:[
imageInfoType: [
{ id: '1', text: '居民身份证正面' },
{ id: '2', text: '居民身份证反面' },
{ id: '3', text: '银行卡正面' },

View File

@@ -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',

View File

@@ -52,14 +52,14 @@
</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>
<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="85" :speed="100" :text="text" />
<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 dataList1" style="width: 33%;display: flex;justify-content: space-around;align-items: center;">
<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>
@@ -76,7 +76,7 @@
<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>
<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>
@@ -85,11 +85,11 @@
<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-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>
@@ -97,14 +97,15 @@
<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>
<p v-if="calGbcTeamList.length != 0" style="color: #a7a7a7;font-size: 14px;">数据截止日期{{calGbcTeamList[0].endDate}}</p>
</div>
<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>小组</th>
<th style="padding: 0px 40px;">小组</th>
<th>组长</th>
<th>承保保费()</th>
<th>获客人数</th>
<th>获客率</th>
<th>筛客人数</th>
@@ -125,40 +126,42 @@
<tbody>
<tr class="tbodyClass">
<td colspan="2">项目合并</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</td>
<td>.00</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 dataList3" :key="index" class="tbodyClass">
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<td>{{item.name}}</td>
<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>
@@ -185,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,
@@ -217,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:[],
}
},
@@ -254,8 +244,34 @@ export default {
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 = ''
@@ -439,4 +455,8 @@ export default {
border-bottom:1px solid #fff;
}
}
.teamNameTdClass{
display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
//width: 105px;
}
</style>

View File

@@ -683,8 +683,8 @@ let bankListJson = [
},
{
code: '50002',
name: '广西壮族自治区农村信用社联合社',
child: [{ code: '402611099974', name: '广西壮族自治区农村信用社联合社' }]
name: '广西农村商业联合银行股份有限公司',
child: [{ code: '402611099974', name: '广西农村商业联合银行股份有限公司' }]
},
{
code: '20041',

View File

@@ -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 {

View File

@@ -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()
}
}
},
// 选择微信支付校验身份证类型

View File

@@ -272,6 +272,7 @@
label='职业类别'
placeholder='请输入'
name='职业类别'
readonly
:value='insuredInfo.occupationName'
right-icon='arrow'
/>
@@ -605,8 +606,7 @@
>元
</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="核对信息"> -->
@@ -679,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)
@@ -1833,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
@@ -2064,6 +2070,11 @@ export default {
// return this.$toast('户口本的证件号码长度应等于18位')
// }
}
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)
//如果证件类型是身份证或户口本
@@ -2203,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
// 如果是未成年人
@@ -2294,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'
@@ -2751,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
@@ -2766,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
@@ -2784,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

View File

@@ -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">
@@ -111,7 +111,8 @@
item.productCode == 'GFRS_M0054' ||
item.productCode == 'GFRS_M0073' ||
item.productCode == 'GFRS_M0057' ||
item.productCode == 'GFRS_M0086'
item.productCode == 'GFRS_M0086' ||
item.productCode == 'GFRS_M0092'
)
"
class="fs14 w100"
@@ -130,7 +131,8 @@
item.productCode == 'GFRS_M0054' ||
item.productCode == 'GFRS_M0073' ||
item.productCode == 'GFRS_M0057' ||
item.productCode == 'GFRS_M0086'
item.productCode == 'GFRS_M0086' ||
item.productCode == 'GFRS_M0092'
)
"
v-model="dutyItem.defaultDutyAmt"
@@ -2934,7 +2936,8 @@
this.trialList[index].productCode == 'GFRS_M0073' ||
this.trialList[index].productCode == 'GFRS_M0077' ||
this.trialList[index].productCode == 'GFRS_M0057' ||
this.trialList[index].productCode == 'GFRS_M0086'
this.trialList[index].productCode == 'GFRS_M0086'||
this.trialList[index].productCode == 'GFRS_M0092'
) {
riskItem['dutyLst'] = this.trialInfos[index].duty
}

View File

@@ -50,8 +50,8 @@
</div>
</template>
<script>
import { Cell, CellGroup, Tag, Radio, RadioGroup,Tab,Tabs} from 'vant'
import { mainRiskList,mainRiskListProposal,calculatePremium,getActProductList } from '@/api/ebiz/common/common'
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'
@@ -63,13 +63,13 @@ 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-是
recommendType: '', // 渠道控制
isCrossChannel: 0, // 是否选择交叉渠道列表 0-否 1-是
active: 'normal',
specilFlag: '0',
flag: true,
@@ -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) {
@@ -108,16 +108,16 @@ export default {
//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())
}
)
@@ -126,49 +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: {
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)
@@ -195,12 +197,12 @@ 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.$route('暂无可选产品')
// this.$dialog({ message: '暂无可选产品!' }).then(() => {
@@ -237,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)
@@ -273,7 +275,7 @@ 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
})
}
@@ -308,17 +310,36 @@ export default {
this.$toast('请选择产品')
return
}
if(localStorage.getItem('isFrom') == 'sale') {
/** 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,
orderNo: this.$route.query.orderNo
}
if(this.recommendType == '03' && !this.isActivityCode) {
if (this.recommendType == '03' && !this.isActivityCode) {
params.productChannl = this.isCrossChannel
}
riskLevelCheck(params).then(res => {
if(res.result == 0) {
if(res.saLevelMatch == "Y"){
riskLevelCheck(params).then((res) => {
if (res.result == 0) {
if (res.saLevelMatch == 'Y') {
//置空产品
localStorage.chooseProducts = ''
//添加主险
@@ -337,6 +358,7 @@ export default {
this.addMainRisk()
}
},
//储存主险
async addMainRisk() {
localStorage.setItem('isTrial', '1')
@@ -347,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
}
@@ -375,7 +397,7 @@ export default {
}
}
if (riskRules.ageLimit(resultData, this, null,riskProductCode)) {
if (riskRules.ageLimit(resultData, this, null, riskProductCode)) {
return
}
@@ -402,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('该投保人工作单位不能投保该产品')
@@ -423,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,
@@ -443,7 +470,7 @@ export default {
predictTransferPrem: null //建议书使用 预计转入保费字段
}
: {
isCrossChannel:this.isCrossChannel,
isCrossChannel: this.isCrossChannel,
productTrialYearDTOS,
calFactorLst,
hasAddtionRisk,
@@ -481,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
}
@@ -510,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)
}
})

View File

@@ -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',

View File

@@ -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>

View File

@@ -135,12 +135,10 @@
hiddenRight: '1'
}
})
this.initThisPage()
},
methods: {
initThisPage(showFlag) {
if (showFlag) {
return
}
initThisPage() {
setTimeout(() => {
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('webview_left_button', {

View File

@@ -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)
}

View File

@@ -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");