Files
ebiz-h5/src/views/ebiz/cardList/SignatureConfirmation.vue
2024-04-11 10:06:53 +08:00

232 lines
7.1 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="signature-container">
<div class="signature-content pb40">
<van-cell-group class="mt10">
<van-field :value="recmd.agentCode" label='销售人员工号' class="myfield" name='销售人员工号' readonly />
<van-field :value="recmd.name" label='销售人员姓名' class="myfield" name='销售人员姓名' readonly />
<van-field :value="recmd.phoneNo" label='销售人员手机号' class="myfield" name='销售人员手机号' readonly />
<van-field :value="recmd.certificateNo" label='执业证编号' class="myfield" name='执业证编号' readonly />
<van-field :value="orderInfo.orderNo" label='投保单号' class="myfield" name='投保单号' readonly />
<van-field :value="orderInfo.appntDateLabel" label='投保日期' class="myfield" name='投保日期' readonly />
<van-field :value="orderInfo.orderAmount == undefined ? '' : orderInfo.orderAmount | moneyFormat" label='保费合计(元)' class="myfield" name='保费合计(元)' readonly />
</van-cell-group>
<!-- 在微信 -->
<div class="mt10">
<van-collapse v-model="activeNames">
<van-collapse-item name="1">
<div slot="title">
投保人
<span class="ml20">{{ appntInfo.name }}</span>
</div>
<p class="mb20">以下内容需要您按照顺序阅读确认:</p>
<div>
<p>需阅读</p>
<p class="mb20" v-for="item in appntSign" :key="item.signId">
<span class="text">{{ item.documentName }}</span>
<img :src="src" v-if="item.documentStatus == '1'" />
</p>
</div>
<p class="start">点击我已阅读并确认知悉按钮进行相关操作</p>
<!-- <div class="text">操作时间已失效请联系销售人员</div> -->
</van-collapse-item>
</van-collapse>
</div>
</div>
<div class="bottom-btn bg-white">
<van-button type="danger" size="large" @click="next" v-no-more-click="1000">我已阅读并确认知悉</van-button>
</div>
</div>
</template>
<script>
// import UploadImageFile from '@/components/ebiz/sale/UploadImageFile'
import { Field, Cell, CellGroup, Collapse, CollapseItem, Dialog } from 'vant'
import { underWrite } from '@/api/ebiz/sale/sale'
import { checkPhone } from '@/api/ebiz/customer/customer'
import IndexBar from '@/components/ebiz/sale/IndexBar'
import { getAgentInfo } from '@/api/ebiz/my/my.js'
export default {
data() {
let isWeixin = this.$utils.device().isWeixin //判断环境
return {
operaFlag: null,
encyCustomerMobile: null,
//人脸识别认证次数
faceAuthCount: {
appnt: 0,
insured: 0,
weixin: 0,
},
customerMobile: '',
//保险产品名称
riskName: '',
// 员工信息
recmd: {},
// 订单信息
orderInfo: {},
// 投保人信息
appntInfo: {},
// 投保人签名阅读信息
appntSign: [
],
// 折叠面板
activeNames: ['1'],
// 图片路径
src: this.$assetsUrl + 'images/u6490.png',
// 是否在微信
isWeixin,
}
},
computed: {
orderDTO: {
get() {
return JSON.parse(sessionStorage.orderDetail)
},
},
},
methods: {
// 初始化
async init() {
//只有惠桂保团险添加此提示
if( this.$route.query.isGroupCard == '1' ){
Dialog.alert({
title: '投保提示',
messageAlign: 'left',
confirmButtonText: '确认',
message: `1、您即将进入投保流程为维护您的合法权益投保时请您务必仔细阅读和确认保险条款、投保须知、免除保险人责任条款、犹豫期条款等页面所有内容。<br/>2.您的投保过程和操作将被记录。`,
})
.then(() => {
})
.catch(() => {
})
}
this.recmd = this.orderDTO.recmdDTO
this.orderInfo = this.orderDTO.orderInfoDTO
this.appntInfo = this.orderDTO.appntDTO
// localStorage.setItem('cardListPDF', JSON.stringify(this.orderDTO.ebizSignDTOS))
this.appntSign = this.orderDTO.ebizSignDTOS
const res = await getAgentInfo({})
if (res.result == 0) {
this.recmd.certificateNo= res.certificateInfoList[0].certificateNo
this.recmd.phoneNo= res.phoneNo
}
// if (this.isWeixin) {
// await this.getOrderDetail()
// // weixinShare({
// // title: '国富人寿计划书',
// // imgUrl: 'http://47.96.143.111:8000/app/images/logo.png',
// // desc: '国富为您量身定制的保险产品,请查收'
// // })
// } else {
// // 获取详情消息
// this.getOrderDetail()
// }
},
// 提交
next() {
let index = 0
let is_sign = this.appntSign.some((item, key) => {
index = key
return item.documentStatus != 1
})
if (is_sign) {
// 有未阅读的文件
this.$jump({
flag: 'h5',
extra: {
title: this.appntSign[index].documentName,
// url: 'http://47.96.143.111/pdfjs/web/viewer.html?file=' + url //测试代码
url: location.origin + '/#/cardList/ShowPDF?index='+index,
},
routerInfo: {
path: '/cardList/ShowPDF?index='+index,
},
})
} else {
return this.$jump({
flag: 'h5',
extra: {
title: this.appntSign[index].documentName,
url: location.origin + '/#/cardList/pay',
},
routerInfo: {
path: '/cardList/pay',
},
})
//需要全部提交
/** this.$toast.loading({
duration: 0, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '加载中……',
})
let data = {
platform: 'app',
type: '1',
orderDTO: {
orderInfoDTO: {
orderNo: window.localStorage.getItem('orderNo'),
},
},
}
// /insure/selfToHuman
underWrite(data).then((res) => {
this.$toast.clear()
if (res.result == '0') {
} else {
this.$toast(res.resultMessage)
}
})**/
}
},
},
created() {},
mounted() {
// 初始化
this.init()
},
components: {
[Cell.name]: Cell,
[CellGroup.name]: CellGroup,
[Collapse.name]: Collapse,
[CollapseItem.name]: CollapseItem,
[Dialog.name]: Dialog,
[Field.name]: Field,
[IndexBar.name]: IndexBar,
},
beforeRouteLeave(to, from, next) {
document.body.style.backgroundColor = ''
next()
},
}
</script>
<style lang="scss" scoped>
@import '@/assets/sass/variables.scss';
.text {
color: #4a90e2;
}
.start {
color: #4fc6b3;
}
.tips {
line-height: 30px;
}
.tips {
line-height: 30px;
}
.myfield{
/deep/input.van-field__control{
color: #969799;
text-align: right;
}
}
</style>