|
@@ -1,5 +1,6 @@
|
|
|
<template>
|
|
<template>
|
|
|
<view class="">
|
|
<view class="">
|
|
|
|
|
+ <public-module></public-module>
|
|
|
<image src="/static/image/car-insure/Quotablebanner.png" mode=""
|
|
<image src="/static/image/car-insure/Quotablebanner.png" mode=""
|
|
|
style="width: 100%;height: 110px;position: absolute;"></image>
|
|
style="width: 100%;height: 110px;position: absolute;"></image>
|
|
|
<view class="page">
|
|
<view class="page">
|
|
@@ -15,7 +16,7 @@
|
|
|
<view class="carJump" @tap="toCarInfo">修改信息</view>
|
|
<view class="carJump" @tap="toCarInfo">修改信息</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="" style="position: relative;">
|
|
<view class="" style="position: relative;">
|
|
|
- <view class=" dis f-c" v-for="(riskitem,riskindex) in riskList" :key="riskindex">
|
|
|
|
|
|
|
+ <view class=" dis f-c" v-if="['0330','0330034002','0330034001'].includes(productId)">
|
|
|
<text class="plan-ins-title">交强险</text>
|
|
<text class="plan-ins-title">交强险</text>
|
|
|
<view class="quotePlan">
|
|
<view class="quotePlan">
|
|
|
<view class=" dis a-c j-s modelformcss">
|
|
<view class=" dis a-c j-s modelformcss">
|
|
@@ -46,7 +47,7 @@
|
|
|
|
|
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class=" dis f-c ">
|
|
|
|
|
|
|
+ <view class=" dis f-c " v-if="['034001','0330034002','0330034001'].includes(productId)">
|
|
|
<text class="plan-ins-title">商业险</text>
|
|
<text class="plan-ins-title">商业险</text>
|
|
|
<view class="quotePlan">
|
|
<view class="quotePlan">
|
|
|
<view class=" dis a-c j-s modelformcss">
|
|
<view class=" dis a-c j-s modelformcss">
|
|
@@ -131,22 +132,21 @@
|
|
|
<view class="insuranceGuide dis a-c j-c" @click.stop="InsureGuideclick">
|
|
<view class="insuranceGuide dis a-c j-c" @click.stop="InsureGuideclick">
|
|
|
投保指引
|
|
投保指引
|
|
|
</view>
|
|
</view>
|
|
|
- <ls-loading v-show="totalitem.quoteCode==1" text="掌柜正在为您报价,请稍等......"
|
|
|
|
|
|
|
+ <ls-loading v-if="totalitem.quoteCode ==1" text="掌柜正在为您报价,请稍等......"
|
|
|
:animation="animation" fontSize="22" />
|
|
:animation="animation" fontSize="22" />
|
|
|
<!-- 价格 -->
|
|
<!-- 价格 -->
|
|
|
- <view class="dis a-c" v-if="totalitem.quoteCode==200">
|
|
|
|
|
|
|
+ <view class="dis a-c" v-if="totalitem.quoteCode=='200'">
|
|
|
<view class="dis a-c" style="margin-right: 10px;">
|
|
<view class="dis a-c" style="margin-right: 10px;">
|
|
|
<text style="color: #FF4D4D;font-size: 12px;"
|
|
<text style="color: #FF4D4D;font-size: 12px;"
|
|
|
v-if="totalitem.result.sumExportFee">优惠金额¥{{totalitem.result.sumExportFee}}</text>
|
|
v-if="totalitem.result.sumExportFee">优惠金额¥{{totalitem.result.sumExportFee}}</text>
|
|
|
</view>
|
|
</view>
|
|
|
<text class="sum">¥{{totalitem.result.sumPermium}}</text>
|
|
<text class="sum">¥{{totalitem.result.sumPermium}}</text>
|
|
|
</view>
|
|
</view>
|
|
|
- <text
|
|
|
|
|
- v-show="(totalitem.quoteCode != '200') && (totalitem.quoteCode != '0') && (totalitem.quoteCode != '1')"
|
|
|
|
|
- class="sum" style="color: #999;font-size: 12px;"
|
|
|
|
|
|
|
+ <text v-if="totalitem.quoteCode=='3'" class="sum"
|
|
|
|
|
+ style="color: #999;font-size: 12px;"
|
|
|
@tap.stop.prevent="ErrorMsg(totalitem.msg,totalitem.namesimple)">报价失败,查看原因</text>
|
|
@tap.stop.prevent="ErrorMsg(totalitem.msg,totalitem.namesimple)">报价失败,查看原因</text>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class="Premium dis f-c mb-2" v-show="totalitem.quoteCode==200">
|
|
|
|
|
|
|
+ <view class="Premium dis f-c mb-2" v-if="totalitem.quoteCode=='200'">
|
|
|
<view class="dis price" v-if="totalitem.result.feeNoDescription">
|
|
<view class="dis price" v-if="totalitem.result.feeNoDescription">
|
|
|
<text>该车未匹配销管费用,不建议投保!</text>
|
|
<text>该车未匹配销管费用,不建议投保!</text>
|
|
|
<u-icon name="chat-fill" color="#ff0000" size="40"
|
|
<u-icon name="chat-fill" color="#ff0000" size="40"
|
|
@@ -226,21 +226,93 @@
|
|
|
</view>
|
|
</view>
|
|
|
<u-button class="ml-2" type="error" size="mini"
|
|
<u-button class="ml-2" type="error" size="mini"
|
|
|
:custom-style="{borderRadius:'2px'}"
|
|
:custom-style="{borderRadius:'2px'}"
|
|
|
- style="background: linear-gradient( 90deg, #FF4D4D 0%, #FF784D 100%);">报价单</u-button>
|
|
|
|
|
|
|
+ style="background: linear-gradient( 90deg, #FF4D4D 0%, #FF784D 100%);"
|
|
|
|
|
+ @click="bjdpreview(totalitem.result.companyId)">报价单</u-button>
|
|
|
<u-button class="ml-2" type="primary" size="mini"
|
|
<u-button class="ml-2" type="primary" size="mini"
|
|
|
:custom-style="{borderRadius:'2px'}"
|
|
:custom-style="{borderRadius:'2px'}"
|
|
|
- style="background: linear-gradient( 90deg, #0052FF 0%, #0D8BFF 100%);">查看详情</u-button>
|
|
|
|
|
|
|
+ style="background: linear-gradient( 90deg, #0052FF 0%, #0D8BFF 100%);"
|
|
|
|
|
+ @click="querydetial(totalitem.result.companyId)">查看详情</u-button>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class="planDetails mb-2 dis a-c j-c f-c">
|
|
|
|
|
|
|
+ <view class="planDetails mb-2 dis f-c" v-show="totalitem.insurancePlanInfo">
|
|
|
<view class="headers dis j-c a-c" @tap="togglePlanDetails(totalindex)">
|
|
<view class="headers dis j-c a-c" @tap="togglePlanDetails(totalindex)">
|
|
|
<image
|
|
<image
|
|
|
:src="totalitem.planDetailsshow?'/static/image/car-insure/DoubleLeft1.png':'/static/image/car-insure/DoubleLeft.png'"
|
|
:src="totalitem.planDetailsshow?'/static/image/car-insure/DoubleLeft1.png':'/static/image/car-insure/DoubleLeft.png'"
|
|
|
mode=""></image>
|
|
mode=""></image>
|
|
|
- <text>展开方案详情</text>
|
|
|
|
|
|
|
+ <text>{{totalitem.planDetailsshow?'收起':'展开'}}方案详情</text>
|
|
|
</view>
|
|
</view>
|
|
|
<view v-if="totalitem.planDetailsshow">
|
|
<view v-if="totalitem.planDetailsshow">
|
|
|
- 321321321
|
|
|
|
|
|
|
+ <view class="Plancontent dis j-s " style="padding:0;">
|
|
|
|
|
+ <text class="title mb-1">车船税</text>
|
|
|
|
|
+ <text>{{model.taxRelifFlag}}</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="Plancontent dis f-c " style="padding:0;"
|
|
|
|
|
+ v-if="totalitem.insurancePlanInfo.isJq=='1'">
|
|
|
|
|
+ <view class="dis j-s a-c">
|
|
|
|
|
+ <text class="title mb-1">交强险</text>
|
|
|
|
|
+ <u-button type="primary"
|
|
|
|
|
+ style="background: linear-gradient(90deg, #FF4D4D 0%, #FF784D 100%);"
|
|
|
|
|
+ size="mini" @click="jqterms">交强条款</u-button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <text style="margin-left: 10px;">{{jqstartDate}} - {{jqendDate}}</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="Plancontent dis f-c " style="padding: 0;"
|
|
|
|
|
+ v-if="totalitem.insurancePlanInfo.isSy=='1'">
|
|
|
|
|
+ <view class="dis j-s a-c">
|
|
|
|
|
+ <text class="title mb-1">商业险</text>
|
|
|
|
|
+ <u-button type="primary"
|
|
|
|
|
+ style="background: linear-gradient(90deg, #FF4D4D 0%, #FF784D 100%);"
|
|
|
|
|
+ size="mini" @click="jqterms">商业条款</u-button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <text style="margin-left: 10px;">{{systartDate}} - {{syendDate}}</text>
|
|
|
|
|
+ <view class="dis f-c p-2">
|
|
|
|
|
+ <view class="dis a-c j-s" style="border-bottom: 1px solid #f2f2f2;">
|
|
|
|
|
+ <text>险别</text>
|
|
|
|
|
+ <text>保额</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="dis a-c j-s"
|
|
|
|
|
+ v-for="(item,index) in totalitem.insurancePlanInfo" :key="index">
|
|
|
|
|
+ <text>{{item.kindName}}:</text>
|
|
|
|
|
+ <text>{{convertedValue(item.amount)}}</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="Plancontent dis f-c " style="padding: 0;"
|
|
|
|
|
+ v-if=" totalitem.insurancePlanInfo.drivingList && totalitem.insurancePlanInfo.drivingList.length">
|
|
|
|
|
+ <text class="title mb-1">意外险</text>
|
|
|
|
|
+ <view class=" modelformcss"
|
|
|
|
|
+ v-for="(drivingsitem,risksindex) in totalitem.insurancePlanInfo.drivingList"
|
|
|
|
|
+ :key="risksindex">
|
|
|
|
|
+ <view class="dis f-c ">
|
|
|
|
|
+ <text>{{drivingsitem.parentName}}</text>
|
|
|
|
|
+ <text>{{drivingsitem.projectName}}</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="Accident mt-2"
|
|
|
|
|
+ v-if="drivingsitem.insDrivingIntentionInsuranceSon && drivingsitem.insDrivingIntentionInsuranceSon.length>0">
|
|
|
|
|
+ <view class="dis a-c j-s">
|
|
|
|
|
+ <view class="head dis a-c j-c">保险责任</view>
|
|
|
|
|
+ <view class="head dis a-c j-c">保险金额</view>
|
|
|
|
|
+ <view class="head dis a-c j-c">保费(元)</view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="dis a-c j-s"
|
|
|
|
|
+ v-for="(Sonitem,Sonindex) in drivingsitem.insDrivingIntentionInsuranceSon"
|
|
|
|
|
+ :key="Sonindex">
|
|
|
|
|
+ <view class="tr dis a-c j-c"> {{Sonitem.name}}</view>
|
|
|
|
|
+ <view class="tr dis a-c j-c"> {{Sonitem.amount}}/座</view>
|
|
|
|
|
+ <view class="tr dis a-c j-c">¥{{Sonitem.premium}}</view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
|
|
|
+ <text>份数</text>
|
|
|
|
|
+ <text>{{drivingsitem.quantity}}份</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
|
|
|
+ <text>总保费</text>
|
|
|
|
|
+ <text>¥{{drivingsitem.sumPremium?drivingsitem.sumPremium:0}}</text>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+
|
|
|
|
|
+ </view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="footer-btn dis j-s a-c">
|
|
<view class="footer-btn dis j-s a-c">
|
|
@@ -249,18 +321,7 @@
|
|
|
@click="SchemeSelection(totalitem)">方案选择</u-button>
|
|
@click="SchemeSelection(totalitem)">方案选择</u-button>
|
|
|
<u-button type="primary" size="mini"
|
|
<u-button type="primary" size="mini"
|
|
|
style="background:#FFEFE6;color: #FF5600; width: 45%;"
|
|
style="background:#FFEFE6;color: #FF5600; width: 45%;"
|
|
|
- @tap="next">单独报价</u-button>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="quotebtn dis j-s a-c" v-show="totalitem.quoteCode==200">
|
|
|
|
|
- <view class="dis a-c j-c" @click="bjdpreview(totalitem.result.companyId)"
|
|
|
|
|
- style="background-color: #0052FF;border-bottom-left-radius:6px;color: #fff;">
|
|
|
|
|
- 报价单
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="dis a-c j-c"
|
|
|
|
|
- style="background-color: #E6EEFF;border-bottom-right-radius:6px;color: #0052FF;"
|
|
|
|
|
- @click="querydetial(totalitem.result.companyId)">
|
|
|
|
|
- 查看详情
|
|
|
|
|
- </view>
|
|
|
|
|
|
|
+ @tap="individualQuote(totalitem)">单独报价</u-button>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
@@ -277,22 +338,26 @@
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</u-modal>
|
|
</u-modal>
|
|
|
- <u-popup v-model="anshengPlanPopup" mode="center" width="100%" border-radius="6">
|
|
|
|
|
|
|
+ <u-popup v-model="genericPlanPopup" mode="center" width="100%" border-radius="6">
|
|
|
<view class="">
|
|
<view class="">
|
|
|
<image src="/static/image/car-insure/SchemeSelection.png" mode="" style="width: 100%;height: 40px;">
|
|
<image src="/static/image/car-insure/SchemeSelection.png" mode="" style="width: 100%;height: 40px;">
|
|
|
</image>
|
|
</image>
|
|
|
<scroll-view :scroll-top="scrollTop" scroll-y="true" class="scroll-Y">
|
|
<scroll-view :scroll-top="scrollTop" scroll-y="true" class="scroll-Y">
|
|
|
<view class="Plancontent dis f-c ">
|
|
<view class="Plancontent dis f-c ">
|
|
|
<text class="title mb-1">方案选择</text>
|
|
<text class="title mb-1">方案选择</text>
|
|
|
- <view class="dis a-c f-wrap j-s modelformcss" style="margin-top: 10px;">
|
|
|
|
|
|
|
+ <view class="dis a-c f-wrap modelformcss">
|
|
|
<view class="status-data" :class="item.schemeId==SelectedPlanId? 'active':''"
|
|
<view class="status-data" :class="item.schemeId==SelectedPlanId? 'active':''"
|
|
|
- v-for="(item,index) in anshenginsurancePlanInfo.planList"
|
|
|
|
|
|
|
+ style="margin-right: 10px;" v-for="(item,index) in planDataExpansion.genericPlanList"
|
|
|
@tap.stop.prevent="statusclick(item.schemeId)" :key="index">
|
|
@tap.stop.prevent="statusclick(item.schemeId)" :key="index">
|
|
|
{{item.schemeName}}
|
|
{{item.schemeName}}
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class="" v-if="SelectedPlanId !=='4'">
|
|
|
|
|
|
|
+ <view class="">
|
|
|
|
|
+ <view class="Plancontent dis f-c " v-if="planDataExpansion.genericPlanInfo.isJq=='1'">
|
|
|
|
|
+ <text class="title mb-1">交强险</text>
|
|
|
|
|
+ <text style="margin-left: 10px;">{{jqstartDate}} - {{jqendDate}}</text>
|
|
|
|
|
+ </view>
|
|
|
<view class="Plancontent dis f-c ">
|
|
<view class="Plancontent dis f-c ">
|
|
|
<text class="title mb-1">车船税</text>
|
|
<text class="title mb-1">车船税</text>
|
|
|
<view class="">
|
|
<view class="">
|
|
@@ -361,82 +426,71 @@
|
|
|
</u-form>
|
|
</u-form>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class="Plancontent dis f-c ">
|
|
|
|
|
- <text class="title mb-1">交强险</text>
|
|
|
|
|
- <view class=" dis a-c j-s modelformcss">
|
|
|
|
|
- <text>即时投保</text>
|
|
|
|
|
- <view class="dis a-c j-c">
|
|
|
|
|
- <view class="status-data" :class="item.value==jqimmediately? 'active':''"
|
|
|
|
|
- v-for="(item,index) in jqimmediatelyList"
|
|
|
|
|
- @tap="datelyClick(item.value,'jqimmediately','jqstartDate','jqendDate')"
|
|
|
|
|
- :key="index">
|
|
|
|
|
- {{item.label}}
|
|
|
|
|
- </view>
|
|
|
|
|
|
|
+ <view class="Plancontent dis f-c " v-if="planDataExpansion.genericPlanInfo.isSy=='1'">
|
|
|
|
|
+ <text class="title mb-1">商业险</text>
|
|
|
|
|
+ <text style="margin-left: 10px;">{{systartDate}} - {{syendDate}}</text>
|
|
|
|
|
+ <view class="insuranceType" v-if="planDataExpansion.genericPlanInfo.schemeName !=='自选方案'">
|
|
|
|
|
+ <view class="dis a-c j-s"
|
|
|
|
|
+ v-for="(item,index) in planDataExpansion.genericPlanInfo.kinds" :key="index">
|
|
|
|
|
+ <text>{{item.kindName}}:</text>
|
|
|
|
|
+ <text>{{convertedValue(item.amount)}}</text>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- <u-form ref="uForm" label-width="120px">
|
|
|
|
|
- <u-form-item label="交强险投保日期" class="modelformcss">
|
|
|
|
|
- <u-input type="select" :select-open="jqstartShow"
|
|
|
|
|
- :custom-style="{textAlign:'right'}" v-model="jqstartDate" placeholder="请选择开始时间"
|
|
|
|
|
- @click="jqstartShow = true"></u-input>
|
|
|
|
|
- <u-picker v-model="jqstartShow" mode="time" :params="params"
|
|
|
|
|
- @confirm="jqstartconfirm"></u-picker>
|
|
|
|
|
- </u-form-item>
|
|
|
|
|
- <u-form-item label="交强险终保日期" class="modelformcss">
|
|
|
|
|
- <u-input type="select" :select-open="jqendShow" :custom-style="{textAlign:'right'}"
|
|
|
|
|
- v-model="jqendDate" placeholder="请选择结束时间" @click="jqendShow = true"></u-input>
|
|
|
|
|
- <u-picker v-model="jqendShow" mode="time" :params="params"
|
|
|
|
|
- @confirm="jqendconfirm"></u-picker>
|
|
|
|
|
- </u-form-item>
|
|
|
|
|
- </u-form>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="Plancontent dis f-c ">
|
|
|
|
|
- <text class="title mb-1">商业险</text>
|
|
|
|
|
- <view class=" dis a-c j-s modelformcss">
|
|
|
|
|
- <text>即时投保</text>
|
|
|
|
|
- <view class="dis a-c j-c">
|
|
|
|
|
- <view class="status-data" :class="item.value==syimmediately? 'active':''"
|
|
|
|
|
- v-for="(item,index) in syimmediatelyList"
|
|
|
|
|
- @tap="datelyClick(item.value,'syimmediately','systartDate','syendDate')"
|
|
|
|
|
- :key="index">
|
|
|
|
|
- {{item.label}}
|
|
|
|
|
|
|
+ <template v-else>
|
|
|
|
|
+ <view class="immediately">
|
|
|
|
|
+ <view class="dis f-c" style="background: #F9F9F9;border-radius: 10px;">
|
|
|
|
|
+ <block v-for="(insureItem,index) in planDataExpansion.genericPlanInfo.kinds"
|
|
|
|
|
+ :key="index">
|
|
|
|
|
+ <template v-if="insureItem.amount == 0">
|
|
|
|
|
+ <view class="car-ins-cell d-flex j-sb common-ins-cell"
|
|
|
|
|
+ @tap="adjustBIItem(index)">
|
|
|
|
|
+ <view class="cell-title d-flex a-center j-center">
|
|
|
|
|
+ {{insureItem.kindName}}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="cell-desc d-flex a-center j-center">
|
|
|
|
|
+ {{insureItem.amountDesc}}
|
|
|
|
|
+ <view class="icon iconfont icon-youjiantou"
|
|
|
|
|
+ style="font-size: 40rpx;margin-left: 20upx;color: #C7C6CA;">
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </block>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- </view>
|
|
|
|
|
- <u-form ref="uForm" label-width="120px">
|
|
|
|
|
- <u-form-item label="商业险投保日期" class="modelformcss">
|
|
|
|
|
- <u-input type="select" :select-open="systartShow"
|
|
|
|
|
- :custom-style="{textAlign:'right'}" v-model="systartDate" placeholder="请选择开始时间"
|
|
|
|
|
- @click="systartShow = true"></u-input>
|
|
|
|
|
- <u-picker v-model="systartShow" mode="time" :params="params"
|
|
|
|
|
- @confirm="systartconfirm"></u-picker>
|
|
|
|
|
- </u-form-item>
|
|
|
|
|
- <u-form-item label="商业险终保日期" class="modelformcss" :border-bottom='false'>
|
|
|
|
|
- <u-input type="select" :select-open="syendShow" :custom-style="{textAlign:'right'}"
|
|
|
|
|
- v-model="syendDate" placeholder="请选择结束时间" @click="syendShow = true"></u-input>
|
|
|
|
|
- <u-picker v-model="syendShow" mode="time" :params="params"
|
|
|
|
|
- @confirm="syendconfirm"></u-picker>
|
|
|
|
|
- </u-form-item>
|
|
|
|
|
- </u-form>
|
|
|
|
|
- <view class="insuranceType">
|
|
|
|
|
- <view class="dis a-c j-s">
|
|
|
|
|
- <text>三者责任险:</text>
|
|
|
|
|
- <text>321321321</text>
|
|
|
|
|
|
|
+ <view class="compulsory-insurance">
|
|
|
|
|
+ <block v-for="(insureItem,index) in planDataExpansion.genericPlanInfo.kinds"
|
|
|
|
|
+ :key="index">
|
|
|
|
|
+ <template v-if="insureItem.amount == 0">
|
|
|
|
|
+ <view class="car-ins-cell d-flex j-sb common-ins-cell"
|
|
|
|
|
+ @tap="adjustBIItem(index)">
|
|
|
|
|
+ <view class="cell-title d-flex a-center j-center">
|
|
|
|
|
+ {{insureItem.kindName}}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="cell-desc d-flex a-center j-center">
|
|
|
|
|
+ {{insureItem.amountDesc}}
|
|
|
|
|
+ <view class="icon iconfont icon-youjiantou"
|
|
|
|
|
+ style="font-size: 40rpx;margin-left: 20upx;color: #C7C6CA;">
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </block>
|
|
|
</view>
|
|
</view>
|
|
|
- </view>
|
|
|
|
|
|
|
+ </template>
|
|
|
</view>
|
|
</view>
|
|
|
- <view class="Plancontent dis f-c ">
|
|
|
|
|
|
|
+ <view class="Plancontent dis f-c "
|
|
|
|
|
+ v-if="planDataExpansion.genericPlanInfo.schemeName !=='自选方案' && planDataExpansion.genericPlanInfo && planDataExpansion.genericPlanInfo.drivingList && planDataExpansion.genericPlanInfo.drivingList.length">
|
|
|
<text class="title mb-1">意外险</text>
|
|
<text class="title mb-1">意外险</text>
|
|
|
<view class=" modelformcss"
|
|
<view class=" modelformcss"
|
|
|
- v-for="(drivingsitem,risksindex) in anshenginsurancePlanInfo.isSelectedPlan.drivingList"
|
|
|
|
|
|
|
+ v-for="(drivingsitem,risksindex) in planDataExpansion.genericPlanInfo.drivingList"
|
|
|
:key="risksindex">
|
|
:key="risksindex">
|
|
|
<view class="dis f-c ">
|
|
<view class="dis f-c ">
|
|
|
|
|
+ <text>{{drivingsitem.parentName}}</text>
|
|
|
<text>{{drivingsitem.projectName}}</text>
|
|
<text>{{drivingsitem.projectName}}</text>
|
|
|
- <text
|
|
|
|
|
- v-if="drivingsitem.insDrivingIntentionInsurances">{{drivingsitem.insDrivingIntentionInsurances[0].projectName}}</text>
|
|
|
|
|
</view>
|
|
</view>
|
|
|
<view class="Accident mt-2"
|
|
<view class="Accident mt-2"
|
|
|
- v-if="drivingsitem.insDrivingIntentionInsurances[0].insDrivingIntentionInsuranceSon.length>0">
|
|
|
|
|
|
|
+ v-if="drivingsitem.insDrivingIntentionInsuranceSon && drivingsitem.insDrivingIntentionInsuranceSon.length>0">
|
|
|
<view class="dis a-c j-s">
|
|
<view class="dis a-c j-s">
|
|
|
<view class="head dis a-c j-c">保险责任</view>
|
|
<view class="head dis a-c j-c">保险责任</view>
|
|
|
<view class="head dis a-c j-c">保险金额</view>
|
|
<view class="head dis a-c j-c">保险金额</view>
|
|
@@ -452,36 +506,75 @@
|
|
|
</view>
|
|
</view>
|
|
|
<view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
<view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
|
<text>份数</text>
|
|
<text>份数</text>
|
|
|
- <text>一份</text>
|
|
|
|
|
|
|
+ <text>{{drivingsitem.quantity}}份</text>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
<view class="dis a-c j-s mt-2" style="font-size: 14px;color: #232832;">
|
|
|
<text>总保费</text>
|
|
<text>总保费</text>
|
|
|
- <text>¥70.00</text>
|
|
|
|
|
|
|
+ <text>¥{{drivingsitem.sumPremium?drivingsitem.sumPremium:0}}</text>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
</view>
|
|
</view>
|
|
|
- </view>
|
|
|
|
|
- <view class="" v-else>
|
|
|
|
|
|
|
+ <view class="" v-else>
|
|
|
|
|
|
|
|
|
|
+ </view>
|
|
|
</view>
|
|
</view>
|
|
|
</scroll-view>
|
|
</scroll-view>
|
|
|
<view class="PlanPopup-btn dis a-c j-c">
|
|
<view class="PlanPopup-btn dis a-c j-c">
|
|
|
<u-button shape="circle" size="medium" style="margin-right: 50px;"
|
|
<u-button shape="circle" size="medium" style="margin-right: 50px;"
|
|
|
- @click="anshengPlanPopup=false">取消</u-button>
|
|
|
|
|
|
|
+ @click="genericPlanPopup=false">取消</u-button>
|
|
|
<u-button type="primary" shape="circle" size="medium"
|
|
<u-button type="primary" shape="circle" size="medium"
|
|
|
- style="background: linear-gradient( 90deg, #0052FF 0%, #0D8BFF 100%);">确定方案</u-button>
|
|
|
|
|
|
|
+ style="background: linear-gradient( 90deg, #0052FF 0%, #0D8BFF 100%);"
|
|
|
|
|
+ @click="confirmPlan">确定方案</u-button>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</u-popup>
|
|
</u-popup>
|
|
|
|
|
+ <!-- 商业选择方案 -->
|
|
|
|
|
+ <wyb-popup ref="popupBI" type="bottom" mode="size-fixed" height="900" radius="6" :showCloseIcon="true">
|
|
|
|
|
+ <view class="popup-content">
|
|
|
|
|
+ <view class="popHeader d-flex a-center j-center">
|
|
|
|
|
+ 选择方案
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <scroll-view scroll-top="0" scroll-y="true" class="popContent">
|
|
|
|
|
+ <view class="popContentTitle">{{insureItem.kindName}}</view>
|
|
|
|
|
+ <view style="color: #999;font-size: 24upx;">{{insureItem.desc}}</view>
|
|
|
|
|
+ <view class="dis a-c j-s p-3" v-if="['TY2','TY3','TY4'].includes(insureItem.kindCode)">
|
|
|
|
|
+ <text>自定义次数</text>
|
|
|
|
|
+ <u-number-box v-model="insureItem.amount" :input-width="100" :input-height="60" :min="0"
|
|
|
|
|
+ color="#fff" size="30" @change="numberBoxChange"></u-number-box>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view v-else style="margin-top: 10px;">
|
|
|
|
|
+ <block v-for="(amt,index) in insureItem.amtList" :key="index">
|
|
|
|
|
+ <view class="amtSingle" @tap="adjustBIItemLabel(index)"
|
|
|
|
|
+ :class="(amt.label== insureItem.amountDesc)?'active':''">
|
|
|
|
|
+ {{amt.label}}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </block>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </scroll-view>
|
|
|
|
|
+ <view class="popBottom">
|
|
|
|
|
+ <button type="primary" style="background-color: #0052FF;"
|
|
|
|
|
+ @tap="adjustBIItemLabelSubmit()">完成</button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </wyb-popup>
|
|
|
|
|
+
|
|
|
</view>
|
|
</view>
|
|
|
</template>
|
|
</template>
|
|
|
<script>
|
|
<script>
|
|
|
|
|
+ import {
|
|
|
|
|
+ mapState
|
|
|
|
|
+ } from "vuex"
|
|
|
import lsLoading from '@/components/common/ls-loading/ls-loading.vue';
|
|
import lsLoading from '@/components/common/ls-loading/ls-loading.vue';
|
|
|
|
|
+ import wybPopup from '@/components/modules/carInsure/wyb-popup/wyb-popup.vue'
|
|
|
export default {
|
|
export default {
|
|
|
components: {
|
|
components: {
|
|
|
|
|
+ wybPopup,
|
|
|
lsLoading
|
|
lsLoading
|
|
|
},
|
|
},
|
|
|
|
|
+ computed: {
|
|
|
|
|
+ ...mapState(['userInfo', 'quotationType']),
|
|
|
|
|
+ },
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
showaaa: false,
|
|
showaaa: false,
|
|
@@ -584,9 +677,17 @@
|
|
|
/* 投保指引弹窗*/
|
|
/* 投保指引弹窗*/
|
|
|
InsureGuideContent: "", // 指引内容
|
|
InsureGuideContent: "", // 指引内容
|
|
|
SelectedPlanId: "2", //已选方案id
|
|
SelectedPlanId: "2", //已选方案id
|
|
|
- anshengPlanPopup: false, //方案选择弹窗
|
|
|
|
|
- anshenginsurancePlanInfo: {},
|
|
|
|
|
-
|
|
|
|
|
|
|
+ genericPlanPopup: false, //方案选择弹窗
|
|
|
|
|
+ planDataExpansion: { //方案综合数据
|
|
|
|
|
+ id: "",
|
|
|
|
|
+ namesimple: "",
|
|
|
|
|
+ cnName: "",
|
|
|
|
|
+ genericPlanList: [], //方案通用列表
|
|
|
|
|
+ genericPlanInfo: {}, //方案展示信息
|
|
|
|
|
+ },
|
|
|
|
|
+ insureItem: {},
|
|
|
|
|
+ orderno: "", //订单号
|
|
|
|
|
+ quoteno: "", //报价号
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
onShow() {
|
|
onShow() {
|
|
@@ -614,13 +715,257 @@
|
|
|
this.insuredPersonInfoPositiveList = data.insuredPersonInfoPositiveList; //被保人
|
|
this.insuredPersonInfoPositiveList = data.insuredPersonInfoPositiveList; //被保人
|
|
|
this.productId = data.productId; //险种id
|
|
this.productId = data.productId; //险种id
|
|
|
this.riskTypeEchoProcessing(this.productId)
|
|
this.riskTypeEchoProcessing(this.productId)
|
|
|
- this.quotableCompanyList = data.quotableCompanyList; //可报价公司
|
|
|
|
|
|
|
+ this.quotableCompanyList = JSON.parse(JSON.stringify(data.quotableCompanyList)); //可报价公司
|
|
|
this.commpanyList();
|
|
this.commpanyList();
|
|
|
})
|
|
})
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ //弹出popup框并显示基本信息
|
|
|
|
|
+ adjustBIItem(index) {
|
|
|
|
|
+ var a = {};
|
|
|
|
|
+ Object.assign(a, this.planDataExpansion.genericPlanInfo.kinds[index])
|
|
|
|
|
+ this.insureItem = a;
|
|
|
|
|
+ this.$refs.popupBI.show() // 显示
|
|
|
|
|
+ },
|
|
|
|
|
+ //popup内容的label改变
|
|
|
|
|
+ adjustBIItemLabel(index) {
|
|
|
|
|
+ this.insureItem.amount = this.insureItem.amtList[index].value;
|
|
|
|
|
+ this.insureItem.amountDesc = this.insureItem.amtList[index].label;
|
|
|
|
|
+ },
|
|
|
|
|
+ jqterms() {
|
|
|
|
|
+ let file = 'https://sxzgkj.baoxianzhanggui.com/web-api/upload/specification/commercialInsurance.pdf';
|
|
|
|
|
+ //#ifdef H5
|
|
|
|
|
+ var win = window.open();
|
|
|
|
|
+ win.document.write(
|
|
|
|
|
+ '<body style="margin:0px;"><object data="' +
|
|
|
|
|
+ file +
|
|
|
|
|
+ '" type="application/pdf" width="100%" height="100%"><iframe src="' +
|
|
|
|
|
+ file +
|
|
|
|
|
+ '" scrolling="no" width="100%" height="100%" frameborder="0" ></iframe></object></body>'
|
|
|
|
|
+ );
|
|
|
|
|
+ //#endif
|
|
|
|
|
+ },
|
|
|
|
|
+ syterms() {
|
|
|
|
|
+ let file = 'https://sxzgkj.baoxianzhanggui.com/web-api/upload/specification/compulsoryInsurance.pdf';
|
|
|
|
|
+ //#ifdef H5
|
|
|
|
|
+ var win = window.open();
|
|
|
|
|
+ win.document.write(
|
|
|
|
|
+ '<body style="margin:0px;"><object data="' +
|
|
|
|
|
+ file +
|
|
|
|
|
+ '" type="application/pdf" width="100%" height="100%"><iframe src="' +
|
|
|
|
|
+ file +
|
|
|
|
|
+ '" scrolling="no" width="100%" height="100%" frameborder="0" ></iframe></object></body>'
|
|
|
|
|
+ );
|
|
|
|
|
+ //#endif
|
|
|
|
|
+ },
|
|
|
|
|
+ async individualQuote(item) {
|
|
|
|
|
+ if (!item.insurancePlanInfo) {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: "请选择方案后,在进行报价",
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ });
|
|
|
|
|
+ } else {
|
|
|
|
|
+ let param = {
|
|
|
|
|
+ userId: this.userInfo.sysUser.id,
|
|
|
|
|
+ quoteno: this.quoteno ? this.quoteno : "",
|
|
|
|
|
+ orderNo: this.orderno ? this.orderno : "",
|
|
|
|
|
+ riskList: this.riskList,
|
|
|
|
|
+ carInfo: this.carInfo,
|
|
|
|
|
+ insuredPersonInfo: this.insuredPersonInfo,
|
|
|
|
|
+ ownerInfo: this.ownerInfo,
|
|
|
|
|
+ policyHolderInfo: this.policyHolderInfo,
|
|
|
|
|
+ vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
|
|
|
|
|
+ };
|
|
|
|
|
+ let orders = await this.$http.post('/insurance/order/generateOrder', param);
|
|
|
|
|
+ if (orders.code == '200') {
|
|
|
|
|
+ this.orderno = orders.data.orderno;
|
|
|
|
|
+ this.quoteno = orders.data.quoteno;
|
|
|
|
|
+ let mergedArray = [];
|
|
|
|
|
+ let mergedArrayList = mergedArray.concat(this.carInfoPositiveList, this
|
|
|
|
|
+ .ownerInfoPositiveList, this
|
|
|
|
|
+ .policyHolderInfoPositiveList, this.insuredPersonInfoPositiveList)
|
|
|
|
|
+
|
|
|
|
|
+ if (mergedArrayList.length > 0) {
|
|
|
|
|
+ await this.$http.post('/ins/taskImage/uploadImages', {
|
|
|
|
|
+ imageList: mergedArrayList,
|
|
|
|
|
+ quoteNo: this.quoteno,
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ this.quotableCompanyList = this.quotableCompanyList.map((ele, index) => {
|
|
|
|
|
+ if (ele.id == item.id) {
|
|
|
|
|
+ // 动态调用报价接口
|
|
|
|
|
+ ele.quoteCode = '1';
|
|
|
|
|
+ this.ToolClickFun(ele.cnName, index, ele.id);
|
|
|
|
|
+ }
|
|
|
|
|
+ return ele
|
|
|
|
|
+ });
|
|
|
|
|
+ } else if (orders.code == '1001') {
|
|
|
|
|
+ this.Generateshow = true;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: orders.msg,
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ async ToolClickFun(MethodName, Parameter, companyId) {
|
|
|
|
|
+ await this[`${MethodName}`](Parameter, companyId)
|
|
|
|
|
+ //获取已报价成功个数
|
|
|
|
|
+ // let filteredObjects = [];
|
|
|
|
|
+ // this.totalCompanyList.map(ele => {
|
|
|
|
|
+ // if (ele.quoteCode == 200) {
|
|
|
|
|
+ // filteredObjects.push(ele.result.companyId)
|
|
|
|
|
+ // }
|
|
|
|
|
+ // return ele;
|
|
|
|
|
+ // })
|
|
|
|
|
+ // this.comparableQuantity = filteredObjects.length;
|
|
|
|
|
+ },
|
|
|
|
|
+ //安盛天平
|
|
|
|
|
+ ansheng(num, id) {
|
|
|
|
|
+ this.quoteInsurance(num, id, this
|
|
|
|
|
+ .quotableCompanyList[num].apiType);
|
|
|
|
|
+ },
|
|
|
|
|
+ //爬虫统一报价接口
|
|
|
|
|
+ async quoteInsurance(num, id, apiType) {
|
|
|
|
|
+ const companyId = uni.getStorageSync('companyId');
|
|
|
|
|
+ // let api = apiType === 2 ?
|
|
|
|
|
+ // "/insurance/crawler/quote" :
|
|
|
|
|
+ // "";
|
|
|
|
|
+ let api = '/insurance/crawler/quote';
|
|
|
|
|
+ let ccidenttype = this.quotableCompanyList[num]
|
|
|
|
|
+ .cnName;
|
|
|
|
|
+ let namesimple = this.quotableCompanyList[num]
|
|
|
|
|
+ .namesimple;
|
|
|
|
|
+ let isTaxSource = this.quotableCompanyList[num].isTaxSource;
|
|
|
|
|
+ let params = {
|
|
|
|
|
+ orderNo: this.orderno,
|
|
|
|
|
+ companyId: id,
|
|
|
|
|
+ agreementId: '112',
|
|
|
|
|
+ kindList: this.quotableCompanyList[num].insurancePlanInfo.kinds,
|
|
|
|
|
+ riskList: this.riskList,
|
|
|
|
|
+ isTaxSource: isTaxSource == 1 ? isTaxSource : null,
|
|
|
|
|
+ accidentalDrivingVo: {},
|
|
|
|
|
+ systemType: '2'
|
|
|
|
|
+ };
|
|
|
|
|
+ if (id = 'GPIC1000000') {
|
|
|
|
|
+ if (companyId) {
|
|
|
|
|
+ params.discount = this.quotableCompanyList[num]
|
|
|
|
|
+ .syAdjustRate;
|
|
|
|
|
+ params.lastCompanyId = companyId;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ let res = await this.$http.post(`${api}`,
|
|
|
|
|
+ params);
|
|
|
|
|
+ switch (namesimple) {
|
|
|
|
|
+ case '安盛天平':
|
|
|
|
|
+ case '恒邦财险':
|
|
|
|
|
+ case '中国人寿':
|
|
|
|
|
+ case '太平财险':
|
|
|
|
|
+ case '华农财险':
|
|
|
|
|
+ case '泰康财险':
|
|
|
|
|
+ if (res.code == '200') {
|
|
|
|
|
+ if (res.data.warnMessageList !=
|
|
|
|
|
+ null && res.data
|
|
|
|
|
+ .warnMessageList[0] != null &&
|
|
|
|
|
+ res.data
|
|
|
|
|
+ .warnMessageList[
|
|
|
|
|
+ 0] != "") {
|
|
|
|
|
+ this.quotableCompanyList[num]
|
|
|
|
|
+ .lastYearMsg = "";
|
|
|
|
|
+ let dat = res.data
|
|
|
|
|
+ .warnMessageList;
|
|
|
|
|
+ dat.map(ele => {
|
|
|
|
|
+ this.quotableCompanyList[
|
|
|
|
|
+ num]
|
|
|
|
|
+ .lastYearMsg +=
|
|
|
|
|
+ ele + '<br>';
|
|
|
|
|
+
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ const updatedItem = {
|
|
|
|
|
+ ...this.quotableCompanyList[num],
|
|
|
|
|
+ quoteCode: 200
|
|
|
|
|
+ };
|
|
|
|
|
+ this.quotableCompanyList.splice(num, 1, updatedItem);
|
|
|
|
|
+ this.quotableCompanyList[num].result =
|
|
|
|
|
+ res.data;
|
|
|
|
|
+ this.subOrderId = res.data.companyId;
|
|
|
|
|
+ this.coordinateValue();
|
|
|
|
|
+ if (res.data.syAdjustRate) {
|
|
|
|
|
+ this.quotableCompanyList[num].syAdjustRate = res.data.syAdjustRate;
|
|
|
|
|
+ uni.setStorageSync('companyId', res.data.companyId);
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ const updatedItem = {
|
|
|
|
|
+ ...this.quotableCompanyList[num],
|
|
|
|
|
+ quoteCode: '3'
|
|
|
|
|
+ };
|
|
|
|
|
+ this.quotableCompanyList.splice(num, 1, updatedItem);
|
|
|
|
|
+ this.quotableCompanyList[num].msg =
|
|
|
|
|
+ res.msg;
|
|
|
|
|
+ }
|
|
|
|
|
+ break;
|
|
|
|
|
+ case '众安财险':
|
|
|
|
|
+ if (res.code == '200') {
|
|
|
|
|
+ if (res.data.warnMessageList !=
|
|
|
|
|
+ null && res.data
|
|
|
|
|
+ .warnMessageList[0] != null &&
|
|
|
|
|
+ res.data
|
|
|
|
|
+ .warnMessageList[
|
|
|
|
|
+ 0] != "") {
|
|
|
|
|
+ this.quotableCompanyList[num]
|
|
|
|
|
+ .lastYearMsg = "";
|
|
|
|
|
+ let dat = res.data
|
|
|
|
|
+ .warnMessageList;
|
|
|
|
|
+ dat.map(ele => {
|
|
|
|
|
+ this.quotableCompanyList[
|
|
|
|
|
+ num]
|
|
|
|
|
+ .lastYearMsg +=
|
|
|
|
|
+ ele + '<br>';
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ const updatedItem = {
|
|
|
|
|
+ ...this.quotableCompanyList[num],
|
|
|
|
|
+ quoteCode: 200
|
|
|
|
|
+ };
|
|
|
|
|
+ this.quotableCompanyList.splice(num, 1, updatedItem);
|
|
|
|
|
+ this.quotableCompanyList[num].result =
|
|
|
|
|
+ res.data;
|
|
|
|
|
+ this.subOrderId = res.data.companyId;
|
|
|
|
|
+ this.coordinateValue();
|
|
|
|
|
+ } else {
|
|
|
|
|
+ const updatedItem = {
|
|
|
|
|
+ ...this.quotableCompanyList[num],
|
|
|
|
|
+ quoteCode: '3'
|
|
|
|
|
+ };
|
|
|
|
|
+ this.quotableCompanyList.splice(num, 1, updatedItem);
|
|
|
|
|
+ this.quotableCompanyList[num].msg =
|
|
|
|
|
+ res.msg;
|
|
|
|
|
+ }
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ confirmPlan() {
|
|
|
|
|
+ this.quotableCompanyList.map(val => {
|
|
|
|
|
+ if (val.id == this.planDataExpansion.id) {
|
|
|
|
|
+ val.insurancePlanInfo = this.planDataExpansion.genericPlanInfo;
|
|
|
|
|
+ this.genericPlanPopup = false;
|
|
|
|
|
+ }
|
|
|
|
|
+ return val;
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ convertedValue(num) {
|
|
|
|
|
+ if (num < 10000) {
|
|
|
|
|
+ return num.toString();
|
|
|
|
|
+ } else if (num < 100000000) {
|
|
|
|
|
+ return (Math.floor(num / 10000 * 10) / 10) + '万';
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return (Math.floor(num / 100000000 * 10) / 10) + '亿';
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
riskTypeEchoProcessing(code) {
|
|
riskTypeEchoProcessing(code) {
|
|
|
this.riskList = [];
|
|
this.riskList = [];
|
|
|
switch (code) {
|
|
switch (code) {
|
|
@@ -670,6 +1015,28 @@
|
|
|
this.quotableCompanyList[index].planDetailsshow = !this.quotableCompanyList[index]
|
|
this.quotableCompanyList[index].planDetailsshow = !this.quotableCompanyList[index]
|
|
|
.planDetailsshow; // 切换对应项的显示状态
|
|
.planDetailsshow; // 切换对应项的显示状态
|
|
|
this.quotableCompanyList = [...this.quotableCompanyList]; // 强制 Vue 重新渲染
|
|
this.quotableCompanyList = [...this.quotableCompanyList]; // 强制 Vue 重新渲染
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ //查看详情
|
|
|
|
|
+ querydetial(id) {
|
|
|
|
|
+ this.navigate({
|
|
|
|
|
+ url: "/pages/carInsure/quoteDetail?companyId=" + id
|
|
|
|
|
+ },
|
|
|
|
|
+ "navigateTo", true);
|
|
|
|
|
+ },
|
|
|
|
|
+ //报价单
|
|
|
|
|
+ bjdpreview(id) {
|
|
|
|
|
+ let pro = this.quotationType.themeCode;
|
|
|
|
|
+ if (pro == "QD") {
|
|
|
|
|
+ uni.navigateTo({
|
|
|
|
|
+ url: "/pages/orders/quotation?companyId=" + id
|
|
|
|
|
+ })
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.navigateTo({
|
|
|
|
|
+ url: "/pages/orders/quotation1?companyId=" + id
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
// 显示报错信息
|
|
// 显示报错信息
|
|
|
ErrorMsg(msg, title) {
|
|
ErrorMsg(msg, title) {
|
|
@@ -679,7 +1046,31 @@
|
|
|
showCancel: false,
|
|
showCancel: false,
|
|
|
confirmText: "关闭"
|
|
confirmText: "关闭"
|
|
|
})
|
|
})
|
|
|
-
|
|
|
|
|
|
|
+ },
|
|
|
|
|
+ discountErrorMessageMsg(msg, title) {
|
|
|
|
|
+ let content = msg.replace(/\n/g, "\r\n")
|
|
|
|
|
+ uni.showModal({
|
|
|
|
|
+ title: title + "优惠信息",
|
|
|
|
|
+ content: content,
|
|
|
|
|
+ showCancel: false,
|
|
|
|
|
+ confirmText: "关闭"
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ //使用此时间
|
|
|
|
|
+ syncData(item) {
|
|
|
|
|
+ this.jqstartDate = item.startDateJq ? item
|
|
|
|
|
+ .startDateJq : this.jqstartDate
|
|
|
|
|
+ this.jqendDate = item.endDateJq ? item
|
|
|
|
|
+ .endDateJq : this.endDateJq
|
|
|
|
|
+ this.systartDate = item.startDateSy ? item
|
|
|
|
|
+ .startDateSy : this.systartDate
|
|
|
|
|
+ this.syendDate = item.endDateSy ? item
|
|
|
|
|
+ .endDateSy : this.syendDate
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '时间已替换',
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ duration: 1000
|
|
|
|
|
+ });
|
|
|
},
|
|
},
|
|
|
//车船税类型选择
|
|
//车船税类型选择
|
|
|
taxRelifFlagConfirm(val, name) {
|
|
taxRelifFlagConfirm(val, name) {
|
|
@@ -712,28 +1103,31 @@
|
|
|
syendconfirm(e) {
|
|
syendconfirm(e) {
|
|
|
this.syendDate = e.year + '-' + e.month + '-' + e.day + ' ' + e.hour + ':' + e.minute + ':' + e.second;
|
|
this.syendDate = e.year + '-' + e.month + '-' + e.day + ' ' + e.hour + ':' + e.minute + ':' + e.second;
|
|
|
},
|
|
},
|
|
|
- statusclick(e) {
|
|
|
|
|
- console.log(e);
|
|
|
|
|
- this.SelectedPlanId = e;
|
|
|
|
|
|
|
+ statusclick(value) {
|
|
|
|
|
+ this.SelectedPlanId = value;
|
|
|
|
|
+ let planObj = this.planDataExpansion.genericPlanList.find(item => item.schemeId == value);
|
|
|
|
|
+ this.planDataExpansion.genericPlanInfo = planObj;
|
|
|
},
|
|
},
|
|
|
InsureGuideclick() {
|
|
InsureGuideclick() {
|
|
|
this.InsureGuidePopup = true;
|
|
this.InsureGuidePopup = true;
|
|
|
},
|
|
},
|
|
|
async SchemeSelection(item) {
|
|
async SchemeSelection(item) {
|
|
|
|
|
+ console.log(item);
|
|
|
let params = {
|
|
let params = {
|
|
|
companyId: item.id,
|
|
companyId: item.id,
|
|
|
productId: this.productId,
|
|
productId: this.productId,
|
|
|
seatNum: this.carInfo.seatCount,
|
|
seatNum: this.carInfo.seatCount,
|
|
|
}
|
|
}
|
|
|
let res = await this.$http.post('/plt/scheme/getCompanySchemeInfo', params);
|
|
let res = await this.$http.post('/plt/scheme/getCompanySchemeInfo', params);
|
|
|
|
|
+ let res1 = await this.$http.post('/plt/scheme/getCompanyOptionalSchemeInfo', params);
|
|
|
if (res.code == '200') {
|
|
if (res.code == '200') {
|
|
|
- this[item.cnName + 'insurancePlanInfo'].planList = [...res.data, {
|
|
|
|
|
- schemeId: "4",
|
|
|
|
|
- schemeName: "自选方案"
|
|
|
|
|
- }]
|
|
|
|
|
- this[item.cnName + 'insurancePlanInfo'].isSelectedPlan = res.data[0]
|
|
|
|
|
- this[item.cnName + 'PlanPopup'] = true;
|
|
|
|
|
- console.log(this.$data);
|
|
|
|
|
|
|
+ this.planDataExpansion.id = item.id;
|
|
|
|
|
+ this.planDataExpansion.namesimple = item.namesimple;
|
|
|
|
|
+ this.planDataExpansion.cnName = item.cnName;
|
|
|
|
|
+ this.planDataExpansion.genericPlanList = [...res.data, res1.data];
|
|
|
|
|
+ this.planDataExpansion.genericPlanInfo = res.data[0];
|
|
|
|
|
+ this.SelectedPlanId = res.data[0].schemeId;
|
|
|
|
|
+ this.genericPlanPopup = true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
},
|
|
},
|
|
@@ -770,11 +1164,7 @@
|
|
|
ele['planDetailsshow'] = false;
|
|
ele['planDetailsshow'] = false;
|
|
|
ele['isComparableshowHide'] = false;
|
|
ele['isComparableshowHide'] = false;
|
|
|
ele['isComparableDisabled'] = false;
|
|
ele['isComparableDisabled'] = false;
|
|
|
- this.$set(this, `${ele.cnName}insurancePlanInfo`, {
|
|
|
|
|
- isSelectedPlan: {},
|
|
|
|
|
- kindList: [],
|
|
|
|
|
- accidentalDrivingVo: {},
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ ele['insurancePlanInfo'] = null;
|
|
|
return ele;
|
|
return ele;
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
@@ -1010,6 +1400,12 @@
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ .terms {
|
|
|
|
|
+ color: #FFFFFF;
|
|
|
|
|
+ background: linear-gradient(90deg, #FF4D4D 0%, #FF784D 100%);
|
|
|
|
|
+ border-radius: 4px 4px 4px 4px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.quotePlan {
|
|
.quotePlan {
|
|
@@ -1021,7 +1417,7 @@
|
|
|
.status-data {
|
|
.status-data {
|
|
|
width: auto;
|
|
width: auto;
|
|
|
padding: 2px 8px;
|
|
padding: 2px 8px;
|
|
|
- margin-left: 5px;
|
|
|
|
|
|
|
+ margin-left: 10px;
|
|
|
font-size: 12px;
|
|
font-size: 12px;
|
|
|
border: 1px solid #CDCDCD;
|
|
border: 1px solid #CDCDCD;
|
|
|
cursor: pointer;
|
|
cursor: pointer;
|
|
@@ -1033,7 +1429,7 @@
|
|
|
position: relative;
|
|
position: relative;
|
|
|
background: rgba(0, 82, 255, 0.1);
|
|
background: rgba(0, 82, 255, 0.1);
|
|
|
color: #0052FF;
|
|
color: #0052FF;
|
|
|
- border: 1px solid #0052FF;
|
|
|
|
|
|
|
+ border: 1px solid #0052FF !important;
|
|
|
font-weight: 700;
|
|
font-weight: 700;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1326,4 +1722,66 @@
|
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
|
padding: 8px;
|
|
padding: 8px;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ .immediately {
|
|
|
|
|
+ padding: 19rpx 15px;
|
|
|
|
|
+
|
|
|
|
|
+ .common-ins-cell:last-child {
|
|
|
|
|
+ border-bottom: none;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .common-title {
|
|
|
|
|
+ font-size: 32upx;
|
|
|
|
|
+ font-weight: bold;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .common-ins-cell {
|
|
|
|
|
+ font-size: 30upx;
|
|
|
|
|
+ padding: 0upx 30upx;
|
|
|
|
|
+ height: 90upx;
|
|
|
|
|
+ border-bottom: 1px solid #eee;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /* 交强险和商业险弹出框Start */
|
|
|
|
|
+ .popup-content {
|
|
|
|
|
+ position: relative;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .popHeader {
|
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
|
+ font-size: 32upx;
|
|
|
|
|
+ font-weight: bold;
|
|
|
|
|
+ height: 120upx;
|
|
|
|
|
+ border-bottom: 1px solid #eee;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .popup-content .popContent {
|
|
|
|
|
+ padding: 0upx 30upx;
|
|
|
|
|
+ height: 620upx;
|
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .popup-content .popContent .popContentTitle {
|
|
|
|
|
+ font-weight: bold;
|
|
|
|
|
+ font-size: 32upx;
|
|
|
|
|
+ margin: 20upx 0upx 5upx 0upx;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .popup-content .popContent .amtSingle {
|
|
|
|
|
+ width: 22%;
|
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
|
+ display: inline-block;
|
|
|
|
|
+ text-align: center;
|
|
|
|
|
+ vertical-align: middle;
|
|
|
|
|
+ border: 1px solid #eee;
|
|
|
|
|
+ margin: 0 15rpx 15rpx 0;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .popup-content .popBottom {
|
|
|
|
|
+ margin: 30upx 30upx 0 30upx;
|
|
|
|
|
+ padding-bottom: 30upx;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /* 交强险和商业险弹出框End */
|
|
|
</style>
|
|
</style>
|