From 524b1febe13e9305e9a27c870e09819e0e363bbd Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期一, 21 四月 2025 17:28:48 +0800 Subject: [PATCH] feat: 接口 --- src/components/commonView/FourStreamsMaterialFileTable.vue | 24 ++++++++++++++++++++---- 1 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/components/commonView/FourStreamsMaterialFileTable.vue b/src/components/commonView/FourStreamsMaterialFileTable.vue index e51d00d..4fb8aaf 100644 --- a/src/components/commonView/FourStreamsMaterialFileTable.vue +++ b/src/components/commonView/FourStreamsMaterialFileTable.vue @@ -9,7 +9,7 @@ :showTableColumnSetting="false" > <template #fileBusinessType="{ row }"> - {{ FourStreamsMaterialFileBusinessTypeEnumText[row.fileBusinessType] }} + {{ BusinessTypeEnumText[row.fileBusinessType] }} </template> <template #operationBtn-uploadBtn="{ data, row }"> <BlFileUpload @@ -25,22 +25,31 @@ </BlFileUpload> </template> </ProTableV2> + <FourStreamsBatchMaterialFileDialog + v-bind="dialogProps" + :name="''" + :zipName="`${BusinessTypeEnumText[currentFourStreamsMaterialFileTableItem.fileBusinessType as any]}`" + v-model:fileList="currentFourStreamsMaterialFileTableItem.fileList" + :showDeleteBtn="showDeleteBtn" + /> </div> </template> -<script setup lang="ts"> +<script setup lang="ts" generic="T"> import { FourStreamsMaterialFileTableProps, FourStreamsMaterialFileTableItem, FourStreamsMaterialFileBusinessTypeEnumText, + BaseMaterialFileTableItem, } from './types'; import { ProTableV2, defineColumns, - defineOperationBtns, BlFileUpload, bolePreview, + useDialog, } from '@bole-core/components'; +import FourStreamsBatchMaterialFileDialog from './FourStreamsBatchMaterialFileDialog.vue'; import { downloadFileByUrl } from '@/utils'; import { Message, isFileCanPreview } from '@bole-core/core'; import { useDefineColumns } from '@/hooks'; @@ -55,9 +64,10 @@ showDownloadBtn: true, showDeleteBtn: true, downloadBtnText: '涓嬭浇', + BusinessTypeEnumText: () => FourStreamsMaterialFileBusinessTypeEnumText, }); -const list = defineModel<FourStreamsMaterialFileTableItem[]>('list'); +const list = defineModel<BaseMaterialFileTableItem<T>[]>('list'); const columns = defineColumns([ { @@ -152,6 +162,12 @@ } catch (error) {} } +const currentFourStreamsMaterialFileTableItem = ref<BaseMaterialFileTableItem<T>>({ + fileBusinessType: 0 as any, + fileList: [], +}); +const { dialogProps, dialogState } = useDialog(); + async function handlePreview(row: FourStreamsMaterialFileTableItem) { if (row.fileList.length > 1) { // currentEnterpriseMaterialFileTableItem.value = row; -- Gitblit v1.9.1