From ff6b2db013b8afc86d26ba24fdf5e6115c2127ab Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 02 四月 2025 16:11:51 +0800
Subject: [PATCH] fix: bug
---
src/views/Home/components/BatchChangeRecordView.vue | 147 ++++++++++++++++++++++++++++++++++++-------------
1 files changed, 108 insertions(+), 39 deletions(-)
diff --git a/src/views/Home/components/BatchChangeRecordView.vue b/src/views/Home/components/BatchChangeRecordView.vue
index c79d563..a38937f 100644
--- a/src/views/Home/components/BatchChangeRecordView.vue
+++ b/src/views/Home/components/BatchChangeRecordView.vue
@@ -1,17 +1,36 @@
<template>
- <AppContainer>
- <ProTableV2
- v-bind="proTableProps"
- :columns="column"
- :operationBtns="operationBtns"
- :autoHeight="false"
- :tableProps="{
- maxHeight: '400px',
- }"
- >
- </ProTableV2>
- <BatchChangeRecordDetailDialog v-bind="dialogProps"></BatchChangeRecordDetailDialog>
- </AppContainer>
+ <LoadingLayout :loading="state.loading">
+ <AppContainer>
+ <ProTableV2
+ v-bind="proTableProps"
+ :columns="column"
+ :operationBtns="operationBtns"
+ :autoHeight="false"
+ :tableProps="{
+ maxHeight: '400px',
+ }"
+ >
+ <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>
+ </LoadingLayout>
</template>
<script setup lang="ts">
@@ -22,9 +41,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',
@@ -33,47 +58,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: '鎵瑰崟鐘舵��',
},
];
@@ -87,9 +112,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,
+ },
},
]);
@@ -110,16 +147,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;
@@ -128,26 +164,59 @@
{
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) {}
}
-onMounted(() => {
- getBatchRefundInfoDetail();
+function handleDownload(row: API.InsureBatchBillDto) {
+ if (!row.attachmentUrl) {
+ Message.errorMessage('鏈笂浼犳壒鍗曟枃浠�');
+ return;
+ }
+ downloadFileByUrl(setOSSLink(row.attachmentUrl));
+}
+
+onMounted(async () => {
+ await getBatchRefundInfoDetail();
+ state.loading = false;
});
</script>
--
Gitblit v1.9.1