1. //相同的detailid,intern() 确保都是拿的常量池的对象,内存地址一样
    2. public void exportAll(HttpServletResponse response, String loanPlatform, String serialNumber, String startTime, String endTime,
    3. String loanDiscountType, Integer exceptionStatus, Integer useStatus) {
    4. statementService.exportAll(response, loanPlatform, serialNumber, startTime, endTime, loanDiscountType, exceptionStatus, useStatus);
    5. }
    6. @Override
    7. public void exportAll(HttpServletResponse response, String loanPlatform, String serialNumber, String startTime, String endTime, String loanDiscountType, Integer exceptionStatus, Integer useStatus) {
    8. List<StatementExcelExportVO> list = statementMapper.exportAll(loanPlatform, serialNumber, startTime, endTime, loanDiscountType, exceptionStatus, useStatus);
    9. list.forEach(n -> {
    10. if (StringUtils.isBlank(n.getSchoolId())) {
    11. n.setSchoolType("异常");
    12. n.setSchoolName("名称错误");
    13. }
    14. if (ObjectUtils.isEmpty(n.getLenderId())) {
    15. n.setLenderName("异常");
    16. }
    17. });
    18. Workbook sheets = ExcelExportUtil.exportExcel(new ExportParams(), StatementExcelExportVO.class, list);
    19. // 指定下载的文件名--设置响应头
    20. response.setContentType("application/vnd.ms-excel;charset=utf-8");
    21. response.setHeader("Content-Disposition", "attachment;filename=" + URLUtil.encode("贷款流水信息") + ".xls");
    22. //导出xlsx使用以下设置
    23. //response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
    24. //response.setHeader("Content-Disposition","attachment;filename="+URLUtil.encode("学生信息")+".xlsx");
    25. try {
    26. OutputStream output = response.getOutputStream();
    27. BufferedOutputStream bufferedOutPut = new BufferedOutputStream(output);
    28. sheets.write(bufferedOutPut);
    29. bufferedOutPut.flush();
    30. bufferedOutPut.close();
    31. output.close();
    32. } catch (IOException e) {
    33. e.printStackTrace();
    34. }
    35. }