From 38b161e4d52362081bfe78fb5b51fbf384db7ce2 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 06 5月 2025 07:22:21 +0800
Subject: [PATCH] 222

---
 HIAWms/web/src/components/Upload/index.vue |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/HIAWms/web/src/components/Upload/index.vue b/HIAWms/web/src/components/Upload/index.vue
new file mode 100644
index 0000000..417f669
--- /dev/null
+++ b/HIAWms/web/src/components/Upload/index.vue
@@ -0,0 +1,47 @@
+<template>
+  <el-upload
+    :accept="accept"
+    :show-file-list="showFileList || false"
+    action="/api/v1/zc/productsop/uploadsop"
+    name="fromFile"
+    :on-success="handleUploadSuccess"
+  >
+    <!-- :http-request="onImport" -->
+    <template v-if="slots.default"><slot></slot></template>
+    <template v-else>
+      <i class="iconfont icon-shangchuan upload"></i>
+      <span><slot name="text"></slot></span>
+    </template>
+  </el-upload>
+</template>
+
+<script lang="ts" setup>
+import { ElMessage } from 'element-plus'
+import { useSlots } from 'vue'
+
+const slots = useSlots()
+
+const props = defineProps<{
+  accept: string
+  showFileList?: boolean
+  msg?: string
+}>()
+
+const emit = defineEmits(['success'])
+
+const handleUploadSuccess = (res: string) => {
+  const data = {
+    name: res.split('\\')[1],
+    url: res,
+  }
+  emit('success', data)
+  ElMessage.success(props.msg || '涓婁紶鎴愬姛')
+}
+</script>
+
+<style lang="scss" scoped>
+.upload {
+  font-size: 25px;
+  color: #777;
+}
+</style>

--
Gitblit v1.9.3