From a6fc4c9dfe7fae23229312c813f0b1e933d87d5b Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 12 六月 2026 09:52:26 +0800
Subject: [PATCH] 宝东 1.计量器具台账报错 2.生产报工、生产排产完成进度改为四舍五入

---
 src/views/equipmentManagement/measurementEquipment/filesDia.vue |  110 ++++++++++++++++++++++--------------------------------
 1 files changed, 45 insertions(+), 65 deletions(-)

diff --git a/src/views/equipmentManagement/measurementEquipment/filesDia.vue b/src/views/equipmentManagement/measurementEquipment/filesDia.vue
index 16c026e..045ebc0 100644
--- a/src/views/equipmentManagement/measurementEquipment/filesDia.vue
+++ b/src/views/equipmentManagement/measurementEquipment/filesDia.vue
@@ -1,38 +1,16 @@
 <template>
   <div>
-    <el-dialog
-        v-model="dialogFormVisible"
-        title="涓婁紶闄勪欢"
-        width="50%"
-        @close="closeDia"
-    >
+    <el-dialog v-model="dialogFormVisible" title="涓婁紶闄勪欢" width="50%" @close="closeDia">
       <div style="margin-bottom: 10px;text-align: right">
-        <el-upload
-            v-model:file-list="fileList"
-            class="upload-demo"
-            :action="uploadUrl"
-            :on-success="handleUploadSuccess"
-            :on-error="handleUploadError"
-            name="file"
-            :show-file-list="false"
-            :headers="headers"
-            style="display: inline;margin-right: 10px"
-        >
+        <el-upload v-model:file-list="fileList" class="upload-demo" :action="uploadUrl"
+          :on-success="handleUploadSuccess" :on-error="handleUploadError" name="files" :show-file-list="false"
+          :headers="headers" style="display: inline;margin-right: 10px">
           <el-button type="primary">涓婁紶闄勪欢</el-button>
         </el-upload>
         <el-button type="danger" plain @click="handleDelete">鍒犻櫎</el-button>
       </div>
-      <PIMTable
-          rowKey="id"
-          :column="tableColumn"
-          :tableData="tableData"
-          :page="page"
-          :tableLoading="tableLoading"
-          :isSelection="true"
-          @selection-change="handleSelectionChange"
-          @pagination="paginationSearch"
-          height="500"
-      >
+      <PIMTable rowKey="id" :column="tableColumn" :tableData="tableData" :page="page" :tableLoading="tableLoading"
+        :isSelection="true" @selection-change="handleSelectionChange" @pagination="paginationSearch" height="500">
       </PIMTable>
       <template #footer>
         <div class="dialog-footer">
@@ -45,16 +23,16 @@
 </template>
 
 <script setup>
-import {ref, reactive, getCurrentInstance} from "vue";
-import {ElMessageBox} from "element-plus";
-import {getToken} from "@/utils/auth.js";
+import { ref, reactive, getCurrentInstance } from "vue";
+import { ElMessageBox } from "element-plus";
+import { getToken } from "@/utils/auth.js";
 import filePreview from '@/components/filePreview/index.vue'
 import PIMTable from "@/components/PIMTable/PIMTable.vue";
 import {
-  fileAdd,
-  fileDel,
-  fileListPage
-} from "@/api/financialManagement/revenueManagement.js";
+  addStorageAttachment,
+  delStorageAttachment,
+  getStorageAttachmentList
+} from "@/api/equipmentManagement/measurementEquipment.js";
 const { proxy } = getCurrentInstance()
 const emit = defineEmits(['close'])
 
@@ -90,9 +68,9 @@
   },
 ]);
 const page = reactive({
-	current: 1,
-	size: 100,
-	total: 0,
+  current: 1,
+  size: 100,
+  total: 0,
 });
 const tableData = ref([]);
 const fileList = ref([]);
@@ -101,24 +79,25 @@
 const headers = ref({
   Authorization: "Bearer " + getToken(),
 });
-const uploadUrl = ref(import.meta.env.VITE_APP_BASE_API + "/file/upload"); // 涓婁紶鐨勫浘鐗囨湇鍔″櫒鍦板潃
+const uploadUrl = ref(import.meta.env.VITE_APP_BASE_API + "/common/upload"); // 涓婁紶鐨勬湇鍔″櫒鍦板潃
 
 // 鎵撳紑寮规
-const openDialog = (row,type) => {
+const openDialog = (row, type) => {
   accountType.value = type;
   dialogFormVisible.value = true;
   currentId.value = row.id;
   getList()
 }
 const paginationSearch = (obj) => {
-	page.current = obj.page;
-	page.size = obj.limit;
-	getList();
+  page.current = obj.page;
+  page.size = obj.limit;
+  // 鍓嶇鍒嗛〉鏆備笉澶勭悊锛岀洿鎺ヨ皟鐢ㄨ幏鍙栧叏閲忓垪琛�
+  getList();
 };
 const getList = () => {
-  fileListPage({accountId: currentId.value,accountType:accountType.value, ...page}).then(res => {
-    tableData.value = res.data.records;
-		page.total = res.data.total;
+  getStorageAttachmentList({ recordId: currentId.value, recordType: accountType.value }).then(res => {
+    tableData.value = res.data;
+    page.total = res.data ? res.data.length : 0;
   })
 }
 // 琛ㄦ牸閫夋嫨鏁版嵁
@@ -134,22 +113,25 @@
 // 涓婁紶鎴愬姛澶勭悊
 function handleUploadSuccess(res, file) {
   // 濡傛灉涓婁紶鎴愬姛
-  if (res.code == 200) {
-    const fileRow = {}
-    fileRow.name = res.data.originalName
-    fileRow.url = res.data.tempPath
-    uploadFile(fileRow)
+  if (res.code == 200 && res.data && res.data.length > 0) {
+    const newFiles = res.data.map(item => ({
+      ...item,
+      name: item.originalFilename || item.name
+    }));
+    const mergedFiles = [...(tableData.value || []), ...newFiles];
+    const storageAttachmentDTO = {
+      recordType: accountType.value,
+      recordId: currentId.value,
+      application: "file",
+      storageBlobDTOs: mergedFiles
+    };
+    addStorageAttachment(storageAttachmentDTO).then(r => {
+      proxy.$modal.msgSuccess("鏂囦欢涓婁紶鎴愬姛");
+      getList()
+    })
   } else {
     proxy.$modal.msgError("鏂囦欢涓婁紶澶辫触");
   }
-}
-function uploadFile(file) {
-  file.accountId = currentId.value;
-  file.accountType = accountType.value;
-  fileAdd(file).then(res => {
-    proxy.$modal.msgSuccess("鏂囦欢涓婁紶鎴愬姛");
-    getList()
-  })
 }
 // 涓婁紶澶辫触澶勭悊
 function handleUploadError() {
@@ -157,13 +139,13 @@
 }
 // 涓嬭浇闄勪欢
 const downLoadFile = (row) => {
-	proxy.$download.byUrl(row.url, row.originalFilename);
+  proxy.$download.byUrl(row.url, row.originalFilename);
 }
 // 鍒犻櫎
 const handleDelete = () => {
   let ids = [];
   if (selectedRows.value.length > 0) {
-    ids = selectedRows.value.map((item) => item.id);
+    ids = selectedRows.value.map((item) => item.storageAttachmentId);
   } else {
     proxy.$modal.msgWarning("璇烽�夋嫨鏁版嵁");
     return;
@@ -173,7 +155,7 @@
     cancelButtonText: "鍙栨秷",
     type: "warning",
   }).then(() => {
-    fileDel(ids).then((res) => {
+    delStorageAttachment(ids).then((res) => {
       proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
       getList();
     });
@@ -191,6 +173,4 @@
 });
 </script>
 
-<style scoped>
-
-</style>
\ No newline at end of file
+<style scoped></style>
\ No newline at end of file

--
Gitblit v1.9.3