From efd594b160a4e35f499eb54ffa0c5b06326cbe1c Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 23 四月 2026 11:51:15 +0800
Subject: [PATCH] feat: 删除设备保修时也删除对应的上传附件

---
 src/main/java/com/ruoyi/device/controller/DeviceRepairController.java |   58 ++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 42 insertions(+), 16 deletions(-)

diff --git a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
index d33b340..6933851 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
@@ -7,13 +7,17 @@
 import com.ruoyi.device.service.IDeviceLedgerService;
 import com.ruoyi.device.service.IDeviceRepairService;
 import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.sales.pojo.CommonFile;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiOperation;
+import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.Arrays;
+import java.util.List;
 
 @Api(tags = "璁惧鎶ヤ慨绠$悊")
 @RequestMapping("/device/repair")
@@ -26,41 +30,41 @@
     @Autowired
     private IDeviceLedgerService deviceLedgerService;
 
-    @ApiModelProperty("璁惧鎶ヤ慨鍒楄〃")
+    @ApiOperation("璁惧鎶ヤ慨鍒楄〃")
     @GetMapping("/page")
-    public AjaxResult page(Page page , DeviceRepairDto deviceRepairDto) {
-        return AjaxResult.success(deviceRepairService.queryPage(page,deviceRepairDto));
+    public AjaxResult page(Page page, DeviceRepairDto deviceRepairDto) {
+        return AjaxResult.success(deviceRepairService.queryPage(page, deviceRepairDto));
     }
 
     @PostMapping()
-    @ApiModelProperty("娣诲姞璁惧鎶ヤ慨")
-    public AjaxResult add( @RequestBody DeviceRepair deviceRepair) {
+    @ApiOperation("娣诲姞璁惧鎶ヤ慨")
+    public AjaxResult add(@RequestBody DeviceRepair deviceRepair) {
         return deviceRepairService.saveDeviceRepair(deviceRepair);
     }
 
-    @ApiModelProperty("鏍规嵁id鏌ヨ璁惧鎶ヤ慨")
+    @ApiOperation("鏍规嵁id鏌ヨ璁惧鎶ヤ慨")
     @GetMapping("/{id}")
     public AjaxResult detail(@PathVariable Long id) {
         DeviceRepairDto byId = deviceRepairService.detailById(id);
         return AjaxResult.success(byId);
     }
 
-    @PutMapping ()
-    @ApiModelProperty("淇敼璁惧鎶ヤ慨")
-    public AjaxResult update( @RequestBody DeviceRepair deviceRepair) {
+    @PutMapping()
+    @ApiOperation("淇敼璁惧鎶ヤ慨")
+    public AjaxResult update(@RequestBody DeviceRepair deviceRepair) {
         return deviceRepairService.updateDeviceRepair(deviceRepair);
     }
 
-    @PostMapping ("repair")
-    @ApiModelProperty("璁惧缁翠慨")
-    public AjaxResult repair( @RequestBody DeviceRepair deviceRepair) {
+    @PostMapping("repair")
+    @ApiOperation("璁惧缁翠慨")
+    public AjaxResult repair(@RequestBody DeviceRepair deviceRepair) {
         return deviceRepairService.updateDeviceRepair(deviceRepair);
     }
 
     @DeleteMapping("/{ids}")
-    @ApiModelProperty("鍒犻櫎璁惧鎶ヤ慨")
+    @ApiOperation("鍒犻櫎璁惧鎶ヤ慨")
     public AjaxResult delete(@PathVariable("ids") Long[] ids) {
-        boolean b = deviceRepairService.removeBatchByIds(Arrays.asList(ids));
+        boolean b = deviceRepairService.deleteRepairAndFiles(Arrays.asList(ids));
         if (!b) {
             return AjaxResult.error("鍒犻櫎澶辫触");
         }
@@ -68,8 +72,30 @@
     }
 
     @PostMapping("export")
-    @ApiModelProperty("瀵煎嚭璁惧鎶ヤ慨")
+    @ApiOperation("瀵煎嚭璁惧鎶ヤ慨")
     public void export(HttpServletResponse response, Long[] ids) {
         deviceRepairService.export(response, ids);
     }
+
+    @PostMapping("/uploadFile")
+    @ApiOperation("璁惧淇濅慨-闄勪欢涓婁紶")
+    public AjaxResult uploadFile(MultipartFile file, Long deviceRepairId) {
+        deviceRepairService.uploadFile(file, deviceRepairId);
+        return AjaxResult.success();
+    }
+
+    @GetMapping("/file/{deviceRepairId}")
+    @ApiOperation("璁惧淇濅慨-鏂囦欢鍒楄〃")
+    public AjaxResult getFiles(@PathVariable("deviceRepairId") Long deviceRepairId) {
+        List<CommonFile> list = deviceRepairService.getFiles(deviceRepairId);
+        return AjaxResult.success(list);
+    }
+
+    @DeleteMapping("/file/{fileId}")
+    @ApiOperation("璁惧淇濅慨-鍒犻櫎鏂囦欢")
+    public AjaxResult deleteFile(@PathVariable("fileId") Long fileId) {
+        deviceRepairService.deleteFile(fileId);
+        return AjaxResult.success();
+    }
+
 }

--
Gitblit v1.9.3