From c55ae1d4b32d84de6ea071ff64a6180d408ba591 Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期三, 02 四月 2025 16:57:25 +0800 Subject: [PATCH] fix: bug --- src/views/Home/components/BatchChangeRecordView.vue | 124 ++++++++++++++++++++++++++++++----------- 1 files changed, 91 insertions(+), 33 deletions(-) diff --git a/src/views/Home/components/BatchChangeRecordView.vue b/src/views/Home/components/BatchChangeRecordView.vue index 0dcdf53..7707a6a 100644 --- a/src/views/Home/components/BatchChangeRecordView.vue +++ b/src/views/Home/components/BatchChangeRecordView.vue @@ -1,15 +1,24 @@ <template> <LoadingLayout :loading="state.loading"> <AppContainer> - <ProTableV2 - v-bind="proTableProps" - :columns="column" - :operationBtns="operationBtns" - :autoHeight="false" - :tableProps="{ - maxHeight: '400px', - }" - > + <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> + <template #checkStatus="{ row }"> + <el-tooltip + class="box-item" + effect="dark" + :content="row.auditNote" + placement="top-start" + v-if="row.checkStatus === BatchBillCheckStatus.CheckTurnDown" + > + <div style="display: inline-flex; align-items: center"> + {{ BatchBillCheckStatusText[row.checkStatus] }} + <el-icon size="16" color="#3a71ff"><QuestionFilled /></el-icon> + </div> + </el-tooltip> + <el-text v-else> + {{ BatchBillCheckStatusText[row.checkStatus] }} + </el-text> + </template> </ProTableV2> <BatchChangeRecordDetailDialog v-bind="dialogProps"></BatchChangeRecordDetailDialog> </AppContainer> @@ -24,9 +33,15 @@ defineOperationBtns, useFormDialog, } from '@bole-core/components'; -import * as insuranceOrderServices from '@/services/api/InsuranceOrder'; -import { OrderInputType } from '@bole-core/core'; +import * as insureBatchBillServices from '@/services/api/InsureBatchBill'; +import { downloadFileByUrl, Message, OrderInputType } from '@bole-core/core'; import BatchChangeRecordDetailDialog from './BatchChangeRecordDetailDialog.vue'; +import { + BatchBillCheckStatus, + BatchBillCheckStatusText, + BatchChangeTypeEnumText, +} from '@/constants'; +import { setOSSLink } from '@/utils'; defineOptions({ name: 'BatchChangeRecordView', @@ -35,47 +50,47 @@ const column: API.CustomModuleColumnDto[] = [ { id: '1', - enCode: 'name', + enCode: 'batchBillNo', name: '鎵瑰崟鍙�', }, { id: '2', - enCode: 'name', + enCode: 'changeType', name: '鎵规敼绫诲瀷', }, { id: '3', - enCode: 'name', + enCode: 'creationTime', name: '鐢宠鏃ユ湡', }, { id: '4', - enCode: 'idNumber', + enCode: 'effectTime', name: '鎵规敼鐢熸晥鏃ユ湡', }, { id: '5', - enCode: 'idNumber', + enCode: 'insurePersonNumber', name: '鍦ㄤ繚浜烘暟', }, { id: '6', - enCode: 'idNumber', + enCode: 'orginInsurePersonNumber', name: '鍘熷湪淇濅汉鏁�', }, { id: '7', - enCode: 'idNumber', + enCode: 'addPersonNumber', name: '鏂板', }, { id: '8', - enCode: 'idNumber', + enCode: 'subPersonNumber', name: '鍑忓皯', }, { id: '9', - enCode: 'idNumber', + enCode: 'checkStatus', name: '鎵瑰崟鐘舵��', }, ]; @@ -89,9 +104,21 @@ emits: { onClick: (role) => handleDetail(role), }, - // extraProps: { - // hide: (row: API.InsuranceOrderListOutput) => !row.orderBillFile, - // }, + extraProps: { + hide: (row: API.InsureBatchBillDto) => row.checkStatus !== BatchBillCheckStatus.InValidate, + }, + }, + { + data: { + enCode: 'downloadBtn', + name: '涓嬭浇鎵瑰崟', + }, + emits: { + onClick: (role) => handleDownload(role), + }, + extraProps: { + hide: (row: API.InsureBatchBillDto) => row.checkStatus !== BatchBillCheckStatus.InValidate, + }, }, ]); @@ -112,16 +139,15 @@ } = useTable( async ({ pageIndex, pageSize }, extraParamState) => { try { - let params: API.QueryInsuranceOrderPageInput = { + let params: API.GetInsuranceBatchBillInput = { pageModel: { rows: pageSize, page: pageIndex, orderInput: extraParamState.orderInput, }, - condition: extraParamState.keyWord, - // insurePolicyOperateHistoryId: id, + insurancePolicyId: id, }; - let res = await insuranceOrderServices.getInsuranceOrderPage(params, { + let res = await insureBatchBillServices.getInsureBatchBillList(params, { showLoading: !state.loading, }); return res; @@ -130,22 +156,54 @@ { defaultExtraParams: { keyWord: '', - orderInput: [{ property: 'id', order: OrderInputType.Asc }], + orderInput: [{ property: 'insureBatchBillId', order: OrderInputType.Asc }], }, - columnsRenderProps: {}, + columnsRenderProps: { + creationTime: { + type: 'date', + format: 'YYYY-MM-DD', + }, + effectTime: { + type: 'date', + format: 'YYYY-MM-DD', + }, + changeType: { + type: 'enum', + valueEnum: BatchChangeTypeEnumText, + }, + }, } ); + +async function getInsureBatchDetail(id: string) { + try { + return await insureBatchBillServices.getInsureBatchDetail({ batchBillId: id }); + } catch (error) {} +} const { dialogProps, handleEdit } = useFormDialog({ defaultFormParams: { id: '', + staffList: [] as API.InsureBatchBillDetailDto[], }, }); -function handleDetail(row: API.InsuranceOrderListOutput) { - handleEdit({ - id: row.id, - }); +async function handleDetail(row: API.InsureBatchBillDto) { + try { + const res = await getInsureBatchDetail(row.insureBatchBillId); + handleEdit({ + id: row.insureBatchBillId, + staffList: res.staffList, + }); + } catch (error) {} +} + +function handleDownload(row: API.InsureBatchBillDto) { + if (!row.attachmentUrl) { + Message.errorMessage('鏈笂浼犳壒鍗曟枃浠�'); + return; + } + downloadFileByUrl(setOSSLink(row.attachmentUrl)); } onMounted(async () => { -- Gitblit v1.9.1