mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-07 04:16:44 +08:00
Compare commits
124 Commits
feature/FM
...
release/【2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96eca99a4e | ||
|
|
3758be49b6 | ||
|
|
e43f9e9881 | ||
|
|
cc73fb4ebb | ||
|
|
f5aec4972b | ||
|
|
bd61c5b8c0 | ||
|
|
9aaa7ad106 | ||
|
|
0de31877e7 | ||
|
|
7c2fcb7993 | ||
|
|
01c5e3acc3 | ||
|
|
23278094ea | ||
|
|
f4fdc05f95 | ||
|
|
49df5e8176 | ||
|
|
33350a4a5b | ||
|
|
0ae0de8e51 | ||
|
|
3d2bca3228 | ||
|
|
5d04db24a7 | ||
|
|
7684831fdc | ||
|
|
47c68db32d | ||
|
|
e6e5c7b375 | ||
|
|
3167d58990 | ||
|
|
09d6f63ab9 | ||
|
|
e782eb1065 | ||
|
|
7c2fca39bf | ||
|
|
af041ddd0c | ||
|
|
85ff38ec6f | ||
|
|
151f793f99 | ||
|
|
a024a67995 | ||
|
|
e5ae68f225 | ||
|
|
0a4018b445 | ||
|
|
1b59db041b | ||
|
|
e718c684c8 | ||
|
|
30d9c008d1 | ||
|
|
e6a4957e74 | ||
|
|
344c367c08 | ||
|
|
cf9de9636d | ||
|
|
31e3cb6241 | ||
|
|
b4ddba6018 | ||
|
|
5422bc9145 | ||
|
|
29224df8f6 | ||
|
|
d5da63c544 | ||
|
|
167a004b21 | ||
|
|
ff9bffcd15 | ||
|
|
b3b450d511 | ||
|
|
f41e28b630 | ||
|
|
b7ed7a049c | ||
|
|
a6e2347dd8 | ||
|
|
f134accf04 | ||
|
|
c6e2f069c5 | ||
|
|
b772d68d76 | ||
|
|
b6bbcd302e | ||
|
|
5f79a28079 | ||
|
|
1f3531fad9 | ||
|
|
74a523d587 | ||
|
|
279d82f514 | ||
|
|
8b24ef1c87 | ||
|
|
f3443ad2fd | ||
|
|
d347b6590f | ||
|
|
62fcad1ca2 | ||
|
|
6c669754d2 | ||
|
|
6f9a134dd7 | ||
|
|
31dcf67190 | ||
|
|
e2d9fc11d3 | ||
|
|
38ffce31ee | ||
|
|
9cff332438 | ||
|
|
7234c0929e | ||
|
|
f8e18cc4b6 | ||
|
|
fb630f51c3 | ||
|
|
4d66a97a98 | ||
|
|
217afc6ce0 | ||
|
|
c40a141141 | ||
|
|
131ccdb3be | ||
|
|
dbf2f7842e | ||
|
|
bd4018f7f4 | ||
|
|
cb45c0b691 | ||
|
|
cdb37af241 | ||
|
|
f68982f5cb | ||
|
|
905e986b4e | ||
|
|
26fd37d63d | ||
|
|
714ae57063 | ||
|
|
65cd6c1756 | ||
|
|
f10e909fb6 | ||
|
|
2a44969f12 | ||
|
|
3d294c6954 | ||
|
|
3941a088d8 | ||
|
|
e9d04aceab | ||
|
|
7082d19d6a | ||
|
|
9a49e58faa | ||
|
|
8992c12004 | ||
|
|
513dfa500d | ||
|
|
82e9185853 | ||
|
|
9a7ee1a8a2 | ||
|
|
24d66b823d | ||
|
|
dc3c3707ec | ||
|
|
82d4d7b6d8 | ||
|
|
3be901873c | ||
|
|
a807027c02 | ||
|
|
baddd63819 | ||
|
|
51c075355d | ||
|
|
22e821a565 | ||
|
|
3c2896dd30 | ||
|
|
1ba23bdcf5 | ||
|
|
76c2df8948 | ||
|
|
0189328205 | ||
|
|
1f7f86ad4e | ||
|
|
c64641be7f | ||
|
|
caf6ce2296 | ||
|
|
b2b6a31d2d | ||
|
|
9bb19c5d7d | ||
|
|
22b7708e63 | ||
|
|
e6be9aa6ef | ||
|
|
0bf3a2e6c8 | ||
|
|
602491e0ae | ||
|
|
1a668cebc7 | ||
|
|
10e94484a7 | ||
|
|
c83792a815 | ||
|
|
1cfc7cda8c | ||
|
|
f08e9d5dbe | ||
|
|
bea756a350 | ||
|
|
83e8248055 | ||
|
|
8e4d3ad3e2 | ||
|
|
c2fdffd4b7 | ||
|
|
4967324d87 | ||
|
|
bafc29a595 |
@@ -1,6 +1,7 @@
|
||||
import request from '@/assets/js/utils/request'
|
||||
import request1 from '@/assets/js/utils/request1'
|
||||
import getUrl from '@/assets/js/utils/get-url'
|
||||
import store from '@/store'
|
||||
// 保费计算
|
||||
export function saveOrUpdateOrderInfo(data) {
|
||||
return request({
|
||||
@@ -99,6 +100,15 @@ export function uploadImg(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 上传图片
|
||||
export function uploadImg2(data) {
|
||||
return request1({
|
||||
url: getUrl('/uploadImage?imgType='+store.getters.getUploadImgType+'&orderNo='+store.getters.getUploadImgOrderNo, 1, 2),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
/*
|
||||
// 人脸识别
|
||||
export function recognition(data) {
|
||||
|
||||
BIN
src/assets/images/erweima.png
Normal file
BIN
src/assets/images/erweima.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 56 KiB |
BIN
src/assets/images/home_cp_1-1.png
Normal file
BIN
src/assets/images/home_cp_1-1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 59 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 259 KiB After Width: | Height: | Size: 270 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 281 KiB |
@@ -559,7 +559,10 @@ export default {
|
||||
)
|
||||
|
||||
if (insuredDTO) {
|
||||
let insuredPersonAge = insuredDTO.birthday?utilsAge.getAge(insuredDTO.birthday, new Date()):insuredDTO.insuredAge
|
||||
let insuredPersonAge = insuredDTO.insuredAge ? insuredDTO.insuredAge : insuredDTO.age
|
||||
if(insuredDTO.birthday){
|
||||
insuredPersonAge = utilsAge.getAge(insuredDTO.birthday, new Date())
|
||||
}
|
||||
CacheUtils.setLocItem('saleInsuredPersonInfo',
|
||||
JSON.stringify({
|
||||
birthday: insuredDTO.birthday,
|
||||
|
||||
88
src/assets/js/utils/countCredentialValidity.js
Normal file
88
src/assets/js/utils/countCredentialValidity.js
Normal file
@@ -0,0 +1,88 @@
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
export default {
|
||||
//计算身份证起始日期
|
||||
getStartDate: function(birthday, endDate) {
|
||||
let startDate = '' //证件起始日期
|
||||
let startage = ''
|
||||
let endage = utilsAge.getAge(birthday, new Date(endDate))
|
||||
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 未满16周岁的公民申领的居民身份证有效期为5年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
if (endage - 5 < 16) {
|
||||
return startDate = String(Number(endDate.slice(0,4)) - 5) + endDate.slice(4,11)
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满16周岁至25周岁的公民申领的居民身份证有效期为10年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (endage - 5 >= 16 && endage - 10 <= 25) {
|
||||
startDate = String(Number(endDate.slice(0,4)) - 10) + endDate.slice(4,11)
|
||||
startage = utilsAge.getAge(birthday, new Date(startDate))
|
||||
if(startage >= 16 && startage <= 25){
|
||||
return startDate
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满26周岁至45周岁的公民申领的居民身份证有效期为20年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if(endage - 10 >= 26 && endage - 20 <= 45) {
|
||||
startDate = String(Number(endDate.slice(0,4)) - 20) + endDate.slice(4,11)
|
||||
startage = utilsAge.getAge(birthday, new Date(startDate))
|
||||
if(startage >= 26 && startage <= 45){
|
||||
return startDate
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满46周岁的公民申领居民身份证有效期为长期
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (endage - 20 >= 46) {
|
||||
return startDate
|
||||
}
|
||||
},
|
||||
|
||||
//计算身份证截止日期
|
||||
getEndDate: function(birthday, startDate) {
|
||||
let endDate = '' //证件截止日期
|
||||
let startage = utilsAge.getAge(birthday, new Date(startDate))
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 未满16周岁的公民申领的居民身份证有效期为5年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
if (startage < 16) {
|
||||
return endDate = String(Number(startDate.slice(0, 4)) + 5) + startDate.slice(4, 11)
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满16周岁至25周岁的公民申领的居民身份证有效期为10年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (startage >= 16 && startage <= 25) {
|
||||
return endDate = String(Number(startDate.slice(0, 4)) + 10) + startDate.slice(4, 11)
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满26周岁至45周岁的公民申领的居民身份证有效期为20年
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (startage >= 26 && startage <= 45) {
|
||||
return endDate = String(Number(startDate.slice(0, 4)) + 20) + startDate.slice(4, 11)
|
||||
}
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 年满46周岁的公民申领居民身份证有效期为长期
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
else if (startage > 65) {
|
||||
return endDate
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3777,6 +3777,46 @@ export default {
|
||||
{
|
||||
code: "GFRS_M0073__cashValue",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "currentBonus_L",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "currentBonus_M",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "riskAC_L",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "riskAC_M",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "CardiovascularCerebrovascularDiseasesInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "childrenSpecificDiseaseInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "maleSpecificDiseaseInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "femaleSpecificDiseaseInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "supplementarySpecificDiseaseInsurance",
|
||||
label: "元"
|
||||
},
|
||||
{
|
||||
code: "deductible",
|
||||
label: "免赔额"
|
||||
}
|
||||
],
|
||||
// 卡单与短期险重新投保选择职业类别时,两个模块职业类型数据的排序不同,创建这个数据字典,用于在选择职业类别时,作为一个参数传入组件,
|
||||
|
||||
@@ -5,12 +5,14 @@ import CacheUtils from '@/assets/js/utils/cacheUtils'
|
||||
// import 'nprogress/nprogress.css' // Progress 进度条样式
|
||||
export function permission() {
|
||||
router.beforeEach((to, from, next) => {
|
||||
// NProgress.start()
|
||||
//修改title
|
||||
const title = to.meta && to.meta.title
|
||||
if (title) {
|
||||
document.title = title
|
||||
}
|
||||
if(from.path == '/sale/signatureConfirmation' && to.path == '/sale/attachmentManagement'){
|
||||
window.location.href = window.location.origin + '#' + from.path + '?orderNo=' + from.query.orderNo
|
||||
}
|
||||
//判断是否登录
|
||||
let token = CacheUtils.getLocItem('token')
|
||||
if (!token) {
|
||||
|
||||
@@ -653,12 +653,6 @@ export default {
|
||||
// return
|
||||
// }
|
||||
this.userInfo.effectiveDateType = false
|
||||
//如果录入日期早于当前日期
|
||||
if (Date.parse(val) < Date.parse(new Date())) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('您的证件已过期')
|
||||
}
|
||||
}
|
||||
break
|
||||
case '2':
|
||||
|
||||
@@ -28,6 +28,11 @@ export default new Vuex.Store({
|
||||
secondManageCode: '', //内勤所需参数
|
||||
orderDetail: {},//无优卡分享微信端订单信息
|
||||
answerType: false,//风险测评tab是否显示
|
||||
YBidNo: '', //银保代理人电子化合同签署证件号码
|
||||
YBname: '', //银保代理人电子化合同签署姓名
|
||||
YBuuid: '', //银保代理人电子化合同签署代理人uuid
|
||||
uploadImgType: '',
|
||||
uploadImgOrderNo: '',
|
||||
},
|
||||
mutations: {
|
||||
setOrderDetail (state, data) {
|
||||
@@ -75,8 +80,23 @@ export default new Vuex.Store({
|
||||
state.pcList = val
|
||||
},
|
||||
//更新 风险测评是否显示状态
|
||||
updateAnswerType (state, val) {
|
||||
state.answerType = val
|
||||
updateUploadImgType (state, val) {
|
||||
state.uploadImgType = val
|
||||
},
|
||||
updateUploadImgOrderNo (state, val) {
|
||||
state.uploadImgOrderNo = val
|
||||
},
|
||||
//更新 银保代理人电子化合同签署证件号码
|
||||
updateYBidNo (state, val) {
|
||||
state.YBidNo = val
|
||||
},
|
||||
//更新 银保代理人电子化合同签署姓名
|
||||
updateYBname (state, val) {
|
||||
state.YBname = val
|
||||
},
|
||||
//更新 银保代理人电子化合同签署代理人uuid
|
||||
updateYBuuid (state, val) {
|
||||
state.YBuuid = val
|
||||
},
|
||||
},
|
||||
getters: {
|
||||
@@ -104,6 +124,21 @@ export default new Vuex.Store({
|
||||
getAnswerType (state) {
|
||||
return state.answerType
|
||||
},
|
||||
getUploadImgType (state) {
|
||||
return state.uploadImgType
|
||||
},
|
||||
getUploadImgOrderNo (state) {
|
||||
return state.uploadImgOrderNo
|
||||
},
|
||||
getYBidNo (state) {
|
||||
return state.YBidNo
|
||||
},
|
||||
getYBname (state) {
|
||||
return state.YBname
|
||||
},
|
||||
getYBuuid (state) {
|
||||
return state.YBuuid
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
@@ -329,6 +329,7 @@ export default {
|
||||
let orderStatus = order.orderStatus
|
||||
console.log(order.orderStatus,'fdkfa')
|
||||
let cardOrderNo = order.orderNo
|
||||
localStorage.setItem('orderNo', JSON.stringify(cardOrderNo))
|
||||
let url
|
||||
if(orderStatus == '59'){
|
||||
url =`/cardList/GroupAppntInfo?cardOrderNo=${cardOrderNo}&editOrder=1`
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, GoodsAction, GoodsActionIcon, GoodsActionButton, Icon ,Collapse, CollapseItem} from 'vant'
|
||||
import {Field, GoodsAction, GoodsActionIcon, GoodsActionButton, Icon, Collapse, CollapseItem, Dialog} from 'vant'
|
||||
import {cardOrderDetail } from '@/api/ebiz/cardList/cardList.js'
|
||||
import getAreaName from '@/assets/js/utils/getAreaNameForSale'
|
||||
import afterDate from '@/assets/js/utils/getAfterDate.js'
|
||||
@@ -79,7 +79,8 @@ export default {
|
||||
riskDTO: {},
|
||||
productDate: '',
|
||||
orderInfoDTO:{},
|
||||
isGroupCard:''
|
||||
isGroupCard:'',
|
||||
mainRiskCode: ''
|
||||
// isLessEighteen: true // 被保人手机号和邮箱默认展示
|
||||
}
|
||||
},
|
||||
@@ -101,6 +102,11 @@ export default {
|
||||
this.orderInfoDTO = res.orderDTO.orderInfoDTO
|
||||
this.insuredInfo = res.orderDTO.insuredDTOs
|
||||
this.insuredInfo.forEach(item => {
|
||||
item.riskDTOLst.forEach(ii=>{
|
||||
if(ii.isMainRisk == '0'){
|
||||
this.mainRiskCode = ii.mainRiskCode
|
||||
}
|
||||
})
|
||||
item.homeName = getAreaName([{ code: item.homeProvince }, { code: item.homeCity }, { code: item.homeArea }])
|
||||
})
|
||||
// this.riskDTO = res.orderDTO.insuredDTOs[0].riskDTOLst[0]
|
||||
@@ -132,15 +138,37 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
nextStep() {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
}
|
||||
})
|
||||
if(this.mainRiskCode == 'GFRS_M0058'){
|
||||
Dialog.alert({
|
||||
title: '特别提醒',
|
||||
messageAlign: 'left',
|
||||
confirmButtonText: '确认',
|
||||
message: `2023年9月1日起生效的惠桂保保单,不能参保的5类既往症中增加了“神经性耳聋”,敬请注意!`,
|
||||
})
|
||||
.then(() => {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
}
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
}else{
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -290,6 +290,7 @@ export default {
|
||||
accBankProvince: '',
|
||||
accBankCity: '',
|
||||
areaStr: '',
|
||||
mainRiskCode: '',
|
||||
isGroupCard:'' //1 团险标识
|
||||
}
|
||||
},
|
||||
@@ -310,17 +311,13 @@ export default {
|
||||
this.bankListName = orderDetail.orderAccountDTO.bankName
|
||||
this.orderStatus = orderDetail.orderInfoDTO.orderStatus
|
||||
localStorage.orderNo = orderDetail.orderInfoDTO.orderNo
|
||||
// this.radio = '3'
|
||||
// this.isLoading = true
|
||||
// this.$toast.loading({
|
||||
// duration: 0, // 持续展示 toast
|
||||
// forbidClick: true, // 禁用背景点击
|
||||
// loadingType: 'spinner',
|
||||
// message: '加载中……'
|
||||
// })
|
||||
// setTimeout(() => {
|
||||
// this.pay()
|
||||
// }, 500)
|
||||
orderDetail.insuredDTOs.forEach(item=>{
|
||||
item.riskDTOLst.forEach(ii=>{
|
||||
if(ii.isMainRisk == '0'){
|
||||
this.mainRiskCode = ii.mainRiskCode
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
document.title = '支付分享'
|
||||
// 再次支付 调详情 获取信息
|
||||
@@ -513,6 +510,13 @@ export default {
|
||||
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'){
|
||||
this.mainRiskCode = ii.mainRiskCode
|
||||
}
|
||||
})
|
||||
})
|
||||
this.orderStatus = res.orderDTO.orderInfoDTO.orderStatus
|
||||
try {
|
||||
if (this.noEdit) {
|
||||
@@ -742,58 +746,69 @@ export default {
|
||||
支付之前要先保存银行账户信息
|
||||
*/
|
||||
let res = await saveOrUpdateAccount(data)
|
||||
// .then(res => {
|
||||
console.log('res', res)
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
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, // 禁用背景点击
|
||||
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
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.acceptInsurance()
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
}else{
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
|
||||
// if (!flag) {
|
||||
// let rs = await this.underWrite()
|
||||
|
||||
// if (rs.result != '0') {
|
||||
// this.$toast.clear()
|
||||
// return this.$toast(rs.resultMessage)
|
||||
// }
|
||||
|
||||
// if (rs.uwResult != '02') {
|
||||
// return this.$toast(rs.message)
|
||||
// }
|
||||
// }
|
||||
|
||||
this.acceptInsurance()
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
this.isLoading = false
|
||||
}
|
||||
// })
|
||||
} else {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
|
||||
// if (!flag) {
|
||||
// let rs = await this.underWrite()
|
||||
|
||||
// if (rs.result != '0') {
|
||||
// this.$toast.clear()
|
||||
// return this.$toast(rs.resultMessage)
|
||||
// }
|
||||
|
||||
// if (rs.uwResult != '02') {
|
||||
// return this.$toast(rs.message)
|
||||
// }
|
||||
// }
|
||||
|
||||
this.acceptInsurance()
|
||||
}
|
||||
},
|
||||
// 选择微信支付校验身份证类型
|
||||
|
||||
@@ -127,7 +127,8 @@ export default {
|
||||
productDate = new Date(parseInt(hoDate) * 1000)
|
||||
insuYearM = productDate.getMonth() + 1 < 10 ? '0' + (productDate.getMonth() + 1) : productDate.getMonth() + 1
|
||||
insuYearD = productDate.getDate() < 10 ? '0' + productDate.getDate() : productDate.getDate()
|
||||
productDateTime = productDate.getFullYear() + '年' + insuYearM + '月' + insuYearD + '日'
|
||||
// productDateTime = productDate.getFullYear() + '年' + insuYearM + '月' + insuYearD + '日'
|
||||
productDateTime = afterDate.getAfterDateTime(insuYear.cvaliDate,1)
|
||||
this.productDate = currentData + '0时至' + productDateTime + '24时止'
|
||||
this.orderAmount = this.orderDTO.orderInfoDTO.orderAmount
|
||||
},
|
||||
|
||||
@@ -978,7 +978,9 @@ export default {
|
||||
if (res.result == 0) {
|
||||
//选择保障方案
|
||||
this.trialList = res.trialList
|
||||
this.allPrice = res.trialList[0].prem
|
||||
if (!this.allPrice) {
|
||||
this.allPrice = res.trialList[0].prem
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
@@ -1594,10 +1596,32 @@ export default {
|
||||
this.userInfo.homeAddress = data.homeAddress //家庭详细地址
|
||||
this.userInfo.occupationCode = data.occupationCode
|
||||
this.userInfo.occupationName = data.occupationName
|
||||
let thisoccupationType = ''
|
||||
let thislifeGrade = ''
|
||||
let thishealthGrade = ''
|
||||
let collect = (data,code) => {
|
||||
data.forEach(item => {
|
||||
if (item.code == code) {
|
||||
if (this.trialDTOS.productInsuredDTO.healthGrade && this.trialDTOS.productInsuredDTO.healthGrade != '0') {
|
||||
thisoccupationType = item.healthGrade
|
||||
}
|
||||
if (this.trialDTOS.productInsuredDTO.lifeGrade && this.trialDTOS.productInsuredDTO.lifeGrade != '0') {
|
||||
thisoccupationType = item.lifeGrade
|
||||
}
|
||||
thislifeGrade = item.lifeGrade
|
||||
thishealthGrade = item.healthGrade
|
||||
} else {
|
||||
if (item.subs && item.subs.length != 0) {
|
||||
collect(item.subs,code)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
collect(occupationList,data.occupationCode)
|
||||
|
||||
this.userInfo.occupationType = data.lifeGrade
|
||||
this.userInfo.lifeGrade = data.lifeGrade
|
||||
this.userInfo.healthGrade = data.healthGrade
|
||||
this.userInfo.occupationType =thisoccupationType
|
||||
this.userInfo.lifeGrade = thislifeGrade
|
||||
this.userInfo.healthGrade = thishealthGrade
|
||||
this.userInfo.averageAnnualIncome = this.itemProductDTOS.productCode == 'GFRS_M0032' ? data.averageYearlyIncome : '0' //平均年收入
|
||||
//2516--三个学平险--被保险人国籍默认中国,允许修改
|
||||
if (this.itemProductDTOS.productCode == 'GFRS_M0048' || this.itemProductDTOS.productCode == 'GFRS_M0049' || this.itemProductDTOS.productCode == 'GFRS_M0050'
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@
|
||||
</div>
|
||||
|
||||
<div class="text-right pv5">
|
||||
<!-- <van-button v-if="isFrom == 'proposal'" size="small" round @click="editInsure(index,item)" class="mr5" type="danger">编辑</van-button>-->
|
||||
<van-button v-if="isFrom == 'proposal'" size="small" round @click="editInsure(index,item)" class="mr5" type="danger">编辑</van-button>
|
||||
<van-button size="small" round @click="deteleInsure(index)" plain type="danger">删除</van-button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -119,7 +119,7 @@
|
||||
<script>
|
||||
import { Tag, SubmitBar, Icon, Dialog, RadioGroup, Radio, Image } from 'vant'
|
||||
import FieldPicker from '@/components/ebiz/FieldPicker'
|
||||
import { orderDetail, deleteOrderInfo } from '@/api/ebiz/common/common'
|
||||
import { orderDetail, deleteOrderInfo, mainRiskList, mainRiskListProposal, calculatePremium } from '@/api/ebiz/common/common'
|
||||
import { formatAllRisk } from '@/assets/js/utils/formatRiskList'
|
||||
import { getDetail, deleteProposal } from '@/api/ebiz/proposal/proposal.js'
|
||||
import { saveOrderActiveType,getActivityList } from '@/api/ebiz/sale/sale.js'
|
||||
@@ -148,6 +148,7 @@ export default {
|
||||
noCheckedUrl: require('@/assets/images/kmh/no_checked.png'),
|
||||
proposalOrderNo:'',
|
||||
renovate:'',//刷新子组件
|
||||
isCrossChannel: 0, // 是否选择交叉渠道列表 0-否 1-是
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -180,18 +181,30 @@ export default {
|
||||
}
|
||||
//建议书--右上角为退出流程键(到建议书列表)×,并清除浏览记录
|
||||
if (localStorage.isFrom == 'proposal') {
|
||||
// eslint-disable-next-line no-undef
|
||||
setTimeout(() => {
|
||||
EWebBridge.webCallAppInJs('webview_right_button', {
|
||||
btns: [
|
||||
{
|
||||
img: this.$assetsUrl + 'images/del-close.png',
|
||||
route: { flag: '', extra: {} }
|
||||
}
|
||||
]
|
||||
})
|
||||
}, 500)
|
||||
// eslint-disable-next-line no-undef
|
||||
setTimeout(() => {
|
||||
EWebBridge.webCallAppInJs('webview_right_button', {
|
||||
btns: [
|
||||
{
|
||||
img: this.$assetsUrl + 'images/del-close.png',
|
||||
route: { flag: '', extra: {} }
|
||||
}
|
||||
]
|
||||
})
|
||||
}, 500)
|
||||
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';
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
window.appCallBack = this.appCallBack
|
||||
document.body.style.backgroundColor = '#fff'
|
||||
this.getProductList()
|
||||
@@ -422,8 +435,236 @@ export default {
|
||||
this.$toast(resultData.resultMessage)
|
||||
}
|
||||
},
|
||||
//编辑
|
||||
editInsure(index,data){
|
||||
//获取主险列表--普通产品
|
||||
async getMainRiskList(riskProductCode) {
|
||||
let mainRiskCodes = localStorage.mainRiskCodes && JSON.parse(localStorage.mainRiskCodes)
|
||||
let mainListDate = { platform: 'app' }
|
||||
switch (this.isFrom) {
|
||||
case 'proposal':
|
||||
mainListDate.platform = 'proposal'
|
||||
break
|
||||
case 'sale':
|
||||
mainListDate.platform = 'app'
|
||||
break
|
||||
}
|
||||
if (this.isCrossChannel == '1') {
|
||||
mainListDate.platform = 'cross'
|
||||
}
|
||||
let resultData
|
||||
if(this.isFrom == 'proposal'){
|
||||
resultData = await mainRiskListProposal(mainListDate)
|
||||
}else{
|
||||
resultData = await mainRiskList(mainListDate)
|
||||
}
|
||||
if (resultData.result == 0) {
|
||||
if (resultData.mainRiskDTOS && resultData.mainRiskDTOS.length > 0){
|
||||
resultData.mainRiskDTOS.forEach(item=>{
|
||||
if (item.riskProductCode == riskProductCode) {
|
||||
this.result = item
|
||||
}
|
||||
})
|
||||
this.addMainRisk()
|
||||
}
|
||||
}
|
||||
},
|
||||
//储存主险
|
||||
async addMainRisk() {
|
||||
localStorage.setItem('isTrial', '1')
|
||||
let riskProductCode = this.result.riskProductCode
|
||||
let resultData = await calculatePremium({ productCodes: [riskProductCode], platform: 'app', type: '1' })
|
||||
if (resultData.result == 0) {
|
||||
resultData = resultData.trialDTOS[0]
|
||||
localStorage.isTrial = resultData.productTrialInfoDTO.productTrialYearDTOS != null ? '0' : '1'
|
||||
localStorage.hint = resultData.hint
|
||||
if (resultData.productTrialInfoDTO.dutyGroup != null) {
|
||||
resultData.productTrialInfoDTO.dutyGroup.map(item => {
|
||||
if (item.dutyName == '意外身故/伤残保险金') {
|
||||
item.defaultDutyAmt = item.minDutyAmt
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
if (resultData.productTrialInfoDTO.ruleExpression) {
|
||||
let ruleExpression = localStorage.ruleExpression ? JSON.parse(localStorage.ruleExpression) : {}
|
||||
ruleExpression[resultData.productCode] = resultData.productTrialInfoDTO.ruleExpression
|
||||
localStorage.ruleExpression = JSON.stringify(ruleExpression)
|
||||
}
|
||||
|
||||
/********start 主险选择限制 start******/
|
||||
|
||||
// 检验投被人关系 惠企保特殊校验
|
||||
if (riskProductCode == 'GFRS_M0040') {
|
||||
if (riskRules.relationLimit(resultData, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt, this)) {
|
||||
return
|
||||
}
|
||||
}
|
||||
// 检验投被人关系 国富人寿特定疾病药品费用医疗保险特殊校验
|
||||
if (riskProductCode == 'GFRS_M0045') {
|
||||
if (riskRules.relationCommonLimit(resultData, JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt, this)) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if (riskRules.ageLimit(resultData, this, null,riskProductCode)) {
|
||||
return
|
||||
}
|
||||
|
||||
if (riskRules.medicalLimit(resultData, this)) {
|
||||
return
|
||||
}
|
||||
|
||||
if (riskRules.healthGradeLimit(resultData, this)) {
|
||||
return
|
||||
}
|
||||
// if (riskRules.lifeGradeLimit(resultData, this)) {
|
||||
// return
|
||||
// }
|
||||
//validateAppntFlag 0-职业寿险等级需校验主合同的投保人;1-职业寿险等级无需校验主合同的投保人
|
||||
if (resultData.productInsuredDTO.validateAppntFlag == '0') {
|
||||
//校验主合同投保人寿险职业等级
|
||||
if (riskRules.lifeGradeLimitForBaby(resultData, this)) {
|
||||
return
|
||||
}
|
||||
} else {
|
||||
//校验主合同被保险人寿险职业等级
|
||||
if (riskRules.lifeGradeLimit(resultData, this)) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
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)
|
||||
if (flagCompany && localStorage.isFrom != 'proposal') {
|
||||
//校验该投保人的工作单位是否能够投保该产品
|
||||
return this.$toast('该投保人工作单位不能投保该产品')
|
||||
}
|
||||
/********end 主险选择限制 end******/
|
||||
|
||||
//保存附加险
|
||||
localStorage.addtionRiskLst = JSON.stringify(resultData.productTrialInfoDTO.addtionRiskLst)
|
||||
localStorage.isAutoPay = resultData.isAutoPay
|
||||
localStorage.isRenew = resultData.isRenew
|
||||
localStorage.isForceRenew = resultData.isForceRenew
|
||||
localStorage.isRelated = resultData.isRelated
|
||||
|
||||
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 currentProductInfo = localStorage.isTrial == '1' ? {
|
||||
isCrossChannel:this.isCrossChannel,
|
||||
calFactorLst,
|
||||
hasAddtionRisk,
|
||||
isMainRisk: 0,
|
||||
hint: resultData.hint,
|
||||
riskType: resultData.riskType,
|
||||
riskName: this.result.riskName,
|
||||
productCode: this.result.riskProductCode,
|
||||
mainRiskCode: this.result.riskProductCode,
|
||||
documentDTOS: resultData.productTrialInfoDTO.documentDTOS,
|
||||
influences: resultData.productTrialInfoDTO.influences,
|
||||
isRemit: resultData.productTrialInfoDTO.isRemit,
|
||||
hasPredictTransferPrem: resultData.productTrialInfoDTO.hasPredictTransferPrem, //建议书使用 是否展示预计转入保费
|
||||
predictTransferPrem: null //建议书使用 预计转入保费字段
|
||||
} : {
|
||||
isCrossChannel:this.isCrossChannel,
|
||||
productTrialYearDTOS,
|
||||
calFactorLst,
|
||||
hasAddtionRisk,
|
||||
isMainRisk: 0,
|
||||
hint: resultData.hint,
|
||||
riskType: resultData.riskType,
|
||||
riskName: this.result.riskName,
|
||||
productCode: this.result.riskProductCode,
|
||||
mainRiskCode: this.result.riskProductCode,
|
||||
documentDTOS: resultData.productTrialInfoDTO.documentDTOS,
|
||||
influences: resultData.productTrialInfoDTO.influences,
|
||||
isRemit: resultData.productTrialInfoDTO.isRemit,
|
||||
hasPredictTransferPrem: resultData.productTrialInfoDTO.hasPredictTransferPrem, //建议书使用 是否展示预计转入保费
|
||||
predictTransferPrem: null //建议书使用 预计转入保费字段
|
||||
}
|
||||
|
||||
//构建险种数组
|
||||
let productsData
|
||||
if (localStorage.chooseProducts) {
|
||||
productsData = JSON.parse(localStorage.chooseProducts)
|
||||
productsData.push(currentProductInfo)
|
||||
} else {
|
||||
productsData = [currentProductInfo]
|
||||
}
|
||||
//保存选择险种
|
||||
productsData = this.$utils.unrepeatObj(productsData, 'productCode') //产品数组去重,跳转试算页面未成功重复添加同一产品的情况
|
||||
localStorage.chooseProducts = JSON.stringify(productsData)
|
||||
this.jumpTo(this.thisEditIndex,this.thisEditData)
|
||||
}
|
||||
},
|
||||
//构建险种因子列表
|
||||
getFactorList(resultData) {
|
||||
let productTrialInfoDTO = resultData.productTrialInfoDTO
|
||||
console.log(productTrialInfoDTO, 'wode')
|
||||
let calFactorLst = resultData.productTrialInfoDTO.calFactorLst
|
||||
console.log('calFactorLst', calFactorLst)
|
||||
|
||||
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 => {
|
||||
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'){
|
||||
//养老保险金领取年龄
|
||||
item[item.code] = factor[item.code]
|
||||
item['sex'] = factor.sex
|
||||
}else {
|
||||
item[item.code] = factor[item.code]
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
item.columns.push(itemColumns)
|
||||
})
|
||||
} else if (item.type == 1) {
|
||||
//按年龄选择
|
||||
if (productTrialInfoDTO[item.code] != null) {
|
||||
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)){
|
||||
item = Object.assign(item, factor)
|
||||
}
|
||||
})
|
||||
if (item.code == 'inputPrem') {
|
||||
item['inputPrem'] = Number(item.minPrem) * Number(item.moneyUnit)
|
||||
} else {
|
||||
item['amt'] = Number(item.minAmt) * Number(item.moneyUnit)
|
||||
}
|
||||
}
|
||||
}
|
||||
//规则储存
|
||||
item['rules'] = productTrialInfoDTO[item.code]
|
||||
})
|
||||
// // 用于意外险初始化保额
|
||||
// calFactorLst.map(item => {
|
||||
// if (item.code == '"dutyGroup"') {
|
||||
// item.rules.map(factor => {
|
||||
// factor[0].defaultDutyAmt = 50
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
return calFactorLst
|
||||
},
|
||||
jumpTo(index,data){
|
||||
let insuanceIdInfo = [{insuanceId: data.insuanceId, riskCode: data.riskCode, isMainRisk: 0 }]
|
||||
if(data.addtion && data.addtion.length != 0){
|
||||
data.addtion.forEach(item=>{
|
||||
@@ -437,11 +678,12 @@ export default {
|
||||
let isProposal = localStorage.isFrom == 'proposal' ? true : false
|
||||
let thismyurl = ''
|
||||
if (this.$route.query.orderNo) {
|
||||
thismyurl = '/common/calculatePremium/?orderNo=' + this.$route.query.orderNo + '&insuanceId='+insuanceId
|
||||
thismyurl = '/common/calculatePremium/?orderNo=' + this.$route.query.orderNo + '&insuanceIdInfo='+JSON.stringify(insuanceIdInfo)
|
||||
} else if (this.$route.query.proposalOrderNo) {
|
||||
thismyurl = '/common/calculatePremium?proposalOrderNo=' + this.$route.query.proposalOrderNo + '&insuanceId='+insuanceId
|
||||
thismyurl = '/common/calculatePremium?proposalOrderNo=' + this.$route.query.proposalOrderNo + '&insuanceIdInfo='+JSON.stringify(insuanceIdInfo)
|
||||
}
|
||||
if (isProposal) {
|
||||
window.localStorage.removeItem("editproposaladdrisk")
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
@@ -453,6 +695,12 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
//编辑
|
||||
editInsure(index,data){
|
||||
this.thisEditIndex = index
|
||||
this.thisEditData = data
|
||||
this.getMainRiskList(data.riskCode)
|
||||
},
|
||||
//下一步
|
||||
async nextStep() {
|
||||
if (!this.$route.query.salePageFlag) {
|
||||
|
||||
@@ -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_M0002')" />
|
||||
<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_M0035')" />
|
||||
<img src="../../../assets/images/home_cp_2.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0072')" />
|
||||
</div>
|
||||
</template>
|
||||
<template v-else-if="branchType == '6'">
|
||||
@@ -122,10 +122,10 @@
|
||||
<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_M0002')" />
|
||||
<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_M0046')" />
|
||||
<img src="../../../assets/images/home_cp_2.png" style="width: 100%;" @click="goDetail('GFRSPRO_M0072')" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -453,21 +453,10 @@ export default {
|
||||
//编辑被保险人
|
||||
edit(item) {
|
||||
item.birthday = item.birthdayLabel
|
||||
// item.age = item.insuredAge
|
||||
this.$CacheUtils.setLocItem('saleInsuredPersonInfo', JSON.stringify(item)) //存储被保险人信息
|
||||
localStorage.isFrom = 'proposal'
|
||||
// let url = `/common/selectedProduct?proposalEdit=1&proposalOrderNo=${item.orderNo}`
|
||||
let url = `/proposal/insuredPerson?proposalOrderNo=${this.proposalOrderNo}&insuredId=`+item.insuredId
|
||||
this.$router.push({ path: url })
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#${url}`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: url
|
||||
// }
|
||||
// })
|
||||
},
|
||||
//添加被保险人 添加一个没有险种的被保险人
|
||||
addPerson(item) {
|
||||
|
||||
@@ -326,11 +326,11 @@ export default {
|
||||
//点击下一步
|
||||
nextStep() {
|
||||
// 建议书投保人/被保人姓名不必填, 填写姓名时展示姓名(落库),不填写姓名时展示性别+年龄,如:男30岁(不落库)
|
||||
let sex = this.insured.sex == '0'?'男':'女'
|
||||
let name = sex + this.insured.insuredAge+'岁'
|
||||
if(this.insured.name == name){
|
||||
this.insured.name = ''
|
||||
}
|
||||
// let sex = this.insured.sex == '0'?'男':'女'
|
||||
// let name = sex + this.insured.insuredAge+'岁'
|
||||
// if(this.insured.name == name){
|
||||
// this.insured.name = ''
|
||||
// }
|
||||
//保存有没有社保,在保费计算用到
|
||||
//localStorage.setItem('proposalMedical', this.insured.medical == '0' ? '1' : '0')
|
||||
localStorage.proposalMedical = this.insured.medical == '0' ? '1' : '0'
|
||||
|
||||
@@ -4,11 +4,12 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { makePdf, share } from '@/api/ebiz/proposal/proposal.js'
|
||||
import { makePdf, share, getDemo } from '@/api/ebiz/proposal/proposal.js'
|
||||
import { Toast } from 'vant'
|
||||
import config from '@/config'
|
||||
import dataDictionary from '@/assets/js/utils/data-dictionary' //使用数据字典中的险种类型
|
||||
import { weixinShare } from '@/assets/js/utils/wxShare.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
import { queryPersonal } from '@/api/ebiz/laurelClub/laurelClub'
|
||||
export default {
|
||||
data() {
|
||||
@@ -16,7 +17,8 @@ export default {
|
||||
return {
|
||||
pdfUrl: '',
|
||||
isWeixin,
|
||||
title: ''
|
||||
title: '',
|
||||
agent:{}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -31,7 +33,7 @@ export default {
|
||||
this.init()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
async mounted() {
|
||||
let riskCode = localStorage.pdfShareCode
|
||||
dataDictionary.riskType.some(item => {
|
||||
if (item.code == riskCode) {
|
||||
@@ -39,10 +41,78 @@ export default {
|
||||
return true
|
||||
}
|
||||
})
|
||||
if(this.$route.query.proposalOrderNo){
|
||||
let params = {
|
||||
proposalInfoDTO: {
|
||||
proposalNo: this.$route.query.proposalOrderNo
|
||||
}
|
||||
}
|
||||
let res = await getDemo(params)
|
||||
if(res.result == 0){
|
||||
let mainRiskNameList = []
|
||||
res.content.orderDTO.insuredDTOs.forEach(item => {
|
||||
item.riskDTOLst.forEach(item01 => {
|
||||
if (item01.isMainRisk == '0') {
|
||||
mainRiskNameList.push(item01.riskName)
|
||||
}
|
||||
})
|
||||
})
|
||||
// 一、单个被保险人
|
||||
// 1、1个主险(含附加险)的情况,直接显示“主险产品名称”
|
||||
// 2、有2个及以上主险组合,建议书名称显示“保险产品组合计划”
|
||||
// 二、有多个被保险人
|
||||
// 都显示“家庭保障计划”
|
||||
if(mainRiskNameList.length == 1){
|
||||
if (res.content.orderDTO.insuredDTOs.length > 1) {
|
||||
this.title = '家庭保障计划'
|
||||
} else {
|
||||
this.title = mainRiskNameList[0]
|
||||
}
|
||||
}else{
|
||||
if (res.content.orderDTO.insuredDTOs.length > 1) {
|
||||
this.title = '家庭保障计划'
|
||||
} else {
|
||||
this.title = '保险产品组合计划'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
let agentResult = await getAgentInfo({}) //调取代理人查询接口
|
||||
if (agentResult.result == '0'){
|
||||
let { agent } = this
|
||||
let { name } = agentResult
|
||||
agent.name = name
|
||||
}
|
||||
let date = new Date()
|
||||
let month = date.getMonth() + 1
|
||||
if (month <= 9) {
|
||||
month = '0' + month
|
||||
}
|
||||
let reqData = {
|
||||
mdType: 'm',
|
||||
monthStr:date.getFullYear() + month
|
||||
}
|
||||
let shareContent;
|
||||
let resData = await queryPersonal(reqData)
|
||||
if (resData.content.length&&resData.content[0].glevel>0&&resData.content[0].ggrade) {
|
||||
if(resData.content[0].glevel<3){
|
||||
resData.content[0].ggrade='00'
|
||||
}
|
||||
}
|
||||
if (resData.content.length&&resData.content[0].slevel>0&&resData.content[0].sgrade&&resData.content[0].sgrade!='00') {
|
||||
let sgrade =this.memberConversion(resData.content[0].sgrade);
|
||||
shareContent='国富双冠精英'+resData.content[0].slevel+'级'+sgrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
}else if (resData.content.length&&resData.content[0].glevel>0&&resData.content[0].ggrade&&resData.content[0].ggrade!='00') {
|
||||
let ggrade =this.memberConversion(resData.content[0].ggrade);
|
||||
shareContent='国富桂冠精英'+resData.content[0].glevel+'级'+ggrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
} else {
|
||||
shareContent = this.agent.name+'为您设计的专属保险计划书,请查阅!因为国富,所以民安!';
|
||||
}
|
||||
|
||||
weixinShare({
|
||||
title: this.title,
|
||||
imgUrl: this.$assetsUrl + 'images/logo.png',
|
||||
desc: '国富为您量身定制的保险产品,请查收'
|
||||
desc: shareContent
|
||||
})
|
||||
//重置左上角按钮,变成返回
|
||||
window.EWebBridge.webCallAppInJs("webview_left_button",{
|
||||
@@ -109,10 +179,15 @@ export default {
|
||||
if(resData.content[0].glevel<3){
|
||||
resData.content[0].ggrade='00'
|
||||
}
|
||||
}
|
||||
if (resData.content.length&&resData.content[0].slevel>0&&resData.content[0].sgrade&&resData.content[0].sgrade!='00') {
|
||||
let sgrade =this.memberConversion(resData.content[0].sgrade);
|
||||
shareContent='国富双冠精英'+resData.content[0].slevel+'级'+sgrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
}else if (resData.content.length&&resData.content[0].glevel>0&&resData.content[0].ggrade&&resData.content[0].ggrade!='00') {
|
||||
let ggrade =this.memberConversion(resData.content[0].ggrade);
|
||||
shareContent='国富桂冠人力'+resData.content[0].glevel+'级'+ggrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
shareContent='国富桂冠精英'+resData.content[0].glevel+'级'+ggrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
} else {
|
||||
shareContent='国富为您量身定制的保险产品,请查收';
|
||||
shareContent = this.agent.name+'为您设计的专属保险计划书,请查阅!因为国富,所以民安!';
|
||||
}
|
||||
if (data.trigger == 'right_button_click') {
|
||||
// eslint-disable-next-line no-undef
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<div>
|
||||
<div class="mb50">
|
||||
<img class="w178 h41 div_1" src="@/assets/images/proposal/proposal_logo.png" />
|
||||
<div class="white fw500 fs18 div_2">家庭保障计划</div>
|
||||
<div class="white fw500 fs18 div_2">{{mainRiskName}}</div>
|
||||
<van-sticky @scroll="testSticky">
|
||||
<div class="pl15 pt15 flex justify-content-fs align-items-c sticky_div" :class="pageShowType.isFixed ? 'divbg_1' : 'divbg_2'">
|
||||
<div class="mr9 title_item" v-for="(item, index) in pageShowInfo.insuredDTOs" :key="index" @click="checkInsure(item.insuredId)">
|
||||
@@ -199,7 +199,11 @@
|
||||
<div class="text-left" style="width: 75%;">
|
||||
<span>{{ moneyItem.contentLabel }}</span>
|
||||
</div>
|
||||
<div class="text-right">
|
||||
<div class="text-right" v-if="moneyItem.content == 'currentBonus_M'">
|
||||
<span class="color_3A81F6">{{ moneyItem.value | numFormat2 }}</span
|
||||
>{{ moneyItem.content | productRateUnit }}
|
||||
</div>
|
||||
<div class="text-right" v-else>
|
||||
<span class="color_3A81F6">{{ moneyItem.value | numFormatNo }}</span
|
||||
>{{ moneyItem.content | productRateUnit }}
|
||||
</div>
|
||||
@@ -279,7 +283,7 @@
|
||||
</div>
|
||||
<div class="div_02">
|
||||
<div class="text-center div_021">
|
||||
<div class="text-center div_022">家庭保障计划</div>
|
||||
<div class="text-center div_022">{{mainRiskName}}</div>
|
||||
<!-- 如果没有姓名的话,根据性别展示男士或女士 -->
|
||||
<div class="text-center div_023">尊敬的<span v-if="pageShowInfo.appntDTO.name">{{ pageShowInfo.appntDTO.name.substr(0, 1) }}</span>{{ pageShowInfo.appntDTO.sex == '0' ? '先生' : '女士' }}</div>
|
||||
</div>
|
||||
@@ -382,6 +386,7 @@ export default {
|
||||
mainRiskCodes: [],
|
||||
time: 5,
|
||||
proposalNo:'',
|
||||
mainRiskName: ''
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
@@ -395,6 +400,13 @@ export default {
|
||||
numFormat(str) {
|
||||
return str.replace(/\.00/, '')
|
||||
},
|
||||
numFormat2(str) {
|
||||
if (str) {
|
||||
return Number(str.replace(/,/g, '')).toFixed(2)
|
||||
} else {
|
||||
return '-'
|
||||
}
|
||||
},
|
||||
numFormatNo(str) {
|
||||
if (str) {
|
||||
return Number(str.replace(/,/g, '')).toFixed(0)
|
||||
@@ -437,6 +449,7 @@ export default {
|
||||
})
|
||||
}, 1000)
|
||||
window['appCallBack'] = this.appCallBack*/
|
||||
// init方法在微信端存储token,接口请求用此token,所以init方法前不要请求接口,会影响分享微信功能,接口会报token为空
|
||||
this.init()
|
||||
//校验当前用户权限
|
||||
funcPermCheck({}).then(res => {
|
||||
@@ -596,7 +609,7 @@ export default {
|
||||
}
|
||||
},
|
||||
async sharePeople() {
|
||||
console.log(this.agent,'this.agent.name')
|
||||
console.log(this.pageShowInfo.insuredDTOs,'this.pageShowInfo.insuredDTOs')
|
||||
let date = new Date()
|
||||
let month = date.getMonth() + 1
|
||||
if (month <= 9) {
|
||||
@@ -608,25 +621,34 @@ export default {
|
||||
}
|
||||
let shareContent;
|
||||
let resData = await queryPersonal(reqData)
|
||||
// debugger
|
||||
//准会员话术改为普通人话术
|
||||
if(resData.content.length&&resData.content[0].slevel<3){
|
||||
resData.content[0].sgrade='00'
|
||||
}
|
||||
if(resData.content.length&&resData.content[0].glevel<3){
|
||||
resData.content[0].ggrade='00'
|
||||
}
|
||||
if (resData.content.length&&resData.content[0].slevel>0&&resData.content[0].sgrade&&resData.content[0].sgrade!='00') {
|
||||
if(resData.content[0].slevel<3){
|
||||
resData.content[0].sgrade='00'
|
||||
}
|
||||
// if(resData.content[0].slevel<3){
|
||||
// resData.content[0].sgrade='00'
|
||||
// }
|
||||
let sgrade =this.memberConversion(resData.content[0].sgrade);
|
||||
shareContent='国富双冠精英'+resData.content[0].slevel+'级'+sgrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
}else if (resData.content.length&&resData.content[0].glevel>0&&resData.content[0].ggrade&&!resData.content[0].sgrade&&resData.content[0].sgrade!='00') {
|
||||
if(resData.content[0].glevel<3){
|
||||
resData.content[0].ggrade='00'
|
||||
}
|
||||
}else if (resData.content.length&&resData.content[0].glevel>0&&resData.content[0].ggrade&&resData.content[0].ggrade!='00') {
|
||||
// if(resData.content[0].glevel<3){
|
||||
// resData.content[0].ggrade='00'
|
||||
// }
|
||||
let ggrade =this.memberConversion(resData.content[0].ggrade);
|
||||
shareContent='国富桂冠精英'+resData.content[0].glevel+'级'+ggrade+resData.content[0].name+'为您量身定制的保险产品,请查收';
|
||||
} else {
|
||||
shareContent = this.agent.name+'为您设计的专属保险计划书,请查阅!因为国富,所以民安!';
|
||||
shareContent = this.agent.name+'为您设计的专属保险计划书,请查阅!因为国富,所以民安!';
|
||||
}
|
||||
console.log(shareContent,'shareContent')
|
||||
let title
|
||||
let riskList = [] //所有险种
|
||||
let riskCodeList = [] //所有险种code
|
||||
this.pageShowInfo.insuredDTOs.map(item => {
|
||||
this.pageShowInfo.insuredDTOs.map(item => {
|
||||
item.mainRisk.map(item01 => {
|
||||
if (item01.isMainRisk == '0') { //主险
|
||||
riskList.push(item01)
|
||||
@@ -637,11 +659,23 @@ export default {
|
||||
riskCodeList.push(item.riskCode)
|
||||
})
|
||||
let sameRisk = isAllEqual(riskCodeList)
|
||||
// 以主险为单位,一个主险,显示主险名称。 多个主险,显示“家庭综合保障计划”,跟被保人人数无关
|
||||
// 一、单个被保险人
|
||||
// 1、1个主险(含附加险)的情况,直接显示“主险产品名称”
|
||||
// 2、有2个及以上主险组合,建议书名称显示“保险产品组合计划”
|
||||
// 二、有多个被保险人
|
||||
// 都显示“家庭保障计划”
|
||||
if(sameRisk){
|
||||
title= riskList[0].riskName
|
||||
if(this.pageShowInfo.insuredDTOs.length > 1){
|
||||
title='家庭保障计划'
|
||||
}else{
|
||||
title= riskList[0].riskName
|
||||
}
|
||||
}else{
|
||||
title='家庭综合保障计划'
|
||||
if(this.pageShowInfo.insuredDTOs.length > 1){
|
||||
title='家庭保障计划'
|
||||
}else{
|
||||
title= '保险产品组合计划'
|
||||
}
|
||||
}
|
||||
let res = await getSharingToken({ shareType: 'proposal_demonstrate' })
|
||||
if (res.result == '0') {
|
||||
@@ -691,6 +725,32 @@ export default {
|
||||
this.pageShowInfo.appntDTO = res.content.orderDTO.appntDTO
|
||||
this.pageShowInfo.insuredDTOs = res.content.orderDTO.insuredDTOs
|
||||
this.pageShowInfo.showInsuredDTO = this.pageShowInfo.insuredDTOs[0]
|
||||
let mainRiskNameList = []
|
||||
that.pageShowInfo.insuredDTOs.forEach(item => {
|
||||
item.riskDTOLst.forEach(item01 => {
|
||||
if (item01.isMainRisk == '0') {
|
||||
mainRiskNameList.push(item01.riskName)
|
||||
}
|
||||
})
|
||||
})
|
||||
// 一、单个被保险人
|
||||
// 1、1个主险(含附加险)的情况,直接显示“主险产品名称”
|
||||
// 2、有2个及以上主险组合,建议书名称显示“保险产品组合计划”
|
||||
// 二、有多个被保险人
|
||||
// 都显示“家庭保障计划”
|
||||
if(mainRiskNameList.length == 1){
|
||||
if (this.pageShowInfo.insuredDTOs.length > 1) {
|
||||
that.mainRiskName = '家庭保障计划'
|
||||
} else {
|
||||
that.mainRiskName = mainRiskNameList[0]
|
||||
}
|
||||
}else{
|
||||
if (this.pageShowInfo.insuredDTOs.length > 1) {
|
||||
that.mainRiskName = '家庭保障计划'
|
||||
} else {
|
||||
that.mainRiskName = '保险产品组合计划'
|
||||
}
|
||||
}
|
||||
//投保人年龄
|
||||
// this.pageShowInfo.appntDTO.age = getAge.getAge(this.pageShowInfo.appntDTO.birthdayLabel, new Date())
|
||||
let { insuredLabelResult, insuredResult, insuredInfoResult } = res.content.calculusResDTO
|
||||
@@ -880,7 +940,17 @@ export default {
|
||||
},
|
||||
//跳转到pdf 进入建议书后 根据建议书编码来查找相应的pdf
|
||||
async goPDF() {
|
||||
this.$router.push({ path: '/proposal/pdf' })
|
||||
if(this.$route.query.proposalOrderNo){
|
||||
this.$router.push({
|
||||
path: '/proposal/pdf',
|
||||
query: {
|
||||
proposalOrderNo:this.$route.query.proposalOrderNo
|
||||
}
|
||||
})
|
||||
}else{
|
||||
this.$router.push({ path: '/proposal/pdf' })
|
||||
}
|
||||
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
|
||||
@@ -136,6 +136,9 @@
|
||||
data-vv-name="联系地址"
|
||||
/>
|
||||
<van-field v-model="userInfo.village" label="" name="详细地址" placeholder="请输入详细地址" v-validate="'required'" clearable maxlength="30" />
|
||||
<div class="pl10 pt10 pb10 pr10 address fs14">
|
||||
<van-checkbox v-model="withRootUser.value">同投保人地址</van-checkbox>
|
||||
</div>
|
||||
<van-field
|
||||
v-model="userInfo.yearSalary"
|
||||
label="平均年收入(万元)"
|
||||
@@ -238,6 +241,7 @@ import FieldDatePicter from '@/components/ebiz/FieldDatePicter'
|
||||
import OccupationPicker from '@/components/ebiz/occipation/OccupationPicker'
|
||||
import DataDictionary from '@/assets/js/utils/data-dictionary'
|
||||
import areaList from '@/assets/js/utils/areaForSale'
|
||||
import countCredentialValidity from '@/assets/js/utils/countCredentialValidity'
|
||||
import filter from '@/filters/index'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
|
||||
@@ -271,6 +275,10 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
withRootUser: {
|
||||
load: false, //防止重复请求
|
||||
value: false,
|
||||
},
|
||||
nameLimit: false,
|
||||
idNoLimit: false,
|
||||
birthdayLimit: false,
|
||||
@@ -633,6 +641,9 @@ export default {
|
||||
if (this.userInfo.idType == '1') {
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(age,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
@@ -657,63 +668,9 @@ export default {
|
||||
if (this.userInfo.idType == '1') {
|
||||
//获取年龄
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
console.log(age)
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 || this.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
//此外的年龄段不支持
|
||||
// else {
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// return this.$toast('身份证不支持此年龄段')
|
||||
// }
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getStartDate(age,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
@@ -739,6 +696,13 @@ export default {
|
||||
return this.$toast('出生证有效期或出生日期有误')
|
||||
}
|
||||
}
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
if (this.userInfo.certificateValidate && !this.userInfo.certiexpiredate) {
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(age,this.userInfo.certificateValidate)
|
||||
}
|
||||
if (this.userInfo.certiexpiredate && !this.userInfo.certificateValidate) {
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getEndDate(age,this.userInfo.certiexpiredate)
|
||||
}
|
||||
}
|
||||
break
|
||||
}
|
||||
@@ -951,53 +915,44 @@ export default {
|
||||
}
|
||||
//证件止期
|
||||
let val = this.userInfo.certiexpiredate
|
||||
if (Date.parse(val) < Date.parse(new Date())) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('您的证件已过期')
|
||||
}
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
@@ -1196,31 +1151,64 @@ export default {
|
||||
}
|
||||
|
||||
this.isInsured = true
|
||||
let insuredDetail = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo'))
|
||||
console.log(insuredDetail,'insuredDetailqqqqqqqqq')
|
||||
this.userInfo.name = insuredDetail.name //姓名
|
||||
this.nameLimit = Boolean(insuredDetail.name)
|
||||
this.userInfo.sex = insuredDetail.sex //性别
|
||||
this.sexLimit = Boolean(insuredDetail.sex)
|
||||
this.userInfo.nativeplace = insuredDetail.nativeplace //国家地区
|
||||
this.userInfo.birthday = insuredDetail.birthday //出生日期
|
||||
this.birthdayLimit = Boolean(insuredDetail.birthday)
|
||||
this.userInfo.idType = insuredDetail.idType //证件类型
|
||||
this.userInfo.idNo = insuredDetail.idNo //证件号码
|
||||
this.idNoLimit = Boolean(insuredDetail.idNo)
|
||||
this.userInfo.certificateValidate = insuredDetail.certificateValidate //证件起始日期
|
||||
this.userInfo.certiexpiredate = insuredDetail.certiexpiredate == '9999-12-31' ? '' : insuredDetail.certiexpiredate //证件截止日期
|
||||
this.userInfo.effectiveDateType = insuredDetail.certiexpiredate == '9999-12-31' //是否长期
|
||||
this.userInfo.mobile = insuredDetail.mobile
|
||||
this.mobileLimit = Boolean(insuredDetail.mobile)
|
||||
let age = utilsAge.getAge(insuredDetail.birthday, new Date())
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
if (age > 45) {
|
||||
this.userInfo.effectiveDateType = true
|
||||
let params = {
|
||||
orderNo: this.$route.query.orderNo
|
||||
}
|
||||
this.idLimit = true
|
||||
this.userInfo.occupationCode = insuredDetail.occupationCode //职业类别编码
|
||||
this.userInfo.occupationName = insuredDetail.occupationName //职业类别名称
|
||||
getOrderDetail(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
let insuredDetail = res.orderDTO.appntDTO
|
||||
this.userInfo.name = insuredDetail.name //姓名
|
||||
this.nameLimit = Boolean(insuredDetail.name)
|
||||
this.userInfo.sex = insuredDetail.sex //性别
|
||||
this.sexLimit = Boolean(insuredDetail.sex)
|
||||
this.userInfo.nativeplace = insuredDetail.nativeplace //国家地区
|
||||
this.userInfo.birthday = insuredDetail.birthday //出生日期
|
||||
this.birthdayLimit = Boolean(insuredDetail.birthday)
|
||||
this.userInfo.idType = insuredDetail.idType //证件类型
|
||||
this.userInfo.idNo = insuredDetail.idNo //证件号码
|
||||
this.idNoLimit = Boolean(insuredDetail.idNo)
|
||||
this.userInfo.certificateValidate = insuredDetail.certificateValidate //证件起始日期
|
||||
this.userInfo.certiexpiredate = insuredDetail.certiexpiredate == '9999-12-31' ? '' : insuredDetail.certiexpiredate //证件截止日期
|
||||
this.userInfo.effectiveDateType = insuredDetail.certiexpiredate == '9999-12-31' //是否长期
|
||||
this.userInfo.mobile = insuredDetail.mobile
|
||||
this.mobileLimit = Boolean(insuredDetail.mobile)
|
||||
this.userInfo.marriage =insuredDetail.marriage
|
||||
if(this.userInfo.marriage == 1){
|
||||
this.userInfo.marriageStatus = '已婚'
|
||||
}
|
||||
else if(this.userInfo.marriage == 2){
|
||||
this.userInfo.marriageStatus = '未婚'
|
||||
}
|
||||
else if(this.userInfo.marriage == 3){
|
||||
this.userInfo.marriageStatus = '离异'
|
||||
}
|
||||
else if(this.userInfo.marriage == 4){
|
||||
this.userInfo.marriageStatus = '丧偶'
|
||||
}
|
||||
let age = utilsAge.getAge(insuredDetail.birthday, new Date())
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
if (age > 45) {
|
||||
this.userInfo.effectiveDateType = true
|
||||
}
|
||||
this.idLimit = true
|
||||
this.userInfo.occupationCode = insuredDetail.occupationCode //职业类别编码
|
||||
this.userInfo.occupationName = insuredDetail.occupationName //职业类别名称
|
||||
|
||||
this.areaStr = getAreaName([
|
||||
{ code: insuredDetail.homeProvince },
|
||||
{ code: insuredDetail.homeCity },
|
||||
{ code: insuredDetail.homeArea },
|
||||
])
|
||||
this.userInfo.province = insuredDetail.homeProvince
|
||||
this.userInfo.city = insuredDetail.homeCity
|
||||
this.userInfo.area = insuredDetail.homeArea
|
||||
this.userInfo.village = insuredDetail.homeAddress
|
||||
|
||||
this.userInfo.yearSalary = insuredDetail.averageAnnualIncome
|
||||
this.userInfo.averageAnnualIncome = insuredDetail.averageAnnualIncome
|
||||
}
|
||||
})
|
||||
|
||||
} else {
|
||||
this.isInsured = false
|
||||
this.userInfo.relationToInsured = ''
|
||||
@@ -1266,7 +1254,7 @@ export default {
|
||||
let year = date.getFullYear()
|
||||
let month = date.getMonth() + 1
|
||||
month = month.toString().padStart(2, '0')
|
||||
let day = date.getDate()
|
||||
let day = Number(date.getDate()) + 1
|
||||
day = day.toString().padStart(2, '0')
|
||||
return `${year}-${month}-${day}`
|
||||
},
|
||||
@@ -1302,11 +1290,38 @@ export default {
|
||||
}
|
||||
this.effectiveDateTypeAble = false
|
||||
}
|
||||
//如果选择户口本
|
||||
if (this.userInfo.idType == '2') {
|
||||
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
|
||||
this.userInfo.certificateValidate = this.userInfo.birthday
|
||||
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
|
||||
this.idLimit = true
|
||||
//如果选择出生证明
|
||||
}
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
idToText: filter.idToText
|
||||
},
|
||||
watch: {
|
||||
async 'withRootUser.value'(n) {
|
||||
const orderNo = this.$route.query.orderNo
|
||||
if (n && orderNo) {
|
||||
const rs = await getOrderDetail({ orderNo: orderNo});
|
||||
this.areaStr = getAreaName([
|
||||
{ code: rs.orderDTO.appntDTO.homeProvince },
|
||||
{ code: rs.orderDTO.appntDTO.homeCity },
|
||||
{ code: rs.orderDTO.appntDTO.homeArea },
|
||||
])
|
||||
this.userInfo.province = rs.orderDTO.appntDTO.homeProvince
|
||||
this.userInfo.city = rs.orderDTO.appntDTO.homeCity
|
||||
this.userInfo.area = rs.orderDTO.appntDTO.homeArea
|
||||
this.userInfo.village = rs.orderDTO.appntDTO.homeAddress
|
||||
} else {
|
||||
this.homeName = this.userInfo.homeAddress = ''
|
||||
}
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
@@ -1322,5 +1337,9 @@ export default {
|
||||
/deep/.van-checkbox {
|
||||
margin-left: auto;
|
||||
}
|
||||
.address {
|
||||
display: flex;
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -151,7 +151,7 @@
|
||||
<i class="red pr5">*</i>
|
||||
保单形式
|
||||
</label>
|
||||
<van-radio name="0" class="ml30">电子</van-radio>
|
||||
<van-radio name="0" class="ml30">电子(不打印保单)</van-radio>
|
||||
<van-radio name="2" class="ml20">电子+纸质</van-radio>
|
||||
</van-radio-group>
|
||||
</div>
|
||||
@@ -171,6 +171,29 @@
|
||||
v-validate="'required'"
|
||||
@click="toSelect('3')"
|
||||
/> -->
|
||||
<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"/>
|
||||
</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')"
|
||||
/>
|
||||
<select-radio :radios="medicalRadio" v-validate="'required'" label="有无社保" name="有无社保" required :value.sync="userInfo.medical"></select-radio>
|
||||
<van-field
|
||||
:value="userInfo.taxResidentId | idToText('taxIdentity')"
|
||||
@@ -377,6 +400,11 @@
|
||||
</van-popup> -->
|
||||
<!--身份证扫描 -->
|
||||
<van-popup v-model="isScan" position="bottom"><IdentityCardScan @getScanInfo="getIdentityInfo"></IdentityCardScan></van-popup>
|
||||
<van-popup v-model:show="isNewPeopleFlagTipshow" closeable position="bottom" round :style="{ height: '30%' }">
|
||||
<div class="isNewPeopleFlagTipClass">
|
||||
新市民是指因本人创业就业、子女上学、投靠子女等原因来到城镇常住,未获得当地户籍或获得当地户籍不满三年的各类群体,包括但不限于进城务工人员、新就业大中专毕业生等。
|
||||
</div>
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@@ -388,6 +416,7 @@ 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/areaForSale'
|
||||
import countCredentialValidity from '@/assets/js/utils/countCredentialValidity'
|
||||
import areaLists from '@/assets/js/utils/areaNewForSale'
|
||||
import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail, getCompany } from '@/api/ebiz/sale/sale'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
@@ -422,6 +451,7 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isNewPeopleFlagTipshow: false,
|
||||
renovate: '',
|
||||
specilFlag: '', //特殊显示-为桂企产品专写 1-桂企 undefind-其他
|
||||
productCodes: [], //产品编码-用于“产品允许投保人单位列表获取”接口,作为请求参数
|
||||
@@ -525,6 +555,8 @@ export default {
|
||||
// householdProvince: '', //户籍省
|
||||
// householdCity: '' //户籍市
|
||||
// addressStatus: '0' //是否是联系地址
|
||||
isNewPeopleFlag: '', //新市民身份
|
||||
npType: '', //新市民类型
|
||||
},
|
||||
areaList: areaList,
|
||||
areaLists: areaLists,
|
||||
@@ -552,7 +584,7 @@ export default {
|
||||
|
||||
// document.body.style.backgroundColor = '#F5F5F5'
|
||||
//如果是编辑/导航进来
|
||||
this.isElecCont = '0'
|
||||
// this.isElecCont = '0'
|
||||
if (this.$route.query.edit) {
|
||||
const orderNo = this.$route.query.orderNo
|
||||
getOrderDetail({ orderNo: orderNo }).then((res) => {
|
||||
@@ -632,6 +664,9 @@ export default {
|
||||
this.areaLists = areaLists
|
||||
},
|
||||
methods: {
|
||||
isNewPeopleFlagTip(){
|
||||
this.isNewPeopleFlagTipshow = true
|
||||
},
|
||||
workcompanys(list) {
|
||||
// 单位数据
|
||||
console.log(list)
|
||||
@@ -710,7 +745,7 @@ export default {
|
||||
//弹框选择
|
||||
toSelect(pickerType, valueKey) {
|
||||
console.log(valueKey)
|
||||
//pickerType 1、国家地区 2、证件类型 3、文化程度 4、有无社保(弃用) 5、税收居民身份 6、婚姻状况 7、在职情况 8、收入来源
|
||||
//pickerType 1、国家地区 2、证件类型 3、文化程度 4、有无社保(弃用) 5、税收居民身份 6、婚姻状况 7、在职情况 8、收入来源 11、新市民类型
|
||||
;[this.popupShow, this.pickerType] = [true, pickerType]
|
||||
if (valueKey) this.valueKey = valueKey
|
||||
|
||||
@@ -757,6 +792,9 @@ export default {
|
||||
case '10':
|
||||
this.columns = DataDictionary.marriage
|
||||
break
|
||||
case '11':
|
||||
this.columns = DataDictionary.npType
|
||||
break
|
||||
}
|
||||
|
||||
// if (pickerType == '1') {
|
||||
@@ -838,6 +876,8 @@ export default {
|
||||
this.userInfo.workcompany = value
|
||||
} else if (this.pickerType === '10') {
|
||||
this.userInfo.marriageStatus = value.text
|
||||
} else if (this.pickerType === '11') {
|
||||
this.userInfo.npType = value.id
|
||||
}
|
||||
},
|
||||
//证件起始截止日期
|
||||
@@ -858,20 +898,14 @@ export default {
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
// 长期按钮是否禁用
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(this.userInfo.birthday,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
case '1':
|
||||
{
|
||||
console.log('证件截止日期')
|
||||
//证件截止日期
|
||||
//如果已经勾选了长期
|
||||
// if (this.userInfo.effectiveDateType) {
|
||||
// //清空数据并返回
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// return
|
||||
// }
|
||||
this.userInfo.effectiveDateType = false
|
||||
//如果录入日期早于当前日期
|
||||
if (Date.parse(val) < Date.parse(new Date())) {
|
||||
@@ -881,65 +915,9 @@ export default {
|
||||
}
|
||||
//身份证证件类型的判断
|
||||
if (this.userInfo.idType == '1') {
|
||||
//获取年龄
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
console.log(age)
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
//此外的年龄段不支持
|
||||
// else {
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// return this.$toast('身份证不支持此年龄段')
|
||||
// }
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getStartDate(this.userInfo.birthday,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
@@ -961,6 +939,12 @@ export default {
|
||||
if (age < 18) {
|
||||
this.userInfo.workcompany = this.userInfo.workcompany || '无'
|
||||
}
|
||||
if (this.userInfo.certificateValidate && !this.userInfo.certiexpiredate) {
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(this.userInfo.birthday,this.userInfo.certificateValidate)
|
||||
}
|
||||
if (this.userInfo.certiexpiredate && !this.userInfo.certificateValidate) {
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getEndDate(this.userInfo.birthday,this.userInfo.certiexpiredate)
|
||||
}
|
||||
}
|
||||
break
|
||||
}
|
||||
@@ -1018,11 +1002,13 @@ export default {
|
||||
this.userInfo.homeCity = data.homeCity //家庭市
|
||||
this.userInfo.homeArea = data.homeArea //家庭区
|
||||
this.userInfo.homeAddress = data.homeAddress //家庭详细地址
|
||||
this.userInfo.isNewPeopleFlag = data.isNewPeopleFlag //新市民身份
|
||||
this.userInfo.npType = data.npType //新市民类型
|
||||
// this.userInfo.homeZip = data.homeZip //家庭邮编
|
||||
// this.userInfo.homePhone = data.homePhone //家庭电话
|
||||
// this.userInfo.householdProvince = data.province //户籍省
|
||||
// this.userInfo.householdCity = data.city //户籍市
|
||||
this.isElecCont = data.isElecCont || '0' //保单形式
|
||||
this.isElecCont = data.isElecCont //保单形式
|
||||
// if (data.province.length) {
|
||||
// this.census = getAreaName([{ code: data.province }, { code: data.city }]) //户籍
|
||||
// }
|
||||
@@ -1042,6 +1028,18 @@ export default {
|
||||
async nextStep() {
|
||||
//表单校验, 成功跳转
|
||||
let valid = await this.$validator.validate()
|
||||
if(this.manageComCode == '45'){
|
||||
if(this.userInfo.isNewPeopleFlag == '' || this.userInfo.isNewPeopleFlag == null || this.userInfo.isNewPeopleFlag == undefined ){
|
||||
console.log(this.userInfo.isNewPeopleFlag)
|
||||
debugger
|
||||
this.$toast('新市民身份不能为空')
|
||||
return false
|
||||
}
|
||||
}
|
||||
if(this.isElecCont == '' || this.isElecCont == null || this.isElecCont == undefined){
|
||||
this.$toast('请选择保单形式')
|
||||
return false
|
||||
}
|
||||
// .then(valid => {
|
||||
if (true === valid) {
|
||||
localStorage.chooseProductCodesNew = localStorage.chooseProductCodes
|
||||
@@ -1054,32 +1052,9 @@ export default {
|
||||
|
||||
//如果证件类型是身份证
|
||||
if (this.userInfo.idType == '1') {
|
||||
console.log('证件类型是身份证')
|
||||
|
||||
if (this.userInfo.nativeplace != '1') {
|
||||
return this.$toast('证件类型”为“身份证,国籍必须为中国哦')
|
||||
}
|
||||
|
||||
//校验性别是否与身份证号码位相符
|
||||
// if (this.userInfo.idNo.length == '15') {
|
||||
// //15位身份证第15位是性别位, 奇男偶女
|
||||
// let sexSign = this.userInfo.idNo.substr(14, 1)
|
||||
// console.log('性别位' + sexSign)
|
||||
// if ((parseInt(sexSign) % 2 == 0 && this.userInfo.sex != 1) || (parseInt(sexSign) % 2 != 0 && this.userInfo.sex != 0)) {
|
||||
// return this.$toast('性别录入与身份证不符')
|
||||
// }
|
||||
|
||||
// //15位身份证第7-12位是生日位, 年月日
|
||||
// let birthSign = this.userInfo.idNo.substr(6, 6)
|
||||
// console.log('生日位' + birthSign)
|
||||
// if (
|
||||
// this.userInfo.birthday.substr(2, 2) != birthSign.substr(0, 2) ||
|
||||
// this.userInfo.birthday.substr(5, 2) != birthSign.substr(2, 2) ||
|
||||
// this.userInfo.birthday.substr(8, 2) != birthSign.substr(4, 2)
|
||||
// ) {
|
||||
// return this.$toast('生日录入与身份证不符')
|
||||
// }
|
||||
// } else
|
||||
if (this.userInfo.idNo.length == '18') {
|
||||
//18位身份证第17位是性别位, 奇男偶女
|
||||
let sexSign = this.userInfo.idNo.substr(16, 1)
|
||||
@@ -1110,75 +1085,48 @@ export default {
|
||||
|
||||
//身份证证件类型的判断
|
||||
//证件止期
|
||||
let val = this.userInfo.certiexpiredate
|
||||
let val = this.userInfo.certiexpiredate
|
||||
if (Date.parse(val) < Date.parse(new Date())) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('您的证件已过期')
|
||||
}
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
|
||||
// 年龄在 16-25 周岁之间
|
||||
// if (age >= 16 && age <= 25) {
|
||||
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1980-01-01')) {
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// this.effectiveDateTypeAble = true
|
||||
// return this.$toast('证件有效期错误,16周岁~25周岁的公民身份证有效期应小于等于10年')
|
||||
// }
|
||||
// //年龄在 26-45 周岁之间
|
||||
// } else if (age >= 26 && age <= 45) {
|
||||
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1990-01-01')) {
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// this.effectiveDateTypeAble = true
|
||||
// return this.$toast('证件有效期错误,26周岁~45周岁的公民身份证有效期应小于等于20年')
|
||||
// }
|
||||
// }
|
||||
}
|
||||
//证件类型是户口本
|
||||
} else if (this.userInfo.idType == '2') {
|
||||
if (age > 16) {
|
||||
@@ -1583,5 +1531,8 @@ export default {
|
||||
/deep/.van-radio {
|
||||
margin-left: auto;
|
||||
}
|
||||
.isNewPeopleFlagTipClass{
|
||||
margin-top: 45px;line-height: 24px;text-indent: 2em;letter-spacing: 1px;padding: 2px 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -452,6 +452,7 @@ import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
|
||||
import DataDictionary from '@/assets/js/utils/data-dictionary'
|
||||
import areaList from '@/assets/js/utils/areaForSale'
|
||||
import areaLists from '@/assets/js/utils/areaNewForSale'
|
||||
import countCredentialValidity from '@/assets/js/utils/countCredentialValidity'
|
||||
import { saveOrUpdateOrderInfo, getAuthCode, getOrderDetail } from '@/api/ebiz/sale/sale'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
import getAreaName from '@/assets/js/utils/getAreaNameForSale'
|
||||
@@ -1062,6 +1063,9 @@ export default {
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
// 长期按钮是否禁用
|
||||
this.effectiveDateTypeAble = age <= 45
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(this.userInfo.birthday,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
@@ -1088,62 +1092,9 @@ export default {
|
||||
//获取年龄
|
||||
let age = utilsAge.getAge(this.userInfo.birthday, new Date())
|
||||
console.log(age)
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
//此外的年龄段不支持
|
||||
// else {
|
||||
// this.userInfo.certiexpiredate = ''
|
||||
// this.$refs.certiexpiredate.date = ''
|
||||
// return this.$toast('身份证不支持此年龄段')
|
||||
// }
|
||||
if(this.userInfo.birthday){
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getStartDate(this.userInfo.birthday,val)
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
@@ -1170,24 +1121,14 @@ export default {
|
||||
this.userInfo.otherSalarySource = '无'
|
||||
this.userInfo.averageAnnualIncome = '0'
|
||||
this.userInfo.liabilitiesMoney = '0'
|
||||
// this.userInfo.jobStatus = '3'
|
||||
// this.userInfo.marriage = '2'
|
||||
} else {
|
||||
// this.userInfo.salarySource = ''
|
||||
// this.userInfo.averageAnnualIncome = ''
|
||||
// this.userInfo.liabilitiesMoney = ''
|
||||
// this.userInfo.jobStatus = ''
|
||||
// this.userInfo.marriage = ''
|
||||
}
|
||||
}
|
||||
//出生证有效期
|
||||
// if (this.userInfo.idType == '3') {
|
||||
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(val) > Date.parse('1973-01-01')) {
|
||||
// this.userInfo.birthday = ''
|
||||
// this.$refs.birthday.date = ''
|
||||
// return this.$toast('出生证有效期或出生日期有误')
|
||||
// }
|
||||
// }
|
||||
if (this.userInfo.certificateValidate && !this.userInfo.certiexpiredate) {
|
||||
this.userInfo.certiexpiredate = countCredentialValidity.getEndDate(this.userInfo.birthday,this.userInfo.certificateValidate)
|
||||
}
|
||||
if (this.userInfo.certiexpiredate && !this.userInfo.certificateValidate) {
|
||||
this.userInfo.certificateValidate = countCredentialValidity.getEndDate(this.userInfo.birthday,this.userInfo.certiexpiredate)
|
||||
}
|
||||
}
|
||||
break
|
||||
}
|
||||
@@ -1469,56 +1410,47 @@ export default {
|
||||
|
||||
//证件止期
|
||||
let val = this.userInfo.certiexpiredate
|
||||
if (Date.parse(val) < Date.parse(new Date())) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('您的证件已过期')
|
||||
}
|
||||
//年龄在16周岁以下
|
||||
if (age < 16) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁以下的证件有效期为5年')
|
||||
}
|
||||
//年龄在16-21周岁之间
|
||||
}else if (age >= 16 && age <= 21) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('16周岁~21周岁的证件有效期为10年或5年')
|
||||
}
|
||||
//年龄在22-25周岁之间
|
||||
}else if (age >= 22 && age <= 25) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('22周岁~25周岁的证件有效期为10年')
|
||||
}
|
||||
//年龄在26-35周岁之间
|
||||
}else if (age >= 26 && age <= 35) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 10) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('26周岁~35周岁的证件有效期为20年或10年')
|
||||
}
|
||||
//年龄在36-45周岁之间
|
||||
} else if (age >= 36 && age <= 45) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('36周岁~45周岁的证件有效期为20年')
|
||||
}
|
||||
//年龄在46-65周岁之间
|
||||
} else if (age >= 46 && age <= 65) {
|
||||
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 20 && this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
return this.$toast('46周岁~65周岁的证件有效期为20年或长期')
|
||||
}
|
||||
//年龄在65周岁以上
|
||||
} else if (age > 65) {
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
this.userInfo.certiexpiredate = ''
|
||||
this.$refs.certiexpiredate.date = ''
|
||||
if (this.userInfo.effectiveDateType == false) {
|
||||
return this.$toast('65周岁以上的证件有效期为长期')
|
||||
}
|
||||
}
|
||||
}
|
||||
//年龄在0-15周岁之间
|
||||
// if (age <= 15) {
|
||||
// if (Date.parse(this.userInfo.certiexpiredate) - Date.parse(new Date()) > Date.parse('1975-01-01')) {
|
||||
@@ -1904,7 +1836,7 @@ export default {
|
||||
let year = date.getFullYear()
|
||||
let month = date.getMonth() + 1
|
||||
month = month.toString().padStart(2, '0')
|
||||
let day = date.getDate()
|
||||
let day = Number(date.getDate()) + 1
|
||||
day = day.toString().padStart(2, '0')
|
||||
return `${year}-${month}-${day}`
|
||||
},
|
||||
@@ -2003,36 +1935,27 @@ export default {
|
||||
this.userInfo.otherSalarySource = '无'
|
||||
this.userInfo.averageAnnualIncome = '0'
|
||||
this.userInfo.liabilitiesMoney = '0'
|
||||
// this.userInfo.jobStatus = '3'
|
||||
// this.userInfo.marriage = '2'
|
||||
} else {
|
||||
this.userInfo.salarySource = ''
|
||||
this.userInfo.averageAnnualIncome = ''
|
||||
this.userInfo.liabilitiesMoney = ''
|
||||
// this.userInfo.jobStatus = ''
|
||||
// this.userInfo.marriage = ''
|
||||
}
|
||||
}
|
||||
if (idToData(val).age > 45) {
|
||||
// this.idLimit = true
|
||||
// this.isRequired = false
|
||||
if (from) {
|
||||
this.userInfo.effectiveDateType = true
|
||||
}
|
||||
this.effectiveDateTypeAble = false
|
||||
} else {
|
||||
// this.idLimit = false
|
||||
// this.isRequired = true
|
||||
// this.userInfo.effectiveDateType = false
|
||||
}
|
||||
//如果选择户口本
|
||||
// if (this.userInfo.idType == '2') {
|
||||
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
|
||||
// this.userInfo.certificateValidate = this.userInfo.birthday
|
||||
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
|
||||
// this.idLimit = true
|
||||
// //如果选择出生证明
|
||||
// } else if (this.userInfo.idType == '3') {
|
||||
if (this.userInfo.idType == '2') {
|
||||
let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1985-12-31')
|
||||
this.userInfo.certificateValidate = this.userInfo.birthday
|
||||
this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
|
||||
this.idLimit = true
|
||||
//如果选择出生证明
|
||||
}
|
||||
// else if (this.userInfo.idType == '3') {
|
||||
// let exipreDate = Date.parse(this.userInfo.birthday) + Date.parse('1972-12-31')
|
||||
// this.userInfo.certificateValidate = this.userInfo.birthday
|
||||
// this.userInfo.certiexpiredate = this.timeStampFormat(exipreDate)
|
||||
|
||||
@@ -13,16 +13,7 @@
|
||||
</van-tabs>
|
||||
</van-sticky>
|
||||
|
||||
<van-list
|
||||
v-model="loading"
|
||||
:immediate-check="false"
|
||||
:finished="finished"
|
||||
:finished-text="finishedText"
|
||||
error-text="请求失败,点击重新加载"
|
||||
:error.sync="error"
|
||||
@load="loadMore"
|
||||
class="pb45"
|
||||
>
|
||||
<van-list v-model="loading" :immediate-check="false" :finished="finished" :finished-text="finishedText" error-text="请求失败,点击重新加载" :error.sync="error" @load="loadMore" class="pb45">
|
||||
<div v-if="isSuccess">
|
||||
<div v-if="saleList.length > 0">
|
||||
<div v-for="(order, index) in saleList" :key="index">
|
||||
@@ -83,57 +74,38 @@
|
||||
</div>
|
||||
|
||||
<div class="text-right mt15 ">
|
||||
<van-button v-if="active == 'uncommit'" round @click="goDetail(order)" size="small" class="mr5" type="danger" v-no-more-click="1000"
|
||||
>编辑</van-button
|
||||
>
|
||||
<van-button
|
||||
v-if="active == 'uncommit'"
|
||||
plain
|
||||
round
|
||||
@click.stop="del(order, index)"
|
||||
size="small"
|
||||
class="mr5"
|
||||
type="danger"
|
||||
v-no-more-click="1000"
|
||||
>删除</van-button
|
||||
>
|
||||
<van-button
|
||||
@click="againPay(order)"
|
||||
v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '19'"
|
||||
size="small"
|
||||
class="mr5"
|
||||
type="danger"
|
||||
round
|
||||
>重新支付</van-button
|
||||
>
|
||||
<van-button
|
||||
@click="changeCard(order)"
|
||||
v-if="(active == 'commit' && order.orderInfoDTO.orderStatus == '48') || (active == 'commit' && order.orderInfoDTO.orderStatus == '49')"
|
||||
size="small"
|
||||
class="mr5"
|
||||
type="danger"
|
||||
round
|
||||
>修改卡号</van-button
|
||||
>
|
||||
<van-button v-if="active == 'uncommit'" round @click="goDetail(order)" size="small" class="mr5" type="danger" v-no-more-click="1000">
|
||||
编辑
|
||||
</van-button>
|
||||
<van-button v-if="active == 'uncommit'" plain round @click.stop="del(order, index)" size="small" class="mr5" type="danger" v-no-more-click="1000">
|
||||
删除
|
||||
</van-button>
|
||||
<van-button @click="againPay(order)" v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '19'" size="small" class="mr5" type="danger" round>
|
||||
重新支付
|
||||
</van-button>
|
||||
<van-button @click="changeCard(order)" v-if="(active == 'commit' && order.orderInfoDTO.orderStatus == '48') || (active == 'commit' && order.orderInfoDTO.orderStatus == '49')" size="small" class="mr5" type="danger" round>
|
||||
修改卡号
|
||||
</van-button>
|
||||
<template v-if="active == 'commit' && order.orderInfoDTO.orderStatus == '55'">
|
||||
<van-button @click="changeCard(order)" size="small" class="mr5" type="danger" round>修改卡号</van-button>
|
||||
<van-button @click="againPay(order)" size="small" class="mr5" type="danger" round>重新支付</van-button>
|
||||
<van-button @click="changeCard(order)" size="small" class="mr5" type="danger" round>
|
||||
修改卡号
|
||||
</van-button>
|
||||
<van-button @click="againPay(order)" size="small" class="mr5" type="danger" round>
|
||||
重新支付
|
||||
</van-button>
|
||||
</template>
|
||||
<template v-if="active == 'commit' && (order.orderInfoDTO.orderStatus == '02' || order.orderInfoDTO.orderStatus == '58')">
|
||||
<van-button @click="goPay(order)" size="small" class="mr5" type="danger" round>去支付</van-button>
|
||||
<van-button @click="goPay(order)" size="small" class="mr5" type="danger" round>
|
||||
去支付
|
||||
</van-button>
|
||||
</template>
|
||||
<!-- doubleFlag 1-否 0-是,doubleFlag为0双录时,canRevokeDouble加 orderStatus 16 -->
|
||||
<van-button
|
||||
@click="revokeOrder(order)"
|
||||
v-if="active == 'commit' && ((canRevoke[order.orderInfoDTO.orderStatus] && (order.orderInfoDTO.doubleFlag == '1' || order.orderInfoDTO.doubleFlag == null || order.orderInfoDTO.doubleFlag == ''))
|
||||
|| (canRevokeDouble[order.orderInfoDTO.orderStatus] && order.orderInfoDTO.doubleFlag == '0'))"
|
||||
size="small"
|
||||
class="mr5"
|
||||
type="danger"
|
||||
round
|
||||
>撤单</van-button
|
||||
>
|
||||
<van-button @click="seePolicy(order)" v-if="active == 'commit'" size="small" type="danger" round>查看投保单</van-button>
|
||||
<van-button @click="revokeOrder(order)" v-if="active == 'commit' && ((canRevoke[order.orderInfoDTO.orderStatus] && (order.orderInfoDTO.doubleFlag == '1' || order.orderInfoDTO.doubleFlag == null || order.orderInfoDTO.doubleFlag == ''))|| (canRevokeDouble[order.orderInfoDTO.orderStatus] && order.orderInfoDTO.doubleFlag == '0'))" size="small" class="mr5" type="danger" round>
|
||||
撤单
|
||||
</van-button>
|
||||
<van-button @click="seePolicy(order)" v-if="active == 'commit'" size="small" type="danger" round>
|
||||
查看投保单
|
||||
</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -147,16 +119,7 @@
|
||||
</van-list>
|
||||
|
||||
<van-button type="danger" class="bottom-btn" @click="add" v-no-more-click="1000">点我新增</van-button>
|
||||
<van-dialog
|
||||
class="dialog-delete"
|
||||
@confirm="checkCaptchaCode"
|
||||
@cancel="cancelCaptchaCode"
|
||||
:before-close="beforeClose"
|
||||
confirm-button-color="#fff"
|
||||
v-model="revokePanelShow"
|
||||
title="短信验证"
|
||||
show-cancel-button
|
||||
>
|
||||
<van-dialog class="dialog-delete" @confirm="checkCaptchaCode" @cancel="cancelCaptchaCode" :before-close="beforeClose" confirm-button-color="#fff" v-model="revokePanelShow" title="短信验证" show-cancel-button>
|
||||
<p class="captchaReceiver">投保人手机号: {{ captchaReceiver | phoneNumFilter }}</p>
|
||||
<van-field v-model="sms" center clearable placeholder="请输入短信验证码">
|
||||
<template #button>
|
||||
@@ -538,44 +501,6 @@ export default {
|
||||
}else if(orderStatus == '63'){//风险测评保存成功, 跳到账户信息--
|
||||
url = '/sale/AccountInformation?edit=1&orderNo='+orderNo
|
||||
}
|
||||
// switch (orderStatus) {
|
||||
// case '01': //已签名待客户确认, 跳到签名确认页面
|
||||
// url = '/sale/SignatureConfirmation?edit=1'
|
||||
// break
|
||||
// case '43': //未签名待客户确认, 跳到签名确认页面
|
||||
// url = '/sale/SignatureConfirmation?edit=1'
|
||||
// break
|
||||
// case '35': //投保人保存成功, 跳到被保险人页面--
|
||||
// url = '/sale/insuredPerson?edit=1'
|
||||
// break
|
||||
// case '36': //被保险人保存成功, 跳到已选产品列表
|
||||
// url = '/common/selectedProduct?edit=1'
|
||||
// break
|
||||
// case '37': //受益人保存成功, 跳到告知信息--
|
||||
// url = '/sale/NotifyingMessage?edit=1'
|
||||
// break
|
||||
// case '38': //账户信息保存成功, 跳到附件管理--
|
||||
// url = '/sale/AttachmentManagement?edit=1'
|
||||
// break
|
||||
// case '39': //险种信息保存成功, 跳到已选产品列表
|
||||
// url = '/common/selectedProduct?edit=1'
|
||||
// break
|
||||
// case '40': //告知信息保存成功, 跳到风险测评--
|
||||
// url = '/sale/answerPage?edit=1'
|
||||
// break
|
||||
// case '': //跳到投保人
|
||||
// url = '/sale/insuredInfo?edit=1'
|
||||
// break
|
||||
// case '44': //建议书转投保, 跳到投保人
|
||||
// url = '/sale/insuredInfo?edit=1'
|
||||
// break
|
||||
// case '62': //风险测评保存成功, 跳到账户信息--
|
||||
// // url = '/sale/AccountInformation?edit=1'
|
||||
// url = '/sale/answerSuccess?edit=1'
|
||||
// break
|
||||
// default:
|
||||
// break
|
||||
// }
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
|
||||
@@ -98,6 +98,7 @@ import { Cell, CellGroup, RadioGroup, Radio, Dialog } from 'vant'
|
||||
import { acceptInsurance, getBankCardSignState,payFlag, underWrite, getOrderDetail,signConfirm} from '@/api/ebiz/sale/sale'
|
||||
import Loading from '@/components/ebiz/Loading'
|
||||
import config from '@/config'
|
||||
import { wxShare } from '@/api/ebiz/common/common.js'
|
||||
export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
@@ -202,6 +203,25 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getOpenid(){
|
||||
wxShare({ url: location.href }).then(response => {
|
||||
if (response.result == '0') {
|
||||
let orderNo = this.$route.query.orderNo
|
||||
let code = this.getUrlParam('code')
|
||||
if(!code){
|
||||
window.location.href = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' + response.content.appid + '&redirect_uri=' + encodeURIComponent(location.href + '?orderNo=' + orderNo) + '&response_type=code&scope=snsapi_base&state=1#wechat_redirect'
|
||||
}else{
|
||||
window.location.href = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' + response.content.appid + '&secret=' + response.content.appsecret + '&code=' + code + '&grant_type=authorization_code'
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 获取地址上的参数
|
||||
getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
var r = window.location.search.substr(1).match(reg);
|
||||
if (r != null) return unescape(r[2]); return null;
|
||||
},
|
||||
async payMentWx(orderNo){
|
||||
const res = await payFlag({ orderNo: orderNo })
|
||||
console.dir(res)
|
||||
@@ -225,6 +245,9 @@ export default {
|
||||
orderNo: this.orderNo,
|
||||
payType: this.radio
|
||||
}
|
||||
if(that.isWeixin){
|
||||
data.payType = 'WXJSAPI'
|
||||
}
|
||||
acceptInsurance(data).then(res => {
|
||||
console.log('----取支付参数结果:', JSON.stringify(res))
|
||||
// res = {'result':'0','resultMessage':'','content':null,'prtNo':'8186270000000008','payStatus':'4','amnt':'63700.00','appntName':'投保人','message':null,'brPayReturnData':{'result':'','resultMessage':'','content':null,'businessId':'1569125393518','businessNo':'8186270000000008','tradeSubType':'COMM','businessType':'SALE','systemType':'GF','money':63700,'businessSubType':'XDCB','thirdType':'0002','thirdName':null,'bankCode':'ABC','epayOrderNo':'1909221209536259999900','companyAccount':null,'tradeState':'TRADING','standardCode':'DEALING','standardMsg':null,'thirdOrderNo':null,'respRemark':null,'tradeTime':'2019-09-22T04:09:53.518+0000','description':'','version':'1','sourceNotecode':'8186270000000008','payType':'MIT01','expireDate':'20191010101010','transSeq':'20190922120953782','transSource':'MIT','applyEntity':'11860000','paymentCode':'8186270000000008','transDate':'20190922','rdSeq':'1909221209536259999900','settleMode':null,'cur':'CNY','transTime':'120953','ourAmount':63700,'fixUser':'1','insurer':'投保人','certType':'0','certNum':'110101199009210011','oppBank':'ABC','oppAct':'6228481200290317812','oppActName':'投保人','cellPhone':null,'purpose':null,'memo':null,'returnURL':'http://139.199.50.151/#/sale/payResult','notifyURL':'http://139.199.50.151:7000/api/v1/epay/epay/payResult','s3Sign':'e3f0581ec6b751337e8eca360a0746bc'}}
|
||||
@@ -432,7 +455,7 @@ export default {
|
||||
flag: 'share',
|
||||
extra: {
|
||||
title: `国富人寿电子投保单(${shareName})付款`,
|
||||
content: '付款进行',
|
||||
content: '投保单号:'+ localStorage.orderNo + '\n' + '支付金额:' + this.underWriteData.orderAmount + '元',
|
||||
url: location.origin + '/#/sale/payMent?orderNo=' + localStorage.orderNo + '&token=' + localStorage.token,
|
||||
img: this.$assetsUrl + 'images/logo.png'
|
||||
}
|
||||
|
||||
@@ -21,13 +21,21 @@
|
||||
<!-- <div v-if="payStatus != '2' && payStatus != '1'" class=" p10 pb250 bg-white">
|
||||
<span class="pt150 fs14"> 如有相关问题,请联系信息技术部运维人员</span>
|
||||
</div> -->
|
||||
<div v-if="payStatus == '1'" class=" p10 pb250 bg-white">
|
||||
<span class="pt150 fs14"> 核心承保中,请您稍后查看</span>
|
||||
<div class="mt15" v-if="this.manageComCode == '45'">
|
||||
<span class="pt150 fs14 green fwb">
|
||||
温馨提示:为维护您的合法权益,广西保险行业协会将向您发送满意度调查短信,欢迎回复短信对我们的销售和服务进行监督。
|
||||
</span>
|
||||
<!-- <div v-if="payStatus == '1'" class=" p10 pb250 bg-white">-->
|
||||
<!-- <span class="pt150 fs14"> 核心承保中,请您稍后查看</span>-->
|
||||
<!-- <div class="mt15" v-if="this.manageComCode == '45'">-->
|
||||
<!-- <span class="pt150 fs14 green fwb">-->
|
||||
<!-- 温馨提示:为维护您的合法权益,广西保险行业协会将向您发送满意度调查短信,欢迎回复短信对我们的销售和服务进行监督。-->
|
||||
<!-- </span>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<div v-if="payStatus == '1'" class="p10 pb250 bg-white" style="text-align: center;padding-top: 50px!important;">
|
||||
<p style="text-align: center;font-weight: bold;">温馨提示</p>
|
||||
<p style="text-align: center;">您可识别下方官方微信"国富人寿"二维码关注工号,查询您的保单信息和服务</p>
|
||||
<div style="padding: 20px;">
|
||||
<img :src="erweima" style="width: 60vw;"/>
|
||||
</div>
|
||||
<p style="text-align: center;font-weight: bold;">长按识别二维码</p>
|
||||
</div>
|
||||
<div v-if="payStatus == '2' || payStatus == '4' || payStatus == '8'" class=" p10 pb250 bg-white">
|
||||
<span v-html="resMessage"></span>
|
||||
@@ -51,161 +59,162 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Cell, CellGroup } from 'vant'
|
||||
import { getPayState } from '@/api/ebiz/sale/sale'
|
||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
isWeixin,
|
||||
// 保融收银台返回的支付流水号
|
||||
paySeqNo: '',
|
||||
// 接口返回数据前,不做页面渲染
|
||||
isReady: true,
|
||||
// 是否已重新获取支付状态。(首次进入本页,立即查询支付结果。如果是‘支付中’,两秒后再次(最后一次)再次获取一次支付状态。)
|
||||
isReloaded: false,
|
||||
// 结果原因
|
||||
resMessage: '',
|
||||
// 支付结果
|
||||
payStatus: '',
|
||||
// 支付信息
|
||||
payInfo: {
|
||||
appntName: '', // 投保人
|
||||
prtNo: '', // 投保单号
|
||||
amnt: '' // 支付金额
|
||||
import { Cell, CellGroup } from 'vant'
|
||||
import { getPayState } from '@/api/ebiz/sale/sale'
|
||||
import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
import erweima from '@/assets/images/erweima.png'
|
||||
export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
isWeixin,
|
||||
// 保融收银台返回的支付流水号
|
||||
paySeqNo: '',
|
||||
// 接口返回数据前,不做页面渲染
|
||||
isReady: true,
|
||||
// 是否已重新获取支付状态。(首次进入本页,立即查询支付结果。如果是‘支付中’,两秒后再次(最后一次)再次获取一次支付状态。)
|
||||
isReloaded: false,
|
||||
// 结果原因
|
||||
resMessage: '',
|
||||
// 支付结果
|
||||
payStatus: '',
|
||||
// 支付信息
|
||||
payInfo: {
|
||||
appntName: '', // 投保人
|
||||
prtNo: '', // 投保单号
|
||||
amnt: '' // 支付金额
|
||||
},
|
||||
// 图片
|
||||
srcSuccess: this.$assetsUrl + 'images/success.png',
|
||||
srcPending: this.$assetsUrl + 'images/pending.png',
|
||||
srcFail: this.$assetsUrl + 'images/fail.png',
|
||||
erweima,
|
||||
manageComCode:''//代理人管理机构 52贵州 45广西
|
||||
}
|
||||
},
|
||||
components: {
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup
|
||||
},
|
||||
methods: {
|
||||
// 返回列表页
|
||||
next() {
|
||||
if(this.isWeixin){
|
||||
WeixinJSBridge.call("closeWindow");
|
||||
}else{
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/list'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/list'
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
// 图片
|
||||
srcSuccess: this.$assetsUrl + 'images/success.png',
|
||||
srcPending: this.$assetsUrl + 'images/pending.png',
|
||||
srcFail: this.$assetsUrl + 'images/fail.png',
|
||||
manageComCode:''//代理人管理机构 52贵州 45广西
|
||||
}
|
||||
},
|
||||
components: {
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup
|
||||
},
|
||||
methods: {
|
||||
// 返回列表页
|
||||
next() {
|
||||
if(this.isWeixin){
|
||||
WeixinJSBridge.call("closeWindow");
|
||||
}else{
|
||||
// 查询支付状态
|
||||
queryPayState() {
|
||||
this.$toast.clear()
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = { orderNo: this.paySeqNo }
|
||||
getPayState(data).then(res => {
|
||||
this.$toast.clear()
|
||||
this.isReady = true
|
||||
console.log('----支付结果查询', JSON.stringify(res))
|
||||
if (res.result == '0') {
|
||||
this.payStatus = res.payStatus
|
||||
this.payInfo = { appntName: res.appntName, prtNo: res.prtNo, amnt: res.amnt }
|
||||
this.resMessage = res.message
|
||||
// 如果是支付中,2秒后,重新获取一次支付状态
|
||||
if (this.payStatus == '4' && !this.isReloaded) {
|
||||
this.isReloaded = true
|
||||
setTimeout(() => {
|
||||
this.queryPayState()
|
||||
}, 2000)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 重新支付
|
||||
rePayMent() {
|
||||
// localStorage.orderNo = order.orderInfoDTO.orderNo
|
||||
// 再次支付 salelist为 0
|
||||
localStorage.salelist = '0'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/list'
|
||||
url: location.origin + '/#/sale/payMent'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/list'
|
||||
path: '/sale/payMent'
|
||||
}
|
||||
})
|
||||
},
|
||||
//更换卡号
|
||||
changeCard() {
|
||||
localStorage.setItem('changeCard', true)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/AccountInformation'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/AccountInformation'
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
// 查询支付状态
|
||||
queryPayState() {
|
||||
this.$toast.clear()
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = { orderNo: this.paySeqNo }
|
||||
getPayState(data).then(res => {
|
||||
this.$toast.clear()
|
||||
this.isReady = true
|
||||
console.log('----支付结果查询', JSON.stringify(res))
|
||||
if (res.result == '0') {
|
||||
this.payStatus = res.payStatus
|
||||
this.payInfo = { appntName: res.appntName, prtNo: res.prtNo, amnt: res.amnt }
|
||||
this.resMessage = res.message
|
||||
// 如果是支付中,2秒后,重新获取一次支付状态
|
||||
if (this.payStatus == '4' && !this.isReloaded) {
|
||||
this.isReloaded = true
|
||||
setTimeout(() => {
|
||||
this.queryPayState()
|
||||
}, 2000)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
created() {
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
},
|
||||
// 重新支付
|
||||
rePayMent() {
|
||||
// localStorage.orderNo = order.orderInfoDTO.orderNo
|
||||
// 再次支付 salelist为 0
|
||||
localStorage.salelist = '0'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/payMent'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/payMent'
|
||||
}
|
||||
})
|
||||
},
|
||||
//更换卡号
|
||||
changeCard() {
|
||||
localStorage.setItem('changeCard', true)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/AccountInformation'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/AccountInformation'
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
created() {
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
},
|
||||
async mounted() {
|
||||
let that = this
|
||||
// document.body.style.backgroundColor = '#fff'
|
||||
that.payStatus = window.localStorage.getItem('payStatus')
|
||||
that.payInfo = JSON.parse(window.localStorage.getItem('payInfo'))
|
||||
if (window.localStorage.getItem('resMessage') != null) {
|
||||
that.resMessage = window.localStorage.getItem('resMessage').replace(/\\n/g, '<br>')
|
||||
}
|
||||
async mounted() {
|
||||
let that = this
|
||||
// document.body.style.backgroundColor = '#fff'
|
||||
that.payStatus = window.localStorage.getItem('payStatus')
|
||||
that.payInfo = JSON.parse(window.localStorage.getItem('payInfo'))
|
||||
if (window.localStorage.getItem('resMessage') != null) {
|
||||
that.resMessage = window.localStorage.getItem('resMessage').replace(/\\n/g, '<br>')
|
||||
}
|
||||
|
||||
this.paySeqNo = this.$route.query.RdSeq
|
||||
if (!this.paySeqNo) {
|
||||
this.$toast({ message: '参数错误,缺少支付流水号‘RdSeq’查询参数', duration: 5000 })
|
||||
} else {
|
||||
this.queryPayState()
|
||||
this.paySeqNo = this.$route.query.RdSeq
|
||||
if (!this.paySeqNo) {
|
||||
this.$toast({ message: '参数错误,缺少支付流水号‘RdSeq’查询参数', duration: 5000 })
|
||||
} else {
|
||||
this.queryPayState()
|
||||
}
|
||||
//获取代理人管理机构 52贵州 45广西
|
||||
let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
this.manageComCode = dataReturn.manageComCode
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
}
|
||||
//获取代理人管理机构 52贵州 45广西
|
||||
let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
this.manageComCode = dataReturn.manageComCode
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.payResult-container {
|
||||
.payResult-header {
|
||||
width: 345px;
|
||||
// height: 143px;
|
||||
.payResult-img {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
.payResult-container {
|
||||
.payResult-header {
|
||||
width: 345px;
|
||||
// height: 143px;
|
||||
.payResult-img {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// /deep/ .van-cell__value {
|
||||
// text-align: left;
|
||||
// }
|
||||
// /deep/ .van-cell__value {
|
||||
// text-align: left;
|
||||
// }
|
||||
</style>
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
<div v-if="isWeixin" class="bg-white mt10 p20 fs14 tips">
|
||||
<p>
|
||||
尊敬的
|
||||
<span>{{ tipsName }}</span
|
||||
>先生/女士,您好!
|
||||
<span>{{ tipsName }}</span>
|
||||
先生/女士,您好!
|
||||
</p>
|
||||
<p>该保单由国富人寿保险股份有限公司进行承保,具体确认信息如下:</p>
|
||||
</div>
|
||||
@@ -47,16 +47,9 @@
|
||||
</div>
|
||||
<p class="start" v-if="airSign != '1'">点击【开始】,进行相关操作</p>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mt20">
|
||||
<van-button
|
||||
type="danger"
|
||||
size="normal"
|
||||
class="w150"
|
||||
plain
|
||||
:disabled="changeCard ? agentSign.documentStatus == '1' : agentSignStatus == '3'"
|
||||
v-no-more-click="1000"
|
||||
@click="start_agent('3')"
|
||||
>开始</van-button
|
||||
>
|
||||
<van-button type="danger" size="normal" class="w150" plain :disabled="changeCard ? agentSign.documentStatus == '1' : agentSignStatus == '3'" v-no-more-click="1000" @click="start_agent('3')">
|
||||
开始
|
||||
</van-button>
|
||||
</div>
|
||||
<div class="text" v-else>操作时间已失效,请联系销售人员!</div>
|
||||
</van-collapse-item>
|
||||
@@ -89,28 +82,13 @@
|
||||
</div>
|
||||
<p class="start" v-if="airSign != '1'">点击【开始】或【分享】,进行相关操作</p>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mt20">
|
||||
<van-button
|
||||
v-if="isShow"
|
||||
type="danger"
|
||||
size="normal"
|
||||
class="w150"
|
||||
plain
|
||||
v-no-more-click="1000"
|
||||
:disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
|
||||
@click="share(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
|
||||
>分享</van-button
|
||||
>
|
||||
<van-button v-if="isShow" type="danger" size="normal" class="w150" plain v-no-more-click="1000" :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'" @click="share(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')">
|
||||
分享
|
||||
</van-button>
|
||||
<!-- 前端测试 -->
|
||||
<van-button
|
||||
type="danger"
|
||||
size="normal"
|
||||
class="w150"
|
||||
plain
|
||||
:disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
|
||||
v-no-more-click="1000"
|
||||
@click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
|
||||
>开始</van-button
|
||||
>
|
||||
<van-button type="danger" size="normal" class="w150" plain :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'" v-no-more-click="1000" @click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')">
|
||||
开始
|
||||
</van-button>
|
||||
</div>
|
||||
<div class="text" v-else>操作时间已失效,请联系销售人员!</div>
|
||||
</van-collapse-item>
|
||||
@@ -134,20 +112,12 @@
|
||||
</div>
|
||||
<p class="start" v-if="airSign != '1'">点击【开始】或【分享】,进行相关操作</p>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mt20">
|
||||
<van-button
|
||||
v-if="isShow"
|
||||
type="danger"
|
||||
size="normal"
|
||||
class="w150"
|
||||
:disabled="insuredSignStatus == '3'"
|
||||
@click="share('1')"
|
||||
plain
|
||||
v-no-more-click="1000"
|
||||
>分享</van-button
|
||||
>
|
||||
<van-button type="danger" size="normal" plain class="w150" :disabled="insuredSignStatus == '3'" @click="start_ocr('1')" v-no-more-click="1000"
|
||||
>开始</van-button
|
||||
>
|
||||
<van-button v-if="isShow" type="danger" size="normal" class="w150" :disabled="insuredSignStatus == '3'" @click="share('1')" plain v-no-more-click="1000">
|
||||
分享
|
||||
</van-button>
|
||||
<van-button type="danger" size="normal" plain class="w150" :disabled="insuredSignStatus == '3'" @click="start_ocr('1')" v-no-more-click="1000">
|
||||
开始
|
||||
</van-button>
|
||||
</div>
|
||||
<div class="text" v-else>操作时间已失效,请联系销售人员!</div>
|
||||
</van-collapse-item>
|
||||
@@ -183,16 +153,9 @@
|
||||
</div>
|
||||
<p class="start" v-if="airSign != '1'">点击【开始】或【分享】,进行相关操作</p>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mt20">
|
||||
<van-button
|
||||
type="danger"
|
||||
size="normal"
|
||||
style="width: 157px"
|
||||
plain
|
||||
:disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'"
|
||||
v-no-more-click="1000"
|
||||
@click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')"
|
||||
>开始</van-button
|
||||
>
|
||||
<van-button type="danger" size="normal" style="width: 157px" plain :disabled="changeCard ? appntSign.documentStatus == '1' : appntSignStatus == '3'" v-no-more-click="1000" @click="start_ocr(saleInsuredPersonInfo.relationToAppnt == '1' ? '2' : '0')">
|
||||
开始
|
||||
</van-button>
|
||||
</div>
|
||||
<div class="text" v-else>操作时间已失效,请联系销售人员!</div>
|
||||
</van-collapse-item>
|
||||
@@ -216,16 +179,9 @@
|
||||
</div>
|
||||
<p class="start" v-if="airSign != '1'">点击【开始】或【分享】,进行相关操作</p>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mt20">
|
||||
<van-button
|
||||
type="danger"
|
||||
size="normal"
|
||||
plain
|
||||
style="width: 157px"
|
||||
:disabled="insuredSignStatus == '3'"
|
||||
@click="start_ocr('1')"
|
||||
v-no-more-click="1000"
|
||||
>开始</van-button
|
||||
>
|
||||
<van-button type="danger" size="normal" plain style="width: 157px" :disabled="insuredSignStatus == '3'" @click="start_ocr('1')" v-no-more-click="1000">
|
||||
开始
|
||||
</van-button>
|
||||
</div>
|
||||
<div class="text" v-else>操作时间已失效,请联系销售人员!</div>
|
||||
</van-collapse-item>
|
||||
@@ -236,27 +192,17 @@
|
||||
<div v-if="!isWeixin">
|
||||
<div v-if="changeCard">
|
||||
<div class="bottom-btn bg-white" v-if="appntSign.documentStatus == '1'">
|
||||
<van-button
|
||||
type="danger"
|
||||
v-if="relationToAppnt == '1' ? true : appntSign.documentStatus == '1' ? true : false"
|
||||
size="large"
|
||||
@click="rePayMent"
|
||||
v-no-more-click="1000"
|
||||
>支付</van-button
|
||||
>
|
||||
<van-button type="danger" v-if="relationToAppnt == '1' ? true : appntSign.documentStatus == '1' ? true : false" size="large" @click="rePayMent" v-no-more-click="1000">
|
||||
支付
|
||||
</van-button>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<!--判断代理人自保件承诺书是否签名 或者不是自保件 投保人是否都签名-->
|
||||
<div class="bottom-btn bg-white" v-if="(agentSignStatus == '3'&& appntSignStatus == '3')||(agentSignStatus == ''&& appntSignStatus == '3')">
|
||||
<van-button
|
||||
type="danger"
|
||||
v-if="relationToAppnt == '1' ? true : insuredSignStatus == '3' ? true : false"
|
||||
size="large"
|
||||
@click="next"
|
||||
v-no-more-click="1000"
|
||||
>提交</van-button
|
||||
>
|
||||
<van-button type="danger" v-if="relationToAppnt == '1' ? true : insuredSignStatus == '3' ? true : false" size="large" @click="next" v-no-more-click="1000">
|
||||
提交
|
||||
</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -264,13 +210,7 @@
|
||||
<!-- <video controls style="width: 100%; max-height: calc(100vh - 60px)" src="/app/video/rlsb.mp4"></video> -->
|
||||
<div class="" v-if="videoShow" style="height: calc(100vh - 60px); display: flex; align-items: center; flex-flow: column; justify-content: center">
|
||||
<!-- <van-notice-bar :scrollable="false" class="notice" style="width: 100%">为维护您的合法权益,请您务必观看防范销售误导视频。</van-notice-bar> -->
|
||||
<video
|
||||
controls
|
||||
style="width: 100%; max-height: calc(100vh - 60px)"
|
||||
:src="'https://gf-dev-202005-1254138932.cos.ap-shanghai-fsi.myqcloud.com/gfapp/pub01/2021/04/28/guofulive.MP4'"
|
||||
ref="vid"
|
||||
@timeupdate="timeupdate"
|
||||
></video>
|
||||
<video controls style="width: 100%; max-height: calc(100vh - 60px)" :src="'https://gf-dev-202005-1254138932.cos.ap-shanghai-fsi.myqcloud.com/gfapp/pub01/2021/04/28/guofulive.MP4'" ref="vid" @timeupdate="timeupdate"></video>
|
||||
</div>
|
||||
<div class="bottom-btn bg-white">
|
||||
<van-button type="danger" size="large" @click="isVideoUrlClick()" v-no-more-click="1000">下一步</van-button>
|
||||
@@ -286,18 +226,16 @@
|
||||
}}</van-button>
|
||||
</van-cell-group>
|
||||
</van-dialog>
|
||||
<!-- <UploadImageFile
|
||||
:typeface="idcardData.typeface && faceAuthCount.weixin < smsAuthNum"
|
||||
:realName="idcardData.idcardName"
|
||||
:idno="idcardData.idcardNumber"
|
||||
@sendimage="sendimage"
|
||||
>
|
||||
</UploadImageFile> -->
|
||||
<van-dialog v-model="thisnewpeopledialogshow" title="提示" confirmButtonText="确定">
|
||||
<div style="padding: 20px;font-size: 14px;padding-top: 0px;">
|
||||
<div style="line-height: 25px;letter-spacing: 1px;">尊敬的客户您好!</div>
|
||||
<div style="line-height: 25px;letter-spacing: 1px;text-indent: 2em;">感谢您投保我公司“爱心保/安心保”产品,在本保险合同生效后被保险人将获得一份专属的健康管理服务,详情请登录公司官方微信公众号“国富人寿保险”>发现国富>新市民专区 查询或拨打公司客服热线400-694-6688咨询,本服务为无偿提供。</div>
|
||||
</div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
// import UploadImageFile from '@/components/ebiz/sale/UploadImageFile'
|
||||
import { Field, Cell, CellGroup, Collapse, CollapseItem, Dialog, NoticeBar } from 'vant'
|
||||
import {
|
||||
underWrite,
|
||||
@@ -321,6 +259,7 @@ export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
thisnewpeopledialogshow: false,
|
||||
isInsuYearFlag: false, //是否为长期险
|
||||
isVideo: false, //是否已阅读视频
|
||||
isVideoNext: false,
|
||||
@@ -330,7 +269,7 @@ export default {
|
||||
timeId: null, // 计时器ID
|
||||
countDown: 60, // 倒计时
|
||||
authCode: '', // 验证码
|
||||
smsAuthNum: 3,
|
||||
smsAuthNum: 2,
|
||||
operaFlag: null,
|
||||
encyCustomerMobile: null,
|
||||
sid: null,
|
||||
@@ -412,122 +351,120 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
timeupdate() {
|
||||
console.log(this.$refs['vid'].paused)
|
||||
if (!this.$refs['vid'].paused) {
|
||||
this.isVideoNext = true
|
||||
}
|
||||
},
|
||||
fakeFaceAuth(expect) {
|
||||
console.log('模拟调用人脸识别')
|
||||
return new Promise(function (resolve, reject) {
|
||||
setTimeout(() => {
|
||||
console.log('模拟人脸识别完成')
|
||||
if (expect) {
|
||||
resolve({ state: '0' })
|
||||
} else {
|
||||
reject({ state: '0' })
|
||||
}
|
||||
}, 2000)
|
||||
})
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
if (this.videoShow) {
|
||||
this.$jump({
|
||||
flag: 'navigation',
|
||||
extra: {
|
||||
title: '签名确认',
|
||||
hiddenRight: '1'
|
||||
}
|
||||
})
|
||||
return (this.videoShow = false)
|
||||
timeupdate() {
|
||||
console.log(this.$refs['vid'].paused)
|
||||
if (!this.$refs['vid'].paused) {
|
||||
this.isVideoNext = true
|
||||
}
|
||||
return this.$dialog
|
||||
.confirm({
|
||||
className: 'dialog-delete',
|
||||
title: '提示',
|
||||
message: '退出流程可能会丢失部分数据,是否确认退出?',
|
||||
cancelButtonColor: '#E9332E',
|
||||
confirmButtonColor: '#FFFFFF'
|
||||
})
|
||||
.then(() => {
|
||||
},
|
||||
fakeFaceAuth(expect) {
|
||||
console.log('模拟调用人脸识别')
|
||||
return new Promise(function (resolve, reject) {
|
||||
setTimeout(() => {
|
||||
console.log('模拟人脸识别完成')
|
||||
if (expect) {
|
||||
resolve({ state: '0' })
|
||||
} else {
|
||||
reject({ state: '0' })
|
||||
}
|
||||
}, 2000)
|
||||
})
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
if (this.videoShow) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
flag: 'navigation',
|
||||
extra: {
|
||||
title: '电子投保单列表',
|
||||
forbidSwipeBack: 1, //当前页面禁止右滑返回
|
||||
url: location.origin + `/#/sale/list`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/sale/list`,
|
||||
type: '1'
|
||||
title: '签名确认',
|
||||
hiddenRight: '1'
|
||||
}
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
return
|
||||
})
|
||||
}
|
||||
},
|
||||
isVideoUrlClick() {
|
||||
console.log(this.isVideoUrl)
|
||||
if (!this.isVideoNext) {
|
||||
this.$dialog
|
||||
.alert({
|
||||
className: 'dialog-alert',
|
||||
title: '提示',
|
||||
message: '为维护您的合法权益,请您务必认真观看防范销售误导视频。',
|
||||
confirmButtonColor: '#ee0a24',
|
||||
confirmButtonText: '确认'
|
||||
})
|
||||
.then(() => {})
|
||||
} else {
|
||||
this.isVideoNext = !this.isVideoNext
|
||||
this.isVideoUrl == 'goUrl' ? this.goUrl() : this.insuredUrl()
|
||||
}
|
||||
},
|
||||
// 初始化
|
||||
async init() {
|
||||
localStorage.doubleRecordFlag = '0' //0不是双录单 1是双录单
|
||||
if (this.isWeixin) {
|
||||
if (this.$route.query.airSign) {
|
||||
sessionStorage.setItem('airSign', this.$route.query.airSign)
|
||||
return (this.videoShow = false)
|
||||
}
|
||||
return this.$dialog
|
||||
.confirm({
|
||||
className: 'dialog-delete',
|
||||
title: '提示',
|
||||
message: '退出流程可能会丢失部分数据,是否确认退出?',
|
||||
cancelButtonColor: '#E9332E',
|
||||
confirmButtonColor: '#FFFFFF'
|
||||
})
|
||||
.then(() => {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '电子投保单列表',
|
||||
forbidSwipeBack: 1, //当前页面禁止右滑返回
|
||||
url: location.origin + `/#/sale/list`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/sale/list`,
|
||||
type: '1'
|
||||
}
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
return
|
||||
})
|
||||
}
|
||||
// this.$CacheUtils.setLocItem('saleInsuredInfo', this.$route.query.saleInsuredInfo)
|
||||
// window.localStorage.setItem('saleInsuredPersonInfo', this.$route.query.saleInsuredPersonInfo)
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
window.localStorage.setItem('orderNo', this.$route.query.orderNo)
|
||||
// window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt)
|
||||
// window.localStorage.setItem('productCode', this.$route.query.productCode)
|
||||
if (this.$route.query.changeCard == '0') {
|
||||
localStorage.setItem('changeCard', true)
|
||||
},
|
||||
isVideoUrlClick() {
|
||||
console.log(this.isVideoUrl)
|
||||
if (!this.isVideoNext) {
|
||||
this.$dialog
|
||||
.alert({
|
||||
className: 'dialog-alert',
|
||||
title: '提示',
|
||||
message: '为维护您的合法权益,请您务必认真观看防范销售误导视频。',
|
||||
confirmButtonColor: '#ee0a24',
|
||||
confirmButtonText: '确认'
|
||||
})
|
||||
.then(() => {})
|
||||
} else {
|
||||
localStorage.removeItem('changeCard')
|
||||
this.isVideoNext = !this.isVideoNext
|
||||
this.isVideoUrl == 'goUrl' ? this.goUrl() : this.insuredUrl()
|
||||
}
|
||||
if (this.$route.query.signInvalid) {
|
||||
sessionStorage.setItem('signInvalid', this.$route.query.signInvalid)
|
||||
}
|
||||
if (this.$route.query.shareCode) {
|
||||
sessionStorage.setItem('shareCode', this.$route.query.shareCode)
|
||||
}
|
||||
let signInvalid = sessionStorage.getItem('signInvalid')
|
||||
let rs = await this.checkSignInvalid(signInvalid)
|
||||
console.log('````````````')
|
||||
console.log('rs: ' + rs)
|
||||
if (rs == '1') {
|
||||
this.isInvalid = false
|
||||
} else {
|
||||
this.isInvalid = true
|
||||
}
|
||||
this.airSign = sessionStorage.getItem('airSign')
|
||||
this.shareCode = sessionStorage.getItem('shareCode')
|
||||
this.changeCard = localStorage.getItem('changeCard')
|
||||
this.relationToAppnt = this.$route.query.relationToAppnt
|
||||
this.isShow = false
|
||||
await this.getOrderDetail()
|
||||
|
||||
console.log('初始化this.appntSign ==', this.appntSign)
|
||||
},
|
||||
// 初始化
|
||||
async init() {
|
||||
localStorage.doubleRecordFlag = '0' //0不是双录单 1是双录单
|
||||
if (this.isWeixin) {
|
||||
if (this.$route.query.airSign) {
|
||||
sessionStorage.setItem('airSign', this.$route.query.airSign)
|
||||
}
|
||||
// this.$CacheUtils.setLocItem('saleInsuredInfo', this.$route.query.saleInsuredInfo)
|
||||
// window.localStorage.setItem('saleInsuredPersonInfo', this.$route.query.saleInsuredPersonInfo)
|
||||
window.localStorage.setItem('token', this.$route.query.token)
|
||||
window.localStorage.setItem('orderNo', this.$route.query.orderNo)
|
||||
// window.localStorage.setItem('relationToAppnt', this.$route.query.relationToAppnt)
|
||||
// window.localStorage.setItem('productCode', this.$route.query.productCode)
|
||||
if (this.$route.query.changeCard == '0') {
|
||||
localStorage.setItem('changeCard', true)
|
||||
} else {
|
||||
localStorage.removeItem('changeCard')
|
||||
}
|
||||
if (this.$route.query.signInvalid) {
|
||||
sessionStorage.setItem('signInvalid', this.$route.query.signInvalid)
|
||||
}
|
||||
if (this.$route.query.shareCode) {
|
||||
sessionStorage.setItem('shareCode', this.$route.query.shareCode)
|
||||
}
|
||||
let signInvalid = sessionStorage.getItem('signInvalid')
|
||||
let rs = await this.checkSignInvalid(signInvalid)
|
||||
console.log('````````````')
|
||||
console.log('rs: ' + rs)
|
||||
if (rs == '1') {
|
||||
this.isInvalid = false
|
||||
} else {
|
||||
this.isInvalid = true
|
||||
}
|
||||
this.airSign = sessionStorage.getItem('airSign')
|
||||
this.shareCode = sessionStorage.getItem('shareCode')
|
||||
this.changeCard = localStorage.getItem('changeCard')
|
||||
this.relationToAppnt = this.$route.query.relationToAppnt
|
||||
this.isShow = false
|
||||
await this.getOrderDetail()
|
||||
if (
|
||||
(this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '0') ||
|
||||
(this.appntSignStatus == '3' && sessionStorage.getItem('shareCode') == '2')
|
||||
@@ -1416,6 +1353,19 @@ export default {
|
||||
},
|
||||
// 获取消息和阅读状态
|
||||
getOrderDetail() {
|
||||
if(!this.$route.query.orderNo || this.$route.query.orderNo == 'undefined'){
|
||||
Dialog.confirm({
|
||||
title: '提示',
|
||||
message: '订单号信息缺失,跳转订单系统重新获取',
|
||||
showCancelButton: false
|
||||
}).then(() => {
|
||||
this.$router.push({
|
||||
path:'/sale/list'
|
||||
})
|
||||
})
|
||||
return false
|
||||
}
|
||||
|
||||
let that = this
|
||||
this.$toast.loading({
|
||||
// 持续展示 toast
|
||||
@@ -1534,28 +1484,28 @@ export default {
|
||||
this.saleInsuredInfo = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredInfo'))
|
||||
this.relationToAppnt = this.saleInsuredPersonInfo.relationToAppnt //将缓存中的与被保险人关系赋值给页面
|
||||
|
||||
that.recmd = res.orderDTO.recmdDTO
|
||||
that.orderInfo = res.orderDTO.orderInfoDTO
|
||||
that.insured = res.orderDTO.insuredDTOs
|
||||
// 初始化RID状态
|
||||
this.realPeopleRidInfo.appntRidFlag = res.orderDTO.appntDTO.ridStatus
|
||||
this.realPeopleRidInfo.insureRidFlag = res.orderDTO.insuredDTOs[0].ridStatus
|
||||
//存code区分万能型产品
|
||||
let productCode, riskName
|
||||
let isDoubleMailRisk = that.orderInfo.isDoubleMailRisk
|
||||
if (isDoubleMailRisk == '1') {
|
||||
productCode = 'GFRS_M0017'
|
||||
riskName = res.orderDTO.insuredDTOs[0].riskDTOLst[1].riskName
|
||||
} else {
|
||||
productCode = that.insured[0].riskDTOLst[0].mainRiskCode
|
||||
riskName = res.orderDTO.insuredDTOs[0].riskDTOLst[0].riskName
|
||||
}
|
||||
if (that.orderInfo && that.orderInfo.activeType) {
|
||||
that.$CacheUtils.setLocItem('activeType',that.orderInfo.activeType)
|
||||
}
|
||||
localStorage.setItem('productCode', productCode)
|
||||
this.riskName = riskName
|
||||
localStorage.setItem('riskName', riskName)
|
||||
that.recmd = res.orderDTO.recmdDTO
|
||||
that.orderInfo = res.orderDTO.orderInfoDTO
|
||||
that.insured = res.orderDTO.insuredDTOs
|
||||
// 初始化RID状态
|
||||
this.realPeopleRidInfo.appntRidFlag = res.orderDTO.appntDTO.ridStatus
|
||||
this.realPeopleRidInfo.insureRidFlag = res.orderDTO.insuredDTOs[0].ridStatus
|
||||
//存code区分万能型产品
|
||||
let productCode, riskName
|
||||
let isDoubleMailRisk = that.orderInfo.isDoubleMailRisk
|
||||
if (isDoubleMailRisk == '1') {
|
||||
productCode = 'GFRS_M0017'
|
||||
riskName = res.orderDTO.insuredDTOs[0].riskDTOLst[1].riskName
|
||||
} else {
|
||||
productCode = that.insured[0].riskDTOLst[0].mainRiskCode
|
||||
riskName = res.orderDTO.insuredDTOs[0].riskDTOLst[0].riskName
|
||||
}
|
||||
if (that.orderInfo && that.orderInfo.activeType) {
|
||||
that.$CacheUtils.setLocItem('activeType',that.orderInfo.activeType)
|
||||
}
|
||||
localStorage.setItem('productCode', productCode)
|
||||
this.riskName = riskName
|
||||
localStorage.setItem('riskName', riskName)
|
||||
|
||||
if (this.relationToAppnt != '1') {
|
||||
this.activeNames.push(res.orderDTO.insuredDTOs.length + 1)
|
||||
@@ -1626,90 +1576,103 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
if(res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0076' || res.orderDTO.orderInfoDTO.productCode == 'GFRS_M0077') {
|
||||
that.thisnewpeopledialogshow = true
|
||||
}
|
||||
resolve('success')
|
||||
}
|
||||
} else {
|
||||
Dialog.confirm({
|
||||
title: '提示',
|
||||
message: res.resultMessage,
|
||||
showCancelButton: false
|
||||
}).then(() => {
|
||||
this.$router.push({
|
||||
path:'/sale/list'
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
//自定义key值排序用
|
||||
addKey(item) {
|
||||
//ducumentCode 1投保须知 2投保单 3产品说明书 4提示书 6免除保险人责任条款说明书 7保险销售行为双录说明
|
||||
// 8指定保单生效日 9短期险投保须知 10国富人寿自保件承诺书 11柳州保险行业寿险投保风险提示书 12个人信息使用授权
|
||||
// documentStatus: 文档状态 0 未读 1 已读 2 未签名 3 已签名
|
||||
// documentType: 文档类型 0 阅读文档 1 签名文档
|
||||
// signType: 签名类型 0 投保人 1 被保人 2 本人
|
||||
if (item.documentCode == '1') {
|
||||
item.key = 2
|
||||
// item.key = 4
|
||||
item.routePath = 'insuranceInformation'
|
||||
} else if (item.documentCode == '2') {
|
||||
// item.key = 9
|
||||
item.key = 11
|
||||
item.routePath = 'SignatureOfElectronic'
|
||||
} else if (item.documentCode == '3') {
|
||||
// item.key = 4
|
||||
item.key = 6
|
||||
item.routePath = 'productTip'
|
||||
} else if (item.documentCode == '4') {
|
||||
// item.key = 5
|
||||
item.key = 7
|
||||
item.routePath = 'InsuranceTip'
|
||||
} else if (item.documentCode == '6') {
|
||||
// item.key = 7
|
||||
item.key = 9
|
||||
item.routePath = 'avoidDutyTip'
|
||||
} else if (item.documentCode == '7') {
|
||||
// item.key = 8
|
||||
item.key = 10
|
||||
item.routePath = 'doubleRecordTip'
|
||||
} else if (item.documentCode == '8') {
|
||||
item.key = 1
|
||||
item.routePath = 'apointValidDoc'
|
||||
} else if (item.documentCode == '9') {
|
||||
// item.key = 3
|
||||
item.key = 5
|
||||
item.routePath = 'shortPeriodProduct'
|
||||
}else if (item.documentCode == '10') {
|
||||
item.key = 1
|
||||
item.routePath = 'commitmentSelfProtect'
|
||||
} else if (item.documentCode == '11') {
|
||||
// item.key = 6
|
||||
item.key = 8
|
||||
item.routePath = 'InsuranceRiskReminder'
|
||||
} else if (item.documentCode == '12') {
|
||||
// item.key = 10
|
||||
item.key = 12
|
||||
item.routePath = 'PersonalInformation'
|
||||
} else if (item.documentCode == '13') {
|
||||
// item.key = 2
|
||||
item.key = 4
|
||||
item.routePath = 'insuranceClauses'
|
||||
}else if (item.documentCode == '14') {//风险评估pdf
|
||||
item.key = 3
|
||||
item.routePath = 'AnswerTip'
|
||||
} else if (item.documentCode == '15') {
|
||||
item.key = 7.1
|
||||
item.routePath = 'universalRiskNotifyingMessageTip'
|
||||
}
|
||||
},
|
||||
getSignInvalid() {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = {}
|
||||
getSignInvalid(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
this.signInvalid = res.content.sign
|
||||
}
|
||||
})
|
||||
//自定义key值排序用
|
||||
addKey(item) {
|
||||
//ducumentCode 1投保须知 2投保单 3产品说明书 4提示书 6免除保险人责任条款说明书 7保险销售行为双录说明
|
||||
// 8指定保单生效日 9短期险投保须知 10国富人寿自保件承诺书 11柳州保险行业寿险投保风险提示书 12个人信息使用授权
|
||||
// documentStatus: 文档状态 0 未读 1 已读 2 未签名 3 已签名
|
||||
// documentType: 文档类型 0 阅读文档 1 签名文档
|
||||
// signType: 签名类型 0 投保人 1 被保人 2 本人
|
||||
if (item.documentCode == '1') {
|
||||
item.key = 2
|
||||
// item.key = 4
|
||||
item.routePath = 'insuranceInformation'
|
||||
} else if (item.documentCode == '2') {
|
||||
// item.key = 9
|
||||
item.key = 11
|
||||
item.routePath = 'SignatureOfElectronic'
|
||||
} else if (item.documentCode == '3') {
|
||||
// item.key = 4
|
||||
item.key = 6
|
||||
item.routePath = 'productTip'
|
||||
} else if (item.documentCode == '4') {
|
||||
// item.key = 5
|
||||
item.key = 7
|
||||
item.routePath = 'InsuranceTip'
|
||||
} else if (item.documentCode == '6') {
|
||||
// item.key = 7
|
||||
item.key = 9
|
||||
item.routePath = 'avoidDutyTip'
|
||||
} else if (item.documentCode == '7') {
|
||||
// item.key = 8
|
||||
item.key = 10
|
||||
item.routePath = 'doubleRecordTip'
|
||||
} else if (item.documentCode == '8') {
|
||||
item.key = 1
|
||||
item.routePath = 'apointValidDoc'
|
||||
} else if (item.documentCode == '9') {
|
||||
// item.key = 3
|
||||
item.key = 5
|
||||
item.routePath = 'shortPeriodProduct'
|
||||
}else if (item.documentCode == '10') {
|
||||
item.key = 1
|
||||
item.routePath = 'commitmentSelfProtect'
|
||||
} else if (item.documentCode == '11') {
|
||||
// item.key = 6
|
||||
item.key = 8
|
||||
item.routePath = 'InsuranceRiskReminder'
|
||||
} else if (item.documentCode == '12') {
|
||||
// item.key = 10
|
||||
item.key = 12
|
||||
item.routePath = 'PersonalInformation'
|
||||
} else if (item.documentCode == '13') {
|
||||
// item.key = 2
|
||||
item.key = 4
|
||||
item.routePath = 'insuranceClauses'
|
||||
}else if (item.documentCode == '14') {//风险评估pdf
|
||||
item.key = 3
|
||||
item.routePath = 'AnswerTip'
|
||||
} else if (item.documentCode == '15') {
|
||||
item.key = 7.1
|
||||
item.routePath = 'universalRiskNotifyingMessageTip'
|
||||
}
|
||||
},
|
||||
getSignInvalid() {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = {}
|
||||
getSignInvalid(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
this.signInvalid = res.content.sign
|
||||
}
|
||||
})
|
||||
},
|
||||
async checkSignInvalid(signInvalid) {
|
||||
let that = this
|
||||
this.$toast.loading({
|
||||
|
||||
@@ -606,10 +606,12 @@ export default {
|
||||
this.$toast.clear()
|
||||
if (JSON.parse(data).state == '1') {
|
||||
this.base64 = decodeURI(JSON.parse(data).sign)
|
||||
this.appntSign.documentStatus = '3'
|
||||
this.isDisabledComplite = false
|
||||
this.isSubmit = false
|
||||
this.isSign = false
|
||||
if(this.base64){
|
||||
this.appntSign.documentStatus = '3'
|
||||
this.isDisabledComplite = false
|
||||
this.isSubmit = false
|
||||
this.isSign = false
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -148,6 +148,11 @@ export default {
|
||||
if (res.result == '0') {
|
||||
res.orderDTO.insuredDTOs[0].riskDTOLst.forEach(item => {
|
||||
if(item.isMainRisk == '0'){
|
||||
/**
|
||||
* @Author: LiuXiaoFeng
|
||||
* @Description: 保险期间大于1年或者是保终身的才展示产品说明书
|
||||
* @Date: 2023/7/4
|
||||
**/
|
||||
if(item.insuYearFlag == 'Y' && item.insuYear > 1){
|
||||
this.hasProductTip = true
|
||||
}
|
||||
|
||||
@@ -32,13 +32,11 @@ module.exports = {
|
||||
chainWebpack: config => {
|
||||
// 移除 prefetch 插件
|
||||
config.plugins.delete('prefetch')
|
||||
|
||||
// 或者
|
||||
// 修改它的选项:
|
||||
// config.plugin('prefetch').tap(options => {
|
||||
// options[0].fileBlacklist = options[0].fileBlacklist || []
|
||||
// options[0].fileBlacklist.push(/myasyncRoute(.)+?\.js$/)
|
||||
// return options
|
||||
// // 压缩代码
|
||||
// config.optimization.minimize(true)
|
||||
// // 分割代码
|
||||
// config.optimization.splitChunks({
|
||||
// chunks: 'all',
|
||||
// })
|
||||
},
|
||||
devServer: {
|
||||
|
||||
Reference in New Issue
Block a user