征求意见流程导出bug修改~~

This commit is contained in:
Mr.Z
2021-08-25 15:16:14 +08:00
parent c65edcbaab
commit a828f41d20
@@ -30,43 +30,68 @@ public class TableToExcel {
Set<String> keys=columnMap.keySet();
//第一行(标题行)合并并设置标题
//创建表头行
Row headRow=sheet.createRow(0);
//创建表头行(合并单元格)
Row headRow = sheet.createRow(0);
Row neckRow = sheet.createRow(1);
sheet.addMergedRegion(new CellRangeAddress(0,1,0,0));
sheet.addMergedRegion(new CellRangeAddress(0,1,1,1));
sheet.addMergedRegion(new CellRangeAddress(0,0,2,4));
sheet.addMergedRegion(new CellRangeAddress(0,1,5,5));
sheet.addMergedRegion(new CellRangeAddress(0,1,6,6));
sheet.addMergedRegion(new CellRangeAddress(0,1,7,7));
//生成表头行
int j=0;
for(String key:keys) {
Cell hCell=headRow.createCell(j++);
hCell.setCellValue(columnMap.get(key));
if (j<3)
hCell.setCellValue(columnMap.get(key));
}
//从第二行开始填充数据
int c=1;
Cell hCellh = headRow.createCell(2);
hCellh.setCellValue("修改意见内容");
Cell hCell = headRow.createCell(5);
hCell.setCellValue("提出部门");
Cell hCell1 = headRow.createCell(6);
hCell1.setCellValue("提出人");
Cell hCell2 = headRow.createCell(7);
hCell2.setCellValue("处理意见");
Cell nCell = neckRow.createCell(2);
nCell.setCellValue("修改前");
Cell nCell1 = neckRow.createCell(3);
nCell1.setCellValue("修改后");
Cell nCell2 = neckRow.createCell(4);
nCell2.setCellValue("修改理由");
//从第三行开始填充数据
int c=2;
for(int k=i*sheetRow;k<dataList.size()&&k<(i+1)*sheetRow;k++) {
T t=dataList.get(k);
Row dataRow=sheet.createRow(c++);
//循环取值进行数据填充
int v=0;
for(String key:keys) {
try {
Object val= BeanUtils.getProperty(t, key);
if(val instanceof Long) {
dataRow.createCell(v++).setCellValue((Long)val);
}else if(val instanceof Double){
dataRow.createCell(v++).setCellValue((Double)val);
}else if(val instanceof Date) {
dataRow.createCell(v++).setCellValue((Date)val);
}else if(val instanceof Calendar) {
dataRow.createCell(v++).setCellValue((Calendar)val);
}else if(val instanceof Boolean) {
dataRow.createCell(v++).setCellValue((Boolean)val);
}else if(val==null) {
dataRow.createCell(v++).setCellValue("");
}else {
dataRow.createCell(v++).setCellValue((String)val);
if (!"commentText".equals(key)) {
try {
Object val = BeanUtils.getProperty(t, key);
if (val instanceof Long) {
dataRow.createCell(v++).setCellValue((Long) val);
} else if (val instanceof Double) {
dataRow.createCell(v++).setCellValue((Double) val);
} else if (val instanceof Date) {
dataRow.createCell(v++).setCellValue((Date) val);
} else if (val instanceof Calendar) {
dataRow.createCell(v++).setCellValue((Calendar) val);
} else if (val instanceof Boolean) {
dataRow.createCell(v++).setCellValue((Boolean) val);
} else if (val == null) {
dataRow.createCell(v++).setCellValue("");
} else {
dataRow.createCell(v++).setCellValue((String) val);
}
} catch (Exception e) {
System.out.println("导出Excel-表格赋值异常");
}
} catch (Exception e) {
System.out.println("导出Excel-表格赋值异常");
}
}
}