From f8fd104213f6687ae5fcc479526f5ee9347ece6f Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 09 九月 2025 17:00:47 +0800
Subject: [PATCH] fix: bug
---
src/views/ServiceChargeManage/ServiceChargeManage.vue | 149 +++++++++++++++++++++++++++++--------------------
1 files changed, 89 insertions(+), 60 deletions(-)
diff --git a/src/views/ServiceChargeManage/ServiceChargeManage.vue b/src/views/ServiceChargeManage/ServiceChargeManage.vue
index 868fbbf..8cbbe76 100644
--- a/src/views/ServiceChargeManage/ServiceChargeManage.vue
+++ b/src/views/ServiceChargeManage/ServiceChargeManage.vue
@@ -21,7 +21,7 @@
@change="getList()"
/>
</QueryFilterItem>
- <QueryFilterItem>
+ <!-- <QueryFilterItem>
<FieldDatePicker
v-model="extraParamState.time"
type="daterange"
@@ -32,7 +32,7 @@
@change="getList()"
tooltipContent="鍒涘缓鏃堕棿"
></FieldDatePicker>
- </QueryFilterItem>
+ </QueryFilterItem> -->
<QueryFilterItem>
<SearchInput
v-model="extraParamState.keywords"
@@ -46,8 +46,8 @@
</template>
<template #btn>
<el-button type="primary" link @click="handleDownloadTemplate()">缁撶畻鍗曟ā鏉�</el-button>
- <el-button type="primary" @click="openDialog()">涓婁紶缁撶畻鍗�</el-button>
- <el-button type="primary" @click="handleDownloadTemplate()">瀵煎嚭</el-button>
+ <el-button type="primary" @click="handleAdd()">涓婁紶缁撶畻鍗�</el-button>
+ <!-- <el-button type="primary" @click="handleDownloadTemplate()">瀵煎嚭</el-button> -->
</template>
</ProTableQueryFilterBar>
<ProTableV2
@@ -55,18 +55,34 @@
:columns="ServiceChargeManageColumns"
:operationBtns="operationBtns"
>
- <template #operationBtn-uploadBtn="{ data, row }">
+ <template #operationBtn-uploadBtn="{ row }">
<BlFileUpload
- v-model:file-url="row.listFiles"
- multiple
+ v-model:file-url="editForm.settlementUrl"
ref="uploadRef"
:showTip="false"
:show-file-list="false"
class="pro-table-operation-btn upload-style-btn"
:on-success="(event) => handleUploadSuccess(event, row)"
:limitFileSize="null"
+ :limit="1"
+ accept="xlsx,xls"
>
<el-button text type="primary" class="pro-table-operation-btn">涓婁紶</el-button>
+ </BlFileUpload>
+ </template>
+ <template #operationBtn-reUploadBtn="{ data, row }">
+ <BlFileUpload
+ v-model:file-url="editForm.settlementUrl"
+ ref="uploadRef"
+ :showTip="false"
+ :show-file-list="false"
+ class="pro-table-operation-btn upload-style-btn"
+ :on-success="(event) => handleUploadSuccess(event, row)"
+ :limitFileSize="null"
+ :limit="1"
+ accept="xlsx,xls"
+ >
+ <el-button text type="primary" class="pro-table-operation-btn">閲嶆柊涓婁紶</el-button>
</BlFileUpload>
</template>
</ProTableV2>
@@ -93,8 +109,13 @@
BlFileUpload,
} from '@bole-core/components';
import { ServiceChargeManageColumns } from './constants';
-import { EnumTaskSettlementStatusText, EnumTaskSettlementOrderStatusText } from '@/constants';
-import { downloadFileByUrl } from '@/utils';
+import {
+ EnumTaskSettlementStatusText,
+ EnumTaskSettlementOrderStatusText,
+ EnumTaskSettlementOrderStatus,
+ EnumTaskSettlementStatus,
+} from '@/constants';
+import { downloadFileByUrl, setOssFileName } from '@/utils';
import * as taskServices from '@/services/api/task';
import { ModelValueType } from 'element-plus';
import UploadStatementDialog from './components/UploadStatementDialog.vue';
@@ -106,40 +127,43 @@
});
const operationBtns = defineOperationBtns([
- // {
- // data: {
- // enCode: 'uploadBtn',
- // name: '涓婁紶',
- // },
- // emits: {
- // onClick: (role) => openDialog(role),
- // },
- // extraProps: {
- // hide: () => false,
- // },
- // },
- // {
- // data: {
- // enCode: 'reUploadBtn',
- // name: '閲嶆柊涓婁紶',
- // },
- // emits: {
- // onClick: (role) => openDialog(role),
- // },
- // extraProps: {
- // hide: () => false,
- // },
- // },
+ {
+ data: {
+ enCode: 'uploadBtn',
+ name: '涓婁紶',
+ },
+ extraProps: {
+ hide: (row: API.GetSettlementTasksQueryResultItem) =>
+ row.settlementOrderStatus !== EnumTaskSettlementOrderStatus.Wait,
+ },
+ },
+ {
+ data: {
+ enCode: 'reUploadBtn',
+ name: '閲嶆柊涓婁紶',
+ },
+ extraProps: {
+ hide: (row: API.GetSettlementTasksQueryResultItem) =>
+ !(
+ row.settlementOrderStatus === EnumTaskSettlementOrderStatus.Completed &&
+ row.settlementStatus === EnumTaskSettlementStatus.Wait
+ ),
+ },
+ },
{
data: {
enCode: 'settleBtn',
name: '缁撶畻',
},
emits: {
- onClick: (role) => openSettleDialog(role),
+ onClick: (role: API.GetSettlementTasksQueryResultItem) => openSettleDialog(role),
},
extraProps: {
- hide: () => false,
+ hide: (role: API.GetSettlementTasksQueryResultItem) =>
+ !(
+ role.settlementOrderStatus === EnumTaskSettlementOrderStatus.Completed &&
+ role.settlementStatus === EnumTaskSettlementStatus.Wait
+ ),
},
},
{
@@ -161,7 +185,11 @@
name: '璇︽儏',
},
emits: {
- onClick: (role) => goDetail(role),
+ onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role.id),
+ },
+ extraProps: {
+ hide: (role: API.GetSettlementTasksQueryResultItem) =>
+ role.settlementOrderStatus === EnumTaskSettlementOrderStatus.Wait,
},
},
{
@@ -173,7 +201,7 @@
onClick: (role) => handleExport(role),
},
extraProps: {
- hide: () => false,
+ hide: () => true,
},
},
]);
@@ -241,32 +269,27 @@
settlementAmount: { type: 'money' },
settlementTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
settlementOrderTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
+ settlementOrderName: {
+ formatter: (row: API.GetSettlementTasksQueryResultItem) =>
+ row.settlementOrderName && setOssFileName(row.settlementOrderName),
+ },
},
}
);
-const { dialogProps, handleAdd, handleEdit, editForm } = useFormDialog({
+const { dialogProps, handleAdd, editForm } = useFormDialog({
onConfirm: handleAddOrEdit,
defaultFormParams: {
+ code: '',
id: '',
name: '',
settlementUrl: [] as UploadUserFile[],
},
});
-function openDialog(row?: API.GetSettlementTasksQueryResultItem) {
- if (row) {
- handleEdit({
- id: row?.id,
- name: row?.name,
- settlementUrl: [] as UploadUserFile[],
- });
- } else {
- handleAdd();
- }
+async function handleAddOrEdit() {
+ goDetail(editForm.id, editForm.settlementUrl[0]?.path);
}
-
-async function handleAddOrEdit() {}
const {
dialogProps: dialogSettleProps,
@@ -279,7 +302,7 @@
name: '',
code: '',
settlementUserCount: 0,
- settlementAmount: 0,
+ actualSettlementAmount: 0,
},
});
@@ -301,14 +324,14 @@
id: row.id,
name: row.name,
code: row.code,
- settlementUserCount: row.settlementUserCount,
- settlementAmount: row.settlementAmount,
+ settlementUserCount: row.settlementUserCount ?? 0,
+ actualSettlementAmount: row.actualSettlementAmount ?? 0,
});
}
async function handleRecall(row: API.GetSettlementTasksQueryResultItem) {
try {
- Message.tipMessage('纭瑕佹挙鍥炲悧锛�');
+ await Message.tipMessage('纭瑕佹挙鍥炲悧锛�');
let params: API.RevokeTaskSettlementOrderCommand = {
taskInfoId: row.id,
};
@@ -324,19 +347,22 @@
response: UploadUserFile & { file: File & { uid: number } },
row: API.GetSettlementTasksQueryResultItem
) {
- if (response.url) {
- goDetail(row, response.url);
+ if (response.path) {
+ goDetail(row.id, response.path);
}
}
-function goDetail(row: API.GetSettlementTasksQueryResultItem, url?: string) {
- router.push({
+async function goDetail(id: string, url?: string) {
+ await router.push({
name: 'ServiceChargeDetail',
+ params: {
+ id: id,
+ },
query: {
- id: row.id,
url: url ? url : '',
},
});
+ editForm.settlementUrl = [] as UploadUserFile[];
}
function handleExport(val) {
@@ -344,6 +370,9 @@
}
function handleDownloadTemplate() {
- downloadFileByUrl('', '缁撶畻鍗曟ā鏉�');
+ downloadFileByUrl(
+ 'https://parkmanagement.oss-cn-hangzhou.aliyuncs.com/FlexJob/temp/%E7%BB%93%E7%AE%97%E5%8D%95%E6%A8%A1%E6%9D%BF.xlsx',
+ '缁撶畻鍗曟ā鏉�'
+ );
}
</script>
--
Gitblit v1.9.1