mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-09-20 18:15:56 +08:00
excel插件 优化合并策略 在合适的生命周期完成合并 去除被合并单元格的非首行内容
This commit is contained in:
parent
76a3663f3a
commit
81263bf405
@ -45,10 +45,12 @@ public class CellMergeStrategy extends AbstractMergeStrategy implements Workbook
|
|||||||
protected void merge(Sheet sheet, Cell cell, Head head, Integer relativeRowIndex) {
|
protected void merge(Sheet sheet, Cell cell, Head head, Integer relativeRowIndex) {
|
||||||
//单元格写入了,遍历合并区域,如果该Cell在区域内,但非首行,则清空
|
//单元格写入了,遍历合并区域,如果该Cell在区域内,但非首行,则清空
|
||||||
final int rowIndex = cell.getRowIndex();
|
final int rowIndex = cell.getRowIndex();
|
||||||
for (CellRangeAddress cellAddresses : cellList) {
|
if (CollUtil.isNotEmpty(cellList)){
|
||||||
final int firstRow = cellAddresses.getFirstRow();
|
for (CellRangeAddress cellAddresses : cellList) {
|
||||||
if (cellAddresses.isInRange(cell) && rowIndex != firstRow){
|
final int firstRow = cellAddresses.getFirstRow();
|
||||||
cell.setBlank();
|
if (cellAddresses.isInRange(cell) && rowIndex != firstRow){
|
||||||
|
cell.setBlank();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -56,8 +58,10 @@ public class CellMergeStrategy extends AbstractMergeStrategy implements Workbook
|
|||||||
@Override
|
@Override
|
||||||
public void afterWorkbookDispose(final WorkbookWriteHandlerContext context) {
|
public void afterWorkbookDispose(final WorkbookWriteHandlerContext context) {
|
||||||
//当前表格写完后,统一写入
|
//当前表格写完后,统一写入
|
||||||
for (CellRangeAddress item : cellList) {
|
if (CollUtil.isNotEmpty(cellList)){
|
||||||
context.getWriteContext().writeSheetHolder().getSheet().addMergedRegion(item);
|
for (CellRangeAddress item : cellList) {
|
||||||
|
context.getWriteContext().writeSheetHolder().getSheet().addMergedRegion(item);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user