From 6bac509f8e6efc205d9f37a84c9b019ec828467a Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 07 五月 2025 14:22:26 +0800
Subject: [PATCH] feat: 接口

---
 src/components/commonView/FourStreamsMaterialFileDialogV2.vue |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/src/components/commonView/FourStreamsMaterialFileDialogV2.vue b/src/components/commonView/FourStreamsMaterialFileDialogV2.vue
new file mode 100644
index 0000000..c4f28b0
--- /dev/null
+++ b/src/components/commonView/FourStreamsMaterialFileDialogV2.vue
@@ -0,0 +1,50 @@
+<template>
+  <ProDialog :title="title" v-model="visible" destroy-on-close draggable width="800px">
+    <FourStreamsMaterialFileTableV2 v-model:list="form.list" v-bind="props" />
+    <template #footer>
+      <span class="dialog-footer">
+        <el-button type="primary" @click="handleConfirm">纭� 瀹�</el-button>
+      </span>
+    </template>
+  </ProDialog>
+</template>
+
+<script setup lang="ts" generic="T">
+import { ProDialog } from '@bole-core/components';
+import FourStreamsMaterialFileTableV2 from './FourStreamsMaterialFileTableV2.vue';
+import { FourStreamsMaterialFileTableProps, BaseMaterialFileTableItem } from './types';
+
+defineOptions({
+  name: 'FourStreamsMaterialFileDialogV2',
+});
+
+type Props = FourStreamsMaterialFileTableProps & {
+  title?: string;
+  BusinessTypeEnumText: { [key: number]: string };
+};
+
+const props = withDefaults(defineProps<Props>(), {
+  showUploadBtn: true,
+  showCheckBtn: true,
+  showDownloadBtn: true,
+  showDeleteBtn: true,
+  title: '鏉愭枡璇︽儏',
+});
+
+const visible = defineModel({ type: Boolean });
+
+type Form = {
+  list: BaseMaterialFileTableItem<T>[];
+};
+
+const form = defineModel<Form>('form');
+
+const emit = defineEmits<{
+  (e: 'onConfirm'): void;
+  (e: 'onCancel'): void;
+}>();
+
+function handleConfirm() {
+  emit('onConfirm');
+}
+</script>

--
Gitblit v1.9.1