From 3e881345e5e8753c0886407a98bff8da9ae54f76 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 17 二月 2025 09:55:13 +0800
Subject: [PATCH] 还原
---
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml | 4 +-
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/deleteSync.java | 49 ++++++++----------------
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/VideoPulSync.java | 25 ++++--------
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java | 7 +--
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysOssMapper.java | 2
5 files changed, 31 insertions(+), 56 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysOssMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysOssMapper.java
index 3907fae..2557aa5 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysOssMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysOssMapper.java
@@ -19,5 +19,5 @@
List<Long> getWillDeleted(@Param("maxTime") LocalDateTime maxTime);
- void deleteIds(@Param("ids") List<Long> ids);
+ void deleteId(@Param("id") Long id);
}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/VideoPulSync.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/VideoPulSync.java
index 3a0db25..e57afd1 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/VideoPulSync.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/sync/VideoPulSync.java
@@ -50,28 +50,21 @@
@Scheduled(cron = "0 0/1 * * * ?")
public void get() throws IOException {
- log.error("鍚屾涓婁紶");
- List<String> list = FtpApche.downloadList(ftpConfig);
-
- if(CollectionUtils.isEmpty(list)){
- log.error("no files in ftp");
+ log.error("鍚屾浜掕仈缃戞枃浠�");
+ List<String> list = FtpApche.downloadList(this.ftpConfig);
+ if (list.size() == 0)
return;
- }
- log.error("ftp get all fileinfo锛�" + list.get(0));
for (String str : list) {
String password = str.substring(0, 6);
String fileName = str.substring(6, str.length());
InputStream input = FtpApche.downloadFileFromDailyDir(str);
- if (Objects.nonNull(input)) {
- byte[] fileBytesByName = FtpApche.getFileBytesByName(input);
- OssClient storage = OssFactory.instance();
- MockMultipartFile mockMultipartFile = new MockMultipartFile(fileName, fileName, fileName.substring(14, fileName.length()), input);
- UploadResult uploadResult = storage.uploadSuffix2(fileBytesByName, getPath(fileName), "multipart/form-data; charset=ISO-8859-1");
- buildResultEntity(fileName, fileName.substring(14, fileName.length()), "minio", uploadResult, (MultipartFile)mockMultipartFile, password, fileBytesByName);
- FtpApche.deleteFile(str);
- }
+ byte[] fileBytesByName = FtpApche.getFileBytesByName(input);
+ OssClient storage = OssFactory.instance();
+ MockMultipartFile mockMultipartFile = new MockMultipartFile(fileName, fileName, fileName.substring(14, fileName.length()), input);
+ UploadResult uploadResult = storage.uploadSuffix2(fileBytesByName, getPath(fileName), "multipart/form-data; charset=ISO-8859-1");
+ FtpApche.deleteFile(str);
+ buildResultEntity(fileName, fileName.substring(14, fileName.length()), "minio", uploadResult, (MultipartFile)mockMultipartFile, password, fileBytesByName);
}
-
}
@NotNull
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 fb42703..7068fbf 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
@@ -1,7 +1,11 @@
package org.dromara.system.sync;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import lombok.extern.slf4j.Slf4j;
+import org.apache.http.HttpResponse;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.oss.core.OssClient;
import org.dromara.common.oss.factory.OssFactory;
import org.dromara.system.domain.SysOss;
@@ -33,42 +37,21 @@
@Scheduled(cron = "0 */10 * * * ?")
public void remove() throws IOException {
log.error("鍚屾鍒犻櫎......");
- List<Long> ids = baseMapper.getWillDeleted(LocalDateTime.now().minusDays(1));
-
- if (ids.size() == 0) {
+ List<SysOss> list = new LambdaQueryChainWrapper<>(baseMapper)
+ .le(SysOss::getCreateTime, LocalDateTime.now().minusDays(1L))
+ .list();
+ if (list.size() == 0)
return;
- }
- OssClient ossClient = OssFactory.instance();
- for (Long ossId : ids) {
- SysOss sysOss = baseMapper.selectById(ossId);
- if (Objects.nonNull(sysOss)) {
- ossClient.delete(sysOss.getFileName());
+
+ 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());
}
- HttpUtils.sendDeleteRequest(boundary.getVideo() + "/resource/synchronization/delete",
- String.valueOf(ossId));
}
}
- /**
- * 姣忓皬鏃跺垹闄�2澶╀箣鍓嶇殑鏂囦欢淇℃伅锛屽洜涓轰笂闈㈢殑鍚屾鍒犻櫎骞朵笉鑳戒繚璇佷簨鍔�
- *
- * @throws IOException
- */
- @Scheduled(cron = "0 0 * * * ?")
- public void removeOssTable() throws IOException {
- log.error("姣忓皬鏃跺畾鏃跺垹闄よ秴杩�2澶╃殑鏁版嵁搴撴枃浠朵俊鎭�......");
- List<Long> ids = baseMapper.getWillDeleted(LocalDateTime.now().minusDays(2));
- if (ids.size() == 0) {
- return;
- }
- // 鍒犻櫎瀵瑰簲鏂囦欢
- OssClient ossClient = OssFactory.instance();
- for (Long ossId : ids) {
- SysOss sysOss = baseMapper.selectById(ossId);
- if (Objects.nonNull(sysOss)) {
- ossClient.delete(sysOss.getFileName());
- }
- }
- baseMapper.deleteIds(ids);
- }
}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
index df3f77b..6b10a39 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
@@ -110,7 +110,7 @@
// * @param parameter
* @throws Exception
*/
- public static String sendDeleteRequest(String url, String ossId) throws IOException {
+ public static HttpResponse sendDeleteRequest(String url, String ossId) throws IOException {
org.apache.http.client.HttpClient httpClient = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost(url);
@@ -127,9 +127,8 @@
httpPost.setEntity(multipart);
HttpResponse response = httpClient.execute(httpPost);
- String responseBody = EntityUtils.toString(response.getEntity());
- System.out.println("Response: " + responseBody);
- return responseBody;
+ return response;
+
}
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml
index eb2672d..336b02f 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml
@@ -7,8 +7,8 @@
</select>
- <delete id="deleteIds" parameterType="integer">
- DELETE FROM sys_oss WHERE oss_id IN <foreach collection="ids" open="(" separator="," close=")" item="id">#{id}</foreach>
+ <delete id="deleteId" parameterType="long">
+ DELETE FROM sys_oss WHERE oss_id = #{id}
</delete>
</mapper>
--
Gitblit v1.8.0