package com.vci.starter.poi.bo; import org.apache.commons.collections4.map.LinkedMap; import java.util.*; /** * 写入数据到excel的配置信息 * @author weidy * @date 2020/5/29 */ public class WriteExcelOption { /** * 要写入的数据 */ private LinkedMap /**要写入的数据**/> writeDataMap ; /** * 要隐藏的工作表名称 */ private List hideSheetList; /** * 是否为追加的内容,即工作表已经存在 */ private boolean append = false; /** * 是否07的版本 */ private boolean revision07 = false; /** * 扩展属性的映射配置,po对象上属性是map的形式时使用,key与excelColumn注解的value()相同,值是对应的标题 */ private LinkedMap> extendAttrMap ; /** * 默认构造方法 */ public WriteExcelOption(){ } /** * 包含一个工作表的内容 * @param excelDataList 要写入的工作表内容,工作表的名称默认为Sheet1 */ public WriteExcelOption(List excelDataList){ writeDataMap = new LinkedMap<>(); LinkedList newList=new LinkedList(); newList.addAll(excelDataList); writeDataMap.put("Sheet1",newList); } /** * 包含一个工作表的内容 * @param excelDataList 要写入的工作表内容,工作表的名称默认为Sheet1 */ public WriteExcelOption(LinkedList excelDataList){ writeDataMap = new LinkedMap<>(); writeDataMap.put("Sheet1",excelDataList); } /** * 添加工作表的数据对象 * @param sheetName 工作表名称 * @param excelDataList 工作表的数据列表 */ public void addSheetDataList(String sheetName,LinkedList excelDataList){ if(writeDataMap == null){ writeDataMap = new LinkedMap<>(); } writeDataMap.put(sheetName,excelDataList); } /** * 添加工作表的数据对象 * @param sheetName 工作表名称 * @param excelDataList 工作表的数据列表 */ public void addSheetDataList(String sheetName,List excelDataList){ if(writeDataMap == null){ writeDataMap = new LinkedMap<>(); } LinkedList newList=new LinkedList(); newList.addAll(excelDataList); writeDataMap.put(sheetName,newList); } /** * 添加需要影响的工作表名称 * @param sheetName 工作表名称 */ public void addHideSheet(String sheetName){ if(hideSheetList == null){ hideSheetList = new ArrayList<>(); } hideSheetList.add(sheetName); } public Map> getWriteDataMap() { return writeDataMap; } public void setWriteDataMap(LinkedMap> writeDataMap) { this.writeDataMap = writeDataMap; } public List getHideSheetList() { return hideSheetList; } public void setHideSheetList(List hideSheetList) { this.hideSheetList = hideSheetList; } public boolean isAppend() { return append; } public void setAppend(boolean append) { this.append = append; } public boolean isRevision07() { return revision07; } public void setRevision07(boolean revision07) { this.revision07 = revision07; } public LinkedMap> getExtendAttrMap() { return extendAttrMap; } public void setExtendAttrMap(LinkedMap> extendAttrMap) { this.extendAttrMap = extendAttrMap; } @Override public String toString() { return "WriteExcelOption{" + "writeDataMap=" + writeDataMap + ", hideSheetList=" + hideSheetList + ", append=" + append + ", revision07=" + revision07 + ", extendAttrMap=" + extendAttrMap + '}'; } }