diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ReportController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ReportController.java index 43fa199..35d20b5 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ReportController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ReportController.java @@ -63,6 +63,17 @@ public class ReportController extends BaseController { // reportService.patientsExport(provinceId, cityId, aredId, streetId, statistType, ageType, patientType, startDate, endDate, 1000000185, response); } + /** + * 统计报表导出 + * @return + */ + @ResponseBody +// @TokenRequired + @RequestMapping(value = "/patients/export2", method = RequestMethod.GET) + public void patientsExport2(String provinceId, String cityId, String areaId, String streetId, Integer ageType, Integer patientType, Date startDate, Date endDate, HttpServletRequest request, HttpServletResponse response) { +// reportService.patientsExport2(provinceId, cityId, areaId, streetId, ageType, patientType, startDate, endDate, getUserId(request), response); + reportService.patientsExport2(provinceId, cityId, areaId, streetId, ageType, patientType, startDate, endDate, 1000000185, response); + } /** * 未发放优惠券统计 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IReportService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IReportService.java index b84fba5..30b0065 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IReportService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IReportService.java @@ -101,4 +101,6 @@ public interface IReportService extends IBaseService { BaseObjectResponse patients(String provinceId, String cityId, String aredId, String streetId, Integer statistType, Integer statistVal, Integer ageType, Integer patientType, Date startDate, Date endDate, Integer userId); void patientsExport(String provinceId, String cityId, String aredId, String streetId, Integer statistType, Integer ageType, Integer patientType, Date startDate, Date endDate, Integer userId, HttpServletResponse response); + + void patientsExport2(String provinceId, String cityId, String areaId, String streetId, Integer ageType, Integer patientType, Date startDate, Date endDate, Integer userId, HttpServletResponse response); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java index 4e3f3f0..73d71b6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java @@ -536,7 +536,6 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService cnames.put("bookbuildingDate", "建档日期"); cnames.put("doctorName", "建档医生"); - List> results = new ArrayList<>(); if(org.apache.commons.collections.CollectionUtils.isNotEmpty(patients)) { int i = 0; @@ -567,6 +566,29 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService ResponseUtil.responseExcel(cnames, results, response); } + @Override + public void patientsExport2(String provinceId, String cityId, String areaId, String streetId, Integer ageType, Integer patientType, Date startDate, Date endDate, Integer userId, HttpServletResponse response) { + Map restMap = (Map) patients(provinceId, cityId, areaId, streetId, 1, 1, ageType, patientType, startDate, endDate, userId).getData(); + List> tabList = (List>) restMap.get("tabList"); + List titles = tabList.get(0); + Map cnames = new LinkedHashMap<>(); + for (int i = 0; i < titles.size(); i++) { + cnames.put(i + "", titles.get(i)); + } + List> results = new ArrayList<>(); + if(tabList.size() > 1) { + for (int i = 1; i < tabList.size(); i++) { + Map result = new LinkedHashMap<>(); + List list = tabList.get(i); + for (int j = 0; j < list.size(); j++) { + result.put(j + "", list.get(j)); + } + results.add(result); + } + } + ResponseUtil.responseExcel(cnames, results, response); + } + private List getPatients(String provinceId, String cityId, String aredId, String streetId, Integer ageType, Integer patientType, Date startDate, Date endDate, Integer userId) { List> hospitalInfos = mongoUtil.getHospitals(userId, provinceId, cityId, aredId, streetId); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java index 13c298a..0e70106 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java @@ -546,15 +546,18 @@ public class MongoUtil { /** * 获取高危等级(颜色) */ - public List getRiskLevels(Patients p) { - List colors = new ArrayList<>(); + public List> getRiskLevels(Patients p) { + List> colors = new ArrayList<>(); if (p != null && StringUtils.isNotEmpty(p.getRiskLevelId())) { List ids = JsonUtil.jkstr2Obj(p.getRiskLevelId(), List.class); if(CollectionUtils.isNotEmpty(ids)) { for (String id : ids) { String name = findName(id); if(StringUtils.isNotEmpty(name)) { - colors.add( "risk_" + RiskDefaultTypeEnum.getColor(name)); + Map temp = new HashMap<>(); + temp.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name)); + temp.put("name", name.replace("预警", "")); + colors.add(temp); } } }