Compare commits
44 Commits
hotfix/【20
...
hotfix/【20
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1a090b7073 | ||
|
|
87fa47d4d8 | ||
|
|
7117a75f68 | ||
|
|
b1f499ec33 | ||
|
|
d4e8ede6c9 | ||
|
|
0f8e1da734 | ||
|
|
13a28192fe | ||
|
|
1497601e0b | ||
|
|
d93a7baddd | ||
|
|
2ce429bb8e | ||
|
|
d4b0a1b320 | ||
|
|
ee71565425 | ||
|
|
9862f67c21 | ||
|
|
03ce9bea5e | ||
|
|
d0cabb30f7 | ||
|
|
ba5f2dbe32 | ||
|
|
1d578730cb | ||
|
|
293066c4ad | ||
|
|
92b5cf3224 | ||
|
|
2189c0df53 | ||
|
|
3a05f63cb6 | ||
|
|
84ac42765c | ||
|
|
4cc7703dc9 | ||
|
|
fd7bc64fa7 | ||
|
|
4a88d16d8d | ||
|
|
49b0f807cb | ||
|
|
9c2440c6bc | ||
|
|
00459a0f35 | ||
|
|
13acc3a0f5 | ||
|
|
5493d99c15 | ||
|
|
f19f7eb2b6 | ||
|
|
89bb1b1f40 | ||
|
|
c2726abf93 | ||
|
|
8346e6f284 | ||
|
|
b2cac7eb1b | ||
|
|
4aa877446d | ||
|
|
a348d5734a | ||
|
|
216923e5c3 | ||
|
|
ba551a7b59 | ||
|
|
eaaf8fa485 | ||
|
|
a82a7c8d64 | ||
|
|
70d2f6da7f | ||
|
|
f590880d36 | ||
|
|
3d3a450bbf |
@@ -362,4 +362,13 @@ export function getDoubleRecordProductLst(data) {
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 指定受益人身份四要素
|
||||
export function checkAppointBnf(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/bnfCheck/checkAppointBnf ', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 187 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 613 KiB |
|
Before Width: | Height: | Size: 111 KiB After Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 8.8 KiB |
@@ -1977,7 +1977,7 @@ export default {
|
||||
},
|
||||
{
|
||||
id: '58',
|
||||
text: '转人核支付'
|
||||
text: '待支付'
|
||||
},
|
||||
{
|
||||
id: '59',
|
||||
|
||||
@@ -15,6 +15,7 @@ const answerPage = () => import('@/views/ebiz/sale/answerPage')
|
||||
const answerSuccess = () => import('@/views/ebiz/sale/answerSuccess')
|
||||
const accountInformation = () => import('@/views/ebiz/sale/AccountInformation')
|
||||
const insuranceInformation = () => import('@/views/ebiz/sale/InsuranceInformation')
|
||||
const insuranceInformation_0081 = () => import('@/views/ebiz/sale/InsuranceInformation_0081')
|
||||
const insuranceClauses = () => import('@/views/ebiz/sale/insuranceClauses')
|
||||
const insuranceTip = () => import('@/views/ebiz/sale/InsuranceTip')
|
||||
const universalRiskNotifyingMessageTip = () => import('@/views/ebiz/sale/universalRiskNotifyingMessageTip')
|
||||
@@ -164,6 +165,14 @@ export default [
|
||||
title: '投保须知'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/sale/insuranceInformation_0081',
|
||||
name: 'insuranceInformation_0081',
|
||||
component: insuranceInformation_0081,
|
||||
meta: {
|
||||
title: '投保须知'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/sale/insuranceClauses',
|
||||
name: 'insuranceClauses',
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
:show-plus="false"
|
||||
:show-minus="false"
|
||||
class="ml30"
|
||||
:disabled="item.productCode == 'GFRS_M0083' && isFrom != 'proposal'"
|
||||
@change="
|
||||
stepperChange(
|
||||
item.calFactorLst[riskFactorIndex].displayAmount,
|
||||
@@ -319,7 +320,7 @@
|
||||
placeholder="请录入保单号或者投保单号,如果关联多个保单,请用\隔开"
|
||||
/>
|
||||
</div>
|
||||
<div class="flex justify-content-s pv10 border-bottom prem" v-if="item.productCode != 'GFRS_M0080'">
|
||||
<div class="flex justify-content-s pv10 border-bottom prem" v-if="item.productCode != 'GFRS_M0080' && item.productCode != 'GFRS_M0083'">
|
||||
<!-- trialType 0-保额算保费,1-保费算保额 -->
|
||||
<!-- isTrial是否需存在特殊配置(规则) 0-是 1-否-->
|
||||
<span
|
||||
@@ -332,13 +333,13 @@
|
||||
<span class="fee red" v-if="trialList && trialList.length > 0">{{ trialList[index].showPrem | moneyFormat }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-content-fs pv10 ph15 bg-white border-bottom prem align-items-c" v-if="cvalidateFlag && cvalidateStr != '2021-12-31'">
|
||||
<span>指定保单生效日</span>
|
||||
<van-radio-group v-model="activeRadio" class="pl20">
|
||||
<van-radio name="1" icon-size="1rem"></van-radio>
|
||||
</van-radio-group>
|
||||
<span class="pl5">{{ cvalidateStr }}</span>
|
||||
</div>
|
||||
<!-- <div class="flex justify-content-fs pv10 ph15 bg-white border-bottom prem align-items-c" v-if="cvalidateFlag && cvalidateStr != '2021-12-31'">-->
|
||||
<!-- <span>指定保单生效日</span>-->
|
||||
<!-- <van-radio-group v-model="activeRadio" class="pl20">-->
|
||||
<!-- <van-radio name="1" icon-size="1rem"></van-radio>-->
|
||||
<!-- </van-radio-group>-->
|
||||
<!-- <span class="pl5">{{ cvalidateStr }}</span>-->
|
||||
<!-- </div>-->
|
||||
<div class="bottom-btn bg-white flex" v-if="isFrom == 'proposal'">
|
||||
<van-button type="danger" size="large" @click="nextStep" :disabled="nextStepFlag" v-no-more-click="1000">完成</van-button>
|
||||
</div>
|
||||
@@ -788,6 +789,16 @@
|
||||
this.isEnterAddtionRiskListFunc()
|
||||
}
|
||||
}
|
||||
if (item.mainRiskCode == 'GFRS_M0083' && this.isFrom == 'proposal') {
|
||||
item.calFactorLst.forEach((i) => {
|
||||
if (i.code == "inputPrem") {
|
||||
i.minPrem = 0.01
|
||||
i.displayAmount = 0.01
|
||||
i.defaultValue = 0.01
|
||||
}
|
||||
})
|
||||
}
|
||||
console.log(item,'123231321321')
|
||||
let payEndYearVal
|
||||
//初始化时交费期间为一次性交清时,在就是中介渠道, 附加险GFRS_A0007,GFRS_A0009,GFRS_A0010去掉后,附加险list就为空--隐藏’附‘icon
|
||||
item.calFactorLst.map((i) => {
|
||||
@@ -2004,6 +2015,38 @@
|
||||
//试算
|
||||
async getTrial() {
|
||||
let that = this
|
||||
let productCode = ''
|
||||
let thisproductInfo = JSON.parse(window.localStorage.getItem('chooseProducts'))
|
||||
if(thisproductInfo && thisproductInfo.length != 0) {
|
||||
thisproductInfo.forEach(item => {
|
||||
if(item.productCode == 'GFRS_M0083') {
|
||||
productCode = item.productCode
|
||||
}
|
||||
})
|
||||
}
|
||||
if(this.isFrom != 'proposal'){
|
||||
if(productCode == 'GFRS_M0083'){
|
||||
if(!that.policyNo){
|
||||
that.chooseProducts.forEach(item=>{
|
||||
item.calFactorLst.forEach(ii=>{
|
||||
if(ii.type == 1) {
|
||||
ii.minPrem = 5
|
||||
ii.displayAmount = 5
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
that.chooseProducts.forEach(item=>{
|
||||
item.calFactorLst.forEach(ii=>{
|
||||
if(ii.type == 1) {
|
||||
ii.minPrem = 0.01
|
||||
ii.displayAmount = 0.01
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
this.nextStepFlag = true
|
||||
this.$toast.clear()
|
||||
this.$toast.loading({
|
||||
@@ -2656,6 +2699,22 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (productCode == 'GFRS_M0083') {
|
||||
if(this.isFrom != 'proposal'){
|
||||
if(!this.policyNo && defalutValue < 5) {
|
||||
this.$toast('单独投保,保费为大于等于50000元')
|
||||
currentEle['minPrem'] = 5
|
||||
} else if(this.policyNo && defalutValue < 0.01) {
|
||||
this.$toast('与其他主险关联投保时保费要求:保费大于等于100元')
|
||||
currentEle['minPrem'] = 0.01
|
||||
}
|
||||
} else {
|
||||
if(defalutValue < 0.01){
|
||||
currentEle['minPrem'] = 0.01
|
||||
this.$toast('保费最小100元')
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (this.isTrial === '0' && this.chooseProducts[productIndex].isMainRisk == '0') {
|
||||
if (Number(defalutValue) < Number(min)) {
|
||||
if (riskFactor.yearWay == "一次性交清") {
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
<img class="icon_title_image" src="@/assets/images/kmh/title_bg.png" />
|
||||
</div> -->
|
||||
<van-radio-group v-model="active_radio" style="align-items: center;padding-top: 140px">
|
||||
<van-radio name="1" class="radio_class ml50">
|
||||
<van-radio name="1" class="radio_class" style="display: flex;justify-content: center;">
|
||||
<template #icon="props">
|
||||
<img class="img-icon radio_icon_image" :src="props.checked ? checkedUrl : noCheckedUrl" />
|
||||
</template>
|
||||
@@ -48,7 +48,7 @@
|
||||
<img class="icon_select_image" src="@/assets/images/kmh/kmh_pro.png" />
|
||||
</div>
|
||||
</van-radio>
|
||||
<van-radio name="0" class="radio_class ml50">
|
||||
<van-radio name="0" class="radio_class" style="display: flex;justify-content: center;">
|
||||
<template #icon="props">
|
||||
<img class="img-icon radio_icon_image" :src="props.checked ? checkedUrl : noCheckedUrl" />
|
||||
</template>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<th>承保标保</th>
|
||||
</tr>
|
||||
<tr v-for="(item, index) in showData.topList" :key="item.code">
|
||||
<td>{{ index + 1 }}</td>
|
||||
<td>{{ item.rank }}</td>
|
||||
<td>{{ item.name }}</td>
|
||||
<td class="company">{{ item.comName }}</td>
|
||||
<td>{{ item.ysbb }}</td>
|
||||
@@ -32,7 +32,7 @@
|
||||
<th>承保标保</th>
|
||||
</tr>
|
||||
<tr v-for="(item, index) in showData.topList" :key="item.code" :class="{ top3: index <= 2 }">
|
||||
<td>{{ index + 1 }}</td>
|
||||
<td>{{ item.rank }}</td>
|
||||
<td>{{ item.name }}</td>
|
||||
<td class="company">{{ item.comName }}</td>
|
||||
<td>{{ item.ysbb }}</td>
|
||||
|
||||
@@ -156,12 +156,12 @@ export default {
|
||||
height: 15px;
|
||||
}
|
||||
.m-tuli {
|
||||
width: 48px;
|
||||
height: 36px;
|
||||
width: 38px;
|
||||
height: 72px;
|
||||
}
|
||||
.m-tubiao {
|
||||
width: 64px;
|
||||
height: 32px;
|
||||
width: 36px;
|
||||
height: 54px;
|
||||
}
|
||||
.minfs {
|
||||
font-size: 1.6vw !important;
|
||||
|
||||
@@ -51,14 +51,14 @@
|
||||
<div class="fs12 div_4">
|
||||
<div class="risk_head flex text-center line-height table fs12 bg_DBEFFE">
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7">投保险种</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080'">保额(元)</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080' && mainRiskCodes[0] != 'GFRS_M0083'">保额(元)</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">保险期间</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">交费期间</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">首年保费(元)</div>
|
||||
</div>
|
||||
<div class="risk_body flex text-center table bg_f7fbff" v-for="(riskItem, index) in pageShowInfo.showInsuredDTO.riskDTOLst" :key="index">
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7">{{ riskItem.riskName }}</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080'">{{ riskItem.amt ? riskItem.amt : '--' }}</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border" v-if="mainRiskCodes[0] != 'GFRS_M0080' && mainRiskCodes[0] != 'GFRS_M0083'">{{ riskItem.amt ? riskItem.amt : '--' }}</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.insureName }}</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.payName }}</div>
|
||||
<div class="flex justify-content-c align-items-c pl7 pr7 pt7 pb7 table_border">{{ riskItem.showPrem ? riskItem.showPrem : '--' }}</div>
|
||||
|
||||
@@ -150,16 +150,30 @@ export function relevanceByInsure(insured, insuredLabelResult, insuredResult, in
|
||||
let defaulValue = 'M' //档位默认值
|
||||
let radios = []
|
||||
if(currentInsuredInfo.L){
|
||||
radios.push({
|
||||
label: '低档' + currentInsuredInfo.L,
|
||||
value: 'L'
|
||||
})
|
||||
if(risk.mainRiskCode == 'GFRS_M0083') {
|
||||
radios.push({
|
||||
label: '保证' + currentInsuredInfo.L,
|
||||
value: 'L'
|
||||
})
|
||||
} else {
|
||||
radios.push({
|
||||
label: '低档' + currentInsuredInfo.L,
|
||||
value: 'L'
|
||||
})
|
||||
}
|
||||
}
|
||||
if(currentInsuredInfo.M){
|
||||
radios.push({
|
||||
label: '中档' + currentInsuredInfo.M,
|
||||
value: 'M'
|
||||
})
|
||||
if(risk.mainRiskCode == 'GFRS_M0083') {
|
||||
radios.push({
|
||||
label: '演示' + currentInsuredInfo.M,
|
||||
value: 'M'
|
||||
})
|
||||
} else {
|
||||
radios.push({
|
||||
label: '中档' + currentInsuredInfo.M,
|
||||
value: 'M'
|
||||
})
|
||||
}
|
||||
}
|
||||
if(currentInsuredInfo.H){
|
||||
radios.push({
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
<van-field required v-model="appntDTO.mobile" clearable label="投保人手机号" name="投保人手机号" placeholder="请输入"
|
||||
v-validate="'required|mobileLength11|mobileStartWith1|mobile'" maxlength="11" readonly />
|
||||
</van-cell-group>
|
||||
<van-cell-group class="pl20 fs14">
|
||||
<van-cell-group class="pl20 fs14" v-if="orderInfoDTO.activeType != 'KMH'">
|
||||
<van-field v-if="orderInfoDTO.validateCustomerFlag !== '0'" v-model="authCode" center clearable label name="短信验证码"
|
||||
v-validate="'required'" placeholder="请输入短信验证码" maxlength="6">
|
||||
<van-button slot="button" size="small" type="danger" @click="getCode" :disabled="codeDisabled"
|
||||
@@ -62,44 +62,6 @@
|
||||
<van-button type="danger" size="large" @click="next" :disabled="isDisabled" v-no-more-click="1000">下一步</van-button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div v-if="radio != '0' && relationToAppnt != '1'">
|
||||
<van-cell-group class="pl20">
|
||||
<van-field v-model="bank" label="开户银行" placeholder="请选择" required @click="focus" readonly v-validate="'required'" data-vv-name="开户银行" />
|
||||
</van-cell-group>
|
||||
<van-cell-group class="pl20 flex align-items-c">
|
||||
<van-field
|
||||
v-model="bankId"
|
||||
label="银行卡号"
|
||||
maxlength="19"
|
||||
placeholder="请输入"
|
||||
required
|
||||
v-validate="'required|bankCard'"
|
||||
clearable
|
||||
data-vv-name="银行卡号"
|
||||
/>
|
||||
<van-button type="danger" size="small" class="bankCard mr10 w110 h20" @click="cardScanning('1')" v-no-more-click="1000">银行卡扫描</van-button>
|
||||
</van-cell-group>
|
||||
<van-cell-group class="flex align-items-c">
|
||||
<van-switch-cell v-model="checked" title="是否自动垫交" active-color="#E9332E" inactive-color="#fff" class="ml15 pr30" />
|
||||
<van-icon
|
||||
name="question-o"
|
||||
class="vanIcon"
|
||||
@click="
|
||||
$toast({
|
||||
message:
|
||||
'保费自动垫交是当投保人没有按时交纳续期保险费,而保单当时已经具有足够的现金价值时,保险公司以现金价值自动垫交保险费,从而使保单继续有效。相当于投保人向保险公司贷款交纳保费,是保险公司提供给客户的一项选择权益,其目的是为了尽可能地减少客户因非故意的失误导致保单失效,使其利益受损。',
|
||||
duration: 10000
|
||||
})
|
||||
"
|
||||
/>
|
||||
</van-cell-group>
|
||||
<div class="fs12 mt10 ml20 w250 h15">
|
||||
<span>温馨提示:该账户将用于首期、续期保费缴费</span>
|
||||
</div>
|
||||
<div class="bg-white bottom-btn">
|
||||
<van-button type="danger" size="large" @click="next" :disabled="isDisabled" v-no-more-click="1000">下一步</van-button>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
<!-- 银行卡扫描 -->
|
||||
<BankCardScan :scanShow="isScan" :clear="isClear" @getScanInfo="getBankCardInfo"></BankCardScan>
|
||||
@@ -123,12 +85,18 @@
|
||||
</template>
|
||||
</van-field>
|
||||
</van-dialog>
|
||||
<van-dialog class="bankCardContract" v-model="bankCardContractShow" title="提示" show-cancel-button @confirm="authConfirm" @cancel="checkModelCancel">
|
||||
<p class="p10 fs14">尊敬的客户您好,您的银行卡账户未进行续期签约,为确保是您本人操作,短信验证码已发送至您的手机号{{ appntDTO.mobile }},请您输入验证码完成签约流程~</p>
|
||||
<van-cell-group class="flex align-items-c" style="margin: 10px;">
|
||||
<van-field maxlength="6" placeholder="请输入短信验证码" v-model="verfyCode" clearable label-width="0" />
|
||||
</van-cell-group>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Cell, CellGroup, Field, RadioGroup, Radio, Popup, List, Switch, Toast, SwitchCell, Icon, Area,Dialog } from 'vant'
|
||||
import { saveInformation, getOrderDetail, checkCard, getAuthCode, autchCodeCheck } from '@/api/ebiz/sale/sale'
|
||||
import { saveInformation, getOrderDetail, checkCard, getAuthCode, autchCodeCheck, getBankCardSignState, signConfirm } from '@/api/ebiz/sale/sale'
|
||||
import utilsAge from '@/assets/js/utils/age'
|
||||
import BankCardScan from '@/components/ebiz/sale/BankCardScan'
|
||||
import IndexBar from '@/components/ebiz/sale/IndexBar'
|
||||
@@ -202,6 +170,9 @@ export default {
|
||||
areaStr: '',
|
||||
orderInfoDTO: '',
|
||||
renovate:'',
|
||||
bankCardContractShow: false,
|
||||
rdSeq:'',
|
||||
verfyCode: '',
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -574,22 +545,29 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.orderInfoDTO.validateCustomerFlag !== '0') {
|
||||
data.orderDTO.smsCodeDTO = { smsId: this.sessionId, code: this.authCode }
|
||||
if(this.orderInfoDTO.activeType != 'KMH') {
|
||||
if (this.orderInfoDTO.validateCustomerFlag !== '0') {
|
||||
data.orderDTO.smsCodeDTO = { smsId: this.sessionId, code: this.authCode }
|
||||
}
|
||||
}
|
||||
|
||||
saveInformation(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
this.orderInfoDTO.validateCustomerFlag = '0';
|
||||
window.localStorage.setItem('accountInformationRadio', this.radio)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
if(this.orderInfoDTO.activeType != 'KMH') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.getBankCardSignState()
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
@@ -598,6 +576,162 @@ export default {
|
||||
this.$toast(this.errors.all()[0])
|
||||
}
|
||||
},
|
||||
getBankCardSignState(){
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……',
|
||||
})
|
||||
let params = {
|
||||
orderNo: this.$route.query.orderNo
|
||||
}
|
||||
getBankCardSignState(params).then(res => {
|
||||
this.$toast.clear()
|
||||
let checkRes = res.content
|
||||
if (checkRes.result == '0') {
|
||||
this.$toast.clear()
|
||||
if (checkRes.needSign == '0' || checkRes.needSign == null) {
|
||||
if(checkRes.signState == '0' || checkRes.signState == '2'){
|
||||
// 不需签约或已签约,不做处理
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
else if (checkRes.needSign == '3') {
|
||||
if(checkRes.signState == '0') {
|
||||
this.$toast('该银行卡金掌桂暂不支持续期签约!')
|
||||
}
|
||||
}
|
||||
else if (checkRes.needSign == '1'){
|
||||
if (checkRes.signConfirmType == '2'){
|
||||
this.bankCardContractShow = true
|
||||
this.rdSeq = checkRes.rdSeq
|
||||
}else if (checkRes.signConfirmType == '3'){
|
||||
Dialog.alert({
|
||||
message: '银行已发送短信至手机号'+ this.appntDTO.mobile +',按照短信提示完成短信回复签约,再次通过金掌桂完成后续流程。',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
}).then(() => {})
|
||||
} else if(checkRes.signConfirmType == '4') {
|
||||
// this.$toast('招商银行卡请至官微续期签约~')
|
||||
Dialog.alert({
|
||||
message: '招商银行卡请至官微续期签约~',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
}).then(() => {})
|
||||
} else if(checkRes.signConfirmType == '5') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else if (checkRes.signState == '3') {
|
||||
// 签约失败
|
||||
const info = '您当前银行卡账户续期签约失败,\n原因:' + checkRes.resultMessage
|
||||
Dialog.confirm({
|
||||
message: info,
|
||||
className: 'reConfirm leftConfirm',
|
||||
cancelButtonText: '返回',
|
||||
cancelButtonColor: '#ff5e50',
|
||||
showCancelButton: false,
|
||||
confirmButtonText: '修改银行卡信息',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
allowHtml: true
|
||||
}).then(() => {}).catch(() => {});
|
||||
} else if (checkRes.signState == '4') {
|
||||
const info = '银行卡已在签约中,请稍后~'
|
||||
Dialog.alert({
|
||||
message: info,
|
||||
className: 'reConfirm leftConfirm',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
allowHtml: true
|
||||
}).then(() => {}).catch(() => {})
|
||||
// }
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.$toast(checkRes.resultMessage)
|
||||
}
|
||||
}else{
|
||||
const info = '您当前银行卡账户续期签约失败,\n原因:' + checkRes.resultMessage
|
||||
Dialog.confirm({
|
||||
message: info,
|
||||
className: 'reConfirm leftConfirm',
|
||||
cancelButtonText: '返回',
|
||||
cancelButtonColor: '#ff5e50',
|
||||
showCancelButton: false,
|
||||
confirmButtonText: '修改银行卡信息',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
allowHtml: true
|
||||
}).then(() => {}).catch(() => { });
|
||||
}
|
||||
})
|
||||
},
|
||||
authConfirm(){
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = {
|
||||
rdSeq:this.rdSeq,
|
||||
verfyCode:this.verfyCode,
|
||||
businessNo:this.$route.query.orderNo
|
||||
}
|
||||
if (!this.verfyCode || this.verfyCode == '') {
|
||||
this.bankCardContractShow = true
|
||||
return this.$toast('请输入短信验证码')
|
||||
}
|
||||
if (this.verfyCode.length !== 6) {
|
||||
this.bankCardContractShow = true
|
||||
return this.$toast('验证码格式错误')
|
||||
}
|
||||
signConfirm(data).then(res => {
|
||||
this.verfyCode = ''
|
||||
this.bankCardContractShow = false
|
||||
if (res.content.result == '0') {
|
||||
this.$toast.clear()
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/attachmentManagement?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}else{
|
||||
this.$toast.clear()
|
||||
// 签约失败
|
||||
const info = '您当前银行卡账户续期签约失败,\n原因:' + res.content.resultMessage
|
||||
Dialog.confirm({
|
||||
message: info,
|
||||
className: 'reConfirm leftConfirm',
|
||||
cancelButtonText: '返回',
|
||||
cancelButtonColor: '#ff5e50',
|
||||
showCancelButton: false,
|
||||
confirmButtonText: '修改银行卡信息',
|
||||
confirmButtonColor: '#ff5e50',
|
||||
allowHtml: true
|
||||
}).then(() => {})
|
||||
}
|
||||
})
|
||||
},
|
||||
checkModelCancel() {
|
||||
this.bankCardContractShow = false
|
||||
this.verfyCode = ''
|
||||
},
|
||||
handleRenew(v) {
|
||||
//大于65不能续保
|
||||
if (this.productNo === 'GFRS_M0016' && this.age >= 65) {
|
||||
@@ -850,5 +984,17 @@ export default {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.bankCardContract{
|
||||
/deep/ .van-dialog__cancel{
|
||||
background: #fff;
|
||||
color: #323233;
|
||||
}
|
||||
/deep/ .van-dialog__confirm{
|
||||
background: #fff;
|
||||
color: red;
|
||||
}
|
||||
/deep/ .van-dialog__header{
|
||||
color: red;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -250,7 +250,7 @@ import idNoCheck from '@/assets/js/utils/idNoCheck'
|
||||
import { idToData } from './js/verification'
|
||||
import { selectComp } from './js/methods'
|
||||
import getAreaName from '@/assets/js/utils/getAreaNameForSale'
|
||||
import { getOrderDetail } from '@/api/ebiz/sale/sale'
|
||||
import { getOrderDetail, checkAppointBnf } from '@/api/ebiz/sale/sale'
|
||||
|
||||
let relationToInsured = [
|
||||
{ id: 2, text: '配偶' },
|
||||
@@ -1114,21 +1114,51 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
beneficiaries.push(this.userInfo)
|
||||
// 保存 新增的受益人信息 以及页面跳转字段
|
||||
localStorage.beneficiaryInfo = JSON.stringify(beneficiaries)
|
||||
localStorage.fromAddBeneficiaryInfo = true
|
||||
if (this.userInfo.asAppntAddress == true) {
|
||||
localStorage.applicant = '1'
|
||||
let thisbnfDTOs = []
|
||||
thisbnfDTOs.push(this.userInfo)
|
||||
let params = {
|
||||
orderType: 'BNF_ORDER',
|
||||
orderDTO: {
|
||||
productDTO: null,
|
||||
orderInfoDTO: {
|
||||
bnfFlag: this.bnfFlag,
|
||||
orderNo: this.$route.query.orderNo
|
||||
},
|
||||
appntDTO: {},
|
||||
insuredDTOs: [
|
||||
{
|
||||
insuredId: JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).insuredId,
|
||||
bnfDTOs: thisbnfDTOs
|
||||
}
|
||||
],
|
||||
paymentDTO: {},
|
||||
orderAccountDTO: {},
|
||||
channelDTO: null,
|
||||
orderExpandDTO: null,
|
||||
thirdOrderDTO: null
|
||||
}
|
||||
}
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/beneficiary?orderNo=' + this.$route.query.orderNo,
|
||||
needRefresh: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/beneficiary?orderNo=' + this.$route.query.orderNo
|
||||
checkAppointBnf(params).then(res=>{
|
||||
if(res.result == '0'){
|
||||
beneficiaries.push(this.userInfo)
|
||||
// 保存 新增的受益人信息 以及页面跳转字段
|
||||
localStorage.beneficiaryInfo = JSON.stringify(beneficiaries)
|
||||
localStorage.fromAddBeneficiaryInfo = true
|
||||
if (this.userInfo.asAppntAddress == true) {
|
||||
localStorage.applicant = '1'
|
||||
}
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/beneficiary?orderNo=' + this.$route.query.orderNo,
|
||||
needRefresh: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/beneficiary?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
|
||||
787
src/views/ebiz/sale/InsuranceInformation_0081.vue
Normal file
@@ -0,0 +1,787 @@
|
||||
<template>
|
||||
<div class="insuranceInformation-container pb50 redRadioCheckbox">
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${this.Time ? this.time : this.number}秒以上` }}</van-notice-bar>
|
||||
<div class="bg-white flex justify-content-c flex-direction-colunm align-it<po>ems-center p20 fs14">
|
||||
<!-- 重疾, 医疗, 意外 -->
|
||||
<div v-if="!changeCard">
|
||||
<h2 style="text-align:center" class="mb20">国富人寿保险股份有限公司</h2>
|
||||
<h2 style="text-align:center" class="mb20">人身保险投保须知</h2>
|
||||
<p class="mb20">
|
||||
1.本产品由国富人寿保险股份有限公司(以下简称国富人寿)承保,目前该公司广西、贵州地区设有分支机构。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
2.您的本次投保信息将以电子投保书的形式提交给国富人寿。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
3.电子投保书的填写:本电子投保书是您与国富人寿订立保险合同的重要组成部分。为保障您的权益,请务必保证电子投保书各项内容为投保人和被保险人如实、准确填写。请您以书面形式对所有告知事项进行告知。
|
||||
<span class="fw600">
|
||||
依据《中华人民共和国保险法》的有关规定,保险公司就被保险人有关情况的询问,您应当履行如实告知义务。
|
||||
</span>
|
||||
投保人故意或者因重大过失未履行如实告知义务,足以影响保险公司决定是否同意承保或者提高保险费率的,保险公司有权解除合同。前款规定的合同解除权,自保险公司知道有解除事由之日起,超过三十日不行使而消灭。自合同成立之日起超过二年的,保险公司不得解除合同;发生保险事故的,保险公司应当承担赔偿或者给付保险金的责任。投保人故意不履行如实告知义务的,保险公司对于合同解除前发生的保险事故,不承担赔偿或者给付保险金的责任,并不退还保险费。投保人因重大过失未履行如实告知义务,对保险事故的发生有严重影响的,保险公司对于合同解除前发生的保险事故,不承担赔偿或者给付保险金的责任,但应当退还保险费。保险公司在合同订立时已经知道投保人未如实告知的情况的,保险公司不得解除合同;发生保险事故的,保险公司应当承担赔偿或者给付保险金的责任。保险事故是指保险合同约定的保险责任范围内的事故。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
4.投保信息真实性:为保障您的权益,请您务必真实、准确地填写相关投保信息,包括但不限于投保人、被保险人和受益人的姓名、性别、出生日期、证件类型、证件号码、本人联系电话和联系地址等。如果您提供的信息不真实、不准确或不完整,可能导致保险合同无效或您的权益受损等。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
5.您在投保时如有疑问、投保成功后需要查询保单信息、投保成功后如有资料需要变更以及投诉,请您关注“国富人寿保险”官方微信公众号或前往国富人寿客户服务中心进行办理,同时还可拨打4006946688咨询。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
6.投保前,请您认真阅读产品条款、页面展示内容、条款合同解除、责任免除、犹豫期退保、退保、《投保声明》等重要内容,确认理解并接受条款和页面提示的全部内容,了解理赔申请方式及理赔应备文件。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
7.如您成功投保国富人寿保险产品,国富人寿将根据您投保时申请的保单形式为您发送电子保险合同或寄送纸质版电子保险合同。本产品自保险合同签收之日起,有15日的犹豫期。在此期间如果您认为本产品与您的需求不相符,可以提出解除保险合同,我们将退还您所交的保险费,此时不会有损失。如果超过犹豫期退保,国富人寿将退还您现金价值,此时有一定的损失,请您慎重。犹豫期过后,国富人寿向您投保时提供的电子邮箱发送电子发票,请您注意查收。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
8.国富人寿分支机构信息详见官网信息公示(官网地址:www.e-guofu.com)。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
9.以身故为给付保险金条件的保险合同,未经被保险人同意并认可保险金额的,保险合同无效。父母为其未成年子女投保的人身保险,不受此规定限制。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
10.为未成年子女投保的人身保险,因被保险人死亡给付的保险金总和不得超过国务院保险监督管理机构规定的限额,死亡给付的保险金额总和约定也不得超过前述限额。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
11.请您根据自身财务状况,确定选择了合适的交费期间和交费金额,无法持续交纳保险费有可能导致合同效力中止或保险合同解除。提前终止或放弃之前有效的保险合同,可能使您蒙受经济上的损失。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
12.国富人寿采集客户信息的用途,包括但不限于计算保费、核保、寄送保单、客户回访、续期提醒和寄送通知书、推荐产品等。<br />
|
||||
为了保证您的权益,如果联系电话和联系地址等信息发生变更,应及时办理更正手续。
|
||||
</p>
|
||||
<p class="mb">
|
||||
13.国富人寿承诺未经您的同意,不会将客户信息用于第三方机构的销售活动
|
||||
</p>
|
||||
<p class="mb20">
|
||||
14.其他服务说明<br />
|
||||
(1)投保、承保流程<br />
|
||||
选择保险产品→点击购买→填写投保信息→确认信息和金额→在线支付→收到承保通知→投保成功。<br />
|
||||
(2)保险费支付方式<br />
|
||||
本产品的保险费支付方式:银行转账或微信支付。<br />
|
||||
(3)保单变更办理流程<br />
|
||||
方式一 :微信办理<br />
|
||||
您可关注“国富人寿保险”微信公众号,点击“服务大厅”菜单注册用户,进入“服务大厅-保单查询与变更”完成在线办理或提交申请材料。<br />
|
||||
方式二: 柜面办理<br />
|
||||
您可前往国富人寿客户服务中心柜面办理保单变更业务。<br />
|
||||
(4)保险金支付和业务款项退费<br />
|
||||
各类保险金将根据权益人授权的银行账号进行转账支付。<br />
|
||||
保单退费款项按客户申请办理相应业务时,所授权的银行账号进行转账支付。<br />
|
||||
</p>
|
||||
<h2 style="text-align:center" class="mb20">投保人授权声明</h2>
|
||||
<p class="mb20">
|
||||
1、为提供保险服务的需要,本人授权:国富人寿保险股份有限公司(以下简称国富人寿)可通过知悉本人信息的机构查询与本人有关的全部信息(包括但不限于投保、承保、理赔、行为、财务、信用、健康、医疗信息等);国富人寿及与其具有必要合作关系的机构均可对上述信息进行合理的使用。为确保信息安全,国富人寿及其合作机构应采取有效措施并承担保密义务。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
2、为提供保险产品服务的需要,本人授权:国富人寿可将本人的姓名、身份证号等个人信息提供给中国银行保险信息技术管理有限公司(以下简称“中国银保信”),并同意中国银保信对上述信息以及本人投保、承保、理赔、医疗健康等信息,进行收集并经加工分析、合理使用后,传输给国富人寿用于保险产品服务。<br />
|
||||
中国银保信的上述处理行为对您接受国富人寿服务具有必要性,不会对您的个人权益造成非法侵害。如有关于个人信息保护相关的问题咨询,您可以通过以下方式联系。
|
||||
</p>
|
||||
<h2 style="text-align:center" class="mb20">被保险人授权声明</h2>
|
||||
<p class="mb20">
|
||||
1、险服务的需要,本人授权:国富人寿保险股份有限公司(以下简称国富人寿)可通过知悉本人信息的机构查询与本人有关的全部信息(包括但不限于投保、承保、理赔、行为、财务、信用、健康、医疗信息等);国富人寿及与其具有必要合作关系的机构均可对上述信息进行合理的使用。为确保信息安全,国富人寿及其合作机构应采取有效措施并承担保密义务。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
2、为提供保险产品服务的需要,本人授权:国富人寿可将本人的姓名、身份证号等个人信息提供给中国银行保险信息技术管理有限公司(以下简称“中国银保信”),并同意中国银保信对上述信息以及本人投保、承保、理赔、医疗健康等信息,进行收集并经加工分析、合理使用后,传输给国富人寿用于保险产品服务。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
中国银保信的上述处理行为对您接受国富人寿服务具有必要性,不会对您的个人权益造成非法侵害。如有关于个人信息保护相关的问题咨询,您可以通过以下方式联系。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
中国银保信联系方式:privacy@cbit.com.cn。
|
||||
</p>
|
||||
<p style="text-indent: 2em;" class="mb20">
|
||||
说明:如您想获取个人信息处理的合作机构名称、联系方式、信息处理方式、保存期限详情和个人行使信息保护权利的方式和程序,可拨打国富人寿服务热线4006946688咨询。
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<h2 style="text-align:center" class="mb20">转账授权书</h2>
|
||||
<p class="mb20">本人授权国富人寿保险股份有限公司(以下简称国富人寿)及本人指定之银行账户、微信账户按下述授权内容进行保险费的划扣及相关权益的给付。</p>
|
||||
<p class="mb20" style="font-weight: bold;">银行卡转账授权声明:</p>
|
||||
<p class="mb20">1、本人同意委托国富人寿,从本人的授权账户中扣取本保险合同所需缴纳的保险费,并保证授权账户中有足够的金额支付应交保险费。</p>
|
||||
<p class="mb20">
|
||||
2、本人确认授权的银行账户所有人为投保人本人账户的开户银行、户名和账号均真实有效,续期交费账户与首期保费交纳账户为同一账户。
|
||||
本人所提供的授权账户,必须是本人的个人结算账户(如:借记卡、个人活期结算存折)。
|
||||
</p>
|
||||
<p class="mb20">
|
||||
3、本人同意若因账户挂失、账户冻结、账户余额不足或其
|
||||
他非银行原因造成转账不成功,致使产生保险合同终止的任何后果或投资账户的费用损失,因此引起的责任概由本人承担。
|
||||
</p>
|
||||
<p class="mb20">4、如本人在同一指定账户内同时授权两张或两张以上保险单中的保险费或其他自动转账业务时,本人同意依照国富人寿规定的转账顺序转账。</p>
|
||||
<p class="mb20">5、本人投保后若办理退保或退费业务,同意国富人寿将应退金额通过银行划转入该账户。</p>
|
||||
<p class="mb20">
|
||||
6、本人因故结清账户,会重新开立账户,并及时通过国富人寿进行变更。如本人欲终止本授权,应立即向国富人寿递交终止的书面申请,由国富人寿知会银行停止转账;若因本人未及时办理账户变更手续而导致退保给付金无法按时给付,则同意国富人寿按退保申请日的给付金额支付。
|
||||
</p>
|
||||
<p class="mb20">7、对于一年期以上的产品,国富人寿可在保险费约定支付日之前及时通知本人交纳续期保险费。</p>
|
||||
<p class="mb20" style="font-weight: bold;">微信转账授权声明:</p>
|
||||
<p class="mb20">1、首期保险费使用微信支付的,本人同意国富人寿通过本人投保时留存的银行账户进行续期保险费转账扣除。</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<van-radio-group v-model="radio" class="pb10 pb20 pl30">
|
||||
<van-radio name="1" @click="click" class="fs14">
|
||||
<span v-if="changeCard">本人已详细阅读转账授权书并明确以上事项</span>
|
||||
<span v-else>本人已详细阅读保险条款并明确以上事项 </span>
|
||||
</van-radio>
|
||||
</van-radio-group>
|
||||
<div class="bg-white bottom-btn">
|
||||
<van-button type="danger" size="large" :disabled="isDisable" @click="goNext" v-no-more-click="1000">下一步</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { RadioGroup, Radio, Dialog, NoticeBar } from 'vant'
|
||||
import { saveInformation } from '@/api/ebiz/sale/sale'
|
||||
// import riskRules from '@/views/ebiz/common/risk-rules'
|
||||
|
||||
// import config from '@/config'
|
||||
// import axios from 'axios'
|
||||
export default {
|
||||
data() {
|
||||
let isWeixin = this.$utils.device().isWeixin //判断环境
|
||||
return {
|
||||
// 投保人还是被保险人信息
|
||||
signVal: '',
|
||||
// 被保险人签名信息
|
||||
insuredSign: {},
|
||||
// 投保人签名信息
|
||||
appntSign: {},
|
||||
radio: '',
|
||||
// 倒计时时间
|
||||
number: '',
|
||||
// 定时器时间
|
||||
time: '10',
|
||||
// 定时器名称
|
||||
timer: null,
|
||||
isOver: false,
|
||||
// 判断验证码是否开始倒计时
|
||||
Time: true,
|
||||
// 按钮是否可以点击
|
||||
isDisable: true,
|
||||
// 是否在微信
|
||||
isWeixin,
|
||||
changeCard: localStorage.changeCard, //是否从修改银行卡号进来
|
||||
productCode: localStorage.productCode, //获取产品编号
|
||||
protocol: false,
|
||||
documentCodeType: false,
|
||||
// manageComCode:''//代理人管理机构 52贵州 45广西
|
||||
}
|
||||
},
|
||||
components: {
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
[Radio.name]: Radio,
|
||||
[Dialog.name]: Dialog,
|
||||
[NoticeBar.name]: NoticeBar
|
||||
},
|
||||
async mounted() {
|
||||
let readingType = localStorage.getItem('readingProtocolType')
|
||||
if (readingType && readingType === '1') {
|
||||
this.protocol = true
|
||||
}
|
||||
let that = this
|
||||
// {{switchFlag.Time?pageVariable.msg:pageVariable.number}}
|
||||
that.timeOut()
|
||||
document.title = this.changeCard ? '转账授权书' : '投保须知'
|
||||
// Notify({
|
||||
// type: 'warning',
|
||||
// message: `提示:阅读时长需在${this.Time ? this.time : this.number}秒以上`,
|
||||
// duration: 10000,
|
||||
// background: '#999999',
|
||||
// className: 'notify'
|
||||
// })
|
||||
|
||||
document.body.style.backgroundColor = '#fff'
|
||||
that.signVal = window.localStorage.getItem('sign-val')
|
||||
if (JSON.parse(window.localStorage.getItem('sign-insured'))) {
|
||||
that.insuredSign = JSON.parse(window.localStorage.getItem('sign-insured'))
|
||||
}
|
||||
if (JSON.parse(window.localStorage.getItem('sign-appnt'))) {
|
||||
that.appntSign = JSON.parse(window.localStorage.getItem('sign-appnt'))
|
||||
}
|
||||
//获取代理人管理机构 52贵州 45广西
|
||||
// let dataReturn = await riskRules.getAgentInfoFunc(this)
|
||||
// this.manageComCode = dataReturn.manageComCode
|
||||
},
|
||||
created() {
|
||||
this.documentCodeType = localStorage.getItem('documentCodeType')
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
img: this.$assetsUrl + 'images/del-close-btn@3x.png',
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
console.log(this.documentCodeType,'documentCodeType');
|
||||
window.appCallBack = this.appCallBack
|
||||
},
|
||||
methods: {
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
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
|
||||
})
|
||||
}
|
||||
},
|
||||
timeOut() {
|
||||
let that = this
|
||||
let time = that.time
|
||||
that.Time = false
|
||||
that.number = `${time}`
|
||||
let timer = setInterval(() => {
|
||||
time--
|
||||
if (time <= 0) {
|
||||
time = 0
|
||||
clearInterval(timer)
|
||||
|
||||
that.Time = true
|
||||
that.isOver = true
|
||||
// window.localStorage.setItem('step', '1')
|
||||
}
|
||||
that.number = `${time}`
|
||||
}, 1000)
|
||||
},
|
||||
// 点击阅读时
|
||||
click() {
|
||||
let that = this
|
||||
if (that.isOver == false) {
|
||||
Dialog.confirm({
|
||||
title: '提示',
|
||||
message: '该内容涉及您的重大权益,请您仔细阅读',
|
||||
showCancelButton: false
|
||||
}).then(() => {
|
||||
that.radio = ''
|
||||
})
|
||||
}
|
||||
},
|
||||
// 下一步
|
||||
goNext() {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let that = this
|
||||
if (that.signVal == '0' || that.signVal == '2') {
|
||||
// 查看保险条款是否有,如果没有的话走原有逻辑
|
||||
let isHasClauses = Array.isArray(this.appntSign)?this.appntSign.some(item => {
|
||||
return item.documentCode == '13' && (item.documentStatus == '0' || item.documentStatus == '2')
|
||||
}):false
|
||||
if(isHasClauses) {
|
||||
that.appntSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.appntSign.signId = item.signId
|
||||
that.appntSign.documentCode = item.documentCode
|
||||
that.appntSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
|
||||
let data = {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.appntSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.appntSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.appntSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
|
||||
// console.log(res)
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
if(this.documentCodeType == 'true') {
|
||||
// console.log('11111111111111111111');
|
||||
let url = 'AnswerTip'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
|
||||
} else {
|
||||
// console.log('222222222222222222222');
|
||||
//GFRS_M0003为万能型产品需要投保人签署产品说明书
|
||||
let url = 'insuranceClauses'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url + '?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.goNextBefore()
|
||||
}
|
||||
} else {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// 查看保险条款是否有,如果没有的话走原有逻辑
|
||||
let isHasClauses = Array.isArray(this.insuredSign)? this.insuredSign.some(item => {
|
||||
return item.documentCode == '13' && (item.documentStatus == '0' || item.documentStatus == '2')
|
||||
}):false
|
||||
if(isHasClauses) {
|
||||
that.insuredSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.insuredSign.signId = item.signId
|
||||
that.insuredSign.documentCode = item.documentCode
|
||||
that.insuredSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
let data = {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.insuredSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.insuredSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.insuredSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
console.log('保存了结果:' + localStorage.getItem('insurance-policyUrl'))
|
||||
// if(this.documentCodeType == 'true') {
|
||||
// // console.log('3333333333333333333');
|
||||
// let url = 'AnswerTip'
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + '/#/sale/' + url
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: '/sale/' + url
|
||||
// }
|
||||
// })
|
||||
|
||||
// } else {
|
||||
// console.log('4444444444444444');
|
||||
//GFRS_M0003为万能型产品需要投保人签署产品说明书
|
||||
let url = 'insuranceClauses'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url + '?orderNo=' + this.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
// }
|
||||
// let url = 'insuranceClauses'
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + '/#/sale/' + url
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: '/sale/' + url
|
||||
// }
|
||||
// })
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.goNextBefore()
|
||||
}
|
||||
}
|
||||
},
|
||||
// 下一步,原有逻辑
|
||||
goNextBefore() {
|
||||
if (this.isWeixin) {
|
||||
console.log('````````````````````')
|
||||
console.log('进入微信')
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
let that = this
|
||||
if (that.signVal == '0' || that.signVal == '2') {
|
||||
if (!that.changeCard) {
|
||||
that.appntSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.appntSign.signId = item.signId
|
||||
that.appntSign.documentCode = item.documentCode
|
||||
that.appntSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
let data = {
|
||||
orderType: that.changeCard ? 'SIGNNEW_ORDER' : 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.appntSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.appntSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.appntSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
// console.log(res)
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
// window.localStorage.setItem('tips-PolicyUrl', res.signDTO.tipsPolicyUrl)
|
||||
// console.log(res)
|
||||
// console.log(res.signDTO.policyUrl)
|
||||
// console.log('````````````')
|
||||
// console.log('接口拉去成功:' + res.signDTO.policyUrl)
|
||||
// window.localStorage.setItem('insurance-policyUrl', res.signDTO.policyUrl)
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
// console.log('保存了结果:' + localStorage.getItem('insurance-policyUrl'))
|
||||
// let url = config.imgDomain + `/app/returnStream?imgPath=${res.signDTO.policyUrl}`
|
||||
// axios.get(url).then(res => {
|
||||
// console.log(res)
|
||||
// })
|
||||
//GFRS_M0003为万能型产品需要投保人签署产品说明书
|
||||
let url = ''
|
||||
if (that.changeCard) {
|
||||
url = 'SignatureConfirmation'
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/SignatureConfirmation?orderNo=' + this.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path:
|
||||
'/sale/signatureConfirmation?orderNo=' +
|
||||
this.$route.query.orderNo +
|
||||
'&token=' +
|
||||
localStorage.token +
|
||||
'&saleInsuredInfo=' +
|
||||
this.$CacheUtils.getLocItem('saleInsuredInfo') +
|
||||
'&saleInsuredPersonInfo=' +
|
||||
this.$CacheUtils.getLocItem('saleInsuredPersonInfo') +
|
||||
'&relationToAppnt=' +
|
||||
JSON.parse(this.$CacheUtils.getLocItem('saleInsuredPersonInfo')).relationToAppnt +
|
||||
'&signInvalid=' +
|
||||
sessionStorage.getItem('signInvalid') +
|
||||
'&airSign=1' +
|
||||
'&changeCard=0'
|
||||
}
|
||||
})
|
||||
} else {
|
||||
url = this.productCode == 'GFRS_M0003' || this.productCode == 'GFRS_M0015' || this.productCode == 'GFRS_M0017' ? 'productTip' : 'insuranceTip'
|
||||
/*that.appntSign.map(item => {
|
||||
if (item.documentCode == '8') {
|
||||
url = 'apointValidDoc'
|
||||
}
|
||||
})*/
|
||||
// 若需展示 短期健康险投保须知,则优先展示
|
||||
that.appntSign.map(item => {
|
||||
if (item.documentCode == '9') {
|
||||
url = 'shortPeriodProduct'
|
||||
}
|
||||
})
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
that.insuredSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.insuredSign.signId = item.signId
|
||||
that.insuredSign.documentCode = item.documentCode
|
||||
that.insuredSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
let data = {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.insuredSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.insuredSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.insuredSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
console.log('````````````')
|
||||
// console.log('接口拉去成功:' + res.signDTO.policyUrl)
|
||||
// window.localStorage.setItem('tips-PolicyUrl', res.signDTO.tipsPolicyUrl)
|
||||
// window.localStorage.setItem('insurance-policyUrl', res.signDTO.policyUrl)
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
console.log('保存了结果:' + localStorage.getItem('insurance-policyUrl'))
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic?orderNo=' + that.$route.query.orderNo
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/SignatureOfElectronic?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
// console.log('that.appntSign.signId',that.appntSign,that.appntSign.signId,that.appntSign.documentCode,that.appntSign.documentType)
|
||||
if (that.signVal == '0' || that.signVal == '2') {
|
||||
if (!that.changeCard) {
|
||||
that.appntSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.appntSign.signId = item.signId
|
||||
that.appntSign.documentCode = item.documentCode
|
||||
that.appntSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
}
|
||||
let data = {
|
||||
orderType: that.changeCard ? 'SIGNNEW_ORDER' : 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.appntSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.appntSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.appntSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
// console.log(res)
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
// window.localStorage.setItem('insurance-url', res.signDTO.policyUrl)
|
||||
// console.log('saveInformationres',res)
|
||||
// console.log(res.signDTO.policyUrl)
|
||||
// window.localStorage.setItem('tips-PolicyUrl', res.signDTO.tipsPolicyUrl)
|
||||
// window.localStorage.setItem('insurance-policyUrl', res.signDTO.policyUrl)
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
// let url = config.imgDomain + `/app/returnStream?imgPath=${res.signDTO.policyUrl}`
|
||||
// axios.get(url).then(res => {
|
||||
// console.log(res)
|
||||
// })
|
||||
let url = ''
|
||||
if (that.changeCard) {
|
||||
url = 'SignatureConfirmation'
|
||||
} else {
|
||||
|
||||
url = this.productCode == 'GFRS_M0003' || this.productCode == 'GFRS_M0015' || this.productCode == 'GFRS_M0017' ? 'productTip' : 'insuranceTip'
|
||||
// 本人或投保人-需阅读短期健康险投保须知时 跳转shortPeriodProduct
|
||||
that.appntSign.map(item => {
|
||||
if (item.documentCode == '9') {
|
||||
url = 'shortPeriodProduct'
|
||||
}
|
||||
})
|
||||
}
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + that.$route.query.orderNo,
|
||||
forbidSwipeBack: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.insuredSign.map(item => {
|
||||
if (item.documentCode == '1') {
|
||||
that.insuredSign.signId = item.signId
|
||||
that.insuredSign.documentCode = item.documentCode
|
||||
that.insuredSign.documentType = item.documentType
|
||||
}
|
||||
})
|
||||
let data = {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.insuredSign.signId,
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.insuredSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.insuredSign.documentType,
|
||||
signType: that.signVal
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
saveInformation(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
// window.localStorage.setItem('tips-PolicyUrl', res.signDTO.tipsPolicyUrl)
|
||||
// window.localStorage.setItem('insurance-policyUrl', res.signDTO.policyUrl)
|
||||
this.$toast.clear()
|
||||
window.localStorage.setItem('detailJump', '')
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic?orderNo=' + that.$route.query.orderNo,
|
||||
forbidSwipeBack: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/SignatureOfElectronic?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
listenChange() {
|
||||
const { isOver, radio } = this
|
||||
return { isOver, radio }
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
// console.log('listenChange :', val)
|
||||
if (val.isOver == true && val.radio !== '') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
p {
|
||||
text-align: justify;
|
||||
}
|
||||
.notice {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
z-index: 20;
|
||||
}
|
||||
</style>
|
||||
@@ -137,7 +137,7 @@
|
||||
|
||||
<script>
|
||||
import { Search, Tabs, Tab, List, Tag, Sticky, Toast, Dialog, Field } from 'vant'
|
||||
import { orderList, deleteOrderInfo, getAuthCode, revokeOrder } from '@/api/ebiz/sale/sale'
|
||||
import { orderList, deleteOrderInfo, getAuthCode, revokeOrder, getBankCardSignState } from '@/api/ebiz/sale/sale'
|
||||
import { funcPermCheck } from '@/api/ebiz/common/common'
|
||||
import { formatRiskList } from '@/assets/js/utils/formatRiskList.js'
|
||||
import dataDictionary from '@/assets/js/utils/data-dictionary' //根据数据字典找到用户等级
|
||||
@@ -447,7 +447,7 @@ export default {
|
||||
this.loadMore()
|
||||
},
|
||||
//投保单详情
|
||||
goDetail(order) {
|
||||
async goDetail(order) {
|
||||
let thisToken = this.$CacheUtils.getLocItem('token')
|
||||
window.localStorage.clear()
|
||||
this.$CacheUtils.setLocItem('token', thisToken)
|
||||
@@ -475,7 +475,35 @@ export default {
|
||||
}else if(orderStatus == '37'){//受益人保存成功, 跳到告知信息--
|
||||
url = '/sale/NotifyingMessage?edit=1&orderNo='+orderNo
|
||||
}else if(orderStatus == '38'){ //账户信息保存成功, 跳到附件管理--
|
||||
if(order.orderInfoDTO.activeType == 'KMH') {
|
||||
let params = {
|
||||
orderNo: order.orderInfoDTO.orderNo
|
||||
}
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……',
|
||||
})
|
||||
await getBankCardSignState(params).then(res => {
|
||||
this.$toast.clear()
|
||||
if(res.result == 0) {
|
||||
if(res.content.needSign == '0' || res.content.needSign == null) {
|
||||
if(res.content.signState == '0' || res.content.signState == '2') {
|
||||
url = '/sale/AttachmentManagement?edit=1&orderNo='+orderNo
|
||||
} else {
|
||||
url = '/sale/AccountInformation?edit=1&orderNo='+orderNo
|
||||
}
|
||||
} else {
|
||||
url = '/sale/AccountInformation?edit=1&orderNo='+orderNo
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
url = '/sale/AttachmentManagement?edit=1&orderNo='+orderNo
|
||||
}
|
||||
}else if(orderStatus == '39'){ //险种信息保存成功, 跳到已选产品列表
|
||||
url = '/common/selectedProduct?edit=1&orderNo='+orderNo
|
||||
}else if(orderStatus == '40'){//告知信息保存成功, 跳到风险测评--
|
||||
|
||||
@@ -22,6 +22,10 @@
|
||||
<img :src="srcPending" class="mb40 mt20" />
|
||||
<p class="title">核心系统繁忙,请稍后重试</p>
|
||||
</div>
|
||||
<div v-else-if="uwResult == '53'">
|
||||
<img :src="srcPending" class="mb40 mt20" />
|
||||
<p class="title">核心批扣</p>
|
||||
</div>
|
||||
<div v-else>
|
||||
<img :src="srcPending" class="mb40 mt20" />
|
||||
<p class="title">系统繁忙,请稍后重试</p>
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
<van-cell title="投保单号" :value="orderInfo.orderNo" @click="toTest"></van-cell>
|
||||
<van-cell title="投保日期" :value="date" />
|
||||
<van-cell title="保费合计(元)" :value="orderInfo.orderAmount == undefined ? '' : orderInfo.orderAmount | moneyFormat" />
|
||||
<van-cell v-if="cvalidateStr" title="指定保单生效日" :value="cvalidateStr" />
|
||||
</van-cell-group>
|
||||
<div v-if="!isWeixin">
|
||||
<!-- 不再微信 -->
|
||||
@@ -234,7 +235,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="!isWeixin">
|
||||
<div v-if="changeCard">
|
||||
<div v-if="changeCard && activeType != 'KMH'">
|
||||
<div class="bottom-btn bg-white" v-if="appntSign.documentStatus == '1'">
|
||||
<van-button
|
||||
type="danger"
|
||||
@@ -408,7 +409,9 @@ export default {
|
||||
appntRidFlag: null,
|
||||
insureRidFlag: null
|
||||
},
|
||||
showAgentView:0
|
||||
showAgentView:0,
|
||||
cvalidateStr: '',
|
||||
activeType: ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -1135,7 +1138,6 @@ export default {
|
||||
// }
|
||||
// documentStatus: 文档状态 0 未读 1 已读 2 未签名 3 已签名
|
||||
if (that.insuredSign[i].documentStatus == 0 || that.insuredSign[i].documentStatus == 2 ) {
|
||||
debugger
|
||||
path = that.insuredSign[i].routePath
|
||||
break
|
||||
}
|
||||
@@ -1433,6 +1435,14 @@ export default {
|
||||
return new Promise((resolve) => {
|
||||
getOrderDetail(data).then((res) => {
|
||||
if (res.result == '0') {
|
||||
if(res.orderDTO.orderInfoDTO.activeType == 'KMH') {
|
||||
this.cvalidateStr = res.orderDTO.orderInfoDTO.cvaliDate
|
||||
this.activeType = res.orderDTO.orderInfoDTO.activeType
|
||||
if(new Date() > new Date(res.orderDTO.orderInfoDTO.cvaliDate)) {
|
||||
this.cvalidateStr = ''
|
||||
}
|
||||
}
|
||||
|
||||
if (res.orderDTO && res.orderDTO.prtType) {
|
||||
localStorage.setItem('readingProtocolType', res.orderDTO.prtType)
|
||||
}
|
||||
@@ -1587,10 +1597,14 @@ export default {
|
||||
}
|
||||
})
|
||||
if (!that.changeCard) {
|
||||
//将投保人数组排序
|
||||
//将投保人文件数组排序
|
||||
that.appntSign.sort(function (a, b) {
|
||||
return a.key - b.key
|
||||
})
|
||||
//将被保人文件数组排序
|
||||
that.insuredSign.sort(function (a, b) {
|
||||
return a.key - b.key
|
||||
})
|
||||
//获取投保和被保险人电子投保单签字状态
|
||||
console.log(that.appntSign,'that.appntSign')
|
||||
that.appntSign.map((item,index) => {
|
||||
@@ -1641,7 +1655,11 @@ export default {
|
||||
if (item.documentCode == '1') {
|
||||
item.key = 2
|
||||
// item.key = 4
|
||||
item.routePath = 'insuranceInformation'
|
||||
if(JSON.parse(window.localStorage.getItem('mainRiskCodes'))[0] == 'GFRS_M0081'){
|
||||
item.routePath = 'insuranceInformation_0081'
|
||||
} else {
|
||||
item.routePath = 'insuranceInformation'
|
||||
}
|
||||
} else if (item.documentCode == '2') {
|
||||
// item.key = 9
|
||||
item.key = 11
|
||||
|
||||
@@ -1087,7 +1087,7 @@
|
||||
that.signVal = window.localStorage.getItem('sign-val')
|
||||
// 判断是不是万能险
|
||||
let comment = window.localStorage.getItem('productCode')
|
||||
if (comment == 'GFRS_M0003' || comment == 'GFRS_M0015' || comment == 'GFRS_M0017' || comment == 'GFRS_M0075' || comment == 'GFRS_M0080') {
|
||||
if (comment == 'GFRS_M0003' || comment == 'GFRS_M0015' || comment == 'GFRS_M0017' || comment == 'GFRS_M0075' || comment == 'GFRS_M0080' || comment == 'GFRS_M0082' || comment == 'GFRS_M0083') {
|
||||
this.isComment = true
|
||||
}
|
||||
// 获取投保人信息
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
(包含当日)之后,保险合同于国富人寿收取首期保险费并签发保险单次日零时起生效。 -->
|
||||
|
||||
如您于<span>{{ cvalidateStrOneDayOff }}</span>(包含当日)前申请投保且支付保险费,经国富人寿保险股份有限公司(以下简称国富人寿)同意并签发保单,
|
||||
签发保单日在<span>{{ cvalidateStrOneDayOff }}</span>及以前,保险合同自{{ cvalidateStrToFormat }}零时起生效,签发保单日在{{ cvalidateStrToFormat }}及以后,
|
||||
保险合同自签发保险单次日零时起生效。
|
||||
<span>{{ cvalidateStrOneDayOff }}</span>(包含当日)前签发保单,保险合同自{{ cvalidateStrToFormat }}零时起生效;{{ cvalidateStrToFormat }}(包含当日)后签发保单,
|
||||
保险合同自签发保险单次日零时起生效。国富人寿将通过您投保时预留的银行账户转账扣除保险费,为顺利承保,请您充足银行账户余额。
|
||||
|
||||
</p>
|
||||
<p style="text-indent:2rem;">
|
||||
@@ -134,7 +134,7 @@ export default {
|
||||
methods: {
|
||||
async init(){
|
||||
this.isFrom = window.localStorage.isFrom
|
||||
const orderNo = this.$CacheUtils.getLocItem('orderNo')
|
||||
const orderNo = this.$route.query.orderNo
|
||||
let detailPromise = this.isFrom === 'proposal' ? localStorage.proposalMedical : await getOrderDetail({ orderNo })
|
||||
if(this.isFrom != 'proposal'){
|
||||
//活动生效日期
|
||||
@@ -202,13 +202,13 @@ export default {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: window.localStorage.getItem('orderNo')
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.appntSign.signId,
|
||||
orderNo: window.localStorage.getItem('orderNo'),
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.appntSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.appntSign.documentType,
|
||||
@@ -226,10 +226,10 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + that.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url
|
||||
path: '/sale/' + url + '?orderNo=' + that.$route.query.orderNo,
|
||||
}
|
||||
})
|
||||
} else {
|
||||
@@ -254,13 +254,13 @@ export default {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: window.localStorage.getItem('orderNo')
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.insuredSign.signId,
|
||||
orderNo: window.localStorage.getItem('orderNo'),
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.insuredSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.insuredSign.documentType,
|
||||
@@ -276,10 +276,10 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic'
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic' + '?orderNo=' + that.$route.query.orderNo,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/SignatureOfElectronic'
|
||||
path: '/sale/SignatureOfElectronic' + '?orderNo=' + that.$route.query.orderNo,
|
||||
}
|
||||
})
|
||||
} else {
|
||||
@@ -308,13 +308,13 @@ export default {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: window.localStorage.getItem('orderNo')
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.appntSign.signId,
|
||||
orderNo: window.localStorage.getItem('orderNo'),
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.appntSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.appntSign.documentType,
|
||||
@@ -331,11 +331,11 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/' + url,
|
||||
url: location.origin + '/#/sale/' + url + '?orderNo=' + that.$route.query.orderNo,
|
||||
forbidSwipeBack: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/' + url
|
||||
path: '/sale/' + url + '?orderNo=' + that.$route.query.orderNo
|
||||
}
|
||||
})
|
||||
} else {
|
||||
@@ -354,13 +354,13 @@ export default {
|
||||
orderType: 'SIGN_ORDER',
|
||||
orderDTO: {
|
||||
orderInfoDTO: {
|
||||
orderNo: window.localStorage.getItem('orderNo')
|
||||
orderNo: that.$route.query.orderNo
|
||||
},
|
||||
ebizSignDTOS: [
|
||||
{
|
||||
signOrRead: 'read',
|
||||
signId: that.insuredSign.signId,
|
||||
orderNo: window.localStorage.getItem('orderNo'),
|
||||
orderNo: that.$route.query.orderNo,
|
||||
documentCode: that.insuredSign.documentCode,
|
||||
documentStatus: '1',
|
||||
documentType: that.insuredSign.documentType,
|
||||
@@ -376,11 +376,11 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic',
|
||||
url: location.origin + '/#/sale/SignatureOfElectronic' + '?orderNo=' + that.$route.query.orderNo,
|
||||
forbidSwipeBack: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/sale/SignatureOfElectronic'
|
||||
path: '/sale/SignatureOfElectronic' + '?orderNo=' + that.$route.query.orderNo,
|
||||
}
|
||||
})
|
||||
} else {
|
||||
|
||||