Browse Source

Merge remote-tracking branch 'origin/master' into master

yangyj 6 months ago
parent
commit
40d0b10405

+ 14 - 6
blade-ops/blade-resource/src/main/java/org/springblade/resource/endpoint/OssEndpoint.java

@@ -19,8 +19,10 @@ package org.springblade.resource.endpoint;
 import io.swagger.annotations.Api;
 import lombok.AllArgsConstructor;
 import lombok.SneakyThrows;
+import org.apache.commons.lang.StringUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.springblade.common.utils.SnowFlakeUtil;
+import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.oss.model.BladeFile;
 import org.springblade.core.oss.model.OssFile;
 import org.springblade.core.secure.annotation.PreAuth;
@@ -43,6 +45,7 @@ import java.awt.*;
 import java.awt.image.BufferedImage;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
+import java.security.SecureRandom;
 import java.text.DecimalFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
@@ -200,11 +203,7 @@ public class OssEndpoint {
      */
     @SneakyThrows
     @PostMapping("/upload-file")
-    public synchronized R<NewBladeFile> uploadFile(@RequestParam MultipartFile file) {
-        //上传原图
-        ByteArrayInputStream inputStream = new ByteArrayInputStream(file.getBytes());
-        BladeFile bladeFile = ossBuilder.template().putFile(file.getOriginalFilename(), inputStream);
-
+    public  R<NewBladeFile> uploadFile(@RequestParam MultipartFile file) {
         //处理PDF文件
         NewBladeFile newBladeFile = new NewBladeFile();
         if (Objects.requireNonNull(file.getOriginalFilename()).contains("xlsx")) {
@@ -219,7 +218,16 @@ public class OssEndpoint {
         } else if (file.getOriginalFilename().contains("png") || file.getOriginalFilename().contains("jpg")) {
             newBladeFile = this.commonFileClient.pngOrJpgToPdf(file);
 
-        } else if (file.getOriginalFilename().contains("pdf") || file.getOriginalFilename().contains("PDF")) {
+        }else  if (file.getOriginalFilename().contains("pdf") || file.getOriginalFilename().contains("PDF")) {
+            newBladeFile.setPdfUrl("7");
+        }
+        if (newBladeFile == null || StringUtils.isBlank(newBladeFile.getPdfUrl())){
+            throw  new ServiceException("图片转换PDF失败");
+        }
+        //上传原图
+        ByteArrayInputStream inputStream = new ByteArrayInputStream(file.getBytes());
+        BladeFile bladeFile = ossBuilder.template().putFile(file.getOriginalFilename(), inputStream);
+        if (file.getOriginalFilename().contains("pdf") || file.getOriginalFilename().contains("PDF")) {
             //获取PDF文件
             PDDocument document = PDDocument.load(file.getInputStream());
             //获取文件页数