/**
* 导出作业票角度统计
*/
@Log(title = "导出作业票角度统计", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, PlanWiDto dto) throws IOException {
try {
ExcelUtil.createExcel(response, "AccuralReport.xls", null, crossingYardMoveService.getJobTicketList(dto));
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 创建excel
* <p>
* 此方法为封装简单excel的导出 ,
* 表头或者日期等信息写在map ,
* list数据单独传可以实现简单导出
*
* @param response 响应
* @param fileName 路径文件名称
* @param map map
* @param list 列表
* @throws IOException ioexception
*/
public static void createExcel(HttpServletResponse response, String fileName, Map<String, Object> map, List<?> list) throws IOException {
ClassPathResource cpr = new ClassPathResource("templates" + File.separator + fileName);
OutputStream outputStream = response.getOutputStream();
response.setContentType(CONTENT_TYPE);
response.setCharacterEncoding(CHARACTER_ENCODING);
response.setHeader(HEADER_S1, HEADER_S2 + fileName);
ExcelWriter excelWriter = EasyExcel.write(outputStream).autoTrim(false).withTemplate(cpr.getInputStream()).excelType(ExcelTypeEnum.XLS).build();
WriteSheet writeSheet = EasyExcel.writerSheet().build();
FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
/*map.put("a", "");
excelWriter.fill(map, writeSheet);*/
excelWriter.fill(list, fillConfig, writeSheet);
excelWriter.finish();
}
因我这个项目不需要【表头文字】所以我注掉了 excelWriter.fill(map, writeSheet);