From 035dae7be5cf8a7a4a13cecb5dc9cde9fcda07e6 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 17 二月 2025 10:29:52 +0800
Subject: [PATCH] 独立删除逻辑

---
 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java |   46 +++++++++++++++++++++++++++++-----------------
 1 files changed, 29 insertions(+), 17 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java
index 7068fbf..1c7da6c 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java
@@ -12,6 +12,7 @@
 import org.dromara.system.domain.properties.Boundary;
 import org.dromara.system.domain.vo.SysOssVo;
 import org.dromara.system.mapper.SysOssMapper;
+import org.dromara.system.service.ISysOssService;
 import org.dromara.system.uitil.HttpUtils;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
@@ -25,33 +26,44 @@
 @Component
 public class deleteSync {
 
-    private final SysOssMapper baseMapper;
+    private final ISysOssService ossService;
+    private final SysOssMapper ossMapper;
     private final Boundary boundary;
 
-    public deleteSync(SysOssMapper baseMapper, Boundary boundary) {
-        this.baseMapper = baseMapper;
+    public deleteSync(ISysOssService ossService, SysOssMapper ossMapper, Boundary boundary) {
+        this.ossService = ossService;
+        this.ossMapper = ossMapper;
         this.boundary = boundary;
     }
 
+//    @Scheduled(cron = "0 */10 * * * ?")
+//    public void remove() throws IOException {
+//        log.error("鍚屾鍒犻櫎......");
+//        List<SysOss> list = new LambdaQueryChainWrapper<>(baseMapper)
+//            .le(SysOss::getCreateTime, LocalDateTime.now().minusDays(1L))
+//            .list();
+//        if (list.size() == 0)
+//            return;
+//
+//        for (SysOss vo : list) {
+//            OssClient storage = OssFactory.instance(vo.getService());
+//            storage.delete(vo.getUrl());
+//            HttpResponse httpResponse = HttpUtils.sendDeleteRequest(this.boundary.getVideo() + "/resource/synchronization/delete",
+//                String.valueOf(vo.getOssId()));
+//            if (httpResponse.getStatusLine().getStatusCode() == 200) {
+//                baseMapper.deleteId(vo.getOssId());
+//            }
+//        }
+//    }
 
     @Scheduled(cron = "0 */10 * * * ?")
     public void remove() throws IOException {
-        log.error("鍚屾鍒犻櫎......");
-        List<SysOss> list = new LambdaQueryChainWrapper<>(baseMapper)
-            .le(SysOss::getCreateTime, LocalDateTime.now().minusDays(1L))
-            .list();
-        if (list.size() == 0)
+        System.out.println("self delete......");
+        List<Long> ids = ossMapper.getWillDeleted(LocalDateTime.now().minusDays(1));
+        if (ids.size() == 0) {
             return;
-
-        for (SysOss vo : list) {
-            OssClient storage = OssFactory.instance(vo.getService());
-            storage.delete(vo.getUrl());
-            HttpResponse httpResponse = HttpUtils.sendDeleteRequest(this.boundary.getVideo() + "/resource/synchronization/delete",
-                String.valueOf(vo.getOssId()));
-            if (httpResponse.getStatusLine().getStatusCode() == 200) {
-                baseMapper.deleteId(vo.getOssId());
-            }
         }
+        ossService.deleteByIds(ids);
     }
 
 }

--
Gitblit v1.8.0