From 77bc7b38f034f9add55c81542933e2cb78952ebf Mon Sep 17 00:00:00 2001 From: jueyue Date: Mon, 15 Dec 2014 22:48:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E5=85=83=E6=A0=BC=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E5=90=8E,=E6=A0=B7=E5=BC=8F=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../poi/excel/export/base/ExcelExportBase.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java index 2fbc90a..af7b08e 100644 --- a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java +++ b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java @@ -115,6 +115,11 @@ public abstract class ExcelExportBase extends ExportBase { if (entity.getList() != null) { cellNum += entity.getList().size(); } else if (entity.isNeedMerge()) { + for (int i = index + 1; i < index + maxHeight; i++) { + sheet.getRow(i).createCell(cellNum); + sheet.getRow(i).getCell(cellNum) + .setCellStyle(getStyles(styles, false, entity.isWrap())); + } sheet.addMergedRegion(new CellRangeAddress(index, index + maxHeight - 1, cellNum, cellNum)); cellNum++; @@ -326,7 +331,7 @@ public abstract class ExcelExportBase extends ExportBase { return mergeMap; } - public CellStyle getStyles(Map styles, boolean b, boolean wrap) { + public CellStyle getStyles(Map styles, boolean needOne, boolean wrap) { return null; } @@ -379,6 +384,7 @@ public abstract class ExcelExportBase extends ExportBase { * * @param sheet * @param excelParams + * @param styles */ public void mergeCells(Sheet sheet, List excelParams, int titleHeight) { Map mergeMap = getMergeDataMap(excelParams); @@ -405,9 +411,11 @@ public abstract class ExcelExportBase extends ExportBase { } } } - for (Integer index : sets) { - sheet.addMergedRegion(new CellRangeAddress(mergeDataMap.get(index).getStartRow(), - mergeDataMap.get(index).getEndRow(), index, index)); + if (mergeDataMap.size() > 0) { + for (Integer index : sets) { + sheet.addMergedRegion(new CellRangeAddress(mergeDataMap.get(index).getStartRow(), + mergeDataMap.get(index).getEndRow(), index, index)); + } } }