From 983c551b652abf6b0472960fd1740b0018b57736 Mon Sep 17 00:00:00 2001 From: litao Date: Mon, 24 Apr 2017 18:29:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8C=BB=E9=99=A2=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/web/controller/ReportController.java | 14 ++++++---- .../operate/web/service/IReportService.java | 5 ++-- .../web/service/impl/ReportServiceImpl.java | 32 ++++++++++++++++++++-- 3 files changed, 40 insertions(+), 11 deletions(-) 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 828b205..2c24f84 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 @@ -1,7 +1,6 @@ package com.lyms.platform.operate.web.controller; import com.lyms.platform.common.base.BaseController; -import com.lyms.platform.common.base.LoginContext; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.operate.web.service.IReportService; import org.springframework.beans.factory.annotation.Autowired; @@ -69,10 +68,13 @@ public class ReportController extends BaseController { * @return */ @RequestMapping(method = RequestMethod.GET,value = "/checkInfo") +// @TokenRequired @ResponseBody public BaseObjectResponse checkInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, - String name, Integer currentPage, Integer pageSize) { - return reportService.checkInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, currentPage, pageSize); + String name, Integer currentPage, Integer pageSize, HttpServletRequest request) { +// LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); +// reportService.checkInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, loginState.getId(), currentPage, pageSize); + return reportService.checkInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, 753, currentPage, pageSize); } /** @@ -90,9 +92,9 @@ public class ReportController extends BaseController { // @TokenRequired public void exportCheckInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, HttpServletRequest request, HttpServletResponse resp) { - LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); -// reportService.exportCheckInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, loginState.getId()); - reportService.exportCheckInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, loginState.getId(), resp); +// LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); +// reportService.exportCheckInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, loginState.getId(), resp); + reportService.exportCheckInfo(childBirth, startDate, endDate, startWeek, endWeek, number, name, 753, resp); } 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 0a09236..2292306 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 @@ -41,10 +41,11 @@ public interface IReportService extends IBaseService { * @param endWeek * @param number * @param name + * @param userId * @param currenPage - *@param pageSize @return + * @param pageSize @return */ - BaseObjectResponse checkInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, Integer currenPage, Integer pageSize); + BaseObjectResponse checkInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, Integer userId, Integer currenPage, Integer pageSize); /** * 导出Excel 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 27231f7..d93740c 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 @@ -140,10 +140,11 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService } @Override - public BaseObjectResponse checkInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, Integer currentPage, Integer pageSize) { + public BaseObjectResponse checkInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, Integer userId, Integer currentPage, Integer pageSize) { BaseObjectResponse rest = new BaseObjectResponse(); List params = new ArrayList<>(); - PageResult page = findPage(getCheckInfoSql(childBirth, startDate, endDate, startWeek, endWeek, number, name, params), currentPage, pageSize, params); + String hospitalId = autoMatchFacade.getHospitalId(userId); + PageResult page = findPage(getCheckInfoSql(childBirth, startDate, endDate, startWeek, endWeek, number, name, hospitalId, params), currentPage, pageSize, params); rest.setData(page); return rest; } @@ -259,7 +260,27 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService @Override public void exportCheckInfo(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, Integer userId, HttpServletResponse resp) { + List params = new ArrayList<>(); + String hospitalId = autoMatchFacade.getHospitalId(userId); + Map cnames = new LinkedHashMap<>(); + cnames.put("id", "#"); + cnames.put("NAME", "姓名"); + cnames.put("YUNZHOU", "当前孕周"); + cnames.put("BENYUAN_NUM", "本院产检次数"); + cnames.put("TOTAL_NUM", "总产检次数"); + cnames.put("HIGH_RISK_GRADE", "高危等级"); + cnames.put("HIGH_RISK_FACTOR", "风险因数"); + cnames.put("EDD_DATE", "预产期/分娩日期"); + cnames.put("LAST_EXAMINE_DATE", "最后产检日期"); + cnames.put("DOCTOR_NAME", "最后产检医生"); + + List> results = new ArrayList<>(); + List> list = reportDao.findList(getCheckInfoSql(childBirth, startDate, endDate, startWeek, endWeek, number, name, hospitalId, params), params); + for (Map map : list) { + results.add(map); + } + ResponseUtil.responseExcel(cnames,results, resp); } private String getDoctorInfoSql(String startDate, String endDate, Integer childBirth, Integer number, String name, String hospitalId, List params) { @@ -516,7 +537,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService return sql.toString(); } - private String getCheckInfoSql(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, List params) { + private String getCheckInfoSql(Integer childBirth, String startDate, String endDate, Integer startWeek, Integer endWeek, Integer number, String name, String hospitalId, List params) { StringBuilder sql = new StringBuilder(); sql.append("SELECT A.NAME, ") .append("(CASE WHEN A.IS_CHILDBIRTH=3 THEN '已分娩' ELSE (CASE WHEN A.NOW_WEEKS_DAY<>0 THEN '孕'||A.NOW_WEEKS||'周+'||A.NOW_WEEKS_DAY||'天' ELSE '孕'||A.NOW_WEEKS||'周' END) END) AS YUNZHOU, ") @@ -540,6 +561,11 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService params.add(childBirth); } + if(StringUtils.isNotBlank(hospitalId)) { + sql.append("AND C.YCY_STSTEM_ID = ? "); + params.add(hospitalId); + } + if(startDate != null && endDate != null) { sql.append("AND A.CREATE_DATE BETWEEN to_date(?,'yyyy-mm-dd') AND to_date(?,'yyyy-mm-dd') "); params.add(startDate); -- 1.8.3.1