From e2977d55d9338387a13478713a1f90fa3de3ae11 Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期五, 11 八月 2023 11:16:39 +0800
Subject: [PATCH] 图片集合非空校验

---
 src/main/java/com/whyc/service/ProductService.java |   50 ++++++++++++++++++++++++++++----------------------
 1 files changed, 28 insertions(+), 22 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProductService.java b/src/main/java/com/whyc/service/ProductService.java
index d2076b0..6b813f1 100644
--- a/src/main/java/com/whyc/service/ProductService.java
+++ b/src/main/java/com/whyc/service/ProductService.java
@@ -182,32 +182,38 @@
                 //瀛樺偍鍥剧墖淇℃伅鍙婃墍鍦ㄥ垎椤�
                 Map<Integer,PictureData> pictureDataMap = new HashMap<>();
                 if(excelType == 1){ //.xls
-                    List<HSSFShape> children = ((HSSFSheet) sheet).getDrawingPatriarch().getChildren();
-                    for (HSSFShape child : children) {
-                        HSSFPicture picture = (HSSFPicture)child;
-                        HSSFPictureData pictureData = picture.getPictureData();
-                        HSSFClientAnchor anchor = (HSSFClientAnchor) child.getAnchor();
-                        //琛�,涓嶈兘璺ㄨ;
-                        int row1 = anchor.getRow1();
-                        int row2 = anchor.getRow2();
-                        if(row1 == row2){
-                            //涓嶈法琛�,鏈夋晥
-                            pictureDataMap.put(row1,pictureData);
+                    HSSFPatriarch drawingPatriarch = ((HSSFSheet) sheet).getDrawingPatriarch();
+                    if(drawingPatriarch!=null) {
+                        List<HSSFShape> children = drawingPatriarch.getChildren();
+                        for (HSSFShape child : children) {
+                            HSSFPicture picture = (HSSFPicture) child;
+                            HSSFPictureData pictureData = picture.getPictureData();
+                            HSSFClientAnchor anchor = (HSSFClientAnchor) child.getAnchor();
+                            //琛�,涓嶈兘璺ㄨ;
+                            int row1 = anchor.getRow1();
+                            int row2 = anchor.getRow2();
+                            if (row1 == row2) {
+                                //涓嶈法琛�,鏈夋晥
+                                pictureDataMap.put(row1, pictureData);
+                            }
                         }
                     }
                 }
                 else if(excelType == 2){ //.xlsx
-                    List<XSSFShape> children = ((XSSFSheet) sheet).getDrawingPatriarch().getShapes();
-                    for (XSSFShape child : children) {
-                        XSSFPicture picture = (XSSFPicture)child;
-                        XSSFPictureData pictureData = picture.getPictureData();
-                        XSSFClientAnchor anchor = (XSSFClientAnchor) child.getAnchor();
-                        //琛�,涓嶈兘璺ㄨ;
-                        int row1 = anchor.getRow1();
-                        int row2 = anchor.getRow2();
-                        if(row1 == row2){
-                            //涓嶈法琛�,鏈夋晥
-                            pictureDataMap.put(row1,pictureData);
+                    XSSFDrawing drawingPatriarch = ((XSSFSheet) sheet).getDrawingPatriarch();
+                    if(drawingPatriarch!=null) {
+                        List<XSSFShape> children = drawingPatriarch.getShapes();
+                        for (XSSFShape child : children) {
+                            XSSFPicture picture = (XSSFPicture) child;
+                            XSSFPictureData pictureData = picture.getPictureData();
+                            XSSFClientAnchor anchor = (XSSFClientAnchor) child.getAnchor();
+                            //琛�,涓嶈兘璺ㄨ;
+                            int row1 = anchor.getRow1();
+                            int row2 = anchor.getRow2();
+                            if (row1 == row2) {
+                                //涓嶈法琛�,鏈夋晥
+                                pictureDataMap.put(row1, pictureData);
+                            }
                         }
                     }
                 }

--
Gitblit v1.9.1