/**
* 導(dǎo)出Excel
*
* @return
*/
@ApiOperation("導(dǎo)出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);
//設(shè)置自動(dòng)換行
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);
//設(shè)置標(biāo)題,sheet名稱,excel類型
ExportParams exportParams = new ExportParams("安全生產(chǎn)隱患排查治理、整改、銷號(hào)清單(XXXX.XX.XX)", "隱患排查治理整改銷號(hào)模板", ExcelType.XSSF);
//設(shè)置單元格邊框
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);
//設(shè)置自動(dòng)換行
for (int i = 0, len = dataSize + 2; i < len; i++) {
sheet.getRow(i).setHeight((short) -1);
}
}
String fileName = "隱患排查治理整改銷號(hào)模板" + 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("模板信息導(dǎo)出Excel錯(cuò)誤:{}", e.getMessage());
e.printStackTrace();
}
}