Zhaops пре 6 година
родитељ
комит
0c8da78438

+ 18 - 0
icssman-service/src/main/java/com/diagbot/dto/FileDTO.java

@@ -0,0 +1,18 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/12/18 17:08
+ */
+@Getter
+@Setter
+public class FileDTO {
+    private String state;
+    private String original;
+    private String title;
+    private String url;
+}

+ 2 - 1
icssman-service/src/main/java/com/diagbot/service/UploadService.java

@@ -1,5 +1,6 @@
 package com.diagbot.service;
 
+import com.diagbot.dto.FileDTO;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.util.Map;
@@ -10,5 +11,5 @@ import java.util.Map;
  * @time: 2018/11/13 13:50
  */
 public interface UploadService {
-    Map<String, Object> singleFileUpload(MultipartFile file);
+    FileDTO singleFileUpload(MultipartFile file);
 }

+ 13 - 26
icssman-service/src/main/java/com/diagbot/service/impl/UploadServiceImpl.java

@@ -2,6 +2,7 @@ package com.diagbot.service.impl;
 
 import com.diagbot.client.fastdfs.FastDFSClient;
 import com.diagbot.client.fastdfs.FastDFSFile;
+import com.diagbot.dto.FileDTO;
 import com.diagbot.exception.CommonException;
 import com.diagbot.exception.ServiceErrorCode;
 import com.diagbot.service.UploadService;
@@ -11,8 +12,6 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * @Description: 文件上传服务接口实现
@@ -23,8 +22,9 @@ import java.util.Map;
 @Service
 public class UploadServiceImpl implements UploadService {
     @Override
-    public Map<String, Object> singleFileUpload(MultipartFile file) {
-        String path = "";
+    public FileDTO singleFileUpload(MultipartFile file) {
+        FileDTO fileDTO = new FileDTO();
+
         if (file.isEmpty()) {
             throw new CommonException(ServiceErrorCode.FILE_UPLOAD_ERROE, "文件不能为空");
         }
@@ -33,39 +33,22 @@ public class UploadServiceImpl implements UploadService {
             throw new CommonException(ServiceErrorCode.FILE_MAX_SIZE_LIMIT, "文件上传失败,超出大小限制1MB");
         }
         try {
-            // Get the file and save it somewhere
-            path = saveFile(file);
+            fileDTO = saveFile(file);
         } catch (Exception e) {
             log.error("文件上传失败", e);
             throw new CommonException(ServiceErrorCode.FILE_UPLOAD_ERROE, "文件上传失败,请重新上传");
         }
-        return resultMap("SUCCESS", path, file.getOriginalFilename(), file.getOriginalFilename());
+        return fileDTO;
     }
 
-    /**
-     * 上传文件返回格式
-     *
-     * @param state
-     * @param url
-     * @param title
-     * @param original
-     * @return
-     */
-    private Map<String, Object> resultMap(String state, String url, String title, String original) {
-        Map<String, Object> result = new HashMap<>();
-        result.put("state", state);
-        result.put("original", original);
-        result.put("title", title);
-        result.put("url", url);
-        return result;
-    }
 
     /**
      * @param multipartFile
      * @return
      * @throws IOException
      */
-    public String saveFile(MultipartFile multipartFile) throws IOException {
+    public FileDTO saveFile(MultipartFile multipartFile) throws IOException {
+        FileDTO fileDTO = new FileDTO();
         String[] fileAbsolutePath = {};
         String fileName = multipartFile.getOriginalFilename();
         String ext = fileName.substring(fileName.lastIndexOf(".") + 1);
@@ -89,7 +72,11 @@ public class UploadServiceImpl implements UploadService {
             throw new CommonException(ServiceErrorCode.FILE_UPLOAD_ERROE, "文件上传失败,请重新上传");
         }
         String path = "/" + fileAbsolutePath[0] + "/" + fileAbsolutePath[1];
-        return path;
+        fileDTO.setState("SUCCESS");
+        fileDTO.setUrl(path);
+        fileDTO.setOriginal(multipartFile.getOriginalFilename());
+        fileDTO.setTitle(multipartFile.getOriginalFilename());
+        return fileDTO;
 
     }
 

+ 2 - 1
icssman-service/src/main/java/com/diagbot/web/UploadController.java

@@ -1,5 +1,6 @@
 package com.diagbot.web;
 
+import com.diagbot.dto.FileDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.UploadFacade;
 import io.swagger.annotations.Api;
@@ -22,7 +23,7 @@ public class UploadController {
     private UploadFacade uploadFacade;
 
     @PostMapping("/uploadImage")
-    public RespDTO<Map<String, Object>> singleFileUpload(@RequestParam("upfile") MultipartFile file) {
+    public RespDTO<FileDTO> singleFileUpload(@RequestParam("upfile") MultipartFile file) {
         return RespDTO.onSuc(uploadFacade.singleFileUpload(file));
     }