From ba0a66e80df8c2ce9ebae2880f0f8f89501ffc98 Mon Sep 17 00:00:00 2001 From: Mlxa0324 Date: Wed, 14 Dec 2022 14:06:30 +0800 Subject: [PATCH] 1 --- .../main/java/util/convertPDF/PDFConverUtil.java | 13 ++++++++++++- .../main/java/com/ibeetl/jlw/entity/FileEntity.java | 7 +++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/admin-framework/admin-convert-pdf/src/main/java/util/convertPDF/PDFConverUtil.java b/admin-framework/admin-convert-pdf/src/main/java/util/convertPDF/PDFConverUtil.java index a7edc056..32b84be9 100644 --- a/admin-framework/admin-convert-pdf/src/main/java/util/convertPDF/PDFConverUtil.java +++ b/admin-framework/admin-convert-pdf/src/main/java/util/convertPDF/PDFConverUtil.java @@ -1,5 +1,6 @@ package util.convertPDF; +import cn.hutool.core.lang.Assert; import com.aspose.words.License; import com.aspose.words.SaveFormat; import com.itextpdf.text.Document; @@ -41,7 +42,7 @@ public final class PDFConverUtil { types.put(EXCEL, Arrays.asList("XLS", "XLSX")); types.put(PPT, Arrays.asList("PPT")); types.put(PPTX, Arrays.asList("PPTX")); - types.put(IMG, Arrays.asList("JPEG", "JPG", "PNG")); +// types.put(IMG, Arrays.asList("JPEG", "JPG", "PNG")); types.put(OTHER, Arrays.asList("OOXML", "RTF HTML", "OpenDocument", "EPUB", "XPS", "SWF")); } @@ -477,6 +478,15 @@ public final class PDFConverUtil { return false; } + /** + * 判断是否可以生成PDF文件 + * @param fileName + * @return + */ + public static boolean isCreatePdf(String fileName) { + return types.values().stream().anyMatch(item -> item.contains(getFileSuffix(fileName).toUpperCase())); + } + /** * 功能描述:
* 取文件名后缀 @@ -487,6 +497,7 @@ public final class PDFConverUtil { * @Date: 2022/12/13 21:51 */ private static String getFileSuffix(String fileName) { + Assert.isTrue(fileName.contains("."), "非法的文件名,文件名必须要有文件类型!"); String[] split = fileName.split("\\."); return split[split.length - 1]; } diff --git a/web/src/main/java/com/ibeetl/jlw/entity/FileEntity.java b/web/src/main/java/com/ibeetl/jlw/entity/FileEntity.java index 76eaba2f..fe64b3bc 100644 --- a/web/src/main/java/com/ibeetl/jlw/entity/FileEntity.java +++ b/web/src/main/java/com/ibeetl/jlw/entity/FileEntity.java @@ -12,6 +12,8 @@ import java.io.FileOutputStream; import java.io.IOException; import java.util.Date; +import static util.convertPDF.PDFConverUtil.isCreatePdf; + @Slf4j @SuppressWarnings("ALL") public class FileEntity extends BaseEntity { @@ -312,7 +314,7 @@ public class FileEntity extends BaseEntity { */ public static void tryConvertPDF(FileEntity fileEntity) { try { - if (null != fileEntity) { + if (null != fileEntity && isCreatePdf(fileEntity.getAbsoluteUrl())) { // 相对路径 String absoluteUrl = fileEntity.getAbsoluteUrl(); BufferedInputStream inputStream = FileUtil.getInputStream(absoluteUrl); @@ -325,9 +327,6 @@ public class FileEntity extends BaseEntity { // 转换成功,则返回给前端 fileEntity.set("cvPDFAbsoluteUrl", pdfName); } - else { - FileUtil.del(pdfName); - } } }catch (IOException e) { log.error(e.getMessage());