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