Compare commits

..

4 Commits

Author SHA1 Message Date
liu.xiaofeng@ebiz-digits.com
91cd83e6bf 保费试算页面变更保额或者保费重新定义当前数据 2023-07-14 17:22:37 +08:00
liu.xiaofeng@ebiz-digits.com
8ea217567c 利益展示页面去掉累计红利展示小数 2023-07-14 16:20:21 +08:00
liu.xiaofeng@ebiz-digits.com
bf27870fe0 利益展示页面关于年度红利展示以及累计红利展示四舍五入展示2位小数 2023-07-14 16:01:26 +08:00
liu.xiaofeng@ebiz-digits.com
1d5bacedf4 银保_国富人寿年年丰B款两全保险(分红型)新产品 添加利益演示单位 2023-07-13 16:23:41 +08:00
11 changed files with 101 additions and 443 deletions

View File

@@ -559,10 +559,7 @@ export default {
)
if (insuredDTO) {
let insuredPersonAge = insuredDTO.insuredAge ? insuredDTO.insuredAge : insuredDTO.age
if(insuredDTO.birthday){
insuredPersonAge = utilsAge.getAge(insuredDTO.birthday, new Date())
}
let insuredPersonAge = insuredDTO.birthday?utilsAge.getAge(insuredDTO.birthday, new Date()):insuredDTO.insuredAge
CacheUtils.setLocItem('saleInsuredPersonInfo',
JSON.stringify({
birthday: insuredDTO.birthday,

View File

@@ -653,6 +653,12 @@ 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':

View File

@@ -54,7 +54,7 @@
</template>
<script>
import {Field, GoodsAction, GoodsActionIcon, GoodsActionButton, Icon, Collapse, CollapseItem, Dialog} from 'vant'
import { Field, GoodsAction, GoodsActionIcon, GoodsActionButton, Icon ,Collapse, CollapseItem} 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,8 +79,7 @@ export default {
riskDTO: {},
productDate: '',
orderInfoDTO:{},
isGroupCard:'',
mainRiskCode: ''
isGroupCard:''
// isLessEighteen: true // 被保人手机号和邮箱默认展示
}
},
@@ -102,11 +101,6 @@ 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]
@@ -138,37 +132,15 @@ export default {
},
methods: {
nextStep() {
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
}
})
}
this.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
},
routerInfo: {
path: `/cardList/SignatureConfirmation?isGroupCard=`+this.isGroupCard
}
})
}
}
}

View File

@@ -290,7 +290,6 @@ export default {
accBankProvince: '',
accBankCity: '',
areaStr: '',
mainRiskCode: '',
isGroupCard:'' //1 团险标识
}
},
@@ -311,13 +310,17 @@ export default {
this.bankListName = orderDetail.orderAccountDTO.bankName
this.orderStatus = orderDetail.orderInfoDTO.orderStatus
localStorage.orderNo = orderDetail.orderInfoDTO.orderNo
orderDetail.insuredDTOs.forEach(item=>{
item.riskDTOLst.forEach(ii=>{
if(ii.isMainRisk == '0'){
this.mainRiskCode = ii.mainRiskCode
}
})
})
// this.radio = '3'
// this.isLoading = true
// this.$toast.loading({
// duration: 0, // 持续展示 toast
// forbidClick: true, // 禁用背景点击
// loadingType: 'spinner',
// message: '加载中……'
// })
// setTimeout(() => {
// this.pay()
// }, 500)
} else {
document.title = '支付分享'
// 再次支付 调详情 获取信息
@@ -510,13 +513,6 @@ 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) {
@@ -746,69 +742,58 @@ 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: '加载中……'
})
this.acceptInsurance()
}
// 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()
}
},
// 选择微信支付校验身份证类型

View File

@@ -353,17 +353,8 @@
<van-dialog v-model="trialResultsShow" title="核保试算结果" :show-cancel-button="false">
<div class="pl40 pr40 mt10">
<div class="flex justify-content-s fs12" v-for="(item, index) in verifyResultList" :key="index">
<div>
<img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/ruleType0'+ item.ruleType +'.png')" alt="">
<span class="v-middle">{{item.ruleType | ruleTypeFilter}}</span>
</div>
<div>
<!-- <span class="v-middle">{{item.status | approvedFilter}}</span>-->
<img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/approved'+ item.status +'.png')" alt="">
</div>
</div>
<div style="padding:25px 0px 10px 10px;font-size: 10px;color: #999;">
<p style="line-height: 20px;"><span style="width: 40px;display: inline-block;">说明:</span>绿色✔表示 未触发规则、红色×表示 触发规则</p>
<div><img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/ruleType0'+ item.ruleType +'.png')" alt=""><span class="v-middle">{{item.ruleType | ruleTypeFilter}}</span></div>
<div><span class="v-middle">{{item.status | approvedFilter}}</span><img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/approved'+ item.status +'.png')" alt=""></div>
</div>
</div>
</van-dialog>
@@ -376,7 +367,6 @@ import { saveOrUpdateOrderInfo, getOrderDetail,orderTrial } from '@/api/ebiz/sal
import { saveProposal, getTrialRecordInfo, saveOrUpdateTrialRecordInfo } from '@/api/ebiz/proposal/proposal.js'
import { getAgentInfo } from '@/api/ebiz/my/my.js'
import occupationList from '@/components/ebiz/occipation/data/occupation'
import utilsAge from '@/assets/js/utils/age'
import riskRules from "./risk-rules";
//险种GFRS_M0016的责任的验证规则
@@ -665,9 +655,6 @@ export default {
if (this.$CacheUtils.getLocItem('saleInsuredPersonInfo')) {
this.saleInsuredPersonInfo = JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo'))
this.saleInsuredPersonInfo.insuredAge = this.saleInsuredPersonInfo.insuredAge ? this.saleInsuredPersonInfo.insuredAge : this.saleInsuredPersonInfo.age
if(this.saleInsuredPersonInfo.birthday){
this.saleInsuredPersonInfo.insuredAge = utilsAge.getAge(this.saleInsuredPersonInfo.birthday, new Date())
}
if (this.isFrom == 'proposal' && !this.saleInsuredPersonInfo.name) {
// 建议书投保人/被保人姓名不必填, 填写姓名时展示姓名(落库),不填写姓名时展示性别+年龄,如:男30岁(不落库)
let sex = this.saleInsuredPersonInfo.sex == '0'?'男':'女'
@@ -2351,7 +2338,7 @@ export default {
this.saleInsuredInfo.sex,
this.saleInsuredInfo.occupationCode,
this.saleInsuredInfo.occupationName,
this.saleInsuredPersonInfo.insuredAge
this.saleInsuredInfo.insuredAge?this.saleInsuredInfo.insuredAge:this.saleInsuredInfo.age,
]
} else {
;[birthday, sex, occupationCode, occupationName, age] = [
@@ -2359,7 +2346,7 @@ export default {
this.saleInsuredPersonInfo.sex,
this.saleInsuredPersonInfo.occupationCode,
this.saleInsuredPersonInfo.occupationName,
this.saleInsuredPersonInfo.insuredAge
this.saleInsuredPersonInfo.insuredAge?this.saleInsuredPersonInfo.insuredAge:this.saleInsuredPersonInfo.age
]
}
trialInfo = Object.assign(trialInfo, {
@@ -2879,7 +2866,7 @@ export default {
//建议书需要添加全部投保人信息电投只需要投保人ID
let insuredDTOItem = Object.assign(this.saleInsuredPersonInfo, { riskDTOLst: riskDTOLst })
if (!insuredDTOItem.insuredAge) {
insuredDTOItem.insuredAge = insuredDTOItem.birthday ? utilsAge.getAge(insuredDTOItem.birthday, new Date()) : insuredDTOItem.age
insuredDTOItem.insuredAge = insuredDTOItem.age
}
let orderNo = localStorage.isFrom == 'proposal'?this.$route.query.proposalOrderNo:this.$route.query.orderNo
let params = {
@@ -2990,7 +2977,7 @@ export default {
}
})
let data = {
serialNo:this.$route.query.proposalOrderNo,
serialNo:this.$CacheUtils.getLocItem('proposalNo'),
mainRiskId:insuanceId+'',
trialJsonStr:localStorage.chooseProducts
}

View File

@@ -4,12 +4,11 @@
</div>
</template>
<script>
import { makePdf, share, getDemo } from '@/api/ebiz/proposal/proposal.js'
import { makePdf, share } 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() {
@@ -17,8 +16,7 @@ export default {
return {
pdfUrl: '',
isWeixin,
title: '',
agent:{}
title: ''
}
},
components: {
@@ -33,7 +31,7 @@ export default {
this.init()
}
},
async mounted() {
mounted() {
let riskCode = localStorage.pdfShareCode
dataDictionary.riskType.some(item => {
if (item.code == riskCode) {
@@ -41,78 +39,10 @@ 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: shareContent
desc: '国富为您量身定制的保险产品,请查收'
})
//重置左上角按钮,变成返回
window.EWebBridge.webCallAppInJs("webview_left_button",{
@@ -179,15 +109,10 @@ 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 = this.agent.name+'为您设计的专属保险计划书,请查阅!因为国富,所以民安!';
shareContent='国富为您量身定制的保险产品,请查收';
}
if (data.trigger == 'right_button_click') {
// eslint-disable-next-line no-undef

View File

@@ -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">{{mainRiskName}}</div>
<div class="white fw500 fs18 div_2">家庭保障计划</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)">
@@ -283,7 +283,7 @@
</div>
<div class="div_02">
<div class="text-center div_021">
<div class="text-center div_022">{{mainRiskName}}</div>
<div class="text-center div_022">家庭保障计划</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>
@@ -386,7 +386,6 @@ export default {
mainRiskCodes: [],
time: 5,
proposalNo:'',
mainRiskName: ''
}
},
filters: {
@@ -449,7 +448,6 @@ export default {
})
}, 1000)
window['appCallBack'] = this.appCallBack*/
// init方法在微信端存储token接口请求用此token所以init方法前不要请求接口会影响分享微信功能接口会报token为空
this.init()
//校验当前用户权限
funcPermCheck({}).then(res => {
@@ -609,7 +607,7 @@ export default {
}
},
async sharePeople() {
console.log(this.pageShowInfo.insuredDTOs,'this.pageShowInfo.insuredDTOs')
console.log(this.agent,'this.agent.name')
let date = new Date()
let month = date.getMonth() + 1
if (month <= 9) {
@@ -621,34 +619,25 @@ 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].ggrade!='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].sgrade&&resData.content[0].sgrade!='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)
@@ -659,23 +648,11 @@ export default {
riskCodeList.push(item.riskCode)
})
let sameRisk = isAllEqual(riskCodeList)
// 一、单个被保险人
// 1、1个主险含附加险的情况直接显示“主险产品名称”
// 2、有2个及以上主险组合建议书名称显示“保险产品组合计划”
// 二、有多个被保险人
// 都显示“家庭保障计划”
// 以主险为单位,一个主险,显示主险名称。 多个主险,显示“家庭综合保障计划”,跟被保人人数无关
if(sameRisk){
if(this.pageShowInfo.insuredDTOs.length > 1){
title='家庭保障计划'
}else{
title= riskList[0].riskName
}
title= riskList[0].riskName
}else{
if(this.pageShowInfo.insuredDTOs.length > 1){
title='家庭保障计划'
}else{
title= '保险产品组合计划'
}
title='家庭综合保障计划'
}
let res = await getSharingToken({ shareType: 'proposal_demonstrate' })
if (res.result == '0') {
@@ -725,32 +702,6 @@ 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
@@ -940,17 +891,7 @@ export default {
},
//跳转到pdf 进入建议书后 根据建议书编码来查找相应的pdf
async goPDF() {
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.$router.push({ path: '/proposal/pdf' })
// this.$jump({
// flag: 'h5',
// extra: {

View File

@@ -958,11 +958,6 @@ 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) {

View File

@@ -1,140 +0,0 @@
<template>
<div style="width: 100%;margin: auto;display: flex;flex-direction: column;align-items: center;">
<div style="display: none;">
<canvas v-for="item in totalPage" :key="item" :id='"the-canvas" + item' class="pdf-content"></canvas>
</div>
<img @click="isPrevShowFunc(item)" v-for="item in imgArrayNew" :src="item.url" style="width: 100vw;"/>
<van-image-preview id="preview" v-model="isPrevShow" :images="images"/>
</div>
</template>
<script>
import { ImagePreview } from 'vant'
import * as pdfjsLib from 'pdfjs-dist'
import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry'
import Vue from 'vue'
Vue.use(ImagePreview)
export default {
data() {
return {
totalPage: [],
isPrevShow:false,
images: [],
imgArray:[],
imgArrayNew: []
}
},
created() {
},
mounted() {
this.pdfToimg()
},
methods:{
isPrevShowFunc(data){
this.isPrevShow = true
this.images = [data.url]
},
pdfToimg(){
let that = this
pdfjsLib.GlobalWorkerOptions.workerSrc = pdfjsWorker;
let pdfUrl = 'https://iagentsales-test2.e-guofu.com/opt/ebiz/webapps/ebiz-epolicy/pdf/2023/08/09/1000001078372351/1000001078372351.pdf';
let loadingTask = pdfjsLib.getDocument(pdfUrl);
loadingTask.promise.then((pdf) => {
let pageNum = pdf.numPages
this.totalPage = pageNum;
for (let i = 1; i <= pageNum; i++) {
pdf.getPage(i).then((page) => {
const canvas = document.getElementById('the-canvas' + i);
const ctx = canvas.getContext('2d')
const viewport = page.getViewport({ scale: 4 })
canvas.height = viewport.height;
canvas.width = viewport.width;
const destWidth = document.body.clientWidth;
canvas.style.width = destWidth + 'px';
canvas.style.height = destWidth * (viewport.height / viewport.width) + 'px';
page.render({
canvasContext: ctx,
viewport,
}).promise.then(function() {
// 将画布上的内容转换为图像
var imageData = canvas.toDataURL('image/png');
that.imgArray.push({
index:i,
url:imageData
})
// 这里可以将图像存储到服务器或本地计算机上
});
})
}
}, function (reason) {
console.error(reason)
})
}
},
watch:{
imgArray(val){
let aaa = JSON.parse(JSON.stringify(val))
let asd = aaa.sort(function(a, b){return a.index - b.index});
this.imgArrayNew = asd
console.log(asd)
}
},
}
</script>
<style>
* {
margin: 0;
padding: 0;
}
</style>
<!--<template>-->
<!-- <div id="pdf">-->
<!-- <div id="demo"></div>-->
<!-- </div>-->
<!--</template>-->
<!--<script>-->
<!-- import Pdfh5 from "pdfh5";-->
<!-- export default {-->
<!-- name: 'pdf',-->
<!-- data() {-->
<!-- return {-->
<!-- pdfh5: null-->
<!-- };-->
<!-- },-->
<!-- mounted() {-->
<!-- //实例化-->
<!-- this.pdfh5 = new Pdfh5("#demo", {-->
<!-- pdfurl: 'https://iagentsales-test2.e-guofu.com/opt/ebiz/webapps/ebiz-epolicy/pdf/2023/08/09/1000001078372351/1000001078372351.pdf',-->
<!-- lazy:true,-->
<!-- scale:1-->
<!-- }).on("complete", function (status, msg, time) { //监听完成事件-->
<!-- console.log("状态:" + status + ",信息:" + msg + ",耗时:" + time + "毫秒,总页数:" + this.totalNum)-->
<!-- })-->
<!-- }-->
<!-- }-->
<!--</script>-->
<!--<style lang="scss" scoped>-->
<!-- #demo{-->
<!-- width: 100vw;-->
<!-- }-->
<!-- /deep/.viewerContainer{-->
<!-- width: 100vw;-->
<!-- overflow: inherit;-->
<!-- }-->
<!-- /deep/ .pageNum{-->
<!-- display: none!important;-->
<!-- }-->
<!-- /deep/ .pageContainer{-->
<!-- img{-->
<!-- width: 100vw;-->
<!-- }-->
<!-- }-->
<!--</style>-->

View File

@@ -1110,12 +1110,7 @@ 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('您的证件已过期')
}
let val = this.userInfo.certiexpiredate
//年龄在16周岁以下
if (age < 16) {
if (new Date(val).getFullYear() - new Date(this.userInfo.certificateValidate).getFullYear() != 5) {

View File

@@ -1469,11 +1469,6 @@ 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) {