Compare commits

..

10 Commits

Author SHA1 Message Date
liu.xiaofeng@ebiz-digits.com
8c8b7a9b67 责任组联动功能代码逻辑编写 2024-02-21 15:57:50 +08:00
liu.xiaofeng@ebiz-digits.com
01300a2caa 免赔额和免赔比例显示逻辑调整 2024-02-21 11:18:11 +08:00
liu.xiaofeng@ebiz-digits.com
2be815d1bd 一月修改为旺季 2024-02-01 10:31:22 +08:00
liu.xiaofeng@ebiz-digits.com
21a8f13c7e 签字页面和阅读文件页面字体大小调整 2024-01-31 00:05:32 +08:00
liu.xiaofeng@ebiz-digits.com
c5dd4bcb51 合并签字功能完善 2024-01-31 00:02:02 +08:00
liu.xiaofeng@ebiz-digits.com
a6f572b816 签字确认页面字体大小调整 2024-01-26 14:35:24 +08:00
liu.xiaofeng@ebiz-digits.com
85cfccd60e 去掉package-lock.json文件 2024-01-24 16:19:43 +08:00
liu.xiaofeng@ebiz-digits.com
6bd95572b7 配置文件修改 2024-01-24 16:19:39 +08:00
liu.xiaofeng@ebiz-digits.com
3366c05099 支付失败结果页面点击跳转更换卡号页面路由传递订单号参数 2024-01-23 11:27:56 +08:00
liu.xiaofeng@ebiz-digits.com
bc47dc6f8e 支付失败结果页面点击跳转更换卡号页面路由传递订单号参数 2024-01-23 11:27:53 +08:00
14 changed files with 162 additions and 357 deletions

View File

@@ -59,6 +59,7 @@
"node-sass": "^4.14.1",
"postcss-px-to-viewport": "^1.1.1",
"sass-loader": "^7.3.1",
"terser-webpack-plugin": "^4.2.3",
"vue-template-compiler": "^2.6.10"
}
}

View File

@@ -29,29 +29,29 @@ function getSearchString (key) {
}
return obj[key]
}
let apiVersion = 'v1'
// var ua = window.navigator.userAgent.toLowerCase()
// //通过正则表达式匹配ua中是否含有MicroMessenger字符串, 在微信
// if (localStorage.getItem('apiVersion')) {
// apiVersion = localStorage.getItem('apiVersion')
// } else {
// if (ua.match(/MicroMessenger/i) == 'micromessenger') {
// //report/reportList数据报表页面在浏览器可以打开了但在微信或企业微信中打开不了,接口请求不需要token
// if (window.location.href.indexOf('apiVersion') > 0) {
// apiVersion = getSearchString('apiVersion') == 'V3' ? 'v3' : 'v2';//url中apiVersion没有时为v2
// } else {
// apiVersion = 'v3'
// }
// } else {
// // 在app
// if (navigator.userAgent.indexOf('JZG_') > 0) {
// apiVersion = navigator.userAgent.split('JZG_')[1].split('/')[0].split('_')[1] == 'V3' ? 'v3' : 'v2'
// }
// }
// window.localStorage.setItem('apiVersion', apiVersion)
// }
// // 可以多个接口域名,按需添加
// console.log('环境:', process.env.VUE_APP_FLAG)
let apiVersion = 'v2'
var ua = window.navigator.userAgent.toLowerCase()
//通过正则表达式匹配ua中是否含有MicroMessenger字符串, 在微信
if (localStorage.getItem('apiVersion')) {
apiVersion = localStorage.getItem('apiVersion')
} else {
if (ua.match(/MicroMessenger/i) == 'micromessenger') {
//report/reportList数据报表页面在浏览器可以打开了但在微信或企业微信中打开不了,接口请求不需要token
if (window.location.href.indexOf('apiVersion') > 0) {
apiVersion = getSearchString('apiVersion') == 'V3' ? 'v3' : 'v2';//url中apiVersion没有时为v2
} else {
apiVersion = 'v3'
}
} else {
// 在app
if (navigator.userAgent.indexOf('JZG_') > 0) {
apiVersion = navigator.userAgent.split('JZG_')[1].split('/')[0].split('_')[1] == 'V3' ? 'v3' : 'v2'
}
}
window.localStorage.setItem('apiVersion', apiVersion)
}
// 可以多个接口域名,按需添加
console.log('环境:', process.env.VUE_APP_FLAG)
switch (process.env.VUE_APP_FLAG) {
case 'dev':
apiDomain = 'https://iagentsales-test2.e-guofu.com:5200/api/' + apiVersion // 国富api ///api/v1

View File

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

View File

@@ -136,7 +136,7 @@
:max="dutyItem.maxDutyAmt"
:show-plus="false"
:show-minus="false"
:disabled="item.productCode == 'GFRS_A0012' || (item.productCode == 'GFRS_M0077' && !dutyItem.necess) || (item.productCode == 'GFRS_M0077' && dutyItem.duty == '311507')"
:disabled="item.productCode == 'GFRS_M0088' || item.productCode == 'GFRS_A0012' || (item.productCode == 'GFRS_M0077' && !dutyItem.necess) || (item.productCode == 'GFRS_M0077' && dutyItem.duty == '311507')"
class="ml10 mr10"
@focus="focusStep"
@blur="blurStep(dutyItem, index,item.productCode)"
@@ -798,7 +798,6 @@
}
})
}
console.log(item,'123231321321')
let payEndYearVal
//初始化时交费期间为一次性交清时,在就是中介渠道, 附加险GFRS_A0007GFRS_A0009GFRS_A0010去掉后附加险list就为空--隐藏icon
item.calFactorLst.map((i) => {
@@ -871,7 +870,6 @@
//初始化数据试算
this.getTrial()
})
console.log(this.trialList, '')
// 判断是否 含有 后台配置js验证函数
if (localStorage.ruleExpression) {
let ruleExpression = JSON.parse(localStorage.ruleExpression)
@@ -918,7 +916,7 @@
let detailPromise = this.isFrom === 'proposal' ? localStorage.proposalMedical : await getOrderDetail({ orderNo })
this.chooseProducts.map((item) => {
if (
!(item.mainRiskCode === 'GFRS_M0016' ||item.mainRiskCode === 'GFRS_M0070' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005')
!(item.mainRiskCode === 'GFRS_M0016' ||item.mainRiskCode === 'GFRS_M0070' || item.productCode === 'GFRS_A0004' || item.productCode === 'GFRS_A0008' || item.productCode === 'GFRS_A0005' || item.productCode === 'GFRS_M0088')
) {
//其他产品删掉两个字段
let calFactorLst = item.calFactorLst
@@ -1215,6 +1213,30 @@
})
}
}
if (validateRiskCode === 'GFRS_M0088'){
if(dutyItem.duty == '411200' || dutyItem.duty == '411206' || dutyItem.duty == '411207'){
this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules.forEach((i) => {
if(i.duty == '411200' || i.duty == '411206' || i.duty == '411207'){
i.necess = dutyItem.necess
} else {
if(dutyItem.necess){
i.necess = !dutyItem.necess
}
}
})
}
if(dutyItem.duty == '411200_GBC' || dutyItem.duty == '411206_GBC' || dutyItem.duty == '411207_GBC'){
this.chooseProducts[productIndex].calFactorLst[calFactorIndex].rules.forEach((i) => {
if(i.duty == '411200_GBC' || i.duty == '411206_GBC' || i.duty == '411207_GBC'){
i.necess = dutyItem.necess
} else {
if(dutyItem.necess){
i.necess = !dutyItem.necess
}
}
})
}
}
this.valiAndSend(dutyItem, productIndex)
},
valiAndSend(dutyItem, productIndex) {
@@ -1289,7 +1311,6 @@
const rule = dutdutyGFRS_M0070RulesyRules[duty]
const mutiple = rule.mutiple || DUTY_DEFAULT_MIN
const min = rule.min || DUTY_DEFAULT_MIN
console.log(rule.min,'rule.min')
if (!value || value < min || value % mutiple !== 0) {
this.$toast(rule.msg)
this.nextStepFlag = true
@@ -1565,7 +1586,6 @@
},
trialBeforeRule() {
let that = this
console.log('走试算前规则')
// 针对于国富人寿附加两全保险附加险(GFRS_A0011),缴费期间期间要等于主险的缴费期间
let mainRiskInfo = this.getMainRiskInfo()
this.chooseProducts.forEach((item) => {
@@ -2492,10 +2512,6 @@
}
else if (productCode == 'GFRS_M0035' || productCode == 'GFRS_M0044'
|| productCode == 'GFRS_M0056' || productCode == 'GFRS_M0057' || productCode == 'GFRS_M0060') {
console.log('defalutValue==', defalutValue)
console.log("currentEle['amt']==", currentEle['amt'])
console.log('riskFactor.rules', riskFactor.rules)
console.log('this.saleInsuredPersonInfo.insuredAge ', this.saleInsuredPersonInfo.insuredAge)
//被保险人年龄如果在50-65区间
if (this.saleInsuredPersonInfo.insuredAge >= 56 && this.saleInsuredPersonInfo.insuredAge <= 60) {
//使用rules规则里的第二条控制保额份数
@@ -2769,9 +2785,6 @@
}
}
}
// let currentEle = this.chooseProducts[this.productIndex].calFactorLst[this.calFactorIndex]
// defalutValue = value
console.log('进来几次')
this.mult = Math.ceil(Number(defalutValue) / Number(riskFactor.defaultValue))
},
//下一步
@@ -2925,8 +2938,6 @@
}
}
}
// console.log(riskItem)
riskItem = Object.assign(riskItem, this.trialInfos[index])
riskDTOLst.push(riskItem)
}

View File

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

View File

@@ -247,7 +247,7 @@ import utilsAge from '@/assets/js/utils/age'
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import CustomerPicker from '@/components/ebiz/customer/CustomerPicker'
import idNoCheck from '@/assets/js/utils/idNoCheck'
import {idNoCheck8, idToData} from './js/verification'
import { idToData } from './js/verification'
import { selectComp } from './js/methods'
import getAreaName from '@/assets/js/utils/getAreaNameForSale'
import { getOrderDetail, checkAppointBnf } from '@/api/ebiz/sale/sale'
@@ -961,8 +961,7 @@ export default {
}
}
//证件类型是户口本
}
else if (this.userInfo.idType == '2') {
} else if (this.userInfo.idType == '2') {
if (age >= 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
@@ -1010,8 +1009,7 @@ export default {
return this.$toast('您填写的证件号码有误')
}
//证件类型是出生证明
}
else if (this.userInfo.idType == '3') {
} else if (this.userInfo.idType == '3') {
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上不能使用出生证作为有效证件')
}
@@ -1021,29 +1019,20 @@ export default {
return this.$toast('您填写的证件号码有误')
}
//证件类型是护照
}
else if (this.userInfo.idType == '4') {
} else if (this.userInfo.idType == '4') {
if (this.userInfo.nativeplace == '1') {
return this.$toast('“证件类型”为“外国人护照”,“国籍”不能选择为“中国”哦~')
}
}
else if (this.userInfo.idType == '5') {
} else if (this.userInfo.idType == '5') {
console.log(this.userInfo.nativeplace, 'nativeplace')
if (this.userInfo.nativeplace != '2' && this.userInfo.nativeplace != '3') {
return this.$toast('“证件类型”为“港澳居民来往内地通行证”,“国籍”请选择“中国香港”或“中国澳门”哦~')
}
}
else if (this.userInfo.idType == '6') {
} else if (this.userInfo.idType == '6') {
if (this.userInfo.nativeplace != '4') {
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
}
}
else if (this.userInfo.idType == '8') {
if (idNoCheck8(this.userInfo).text){
return this.$toast(idNoCheck8(this.userInfo).text)
}
}
else if (this.userInfo.idType == '9') {
} else if (this.userInfo.idType == '9') {
if (this.userInfo.nativeplace != '2' && this.userInfo.nativeplace != '3' && this.userInfo.nativeplace != '4') {
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
}

View File

@@ -460,7 +460,7 @@
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import idNoCheck from '@/assets/js/utils/idNoCheck'
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
import { idToData, idNoCheck8 } from './js/verification'
import { idToData } from './js/verification'
import { selectComp, getIdentityInfo } from './js/methods'
import SearchField from '@/components/common/SearchField'
import riskRules from '@/views/ebiz/common/risk-rules'
@@ -773,6 +773,8 @@
this.isNewPeopleFlagTipshow = true
},
workcompanys(list) {
// 单位数据
console.log(list)
this.userWorkcompanys = list
},
setCustomerMarriage(marriageCode) {
@@ -1241,39 +1243,28 @@
}
}
//证件类型是户口本
}
else if (this.userInfo.idType == '2') {
} else if (this.userInfo.idType == '2') {
if (age > 16) {
return this.$toast('客户年龄在16周岁以上不能使用户口本作为有效证件')
}
}
else if (this.userInfo.idType == '3') {
} else if (this.userInfo.idType == '3') {
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上不能使用出生证作为有效证件')
}
}
else if (this.userInfo.idType == '4') {
} else if (this.userInfo.idType == '4') {
if (this.userInfo.nativeplace == '1') {
return this.$toast('“证件类型”为“外国人护照”,“国籍”不能选择为“中国”哦~')
}
}
else if (this.userInfo.idType == '5') {
} else if (this.userInfo.idType == '5') {
console.log(this.userInfo.nativeplace, 'nativeplace')
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
return this.$toast('“证件类型”为“港澳居民来往内地通行证”,“国籍”请选择“中国香港”或“中国澳门”哦~')
}
}
else if (this.userInfo.idType == '6') {
} else if (this.userInfo.idType == '6') {
if (this.userInfo.nativeplace != 4) {
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
}
}
else if (this.userInfo.idType == '8') {
if (idNoCheck8(this.userInfo).text){
return this.$toast(idNoCheck8(this.userInfo).text)
}
}
else if (this.userInfo.idType == '9') {
} else if (this.userInfo.idType == '9') {
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
}
@@ -1615,37 +1606,35 @@
}
},
getRelatedData(val, source) {
if (this.userInfo.idType != '1' && this.userInfo.idType != '8') {
if (this.userInfo.idType != '1') {
return
}
if(this.userInfo.idType == '1'){
//如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
return this.$toast(idToData(val).text)
}
// // 判断投保人年龄是否大于16周岁
// if (idToData(val).age <= 16) {
// ;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
// return this.$toast('亲投保人年龄必须大于等于16周岁哦~')
// }
//如果证件校验不通过,恢复默认值
if (idToData(val).text) {
;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
return this.$toast(idToData(val).text)
}
// // 判断投保人年龄是否大于16周岁
// if (idToData(val).age <= 16) {
// ;[this.userInfo.idNo, this.userInfo.sex, this.userInfo.birthday, this.effectiveDateTypeAble] = ['', '0', '', false]
// return this.$toast('亲投保人年龄必须大于等于16周岁哦~')
// }
this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = idToData(val).age <= 45
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
//年龄小于18周岁工作单位默认值为
if (idToData(val).age < 18) {
this.userInfo.workcompany = this.userInfo.workcompany || '无'
}
if (idToData(val).age > 45) {
if (source) {
this.userInfo.effectiveDateType = true
}
this.effectiveDateTypeAble = false
} else {
// this.userInfo.effectiveDateType = false
this.userInfo.effectiveDateType = false
this.effectiveDateTypeAble = idToData(val).age <= 45
this.userInfo.birthday = idToData(val).birthday
this.userInfo.sex = idToData(val).sex
//年龄小于18周岁工作单位默认值为
if (idToData(val).age < 18) {
this.userInfo.workcompany = this.userInfo.workcompany || '无'
}
if (idToData(val).age > 45) {
if (source) {
this.userInfo.effectiveDateType = true
}
this.effectiveDateTypeAble = false
} else {
// this.userInfo.effectiveDateType = false
}
},
},

View File

@@ -493,7 +493,7 @@
import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
import idNoCheck from '@/assets/js/utils/idNoCheck'
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
import {idNoCheck8, idToData} from './js/verification'
import { idToData } from './js/verification'
import { selectComp, getIdentityInfo } from './js/methods'
import IndexBar from '@/components/ebiz/sale/IndexBar'
import SearchField from '@/components/common/SearchField'
@@ -1540,8 +1540,7 @@
// }
//证件类型是户口本
}
else if (this.userInfo.idType == '2') {
} else if (this.userInfo.idType == '2') {
if (this.userInfo.nativeplace != '1') {
return this.$toast('证件类型”为“身份证,国籍必须为中国哦')
}
@@ -1592,8 +1591,7 @@
// return this.$toast('户口本的证件号码长度应等于18位')
// }
//证件类型是出生证明
}
else if (this.userInfo.idType == '3') {
} else if (this.userInfo.idType == '3') {
if (age >= 2) {
return this.$toast('客户年龄在2周岁及以上不能使用出生证作为有效证件')
}
@@ -1606,29 +1604,20 @@
// return this.$toast('出生证须大于等于3个字符')
// }
//证件类型是护照
}
else if (this.userInfo.idType == '4') {
} else if (this.userInfo.idType == '4') {
if (this.userInfo.nativeplace == '1') {
return this.$toast('“证件类型”为“外国人护照”,“国籍”不能选择为“中国”哦~')
}
}
else if (this.userInfo.idType == '5') {
} else if (this.userInfo.idType == '5') {
console.log(this.userInfo.nativeplace, 'nativeplace')
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3) {
return this.$toast('“证件类型”为“港澳居民来往内地通行证”,“国籍”请选择“中国香港”或“中国澳门”哦~')
}
}
else if (this.userInfo.idType == '6') {
} else if (this.userInfo.idType == '6') {
if (this.userInfo.nativeplace != 4) {
return this.$toast('“证件类型”为“台湾居民来往大陆通行证”,“国籍”请选择“中国台湾”~')
}
}
else if (this.userInfo.idType == '8') {
if (idNoCheck8(this.userInfo).text){
return this.$toast(idNoCheck8(this.userInfo).text)
}
}
else if (this.userInfo.idType == '9') {
} else if (this.userInfo.idType == '9') {
if (this.userInfo.nativeplace != 2 && this.userInfo.nativeplace != 3 && this.userInfo.nativeplace != 4) {
return this.$toast('“证件类型”为“港澳台居民居住证”,“国籍”请选择“中国香港”、“中国澳门”或“中国台湾”~')
}

View File

@@ -164,10 +164,10 @@
this.$jump({
flag: 'h5',
extra: {
url: location.origin + '/#/sale/AccountInformation'
url: location.origin + '/#/sale/AccountInformation' + '?orderNo=' + this.payInfo.prtNo
},
routerInfo: {
path: '/sale/AccountInformation'
path: '/sale/AccountInformation' + '?orderNo=' + this.payInfo.prtNo
}
})
}

View File

@@ -1162,6 +1162,9 @@ export default {
break
}
}
if(!path) {
path = 'signDocuments'
}
}
}
}
@@ -1179,6 +1182,9 @@ export default {
break
}
}
if(!path) {
path = 'signDocuments'
}
}
}
}
@@ -1193,9 +1199,12 @@ export default {
break
}
}
if(!path) {
path = 'signDocuments'
}
}
}
console.log('12321321'+path)
if (path){
that.$jump({
flag: 'h5',
@@ -1866,12 +1875,12 @@ export default {
line-height: 30px;
}
/deep/ .fs16{
font-size: 16px;
font-size: 16px!important;
}
/deep/ .fs20{
font-size: 20px;
font-size: 16px;
.van-cell{
font-size: 20px;
font-size: 16px;
}
}
</style>

View File

@@ -35,218 +35,20 @@ export function idToData(idNo) {
}
function getBirthById(idNo) {
if(idNo.length == 15) {
// 获取生日
let year = '19' + idNo.substr(6, 2)
let month = idNo.substr(8, 2)
let day = idNo.substr(10, 2)
return year + '-' + month + '-' + day
}
if(idNo.length == 18) {
// 获取生日
let year = idNo.substr(6, 4)
let month = idNo.substr(10, 2)
let day = idNo.substr(12, 2)
return year + '-' + month + '-' + day
}
// 获取生日
var year = idNo.substr(6, 4)
var month = idNo.substr(10, 2)
var day = idNo.substr(12, 2)
return year + '-' + month + '-' + day
}
function getSexById(idNo) {
// if(idNo.length == 15){
// // 获取性别
// if (idNo.charAt(13) >= '0' && idNo.charAt(13) <= '9') {
// if (parseInt(idNo.charAt(13)) % 2 == 0) {
// return '1'
// } else {
// return '0'
// }
// }
// }
if(idNo.length == 18) {
// 获取性别
if (idNo.charAt(16) >= '0' && idNo.charAt(16) <= '9') {
if (parseInt(idNo.charAt(16)) % 2 == 0) {
return '1'
} else {
return '0'
}
// 获取性别
if (idNo.charAt(16) >= '0' && idNo.charAt(16) <= '9') {
if (parseInt(idNo.charAt(16)) % 2 == 0) {
return '1'
} else {
return '0'
}
}
}
function js_date_time(unixtime) {
var dateTime = new Date(parseInt(unixtime))
var year = dateTime.getFullYear();
var month = dateTime.getMonth() + 1;
var day = dateTime.getDate();
var timeSpanStr = year + '-' + month.toString().padStart(2, '0') + '-' + day.toString().padStart(2, '0');
return timeSpanStr;
}
export function idNoCheck8(userInfo,type) {
if(!userInfo.idNo) {
return {
text: '证件号码不能为空'
}
}
if(userInfo.idNo.length != 15 && userInfo.idNo.length != 18) {
return {
text: '外国人永久居留身份证位数有误'
}
}
if(userInfo.idNo.length == 15) {
let reg = /^[A-Za-z]{3}\d{12}$/
if(!reg.test(userInfo.idNo)) {
return {
text: '外国人永久居留身份证位数有误'
}
}
}
if(userInfo.idNo.length == 18) {
let reg = / (^9\d{17}$)|(^9\d{16}(\d|X)$)/
if(!reg.test(userInfo.idNo)) {
return {
text: '外国人永久居留身份证位数有误'
}
}
}
// if(userInfo.idNo.length == 15) {
// // 获取生日
// let year = '19' + userInfo.idNo.substr(7, 2)
// let month = userInfo.idNo.substr(9, 2)
// let day = userInfo.idNo.substr(11, 2)
// let thisBirthday = year + '-' + month + '-' + day
// if(thisBirthday != userInfo.birthday) {
// console.log('12321321321',thisBirthday)
// return {
// text: '出生日期必须与证件号码中的生日一致'
// }
// }
// }
if(userInfo.idNo.length == 18) {
// 获取生日
let year = userInfo.idNo.substr(6, 4)
let month = userInfo.idNo.substr(10, 2)
let day = userInfo.idNo.substr(12, 2)
let thisBirthday = year + '-' + month + '-' + day
if(thisBirthday != userInfo.birthday) {
return {
text: '出生日期必须与证件号码中的生日一致'
}
}
}
if(userInfo.idNo.length == 18){
let thisSex = getSexById(userInfo.idNo)
if(thisSex != userInfo.sex) {
return {
text: '性别必须与证件号码中的一致'
}
}
}
if (userInfo.nativeplace == '1' || userInfo.nativeplace == '2' || userInfo.nativeplace == '3' || userInfo.nativeplace == '4') {
return {
text: '外国人永久居留身份证不能选择中国国籍'
}
}
if(!userInfo.certiexpiredate) {
return {
text: '证件截止日期不能为空'
}
}
if(type == 'cardList') {
let thisAge = utilsAge.getAge(userInfo.birthday, new Date())
if(thisAge < 18) {
let date1 = new Date(userInfo.certiexpiredate.replace(/-/g,'/'));
let date2 = date1.setFullYear(date1.getFullYear() - 5);
let date3 = date2+(1000*60*60*24)
let date4 = js_date_time(date3)
let thisAge = utilsAge.getAge(userInfo.birthday, new Date(date4.replace(/-/g,'/')))
if(thisAge > 18) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
if(date3 > new Date().getTime()) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
}
if(thisAge >= 18 && thisAge <= 22) {
let date1 = new Date(userInfo.certiexpiredate.replace(/-/g,'/'));
let date2 = date1.setFullYear(date1.getFullYear() - 5);
let date3 = date2+(1000*60*60*24)
let date4 = js_date_time(date3)
let date5 = new Date(userInfo.certiexpiredate.replace(/-/g,'/'));
let date6 = date5.setFullYear(date5.getFullYear() - 10);
let date7 = date6+(1000*60*60*24)
let date8 = js_date_time(date7)
let thisAge1 = utilsAge.getAge(userInfo.birthday, new Date(date4.replace(/-/g,'/')))
let thisAge2 = utilsAge.getAge(userInfo.birthday, new Date(date8.replace(/-/g,'/')))
if(thisAge1 >= 18 && thisAge2 < 18){
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
if(thisAge1 < 18 && date3 > new Date().getTime()) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
if(thisAge2 >= 18 &&date7 > new Date().getTime()) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
}
if(thisAge >= 23) {
let date1 = new Date(userInfo.certiexpiredate.replace(/-/g,'/'));
let date2 = date1.setFullYear(date1.getFullYear() - 10);
let date3 = date2+(1000*60*60*24)
let date4 = js_date_time(date3)
let thisAge = utilsAge.getAge(userInfo.birthday, new Date(date4.replace(/-/g,'/')))
if(thisAge < 18) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
if(date3 > new Date().getTime()) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
}
} else {
let thisAge = utilsAge.getAge(userInfo.birthday, new Date(userInfo.certificateValidate))
if(thisAge < 18) {
let date1 = new Date(userInfo.certificateValidate.replace(/-/g,'/'));
let date2 = date1.setFullYear(date1.getFullYear() + 5);
let date3 = date2-(1000*60*60*24)
let date4 = js_date_time(date3)
console.log(date4+'-'+userInfo.certiexpiredate)
if(date4 != userInfo.certiexpiredate) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
}
if(thisAge >= 18) {
let date1 = new Date(userInfo.certificateValidate.replace(/-/g,'/'));
let date2 = date1.setFullYear(date1.getFullYear() + 10);
let date3 = date2-(1000*60*60*24)
let date4 = js_date_time(date3)
if(date4 != userInfo.certiexpiredate) {
return {
text: '外国人永久居留身份证证件有效期有误'
}
}
}
}
return {
text:''
}
}

View File

@@ -27,9 +27,9 @@
</van-button>
</div>
<div class='bg-white bottom-btn' v-if="current != '1'">
<van-button style="width: 30%;font-size: 20px;" plain type='danger' size='large' v-no-more-click='1000' @click="prevStep">上一步
<van-button style="width: 30%;font-size: 16px;" plain type='danger' size='large' v-no-more-click='1000' @click="prevStep">上一步
</van-button>
<van-button style="width: 70%;font-size: 20px;" type='danger' size='large' :disabled='isDisabledComplite' @click='goNext' v-no-more-click='1000'>
<van-button style="width: 70%;font-size: 16px;" type='danger' size='large' :disabled='isDisabledComplite' @click='goNext' v-no-more-click='1000'>
我已阅读确认并理解继续
</van-button>
</div>
@@ -417,7 +417,7 @@
color: red;
}
/deep/ .fs20{
font-size: 20px;
font-size: 16px;
.van-button__text{
padding: 10px 20px;
}

View File

@@ -12,7 +12,7 @@
代理人{{signName}}
</span>
</div>
<div style="margin-top: 15px;font-weight: bold;line-height: 32px;font-size: 20px;" class="fs20">
<div style="margin-top: 15px;font-weight: bold;line-height: 32px;font-size: 16px;" class="fs20">
<span v-if="signVal == '3'">
1.接下来您作为代理人将进行投保文件的签字请在签字前确保您已仔细阅读投保文件并了解投保文件的内容和含义确定投保单各项信息准确无误签字完成并成功提交说明您正式向我司提交投保申请
</span>
@@ -27,21 +27,21 @@
</span>
</div>
<div style="border-bottom: 1px dashed #eee;padding-bottom: 15px;margin-top: 15px;">
<p style="font-size: 20px;font-weight: bold;">2.您将为以下文件进行统一签名</p>
<p style="font-size: 16px;font-weight: bold;">2.您将为以下文件进行统一签名</p>
<div v-for="item in fileList" style="margin-top: 15px;display: flex;justify-content: space-between;">
<span style="font-size: 20px;color: red;opacity: 0.7;width: 60%;display: inline-block;">{{item.name}}</span>
<span style="font-size: 16px;color: red;opacity: 0.7;width: 60%;display: inline-block;">{{item.name}}</span>
<span v-if="signstatus == '1'" style="display: flex;align-items: center;display: inline-block;width: 40%;">
<img :src="src" style="margin-left: 15px;width: 16px;"/>
<span style="font-size: 20px;color: #03ceaf;margin-left: 10px;">签署完成</span>
<span style="font-size: 16px;color: #03ceaf;margin-left: 10px;">签署完成</span>
</span>
</div>
</div>
<div style="margin-top: 15px;display: flex;align-items: center;" class="fs20">
<span v-if="signVal == '3'" style="font-size: 20px;font-weight: bold;">代理人签名</span>
<span v-if="signVal == '0' || signVal == '2'" style="font-size: 20px;font-weight: bold;">投保人签名</span>
<span v-if="signVal == '1' && insuredAge >= 18" style="font-size: 20px;font-weight: bold;">被保险人签名</span>
<span v-if="signVal == '1' && insuredAge < 18" style="font-size: 20px;font-weight: bold;">被保险人/监护人签名</span>
<van-button type="danger" size="small" round style="margin-left: 20px;height: 40px;font-size: 16px;" @click="gosign" class="fs20">
<span v-if="signVal == '3'" style="font-size: 16px;font-weight: bold;">代理人签名</span>
<span v-if="signVal == '0' || signVal == '2'" style="font-size: 16px;font-weight: bold;">投保人签名</span>
<span v-if="signVal == '1' && insuredAge >= 18" style="font-size: 16px;font-weight: bold;">被保险人签名</span>
<span v-if="signVal == '1' && insuredAge < 18" style="font-size: 16px;font-weight: bold;">被保险人/监护人签名</span>
<van-button type="danger" size="small" round style="margin-left: 20px;height: 32px;font-size: 16px;" @click="gosign" class="fs20">
{{signstatus ? '重新签名' : '签名'}}
</van-button>
</div>
@@ -49,7 +49,7 @@
<img v-if="signstatus" :src="signImgUrl" style="height: 34px;margin-left: 20px;width: auto;"/>
</div>
<div class='bg-white bottom-btn'>
<van-button :disabled="nextDisabled" type='danger' size='normal' style="font-size: 20px;" block v-no-more-click='1000' @click="gonext">
<van-button :disabled="nextDisabled" type='danger' size='normal' style="font-size: 16px;" block v-no-more-click='1000' @click="gonext">
完成阅读并签署
</van-button>
</div>
@@ -59,7 +59,7 @@
<p style="color: #E9332E;">监护人姓名</p>
</div>
<div class="guardianContent" style="padding: 20px 30px 30px;font-size: 14px;">
<van-field v-model="guardianName" label="" name="体重" placeholder="请输入"/>
<van-field v-model="guardianName" label="" name="监护人姓名" placeholder="请输入"/>
</div>
<div style="text-align: center;margin-bottom: 30px;">
<van-button round type="danger" size="small" style="padding:0px 35px;font-size: 14px;" @click="gosign">确定</van-button>
@@ -276,9 +276,9 @@
}
}
.fs20{
font-size: 20px;
font-size: 16px;
.van-button__text{
padding: 10px 20px;
padding: 8px 16px;
}
}
</style>

View File

@@ -8,6 +8,7 @@
*/
const autoprefixer = require('autoprefixer')
const pxtoviewport = require('postcss-px-to-viewport')
const TerserPlugin = require("terser-webpack-plugin");
module.exports = {
publicPath: process.env.NODE_ENV === 'production' ? '/' : '/',
@@ -41,5 +42,19 @@ module.exports = {
},
devServer: {
port: 8082
}
},
configureWebpack: {
optimization: {
minimizer: [
new TerserPlugin({
terserOptions: {
output: {
comments: false
}
},
extractComments: false
})
]
}
},
}