From 23ca5b2b418630b54b58b24621416a7b40c1d3b1 Mon Sep 17 00:00:00 2001 From: maven <2163098428@qq.com> Date: 星期四, 10 七月 2025 17:25:14 +0800 Subject: [PATCH] yys 修改导入导出bug --- src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java b/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java index f228680..442b090 100644 --- a/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java +++ b/src/main/java/com/ruoyi/other/service/impl/TempFileServiceImpl.java @@ -6,6 +6,7 @@ import com.ruoyi.other.pojo.TempFile; import com.ruoyi.other.service.TempFileService; import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.util.URLEncoder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Scheduled; @@ -13,6 +14,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @@ -32,10 +34,16 @@ // 涓婁紶鍒颁复鏃剁洰褰� @Override - public TempFile uploadFile(MultipartFile file) throws IOException { + public TempFile uploadFile(MultipartFile file,Integer type) throws IOException { // 1. 鐢熸垚涓存椂鏂囦欢ID鍜岃矾寰� String tempId = UUID.randomUUID().toString(); - Path tempFilePath = Paths.get(tempDir, tempId + "_" + file.getOriginalFilename()); + String originalFilename = file.getOriginalFilename(); + if(originalFilename == null) throw new IOException("鏂囦欢鍚嶄笉鑳戒负绌�"); + URLEncoder urlEncoder = new URLEncoder(); + String encodedFilename = urlEncoder.encode(originalFilename, StandardCharsets.UTF_8); + Path tempFilePath = Paths.get(tempDir, tempId + "_" + encodedFilename); + +// Path tempFilePath = Paths.get(tempDir, tempId + "_" + file.getOriginalFilename()); // 2. 纭繚鐩綍瀛樺湪 Path parentDir = tempFilePath.getParent(); @@ -52,6 +60,7 @@ tempFileRecord.setOriginalName(file.getOriginalFilename()); tempFileRecord.setTempPath(tempFilePath.toString()); tempFileRecord.setExpireTime(LocalDateTime.now().plusHours(2)); // 2灏忔椂鍚庤繃鏈� + tempFileRecord.setType(type); tempFileMapper.insert(tempFileRecord); return tempFileRecord; -- Gitblit v1.9.3