Browse Source

调整附件上传结构代码

zjc 1 year ago
parent
commit
19dc4d71c5

+ 45 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TUnifyFileController.java

@@ -1,7 +1,13 @@
 package com.ruoyi.web.controller.tool;
 
+import java.util.ArrayList;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.common.utils.file.FileUploadUtils;
+import com.ruoyi.common.utils.file.FileUtils;
+import com.ruoyi.framework.config.ServerConfig;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -20,6 +26,7 @@ import com.ruoyi.tool.domain.TUnifyFile;
 import com.ruoyi.tool.service.ITUnifyFileService;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 附件Controller
@@ -34,6 +41,9 @@ public class TUnifyFileController extends BaseController
     @Autowired
     private ITUnifyFileService tUnifyFileService;
 
+    @Autowired
+    private ServerConfig serverConfig;
+
     /**
      * 查询附件列表
      */
@@ -101,4 +111,39 @@ public class TUnifyFileController extends BaseController
     {
         return toAjax(tUnifyFileService.deleteTUnifyFileByIds(ids));
     }
+
+    /**
+     * 上传附件
+     */
+    @PreAuthorize("@ss.hasPermi('system:file:add')")
+    @Log(title = "附件", businessType = BusinessType.INSERT)
+    @PostMapping("/uploads")
+    public AjaxResult uploadFiles(List<MultipartFile> files)
+    {
+        try
+        {
+            // 上传文件路径
+            String filePath = RuoYiConfig.getUploadPath();
+            for (MultipartFile file : files)
+            {
+                // 上传并返回新文件名称
+                String fileName = FileUploadUtils.upload(filePath, file);
+                String url = serverConfig.getUrl() + fileName;
+                TUnifyFile tUnifyFile = new TUnifyFile();
+                tUnifyFile.setUploadPath(url);
+                tUnifyFile.setUploadName(fileName);
+                tUnifyFile.setNewUploadName(FileUtils.getName(fileName));
+                tUnifyFile.setUploadFormat(file.getOriginalFilename());
+                tUnifyFileService.insertTUnifyFile(tUnifyFile);
+            }
+            return  AjaxResult.success();
+        }
+        catch (Exception e)
+        {
+            return AjaxResult.error(e.getMessage());
+        }
+    }
+
+
+
 }

+ 4 - 0
ruoyi-system/src/main/java/com/ruoyi/tool/service/ITUnifyFileService.java

@@ -1,7 +1,10 @@
 package com.ruoyi.tool.service;
 
 import java.util.List;
+
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.tool.domain.TUnifyFile;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 附件Service接口
@@ -58,4 +61,5 @@ public interface ITUnifyFileService
      * @return 结果
      */
     public int deleteTUnifyFileById(String id);
+
 }

+ 9 - 0
ruoyi-system/src/main/java/com/ruoyi/tool/service/impl/TUnifyFileServiceImpl.java

@@ -1,13 +1,21 @@
 package com.ruoyi.tool.service.impl;
 
+import java.util.ArrayList;
 import java.util.List;
+
+import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.file.FileUploadUtils;
+import com.ruoyi.common.utils.file.FileUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.tool.mapper.TUnifyFileMapper;
 import com.ruoyi.tool.domain.TUnifyFile;
 import com.ruoyi.tool.service.ITUnifyFileService;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 附件Service业务层处理
@@ -95,4 +103,5 @@ public class TUnifyFileServiceImpl implements ITUnifyFileService
     {
         return tUnifyFileMapper.deleteTUnifyFileById(id);
     }
+
 }