From 998b5e97944defd03ea0a2f7a4ddccdffccbfdca Mon Sep 17 00:00:00 2001 From: jueyue Date: Sun, 23 Jun 2019 12:05:37 +0800 Subject: [PATCH] =?UTF-8?q?4.1=E7=89=88=E6=9C=AC=E6=9C=80=E7=BB=88?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../afterturn/easypoi/cache/manager/POICacheManager.java | 8 ++++---- .../easypoi/excel/export/base/BaseExportService.java | 3 +++ .../afterturn/easypoi/excel/html/ExcelToHtmlService.java | 2 +- .../afterturn/easypoi/excel/imports/CellValueService.java | 7 +------ .../afterturn/easypoi/excel/imports/sax/SheetHandler.java | 2 +- 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/easypoi-base/src/main/java/cn/afterturn/easypoi/cache/manager/POICacheManager.java b/easypoi-base/src/main/java/cn/afterturn/easypoi/cache/manager/POICacheManager.java index 50efe78..958e406 100644 --- a/easypoi-base/src/main/java/cn/afterturn/easypoi/cache/manager/POICacheManager.java +++ b/easypoi-base/src/main/java/cn/afterturn/easypoi/cache/manager/POICacheManager.java @@ -37,14 +37,14 @@ public final class POICacheManager { private static IFileLoader fileLoader = new FileLoaderImpl(); - private static ThreadLocal LOCAL_FILELOADER = new ThreadLocal(); + private static ThreadLocal LOCAL_FILE_LOADER = new ThreadLocal(); public static InputStream getFile(String id) { try { byte[] result; //复杂数据,防止操作原数据 - if (LOCAL_FILELOADER.get() != null) { - result = LOCAL_FILELOADER.get().getFile(id); + if (LOCAL_FILE_LOADER.get() != null) { + result = LOCAL_FILE_LOADER.get().getFile(id); } result = fileLoader.getFile(id); result = Arrays.copyOf(result, result.length); @@ -65,7 +65,7 @@ public final class POICacheManager { */ public static void setFileLoaderOnce(IFileLoader fileLoader) { if (fileLoader != null) { - LOCAL_FILELOADER.set(fileLoader); + LOCAL_FILE_LOADER.set(fileLoader); } } diff --git a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/export/base/BaseExportService.java b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/export/base/BaseExportService.java index ea94277..1e28825 100644 --- a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/export/base/BaseExportService.java +++ b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/export/base/BaseExportService.java @@ -121,6 +121,9 @@ public abstract class BaseExportService extends ExportCommonService { margeCellNum += entity.getList().size(); } else if (entity.isNeedMerge() && maxHeight > 1) { for (int i = index + 1; i < index + maxHeight; i++) { + if(sheet.getRow(i) == null ) { + sheet.createRow(i); + } sheet.getRow(i).createCell(margeCellNum); sheet.getRow(i).getCell(margeCellNum).setCellStyle(getStyles(false, entity)); } diff --git a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/html/ExcelToHtmlService.java b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/html/ExcelToHtmlService.java index 6f3c447..be6c3d1 100644 --- a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/html/ExcelToHtmlService.java +++ b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/html/ExcelToHtmlService.java @@ -162,7 +162,7 @@ public class ExcelToHtmlService { firstColumn = (lastRow > 1 ? Integer.MAX_VALUE : 0); endColumn = 0; for (int i = 0; i < lastRow; i++) { - Row row = sheet.getRow(lastRow); + Row row = sheet.getRow(i); short firstCell = row.getFirstCellNum(); if (firstCell >= 0) { firstColumn = Math.min(firstColumn, firstCell); diff --git a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java index dc3617b..3fda51a 100644 --- a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java +++ b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java @@ -290,14 +290,9 @@ public class CellValueService { if (result == null || StringUtils.isBlank(result.toString())) { return null; } - if ("class java.util.Date".equals(classFullName) && result instanceof Date) { - return result; - } else if ("class java.util.Date".equals(classFullName) && result instanceof String) { + if ("class java.util.Date".equals(classFullName) && result instanceof String) { return DateUtils.parseDate(result.toString(), entity.getFormat()); } - if ("class java.sql.Date".equals(classFullName) && result instanceof java.sql.Date) { - return result; - } if ("class java.lang.Boolean".equals(classFullName) || "boolean".equals(classFullName)) { return Boolean.valueOf(String.valueOf(result)); } diff --git a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SheetHandler.java b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SheetHandler.java index 12d72b0..57e4544 100644 --- a/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SheetHandler.java +++ b/easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SheetHandler.java @@ -105,7 +105,7 @@ public class SheetHandler extends DefaultHandler { return; } } - } catch (NumberFormatException e) { + } catch (Exception e) { } // 没别的了就是数字了