浏览代码

预览文档从url中获取bucket和name,通过“/”划分

陈长荣 2 月之前
父节点
当前提交
4e626241ef

+ 12 - 3
src/main/java/com/github/jfcloud/excel/editor/docdeal/bean/PreviewVo.java

@@ -26,10 +26,19 @@ public class PreviewVo {
      */
     private boolean edit;
 
+    public PreviewVo() {
+    }
+
+    public PreviewVo(String url) {
+        setUrl(url);
+    }
+
     public void setUrl(String url) {
         this.url = url;
-        this.name = url.substring(url.lastIndexOf('/') + 1);
-        bucket = url.replace("/admin/sys-file/", "");
-        bucket = bucket.substring(0, bucket.indexOf('/'));
+        String[] split = url.split("/");
+        this.name = split[split.length - 1];
+        if (split.length > 2) {
+            bucket = split[split.length - 2];
+        }
     }
 }

+ 4 - 3
src/main/java/com/github/jfcloud/excel/editor/docdeal/controller/FileController.java

@@ -8,6 +8,7 @@ import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
 import com.amazonaws.services.s3.model.S3Object;
 import com.github.jfcloud.excel.editor.docdeal.bean.FileUpload;
+import com.github.jfcloud.excel.editor.docdeal.bean.PreviewVo;
 import com.github.jfcloud.excel.editor.docdeal.oss.OssProperties;
 import com.github.jfcloud.excel.editor.docdeal.oss.service.OssTemplate;
 import com.github.jfcloud.excel.editor.docdeal.service.FileUploadService;
@@ -74,9 +75,9 @@ public class FileController {
                          @RequestParam(required = false) String url,
                          HttpServletResponse response) {
         if (StrUtil.isNotBlank(url)) {
-            name = url.substring(url.lastIndexOf('/') + 1);
-            bucket = url.replace("/admin/sys-file/", "");
-            bucket = bucket.substring(0, bucket.indexOf('/'));
+            PreviewVo vo = new PreviewVo(url);
+            name = vo.getName();
+            bucket = vo.getBucket();
         }
         if (StrUtil.isBlank(bucket)) {
             bucket = ossProperties.getBucketName();