From 7452ee10cd10842a9fa23179ac352e20cbe3391b Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 18 五月 2026 18:00:59 +0800
Subject: [PATCH] fix: 保养任务记录编辑附件不回显

---
 src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java |   37 ++++++++++++++++++++++++++++++++++---
 1 files changed, 34 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
index 6e90b28..6eb0871 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
@@ -10,10 +10,12 @@
 import com.ruoyi.device.execl.DeviceMaintenanceExeclDto;
 import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
 import com.ruoyi.device.pojo.DeviceMaintenance;
+import com.ruoyi.device.service.DeviceMaintenanceFileService;
 import com.ruoyi.device.service.IDeviceMaintenanceService;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
@@ -28,6 +30,9 @@
     @Autowired
     private DeviceMaintenanceMapper deviceMaintenanceMapper;
 
+    @Autowired
+    private DeviceMaintenanceFileService deviceMaintenanceFileService;
+
     @Override
     public IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto) {
 
@@ -35,16 +40,42 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance) {
+        // 鍏堜繚瀛樿澶囦繚鍏昏褰�
         boolean save = this.save(deviceMaintenance);
-        if (save){
-            return AjaxResult.success();
+        if (!save) {
+            return AjaxResult.error("淇濆瓨澶辫触");
         }
-        return AjaxResult.error();
+
+        // 澶勭悊涓存椂鏂囦欢鍏宠仈
+        if (deviceMaintenance.getTempFileIds() != null && !deviceMaintenance.getTempFileIds().isEmpty()) {
+            for (String tempId : deviceMaintenance.getTempFileIds()) {
+                try {
+                    deviceMaintenanceFileService.bindFromTemp(tempId, deviceMaintenance.getId().intValue(), null);
+                } catch (Exception e) {
+                    throw new RuntimeException("鍏宠仈涓存椂鏂囦欢澶辫触: " + e.getMessage());
+                }
+            }
+        }
+
+        return AjaxResult.success(deviceMaintenance);
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance) {
+        // 澶勭悊涓存椂鏂囦欢鍏宠仈
+        if (deviceMaintenance.getTempFileIds() != null && !deviceMaintenance.getTempFileIds().isEmpty()) {
+            for (String tempId : deviceMaintenance.getTempFileIds()) {
+                try {
+                    deviceMaintenanceFileService.bindFromTemp(tempId, deviceMaintenance.getId().intValue(), null);
+                } catch (Exception e) {
+                    return AjaxResult.error("鍏宠仈涓存椂鏂囦欢澶辫触: " + e.getMessage());
+                }
+            }
+        }
+
         if (this.updateById(deviceMaintenance)) {
             return AjaxResult.success();
         }

--
Gitblit v1.9.3