Browse Source

附件下载调整

zjc 1 year ago
parent
commit
295a4facee

+ 6 - 6
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java

@@ -84,12 +84,12 @@ public class CommonController
             String filePath = RuoYiConfig.getUploadPath();
             // 上传并返回新文件名称
             String fileName = FileUploadUtils.upload(filePath, file);
-            String url = serverConfig.getUrl() + fileName;
+            String url = serverConfig.getUrl() + Constants.RESOURCE_PREFIX + "/" + fileName;
             TUnifyFile tUnifyFile = new TUnifyFile();
             tUnifyFile.setUploadPath(url);
-            tUnifyFile.setUploadName(fileName);
+            tUnifyFile.setUploadName("/" + fileName);
             tUnifyFile.setNewUploadName(FileUtils.getName(fileName));
-            tUnifyFile.setUploadFormat(file.getOriginalFilename());
+            tUnifyFile.setUploadFormat(FileUploadUtils.getExtension(file));
             AjaxResult ajax = AjaxResult.success();
             ajax.put("file", tUnifyFile);
             return ajax;
@@ -115,12 +115,12 @@ public class CommonController
             {
                 // 上传并返回新文件名称
                 String fileName = FileUploadUtils.upload(filePath, file);
-                String url = serverConfig.getUrl() + fileName;
+                String url = serverConfig.getUrl() + Constants.RESOURCE_PREFIX + "/" + fileName;
                 TUnifyFile tUnifyFile = new TUnifyFile();
                 tUnifyFile.setUploadPath(url);
-                tUnifyFile.setUploadName(fileName);
+                tUnifyFile.setUploadName("/" + fileName);
                 tUnifyFile.setNewUploadName(FileUtils.getName(fileName));
-                tUnifyFile.setUploadFormat(file.getOriginalFilename());
+                tUnifyFile.setUploadFormat(FileUploadUtils.getExtension(file));
                 fileList.add(tUnifyFile);
             }
             AjaxResult ajax = AjaxResult.success();

+ 13 - 3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TUnifyFileController.java

@@ -1,5 +1,8 @@
 package com.ruoyi.web.controller.tool;
 
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
 import java.util.ArrayList;
 import java.util.List;
 import javax.servlet.http.HttpServletRequest;
@@ -166,16 +169,23 @@ public class TUnifyFileController extends BaseController
         {
             TUnifyFile tUnifyFile = tUnifyFileService.selectTUnifyFileById(id);
 
-            String fileName = tUnifyFile.getUploadName();
+            String fileName = tUnifyFile.getNewUploadName();
             if (!FileUtils.checkAllowDownload(tUnifyFile.getNewUploadName()))
             {
                 throw new Exception(StringUtils.format("文件名称({})非法,不允许下载。 ",fileName));
             }
-            String realFileName = System.currentTimeMillis() + fileName.substring(fileName.indexOf("_") + 1);
-            String filePath = RuoYiConfig.getDownloadPath() + fileName;
+            // todo 下载文件名
+            String realFileName = System.currentTimeMillis() + fileName.substring(0,fileName.indexOf("_")) + "." + tUnifyFile.getUploadFormat();
+            // todo 下载地址
+            String filePath = RuoYiConfig.getDownloadPath() + realFileName;
+            // todo 根据原文件逻辑拷贝到下载路径
+            String origFile = RuoYiConfig.getProfile() + tUnifyFile.getUploadName();
+            // todo 文件拷贝至下载地址
+            Files.copy(Paths.get(origFile),Paths.get(filePath), StandardCopyOption.REPLACE_EXISTING);
             response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
             FileUtils.setAttachmentResponseHeader(response, realFileName);
             FileUtils.writeBytes(filePath, response.getOutputStream());
+            // todo 删除拷贝文件
             FileUtils.deleteFile(filePath);
         }
         catch (Exception e)

+ 1 - 1
ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUploadUtils.java

@@ -144,7 +144,7 @@ public class FileUploadUtils
     {
         int dirLastIndex = RuoYiConfig.getProfile().length() + 1;
         String currentDir = StringUtils.substring(uploadDir, dirLastIndex);
-        return Constants.RESOURCE_PREFIX + "/" + currentDir + "/" + fileName;
+        return  currentDir + "/" + fileName;
     }
 
     /**

+ 0 - 1
ruoyi-system/src/main/resources/mapper/invest/TProjectMeetingMapper.xml

@@ -48,7 +48,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectTProjectMeetingVo"/>
         <where>
             a.del_flag = 0
-            <if test="participants != null  and participants != ''"> and ( a.participants like concat('%', #{participants}, '%') or a.promoter like concat('%', #{participants}, '%'))</if>
             <if test="projectPoolId != null  and projectPoolId != ''"> and a.project_pool_id = #{projectPoolId}</if>
             <if test="meetingTheme != null  and meetingTheme != ''"> and a.meeting_theme = #{meetingTheme}</if>
             <if test="meetingCode != null  and meetingCode != ''"> and a.meeting_code = #{meetingCode}</if>

+ 1 - 0
ruoyi-system/src/main/resources/mapper/tool/TUnifyFileMapper.xml

@@ -124,6 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="listFileId" parameterType="String" resultMap="TUnifyFileResult">
         <include refid="selectTUnifyFileVo"/>
         where file_id = #{fileId} and del_flag = 0
+        order by create_time
     </select>
 
 </mapper>