From e6e520abd96702db6b29459a66440801f58bc89d Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 30 一月 2026 14:11:39 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/zbom_dianjiang

---
 server/services/src/main/java/com/doumee/core/annotation/excel/ExcelPictureUtil.java |   31 ++++++++++++++++++++++---------
 1 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/core/annotation/excel/ExcelPictureUtil.java b/server/services/src/main/java/com/doumee/core/annotation/excel/ExcelPictureUtil.java
index 08b073c..4850f08 100644
--- a/server/services/src/main/java/com/doumee/core/annotation/excel/ExcelPictureUtil.java
+++ b/server/services/src/main/java/com/doumee/core/annotation/excel/ExcelPictureUtil.java
@@ -32,14 +32,28 @@
 public class ExcelPictureUtil {
 
     public static Map<String, XSSFPictureData> getExcelPictures(InputStream is) {
-        byte[] fileData =  getFileStream(is);
-        Map<String, XSSFPictureData> pictures = getPictures(fileData);
-        pictures.forEach((id, xssfPictureData) -> {
-            System.out.println("id锛�" + id);
-            String fileName = xssfPictureData.getPackagePart().getPartName().getName();
-            System.out.println("fileName锛�" + fileName);
-        });
-        return pictures;
+        try {
+            byte[] fileData = toByteArray(is);
+            Map<String, XSSFPictureData> pictures = getPictures(fileData);
+            pictures.forEach((id, xssfPictureData) -> {
+                System.out.println("id锛�" + id);
+                String fileName = xssfPictureData.getPackagePart().getPartName().getName();
+                System.out.println("fileName锛�" + fileName);
+            });
+            return pictures;
+        }catch (Exception e){
+            return  null;
+        }
+
+    }
+    public static byte[] toByteArray(InputStream input) throws IOException {
+        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+        int bytesRead;
+        byte[] buffer = new byte[1024]; // 鍙互鏍规嵁闇�瑕佽皟鏁寸紦鍐插尯澶у皬
+        while ((bytesRead = input.read(buffer)) != -1) {
+            byteArrayOutputStream.write(buffer, 0, bytesRead);
+        }
+        return byteArrayOutputStream.toByteArray();
     }
 
     /**
@@ -289,7 +303,6 @@
             // 鍒涘缓 ByteArrayOutputStream 鏉ユ殏瀛樻祦鏁版嵁
         try {
             ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            // 灏� inputStream 璇诲彇鍒� byteArrayOutputStream 涓�
             byte[] buffer = new byte[1024];
             int length;
             while ((length = inputStream.read(buffer)) != -1) {

--
Gitblit v1.9.3