diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java index 3f15911e..14caf745 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesRecommendApi.java @@ -37,7 +37,6 @@ import java.io.OutputStream; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -123,6 +122,27 @@ public class CasesRecommendApi extends ApiBaseController { } + /** + * 下载错误数据 + * + * @return + * @throws Exception + */ + @PostMapping("/download-template") + public void downloadTemplate(HttpServletResponse response) throws Exception { + // 通过工具类创建writer,默认创建xls格式 + ExcelWriter writer = ExcelUtil.getWriter(); + writer.writeHeadRow(ListUtil.toList("标题")); + response.setContentType("application/vnd.ms-excel;charset=utf-8"); + response.setHeader("Content-Disposition", "attachment;filename=failData.xls"); + ServletOutputStream out = response.getOutputStream(); + + writer.flush(out, true); + writer.close(); + IoUtil.close(out); + + } + /** * 下载错误数据 * @@ -186,17 +206,17 @@ public class CasesRecommendApi extends ApiBaseController { throw new RuntimeException("缺少必要参数"); } - try(OutputStream outputStream = response.getOutputStream()) { + try (OutputStream outputStream = response.getOutputStream()) { // 用个List装表格的所有内容 // 拼接上列明。我这里用的最土的方法,很不优雅别学我 - LinkedHashMap map = new LinkedHashMap<>(); - map.put("案例名称","caseTitle"); - map.put("推送用户","pushUserName"); - map.put("所属组织","recommendOrgName"); - map.put("推送时间","pushTime"); - map.put("是否查看","readFlag"); - map.put("首次查看时间","readStartTime"); - map.put("总查看时间","totalReadTime"); + LinkedHashMap map = new LinkedHashMap<>(); + map.put("案例名称", "caseTitle"); + map.put("推送用户", "pushUserName"); + map.put("所属组织", "recommendOrgName"); + map.put("推送时间", "pushTime"); + map.put("是否查看", "readFlag"); + map.put("首次查看时间", "readStartTime"); + map.put("总查看时间", "totalReadTime"); CasesRecommend casesRecommend = iCasesRecommendService.findById(vo.getCasesRecommendId()); @@ -212,7 +232,7 @@ public class CasesRecommendApi extends ApiBaseController { exportVo.setPushTime(DateUtil.formatDateTime(record.getPushTime())); exportVo.setReadFlag(record.getReadFlag() == 1 ? "是" : "否"); exportVo.setReadStartTime(DateUtil.formatDateTime(record.getReadStartTime())); - if (ObjectUtil.isNotEmpty(record.getReadStartTime()) && ObjectUtil.isNotEmpty(record.getReadEndTime())){ + if (ObjectUtil.isNotEmpty(record.getReadStartTime()) && ObjectUtil.isNotEmpty(record.getReadEndTime())) { exportVo.setTotalReadTime(DateUtil.formatBetween(record.getReadStartTime(), record.getReadEndTime())); } return exportVo; @@ -221,10 +241,10 @@ public class CasesRecommendApi extends ApiBaseController { response.setContentType("application/octet-stream"); response.setHeader("Content-disposition", "attachment;filename=casesRecommend.xls"); - ExportsExcelSenderUtil.export(map, exportVos, outputStream,"yyyy-MM-dd HH:mm:ss"); - }catch (Exception e){ + ExportsExcelSenderUtil.export(map, exportVos, outputStream, "yyyy-MM-dd HH:mm:ss"); + } catch (Exception e) { e.printStackTrace(); - log.error("导出失败",e.getMessage()); + log.error("导出失败", e.getMessage()); } }