try {
String fileName = "订单";
HttpServletResponse response = ExcelUtil.getResponseForExcelExport(fileName);
int batchSize = 1000;
int page = 1;
boolean hasMoreData = true;
do {
ServletOutputStream outputStream = response.getOutputStream();
ExcelWriter excelWriter = EasyExcelFactory.write(outputStream, OmsOrderExportV2DTO.class)
.autoCloseStream(false)
.build();
List<OmsOrderExportV2DTO> list = null;
try {
query.setPage(page++);
query.setSize(batchSize);
list = this.getExportList(query);
excelWriter.write(list, EasyExcel.writerSheet(fileName).build());
excelWriter.finish();
outputStream.flush();
} finally {
excelWriter.finish();
outputStream.close();
}
if (list == null || list.size() < batchSize) {
hasMoreData = false;
}
} while (hasMoreData);
} catch (Exception e) {
log.error(e.getMessage());
throw new BaseException("00450011015");
}