From 5c5e9f188cf6526b5d932fb00e9425879d5613fc Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期四, 30 四月 2026 17:45:20 +0800
Subject: [PATCH] 审批节点文件上传

---
 src/views/safeProduction/safeWorkApproval/components/infoFormDia.vue       |    1 
 src/views/collaborativeApproval/approvalProcess/components/infoFormDia.vue |   64 ++++----------------------------
 2 files changed, 9 insertions(+), 56 deletions(-)

diff --git a/src/views/collaborativeApproval/approvalProcess/components/infoFormDia.vue b/src/views/collaborativeApproval/approvalProcess/components/infoFormDia.vue
index 8328ee6..6461b2d 100644
--- a/src/views/collaborativeApproval/approvalProcess/components/infoFormDia.vue
+++ b/src/views/collaborativeApproval/approvalProcess/components/infoFormDia.vue
@@ -101,17 +101,7 @@
         <el-row :gutter="30">
           <el-col :span="24">
             <el-form-item label="闄勪欢鏉愭枡锛�" prop="remark">
-              <el-upload v-model:file-list="fileList" :action="upload.url" multiple ref="fileUpload" auto-upload
-                         :headers="upload.headers" :before-upload="handleBeforeUpload" :on-error="handleUploadError"
-                         :on-success="handleUploadSuccess" :on-remove="handleRemove">
-                <el-button type="primary" v-if="operationType !== 'view'">涓婁紶</el-button>
-                <template #tip v-if="operationType !== 'view'">
-                  <div class="el-upload__tip">
-                    鏂囦欢鏍煎紡鏀寔
-                    doc锛宒ocx锛寈ls锛寈lsx锛宲pt锛宲ptx锛宲df锛宼xt锛寈ml锛宩pg锛宩peg锛宲ng锛実if锛宐mp锛宺ar锛寊ip锛�7z
-                  </div>
-                </template>
-              </el-upload>
+              <FileUpload v-model:file-list="fileList" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -140,6 +130,7 @@
 const { proxy } = getCurrentInstance()
 const emit = defineEmits(['close'])
 import useUserStore from "@/store/modules/user";
+import FileUpload from "@/components/AttachmentUpload/file/index.vue";
 const userStore = useUserStore();
 
 const dialogFormVisible = ref(false);
@@ -158,7 +149,6 @@
     approveDeptName: "",
     approveReason: "",
     checkResult: "",
-    tempFileIds: [],
     startDate: "", // 璇峰亣寮�濮嬫椂闂�
     endDate: "", // 璇峰亣缁撴潫鏃堕棿
     price: null, // 鎶ラ攢閲戦
@@ -214,6 +204,7 @@
     currentApproveStatus.value = row.approveStatus
     approveProcessGetInfo({id: row.approveId,approveReason: '1'}).then(res => {
       form.value = {...res.data}
+      fileList.value = res.data.storageBlobVOS
     })
   }
 }
@@ -222,8 +213,8 @@
     productOptions.value = res.data;
     // 濡傛灉宸叉湁閮ㄩ棬ID锛岃嚜鍔ㄨ缃儴闂ㄥ悕绉帮紙鐢ㄤ簬楠岃瘉锛�
     if (form.value.approveDeptId && productOptions.value.length > 0) {
-      const matchedDept = productOptions.value.find(dept => 
-        dept.deptId == form.value.approveDeptId || 
+      const matchedDept = productOptions.value.find(dept =>
+        dept.deptId == form.value.approveDeptId ||
         String(dept.deptId) === String(form.value.approveDeptId)
       );
       if (matchedDept) {
@@ -242,7 +233,7 @@
     if (children && children.length > 0) {
       newItem.children = convertIdToValue(children);
     }
-    
+
     return newItem;
   });
 }
@@ -279,6 +270,8 @@
       return
     }
   }
+  form.value.storageBlobDTOList = fileList.value
+
   proxy.$refs.formRef.validate(valid => {
     if (valid) {
       if (operationType.value === "add" || currentApproveStatus.value == 3) {
@@ -302,47 +295,6 @@
   dialogFormVisible.value = false;
   emit('close')
 };
-
-// 涓婁紶鍓嶆牎妫�
-function handleBeforeUpload(file) {
-  // 鏍℃鏂囦欢澶у皬
-  // if (file.size > 1024 * 1024 * 10) {
-  //   proxy.$modal.msgError("涓婁紶鏂囦欢澶у皬涓嶈兘瓒呰繃10MB!");
-  //   return false;
-  // }
-  proxy.$modal.loading("姝e湪涓婁紶鏂囦欢锛岃绋嶅��...");
-  return true;
-}
-// 涓婁紶澶辫触
-function handleUploadError(err) {
-  proxy.$modal.msgError("涓婁紶鏂囦欢澶辫触");
-  proxy.$modal.closeLoading();
-}
-// 涓婁紶鎴愬姛鍥炶皟
-function handleUploadSuccess(res, file, uploadFiles) {
-  proxy.$modal.closeLoading();
-  if (res.code === 200) {
-    // 纭繚 tempFileIds 瀛樺湪涓斾负鏁扮粍
-    if (!form.value.tempFileIds) {
-      form.value.tempFileIds = [];
-    }
-    form.value.tempFileIds.push(res.data.tempId);
-    proxy.$modal.msgSuccess("涓婁紶鎴愬姛");
-  } else {
-    proxy.$modal.msgError(res.msg);
-    proxy.$refs.fileUpload.handleRemove(file);
-  }
-}
-// 绉婚櫎鏂囦欢
-function handleRemove(file) {
-  if (operationType.value === "edit") {
-    let ids = [];
-    ids.push(file.id);
-    delLedgerFile(ids).then((res) => {
-      proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-    });
-  }
-}
 
 defineExpose({
   openDialog,
diff --git a/src/views/safeProduction/safeWorkApproval/components/infoFormDia.vue b/src/views/safeProduction/safeWorkApproval/components/infoFormDia.vue
index a26ef0a..a0146ba 100644
--- a/src/views/safeProduction/safeWorkApproval/components/infoFormDia.vue
+++ b/src/views/safeProduction/safeWorkApproval/components/infoFormDia.vue
@@ -298,6 +298,7 @@
       approveProcessGetInfo({ id: row.approveId, approveReason: "1" }).then(
         res => {
           form.value = { ...res.data };
+          form.value.storageBlobDTOs = res.data.storageBlobVOS;
           // 鍙嶆樉瀹℃壒浜�
           if (res.data && res.data.approveUserIds) {
             const userIds = res.data.approveUserIds.split(",");

--
Gitblit v1.9.3