refactor(file-service): 重构文件服务以改进上传和删除功能
重构了文件上传和删除的实现,优化了文件服务的效率和可靠性。上传方法现在正确使用filePath参数,删除方法不再依赖于查询字符串参数。另外,纠正了MinioFileService中的文件删除逻辑,使其与更新的FileOperateUtils接口兼容。 - 重构了FileOperateUtils中的上传逻辑,并更新了MinioFileService以使用新的方法。 - 直接传递filePath到FileOperateUtils的deleteFileAndMd5ByFilePath方法,避免了解析查询字符串。 - 调整了MinioFileService中的deleteFile方法,以匹配FileOperateUtils接口的变化。 - 代码清理和优化,提高了可读性和可维护性。
This commit is contained in:
parent
a9d0130c35
commit
7fd4b6614a
@ -1,17 +1,18 @@
|
|||||||
package com.ruoyi.common.utils.file;
|
package com.ruoyi.common.utils.file;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.OutputStream;
|
||||||
|
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import com.ruoyi.common.config.RuoYiConfig;
|
import com.ruoyi.common.config.RuoYiConfig;
|
||||||
import com.ruoyi.common.constant.CacheConstants;
|
import com.ruoyi.common.constant.CacheConstants;
|
||||||
import com.ruoyi.common.utils.CacheUtils;
|
import com.ruoyi.common.utils.CacheUtils;
|
||||||
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import com.ruoyi.common.utils.sign.Md5Utils;
|
import com.ruoyi.common.utils.sign.Md5Utils;
|
||||||
import com.ruoyi.common.utils.spring.SpringUtils;
|
import com.ruoyi.common.utils.spring.SpringUtils;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.OutputStream;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 文件上传工具类
|
* 文件上传工具类
|
||||||
@ -69,9 +70,9 @@ public class FileOperateUtils {
|
|||||||
return pathForMd5;
|
return pathForMd5;
|
||||||
}
|
}
|
||||||
FileUtils.assertAllowed(file, allowedExtension);
|
FileUtils.assertAllowed(file, allowedExtension);
|
||||||
String pathFileName = fileService.upload(filePath, file);
|
fileService.upload(filePath, file);
|
||||||
FileOperateUtils.saveFileAndMd5(pathFileName, md5);
|
FileOperateUtils.saveFileAndMd5(filePath, md5);
|
||||||
return pathFileName;
|
return filePath;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3,7 +3,6 @@ package com.ruoyi.middleware.minio.service;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import com.ruoyi.common.utils.file.FileOperateUtils;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
@ -11,6 +10,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|||||||
|
|
||||||
import com.ruoyi.common.config.RuoYiConfig;
|
import com.ruoyi.common.config.RuoYiConfig;
|
||||||
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
|
import com.ruoyi.common.utils.file.FileOperateUtils;
|
||||||
import com.ruoyi.common.utils.file.FileService;
|
import com.ruoyi.common.utils.file.FileService;
|
||||||
import com.ruoyi.common.utils.file.FileUtils;
|
import com.ruoyi.common.utils.file.FileUtils;
|
||||||
import com.ruoyi.middleware.minio.config.MinioConfig;
|
import com.ruoyi.middleware.minio.config.MinioConfig;
|
||||||
@ -62,8 +62,7 @@ public class MinioFileService implements FileService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean deleteFile(String fileUrl) throws Exception {
|
public boolean deleteFile(String filePath) throws Exception {
|
||||||
String filePath = StringUtils.substringAfter(fileUrl, "?fileName=");
|
|
||||||
MinioUtil.removeFile(minioConfig.getPrimary(), filePath);
|
MinioUtil.removeFile(minioConfig.getPrimary(), filePath);
|
||||||
FileOperateUtils.deleteFileAndMd5ByFilePath(filePath);
|
FileOperateUtils.deleteFileAndMd5ByFilePath(filePath);
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
Reference in New Issue
Block a user