From 2fc58fbb10745abd97168b8da21d4142e11d7f2e Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期四, 18 十二月 2025 13:36:43 +0800
Subject: [PATCH] 新增设备维修保养过程描述,上传对应附件

---
 src/views/equipmentManagement/repair/index.vue |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/src/views/equipmentManagement/repair/index.vue b/src/views/equipmentManagement/repair/index.vue
index 1a2ff1e..9aad3c2 100644
--- a/src/views/equipmentManagement/repair/index.vue
+++ b/src/views/equipmentManagement/repair/index.vue
@@ -119,6 +119,14 @@
             缂栬緫
           </el-button>
           <el-button
+              type="primary"
+              text
+              icon="editPen"
+              @click="showImage(row)"
+          >
+            闄勪欢
+          </el-button>
+          <el-button
             type="danger"
             text
             icon="delete"
@@ -131,17 +139,19 @@
     </div>
     <RepairModal ref="repairModalRef" @ok="getTableData" />
     <MaintainModal ref="maintainModalRef" @ok="getTableData" />
+    <ImagePreviewDialog v-model:model-value="showImages" :images="imageUrls" />
   </div>
 </template>
 
 <script setup>
 import { usePaginationApi } from "@/hooks/usePaginationApi";
-import { getRepairPage, delRepair } from "@/api/equipmentManagement/repair";
+import {getRepairPage, delRepair, getRepairById} from "@/api/equipmentManagement/repair";
 import { onMounted, getCurrentInstance } from "vue";
 import RepairModal from "./Modal/RepairModal.vue";
 import { ElMessageBox, ElMessage } from "element-plus";
 import dayjs from "dayjs";
 import MaintainModal from "./Modal/MaintainModal.vue";
+import ImagePreviewDialog from "@/components/ImagePreview/ImagePreviewDialog.vue";
 
 defineOptions({
   name: "璁惧鎶ヤ慨",
@@ -152,6 +162,9 @@
 // 妯℃�佹瀹炰緥
 const repairModalRef = ref();
 const maintainModalRef = ref();
+
+const showImages = ref(false)
+const imageUrls = ref([])
 
 // 琛ㄦ牸澶氶�夋閫変腑椤�
 const multipleList = ref([]);
@@ -231,7 +244,7 @@
       dataType: "slot",
       slot: "operation",
       align: "center",
-      width: "200px",
+      width: "300px",
     },
   ]
 );
@@ -309,6 +322,12 @@
     });
 };
 
+const showImage = async (row) => {
+  const {data} = await getRepairById(row.id)
+  imageUrls.value = data?.files.map((item) => item.url)
+  showImages.value = true
+}
+
 onMounted(() => {
   getTableData();
 });

--
Gitblit v1.9.3