From 86d393c051be31d1a4f91cd6ecc3b630ecb9cbb2 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期二, 12 三月 2024 09:48:11 +0800
Subject: [PATCH] 最初版本
---
server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java | 34 ++++++++++++++++++++++++++++++----
1 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java b/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
index 4ddccfc..a98cbd2 100644
--- a/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
+++ b/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
@@ -21,6 +21,7 @@
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
+import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
@@ -885,10 +886,12 @@
sxssfWorkbook.write(out);
byte [] bookByteAry = out.toByteArray();
InputStream in = new ByteArrayInputStream(bookByteAry);
+ String tempExcel = saveIsToFile(in);
String tempPdf =System.getProperty("java.io.tmpdir")+File.separator+UUID.randomUUID().toString()+".pdf";
- ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+// ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+ ExcelToPdfTool.excelToPdf(tempExcel,tempPdf);//杞琍DF
File f = new File(tempPdf);
- if(f!=null && f.isFile()){
+ if(f!=null && f.isFile() && f.length()>0){
return tempPdf;
}
} catch (Exception e) {
@@ -1108,10 +1111,12 @@
sxssfWorkbook.write(out);
byte [] bookByteAry = out.toByteArray();
InputStream in = new ByteArrayInputStream(bookByteAry);
+ String tempExcel = saveIsToFile(in);
String tempPdf =System.getProperty("java.io.tmpdir")+File.separator+UUID.randomUUID().toString()+".pdf";
- ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+// ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+ ExcelToPdfTool.excelToPdf(tempExcel,tempPdf);//杞琍DF
File f = new File(tempPdf);
- if(f!=null && f.isFile()){
+ if(f!=null && f.isFile() && f.length()>0){
return tempPdf;
}
} catch (Exception e) {
@@ -1120,6 +1125,27 @@
return null;
}
+ private String saveIsToFile(InputStream inputStream) {
+ try {
+ String fileName =System.getProperty("java.io.tmpdir")+File.separator+UUID.randomUUID().toString()+".xlsx";
+ File file = new File(fileName); // 鎸囧畾淇濆瓨鍒版湰鍦扮殑鏂囦欢鍚嶅強璺緞
+ file.createNewFile();
+ OutputStream outputStream = new FileOutputStream(file);
+ byte[] buffer = new byte[1024];
+ int bytesRead;
+ while ((bytesRead = inputStream.read(buffer)) != -1) {
+ outputStream.write(buffer, 0, bytesRead);
+ }
+
+ outputStream.close();
+ inputStream.close();
+ return fileName;
+ }catch (Exception e){
+
+ }
+ return null;
+ }
+
@Data
@AllArgsConstructor
--
Gitblit v1.9.3