From b7d0f181a047a0a744d7a845e906b1f856e424b2 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期二, 01 七月 2025 16:02:53 +0800 Subject: [PATCH] release: v2.2.0 --- src/views/Home/components/InsureOrderInfoView.vue | 109 +++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 86 insertions(+), 23 deletions(-) diff --git a/src/views/Home/components/InsureOrderInfoView.vue b/src/views/Home/components/InsureOrderInfoView.vue index 0d80311..4aef872 100644 --- a/src/views/Home/components/InsureOrderInfoView.vue +++ b/src/views/Home/components/InsureOrderInfoView.vue @@ -1,12 +1,21 @@ <template> <LoadingLayout :loading="state.loading"> - <AppScrollContainer> + <AppContainer> <ChunkCell title=""> <ProForm :model="detail" ref="formRef" label-width="120px" :is-read="true"> <ProFormCol> <ProFormColItem :span="8"> <ProFormItemV2 label="淇濆崟鍙�:" prop="insureBillNo"> - <ProFormText v-model.trim="detail.insureBillNo" /> + <div class="pro-from-item-read-content-wrapper" v-if="!!detail.insureBillNo"> + {{ detail.insureBillNo }} + <el-button + type="primary" + link + @click="handleGoStampFiles" + v-if="detail.productOnline && detail.anyPayComplete" + >璇︽儏</el-button + > + </div> </ProFormItemV2> </ProFormColItem> <ProFormColItem :span="8"> @@ -65,7 +74,7 @@ </ProFormCol> </ProForm> </ChunkCell> - <ChunkCell title="浜哄憳淇℃伅"> + <ChunkCell title="浜哄憳淇℃伅" class="full-table-chunk"> <template #titleRight v-if="detail.status !== InsurancePolicyStatusEnum.WaitEffect"> <el-button type="primary" @click="handleBatchChange">鎵规敼鐢宠</el-button> </template> @@ -85,6 +94,7 @@ <template v-if="detail.status === InsurancePolicyStatusEnum.WaitEffect"> <el-button @click="handleTemplateDownload()" link type="primary">妯℃澘涓嬭浇</el-button> <BlFileUpload + v-if="detail.auditStatus !== InsurancePolicyAuditStatusEnum.Pass" :limitFileSize="10" accept="xls,xlsx" :showTip="false" @@ -100,25 +110,28 @@ </template> <template v-else> <el-button @click="handleDownloadPerson()" type="primary">涓嬭浇浜哄憳娓呭崟</el-button> - <el-button @click="handleDownloadOrder()" type="primary">涓嬭浇淇濆崟</el-button> + <template v-if="detail.productOnline"> + <el-button v-if="detail.anyPayComplete" @click="handleGoStampFiles()" type="primary" + >涓嬭浇淇濆崟</el-button + > + </template> + <el-button v-else @click="handleDownloadOrder()" type="primary">涓嬭浇淇濆崟</el-button> </template> </template> </ProTableQueryFilterBar> - <ProTableV2 - v-bind="proTableProps" - :columns="column" - :operationBtns="operationBtns" - :auto-height="false" - ref="proTable" - :tableProps="{ - maxHeight: '400px', - }" - > - </ProTableV2> + <div class="full-table-chunk-table"> + <ProTableV2 + v-bind="proTableProps" + :columns="column" + :operationBtns="operationBtns" + ref="proTable" + > + </ProTableV2> + </div> </ChunkCell> <ChangePersonInfoDialog v-bind="dialogProps"></ChangePersonInfoDialog> <InsureClaimDetailDialog v-bind="dialogInsureClaimProps"></InsureClaimDetailDialog> - </AppScrollContainer> + </AppContainer> </LoadingLayout> </template> @@ -151,6 +164,7 @@ insuranceTypeText, InsurancePolicyStatusEnum, InsurancePolicyStatusEnumText, + InsurancePolicyAuditStatusEnum, } from '@/constants'; import ChangePersonInfoDialog from './ChangePersonInfoDialog.vue'; import InsureClaimDetailDialog from './InsureClaimDetailDialog.vue'; @@ -159,6 +173,7 @@ import { useQuery, useQueryClient } from '@tanstack/vue-query'; import { downloadFile, downloadFileByUrl, Message, OrderInputType } from '@bole-core/core'; import { setOSSLink } from '@/utils'; +import dayjs from 'dayjs'; defineOptions({ name: 'InsureOrderInfoView', @@ -192,6 +207,16 @@ id: '5', enCode: 'jobName', name: '闆囧憳宸ョ', + }, + { + id: '51', + enCode: 'occupationType', + name: '鑱屼笟绫诲瀷', + }, + { + id: '52', + enCode: 'occupationCode', + name: '鑱屼笟鐮佸��', }, { id: '6', @@ -240,7 +265,8 @@ }, extraProps: { hide: (row: API.GetInsuranceStaffPageTemplate) => - detail.value?.status !== InsurancePolicyStatusEnum.WaitEffect, + detail.value?.status !== InsurancePolicyStatusEnum.WaitEffect || + detail.value?.auditStatus === InsurancePolicyAuditStatusEnum.Pass, }, }, { @@ -365,13 +391,11 @@ note: '澶囨敞', }, }); - } else { - await Message.tipMessage('鏄惁瑕嗙洊褰撳墠浜哄憳娓呭崟淇℃伅?'); - queryClient.invalidateQueries({ - queryKey: ['insuranceOrderServices/getInsuranceStaffList'], - }); - getInsuranceStaffList(); } + queryClient.invalidateQueries({ + queryKey: ['insuranceOrderServices/getInsuranceStaffList'], + }); + getInsuranceStaffList(); } catch (error) {} } @@ -397,7 +421,23 @@ downloadFileByUrl(setOSSLink(detail.value?.insureBillUrl)); } +function handleGoStampFiles() { + router.push({ + name: 'InsurancePolicyStampFiles', + params: { + id: id, + }, + }); +} + function handleBatchChange() { + if ( + dayjs(detail.value?.effectEndTime).isBefore(dayjs()) || + dayjs(detail.value?.effectEndTime).isSame(dayjs(), 'day') + ) { + Message.errorMessage('淇濋櫓浠婂ぉ鍒版湡锛屾棤娉曟壒鏀�'); + return; + } router.push({ name: 'BatchChange', params: { @@ -477,4 +517,27 @@ <style lang="scss" scoped> @use '@/style/common.scss' as *; + +.full-table-chunk { + display: flex; + min-height: 0; + flex: 1; + flex-direction: column; + + :deep() { + .chunk-cell-content { + display: flex; + flex-direction: column; + flex: 1; + min-height: 0; + } + } + + .full-table-chunk-table { + display: flex; + flex-direction: column; + flex: 1; + min-height: 0; + } +} </style> -- Gitblit v1.9.1