Ver código fonte

feat : oss上传类型新增

bilingfeng 2 anos atrás
pai
commit
bc26867d5a

+ 46 - 0
game-module/game-common/src/main/java/com/zanxiang/common/enums/FileTypeEnum.java

@@ -0,0 +1,46 @@
+package com.zanxiang.common.enums;
+
+import lombok.Getter;
+
+/**
+ * @author : lingfeng
+ * @time : 2021-08-11
+ * @description : oss文件上传类型
+ */
+@Getter
+public enum FileTypeEnum {
+
+    /**
+     * 视频类型
+     */
+    FILE_TYPE_VIDEO("video", "video/"),
+
+    /**
+     * 图片类型
+     */
+    FILE_TYPE_IMAGE("image", "image/");
+
+    /**
+     * 文件类型
+     */
+    private String fileType;
+
+    /**
+     * 文件存储文件名
+     */
+    private String filePath;
+
+    FileTypeEnum(String fileType, String filePath) {
+        this.fileType = fileType;
+        this.filePath = filePath;
+    }
+
+    public static FileTypeEnum getByFileType(String fileType) {
+        for (FileTypeEnum fileTypeEnum : FileTypeEnum.values()) {
+            if (fileTypeEnum.getFileType().equals(fileType)) {
+                return fileTypeEnum;
+            }
+        }
+        return null;
+    }
+}

+ 9 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/OssController.java

@@ -1,6 +1,8 @@
 package com.zanxiang.manage.controller;
 
 import com.zanxiang.common.domain.ResultVo;
+import com.zanxiang.common.enums.FileTypeEnum;
+import com.zanxiang.common.exception.BaseException;
 import com.zanxiang.module.oss.service.IOssService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -10,6 +12,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.Map;
@@ -31,8 +34,12 @@ public class OssController {
     @ApiOperation(value = "文件上传oss")
     @GetMapping(value = "/form/upload/")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Map.class)})
-    public ResultVo<Map<String, String>> formUpload(String filePrefix, String mime) {
-        return new ResultVo<>(ossService.formUpload(filePrefix, mime));
+    public ResultVo<Map<String, String>> formUpload(@RequestParam String fileType, @RequestParam String type) {
+        FileTypeEnum fileTypeEnum = FileTypeEnum.getByFileType(fileType);
+        if (fileTypeEnum == null) {
+            throw new BaseException("错误的文件类型");
+        }
+        return new ResultVo<>(ossService.formUpload(fileTypeEnum.getFilePath(), type));
     }
 
 }