/**
* 导出Excel
*
* @return
*/
@ApiOperation("导出Excel")
@PostMapping("/test")
public void test(HttpServletRequest request, HttpServletResponse response) throws IOException {
List<ExcelExportEntity> entitys = new ArrayList<>();
Map<String, Object> dataMap = new HashMap<>();
//列名称-检查日期
ExcelExportEntity excelExportEntity = new ExcelExportEntity("检查日期", "checkDate", 20);
//设置自动换行
excelExportEntity.setWrap(true);
entitys.add(excelExportEntity);
dataMap.put("checkDate", "例:" + DateUtil.dateNow("yyyy-MM-dd"));
//列名称-检查单位
ExcelExportEntity excelExportEntity1 = new ExcelExportEntity("检查单位", "checkOrgName", 20);
excelExportEntity1.setWrap(true);
entitys.add(excelExportEntity1);
dataMap.put("checkOrgName", "例:555555555588888888888888888888777777777777777777778888888888888888888");
//列名称-检查单位
ExcelExportEntity excelExportEntity2 = new ExcelExportEntity("检查单位1", "checkOrgName1", 20);
excelExportEntity1.setWrap(true);
entitys.add(excelExportEntity1);
dataMap.put("checkOrgName1", "例:555555555588888888888888888888777777777777777777778888888888888888888");
//列名称-检查单位
ExcelExportEntity excelExportEntity3 = new ExcelExportEntity("检查单位2", "checkOrgName2", 20);
excelExportEntity1.setWrap(true);
entitys.add(excelExportEntity1);
dataMap.put("checkOrgName2", "例:555555555588888888888888888888777777777777777777778888888888888888888");
List<Map<String, Object>> list = new ArrayList<>();
list.add(dataMap);
//设置标题,sheet名称,excel类型
ExportParams exportParams = new ExportParams("安全生产隐患排查治理、整改、销号清单(XXXX.XX.XX)", "隐患排查治理整改销号模板", ExcelType.XSSF);
//设置单元格边框
exportParams.setStyle(ExcelStyleType.BORDER.getClazz());
try {
@Cleanup Workbook workbook = new HSSFWorkbook();
if (entitys.size() > 0) {
int dataSize = list.size();
if (list.size() == 0) {
list.add(new HashMap<>());
}
workbook = ExcelExportUtil.exportExcel(exportParams, entitys, list);
Sheet sheet = workbook.getSheetAt(0);
//设置自动换行
for (int i = 0, len = dataSize + 2; i < len; i++) {
sheet.getRow(i).setHeight((short) -1);
}
}
String fileName = "隐患排查治理整改销号模板" + DateUtil.dateNow("yyyyMMddHHmmss") + ".xlsx";
response.setCharacterEncoding(com.baomidou.mybatisplus.core.toolkit.Constants.UTF_8);
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, Constants.UTF_8));
@Cleanup ServletOutputStream outputStream = response.getOutputStream();
workbook.write(outputStream);
} catch (Exception e) {
log.error("模板信息导出Excel错误:{}", e.getMessage());
e.printStackTrace();
}
}