From 7077d3a7819de3229482e5a9edb4bd895ea2a49f Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Wed, 29 Oct 2025 16:04:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 ard-oss/src/main/java/com/ard/oss/service/impl/MinIOServiceImpl.java |   25 ++++++++++++++++++++-----
 1 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/ard-oss/src/main/java/com/ard/oss/service/impl/MinIOServiceImpl.java b/ard-oss/src/main/java/com/ard/oss/service/impl/MinIOServiceImpl.java
index 5097bce..e38cfb0 100644
--- a/ard-oss/src/main/java/com/ard/oss/service/impl/MinIOServiceImpl.java
+++ b/ard-oss/src/main/java/com/ard/oss/service/impl/MinIOServiceImpl.java
@@ -127,13 +127,28 @@
     @Override
     public Boolean deleteObject(String bucket, String objectKey) {
         try {
-            client.removeObject(RemoveObjectArgs.builder().bucket(bucket).object(objectKey).build());
-        } catch (MinioException | NoSuchAlgorithmException | IOException | InvalidKeyException e) {
-            log.error("Failed to delete file.");
-            e.printStackTrace();
+            // 检查文件是否存在
+            client.statObject(StatObjectArgs.builder()
+                    .bucket(bucket)
+                    .object(objectKey)
+                    .build());
+
+            // 文件存在,执行删除
+            client.removeObject(RemoveObjectArgs.builder()
+                    .bucket(bucket)
+                    .object(objectKey)
+                    .build());
+
+            log.info("成功删除文件: {}/{}", bucket, objectKey);
+            return true;
+        } catch (ErrorResponseException e) {
+            // 文件不存在的情况
+            log.warn("文件不存在: {}/{}", bucket, objectKey);
             return false;
+        } catch (Exception e) {
+            log.error("删除文件失败: {}/{}", bucket, objectKey, e);
+            throw new RuntimeException("删除文件失败: " + e.getMessage(), e);
         }
-        return true;
     }
 
     @Override

--
Gitblit v1.9.3