This commit is contained in:
liu.xiaofeng@ebiz-digits.com
2022-12-06 17:52:00 +08:00
12 changed files with 146 additions and 44 deletions

View File

@@ -10,7 +10,14 @@ export function saveOrUpdateOrderInfo(data) {
data
})
}
// 核保试算
export function orderTrial(data) {
return request({
url: getUrl('/sale/orderTrial/trial', 1),
method: 'post',
data
})
}
//人核转线上支付判断是否可进行支付操作
export function payFlag(data) {
return request({

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -568,6 +568,18 @@ let occupationList = [
lifeGrade: '2',
healthGrade: '1'
},
{
code: '2022312',
name: '园林绿化工程技术人员(一般道路)',
lifeGrade: '4',
healthGrade: '4'
},
{
code: '2022313',
name: '园林绿化工程技术人员(高速公路)',
lifeGrade: '5',
healthGrade: '5'
},
{ code: '2022401', name: '水资源勘测工程技术人员', lifeGrade: '3', healthGrade: '1' },
{
code: '2022402',
@@ -2818,6 +2830,18 @@ let occupationList = [
lifeGrade: '2',
healthGrade: '1'
},
{
code: '4070202',
name: '保安员',
lifeGrade: '3',
healthGrade: '3'
},
{
code: '4070203',
name: '水电维修人员',
lifeGrade: '3',
healthGrade: '3'
},
{ code: '4070301', name: '工业及饮用水净化处理人员', lifeGrade: '2', healthGrade: '1' },
{
code: '4070302',
@@ -2875,6 +2899,7 @@ let occupationList = [
healthGrade: '2'
},
{ code: '4070317', name: '液化气送货员', lifeGrade: '4', healthGrade: '2' },
{ code: '4070318', name: '煤气管线装修(高空作业)', lifeGrade: '5', healthGrade: '5' },
{
code: '4070401',
name: '美容师',
@@ -2987,6 +3012,8 @@ let occupationList = [
healthGrade: '1'
},
{ code: '4071305', name: '高楼外部清洁工、烟囱清洁工', lifeGrade: '5', healthGrade: '2' },
{ code: '4071306', name: '垃圾清运工(城市道路,不含城市快速路)', lifeGrade: '4', healthGrade: '4' },
{ code: '4071307', name: '垃圾清运工(高速公路、国道、省道、城市快速路等)', lifeGrade: '5', healthGrade: '5' },
{
code: '4071401',
name: '殡仪服务员',
@@ -3127,6 +3154,8 @@ let occupationList = [
healthGrade: '1'
},
{ code: '4071534', name: '电商店主(网店管理)', lifeGrade: '3', healthGrade: '1' },
{ code: '4071535', name: '其他销售人员(非危险品)', lifeGrade: '2', healthGrade: '2' },
{ code: '4071536', name: '其他销售人员(危险品)', lifeGrade: '4', healthGrade: '4' },
{
code: '4071601',
name: '负责人',
@@ -3147,7 +3176,9 @@ let occupationList = [
lifeGrade: '2',
healthGrade: '1'
},
{ code: '4071702', name: '售货商', lifeGrade: '3', healthGrade: '1' }
{ code: '4071702', name: '售货商', lifeGrade: '3', healthGrade: '1' },
{ code: '4071801', name: '中央空调安装人员5米以下高空作业', lifeGrade: '4', healthGrade: '4' },
{ code: '4071802', name: '一般空调安装人员5米以上高空作业', lifeGrade: '6', healthGrade: '6' }
]
},
{
@@ -3252,7 +3283,10 @@ let occupationList = [
lifeGrade: '1',
healthGrade: '1'
},
{ code: '4990029', name: '快递投送人员', lifeGrade: '4', healthGrade: '1' }
{ code: '4990029', name: '快递投送人员', lifeGrade: '4', healthGrade: '1' },
{ code: '4990030', name: '外卖配送员', lifeGrade: '5', healthGrade: '5' },
{ code: '4990031', name: '一般货物搬运人员', lifeGrade: '4', healthGrade: '4' },
{ code: '4990032', name: '特殊货物搬运人员(重型、大型、危险品等货物搬运)', lifeGrade: '6', healthGrade: '6' },
]
}
]
@@ -7216,6 +7250,24 @@ let occupationList = [
lifeGrade: '4',
healthGrade: '1'
},
{
code: '6231008',
name: '电梯、升降机修理及维护工人(高空作业)',
lifeGrade: '7',
healthGrade: '7'
},
{
code: '6231009',
name: '弱电工程安装人员',
lifeGrade: '3',
healthGrade: '3'
},
{
code: '6231010',
name: '弱电工程安装人员(五米以上高空作业)',
lifeGrade: '5',
healthGrade: '5'
},
{ code: '6239901', name: '中小型施工机械操作工', lifeGrade: '4', healthGrade: '1' },
{
code: '6239902',
@@ -7264,7 +7316,19 @@ let occupationList = [
name: '工地推车工',
lifeGrade: '4',
healthGrade: '1'
}
},
{
code: '6239915',
name: '钢结构安装工',
lifeGrade: '5',
healthGrade: '5'
},
{
code: '6239916',
name: '工地杂工',
lifeGrade: '4',
healthGrade: '4'
},
]
},
{
@@ -7475,6 +7539,7 @@ let occupationList = [
healthGrade: '1'
},
{ code: '6240505', name: '索道运输机械操作工', lifeGrade: '3', healthGrade: '1' },
{ code: '6240506', name: '信号工', lifeGrade: '4', healthGrade: '4' },
{
code: '6249901',
name: '电梯、升降机操作员(不含矿场使用者)',

View File

@@ -336,40 +336,23 @@
</van-radio-group>
<span class="pl5">{{ cvalidateStr }}</span>
</div>
<div class="bottom-btn bg-white flex">
<!-- <van-button plain type="danger" size="large" @click="nextStep" :disabled="nextStepFlag" v-no-more-click="1000">核保试算</van-button> -->
<!-- <van-button type="danger" size="large" @click="nextStep" :disabled="nextStepFlag" v-no-more-click="1000">下一步</van-button> -->
<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>
<div class="bottom-btn bg-white flex" v-else>
<van-button plain type="danger" size="large" @click="nextStep('orderTrial')" v-no-more-click="1000">核保试算</van-button>
<van-button type="danger" size="large" @click="nextStep" :disabled="nextStepFlag" v-no-more-click="1000">下一步</van-button>
</div>
<van-action-sheet v-model="show" cancel-text="取消" :actions="policyInfo" @select="openDocument" />
<!-- 字段选择 -->
<van-popup v-model="popupShow" position="bottom"><van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="onCancel" /></van-popup>
<van-dialog v-model="trialResultsShow" title="核保试算结果" :show-cancel-button="false">
<!-- <van-dialog v-model="trialResultsShow" :show-confirm-button="false" class="dialog_class" style="position: relative; overflow: visible;"> -->
<div class="pl20 pr20 mt30">
<!-- <div class="flex justify-content-c align-items-c">
<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">
<template #icon="props">
<img class="img-icon radio_icon_image" :src="props.checked ? checkedUrl : noCheckedUrl" />
</template>
<div class="flex justify-content-fs align-items-c pl5">
<img class="icon_select_image" src="@/assets/images/kmh/kmh_pro.png" />
</div>
</van-radio>
<van-radio name="0" class="radio_class ml50">
<template #icon="props">
<img class="img-icon radio_icon_image" :src="props.checked ? checkedUrl : noCheckedUrl" />
</template>
<div class="flex justify-content-fs align-items-c pl5">
<img class="icon_select_image" src="@/assets/images/kmh/normal_pro.png" />
</div>
</van-radio>
</van-radio-group> -->
<div class="pl40 pr40 mt10">
<div class="flex justify-content-s fs12" v-for="(item, index) in verifyResultList" :key="index">
<div><img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/ruleType0'+ item.ruleType +'.png')" alt=""><span class="v-middle">{{item.ruleType | ruleTypeFilter}}</span></div>
<div><span class="v-middle">{{item.status | approvedFilter}}</span><img class="w20 h20 p10 v-middle" :src="require('@/assets/images/sale/approved'+ item.status +'.png')" alt=""></div>
</div>
</div>
</van-dialog>
</div>
@@ -377,7 +360,7 @@
<script>
import { Tag, Icon, Dialog, ActionSheet, Popup, Picker, Stepper, Field, Checkbox, RadioGroup, Radio } from 'vant'
import { trial } from '@/api/ebiz/common/common'
import { saveOrUpdateOrderInfo, getOrderDetail } from '@/api/ebiz/sale/sale'
import { saveOrUpdateOrderInfo, getOrderDetail,orderTrial } from '@/api/ebiz/sale/sale'
import { saveProposal } from '@/api/ebiz/proposal/proposal.js'
import { getAgentInfo } from '@/api/ebiz/my/my.js'
@@ -449,6 +432,28 @@ const DUTY_DEFAULT_MIN = 10000
export default {
name: 'calculatePremium',
filters: {
ruleTypeFilter(val) {
switch (val) {
case '1':
return '体检:'
case '2':
return '财务问卷:'
case '3':
return '契调:'
case '4':
return '财务资料:'
}
},
approvedFilter(val) {
switch (val) {
case '0':
return '达标:'
case '1':
return '未达标'
}
}
},
components: {
[Tag.name]: Tag,
[Icon.name]: Icon,
@@ -505,7 +510,8 @@ export default {
renewal: '-1',
richChildrenFlag: false,
isCrossChannel: '0', //是否交叉渠道 1-是 0-否
trialResultsShow:false //核保试算结果
trialResultsShow:false, //核保试算结果
verifyResultList:[] //核保试算返回数据结构
}
},
mounted() {
@@ -2428,7 +2434,7 @@ export default {
this.mult = Math.ceil(Number(defalutValue) / Number(riskFactor.defaultValue))
},
//下一步
async nextStep() {
async nextStep(isFrom) {
//GFRS_M0016需要验证责任
if (this.mainRiskCode === 'GFRS_M0016') {
let calFactorLst = this.chooseProducts[0].calFactorLst
@@ -2632,13 +2638,21 @@ export default {
}
})
resultData = await saveProposal(params)
} else {
} else if (isFrom != 'orderTrial' && localStorage.isFrom == 'sale') {
resultData = await saveOrUpdateOrderInfo(params)
} else if (isFrom == 'orderTrial' && localStorage.isFrom == 'sale') {
this.$toast.loading({
duration: 0, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '核保试算中'
})
resultData = await orderTrial(params)
}
if (resultData.result == 0) {
//电投
if (localStorage.isFrom == 'sale') {
if (isFrom != 'orderTrial' && localStorage.isFrom == 'sale') {
if (resultData.deleteFlag == '0') {
localStorage.salePageFlag = '3';
}
@@ -2673,6 +2687,10 @@ export default {
path: url
}
})
}else if (isFrom == 'orderTrial' && localStorage.isFrom == 'sale') {
this.$toast.clear()
this.trialResultsShow = true
this.verifyResultList = resultData.content.data.verifyResultList
}
} else {
this.$toast(resultData.resultMessage)
@@ -2752,5 +2770,8 @@ export default {
width: 7.46667vw;
height: 7.46667vw;
}
.van-dialog__content{
border: 1px solid red;
}
}
</style>

View File

@@ -120,7 +120,7 @@ export default {
},
timeType: 0,
// 最小查询日期
minDate: new Date(2021, 11, 12),
minDate: new Date(2022, 11, 1),
// 最大查询日期
maxDate: currentDate,
// 日期筛选条件
@@ -203,13 +203,13 @@ export default {
this.isGeneralAgent = manageLv == 9?'0':'1' //是否为普通代理人
// 初始化年份筛选数据
const currentYear = new Date().getFullYear()
if(currentYear == '2022'){
if(currentYear == '2023'){
const startYear = currentYear + 1
for (let year = currentYear; year <= startYear; year++) {
this.years.push(year)
}
}else if(currentYear == '2021'){
this.years.push('2021')
}else if(currentYear == '2022'){
this.years.push('2022')
}
if(manageLv == '1' || manageLv == '2' || manageLv == '3' || manageLv == '4'|| manageLv == '5'){
this.initData() //内勤
@@ -458,10 +458,15 @@ export default {
await this.getSetDate()
},
async onYearConditionConfirm(value) {
if(value == '2021'){
this.yearCondition = new Date('2021-12-12')
}else if(value == '2022'){
this.yearCondition = new Date('2022-01-01')
// if(value == '2021'){
// this.yearCondition = new Date('2021-12-12')
// }else if(value == '2022'){
// this.yearCondition = new Date('2022-01-01')
// }
if(value == '2022'){
this.yearCondition = new Date('2022-12-01')
}else if(value == '2023'){
this.yearCondition = new Date('2023-01-01')
}
this.isYearConditionShow = false
this.timeType = 2

View File

@@ -66,6 +66,9 @@ export default {
}
},
created() {
this.$CacheUtils.removeLocItem('proposalNo')
this.$CacheUtils.removeLocItem('canMoveOn')
this.$CacheUtils.removeLocItem('orderNo')
this.getLists()
this.getTypes()
// 初始化显示按钮

View File

@@ -754,6 +754,7 @@ export default {
flag: 'h5',
extra: {
url: location.origin + '/#' + path,
forbidSwipeBack: '1',
backToFirst: '1'
},
routerInfo: {