Browse Source

上传附件格式匹配

qianxb 1 year ago
parent
commit
29e0852820

+ 3 - 1
blade-ops/blade-resource/src/main/java/org/springblade/resource/feign/CommonFileClientImpl.java

@@ -12,6 +12,7 @@ import org.apache.poi.ss.usermodel.WorkbookFactory;
 import org.springblade.common.utils.CommonUtil;
 import org.springblade.core.oss.model.BladeFile;
 import org.springblade.core.tenant.annotation.NonDS;
+import org.springblade.core.tool.utils.FileUtil;
 import org.springblade.core.tool.utils.IoUtil;
 import org.springblade.core.tool.utils.ResourceUtil;
 import org.springblade.resource.builder.oss.OssBuilder;
@@ -56,8 +57,9 @@ public class CommonFileClientImpl implements CommonFileClient {
             document.close();
 
             //上传文件
+            String fileExtension =  "."+FileUtil.getFileExtension(file.getOriginalFilename());
             pdfInput = new ByteArrayInputStream(bos.toByteArray());
-            String originalFilename = Objects.requireNonNull(file.getOriginalFilename()).replaceAll(".png", ".pdf").replaceAll(".jpg", ".pdf");
+            String originalFilename = Objects.requireNonNull(file.getOriginalFilename()).replaceAll(fileExtension, ".pdf");
 
             BladeFile bladeFile = this.ossBuilder.template().putFile(originalFilename, pdfInput);
             pdfFileUrl = bladeFile.getLink();

+ 3 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -1911,7 +1911,7 @@ public class ExcelTabController extends BladeController {
         R<BladeFile> bladeFile = iossClient.addFileInfo(file);
         BladeFile bladeFile1 = bladeFile.getData();
         TableFile tableFile = new TableFile();
-        String fileExtension = FileUtil.getFileExtension(bladeFile1.getName());
+        String fileExtension = FileUtil.getFileExtension(bladeFile1.getName()).toLowerCase();
         tableFile.setTabId(pkeyId + "");
         tableFile.setName(file.getOriginalFilename());
         tableFile.setType(2);
@@ -1930,7 +1930,8 @@ public class ExcelTabController extends BladeController {
         } else if (fileExtension.contains("docx")) {
             newBladeFile = this.commonFileClient.wordToPdf(file);
             tableFile.setDomainPdfUrl(newBladeFile.getPdfUrl());
-        } else if (fileExtension.contains("png") || file.getOriginalFilename().contains("jpg")) {
+        } else if (fileExtension.contains("png") || fileExtension.contains("jpg") || fileExtension.contains("webp") || fileExtension.contains("apng") ||
+                fileExtension.contains("bmp") || fileExtension.contains("jepg") || fileExtension.contains("tif") || fileExtension.contains("gif")) {
             newBladeFile = this.commonFileClient.pngOrJpgToPdf(file);
             tableFile.setDomainPdfUrl(newBladeFile.getPdfUrl());
         } else if (fileExtension.contains("pdf")) {