From d136fe994422d20ade7b69d437e7b3b98beebdee Mon Sep 17 00:00:00 2001 From: dongqin <123456> Date: Wed, 22 May 2019 15:38:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=80=BC=E6=9C=8D=E5=8A=A1=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1-=E4=BC=98=E5=8C=96=E5=A2=9E=E5=80=BC=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E7=BB=9F=E8=AE=A1=EF=BC=8C=E5=A2=9E=E5=8A=A0=E5=BC=80?= =?UTF-8?q?=E9=80=9A=E4=BA=BA=E7=9A=84=E6=95=B0=E6=8D=AE=E8=BE=93=E5=85=A5?= =?UTF-8?q?=E5=92=8C=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../permission/model/ServiceListQuery.java | 52 ++++++++++++++++++ .../resources/mainOrm/master/PatientService.xml | 62 ++++++++++++++++++++-- .../operate/web/facade/AreaCountFacade.java | 58 ++++++++++++++++++-- 3 files changed, 164 insertions(+), 8 deletions(-) diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/ServiceListQuery.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/ServiceListQuery.java index 3dd526c..296b81a 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/ServiceListQuery.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/ServiceListQuery.java @@ -28,6 +28,58 @@ public class ServiceListQuery extends BaseQuery { private Date endTime; + /** + * 孕妇服务类型(1-孕期精准医疗、2-体重管理、3-血糖管理、4-血压管理、5-专家咨询、6-标准服务、7-体温管理)、儿童服务类型(10-精准指导、11-标准服务) + */ + private String serType; + + /** + * 开通人 + */ + private String createUser; + + /** + * 操作员 + */ + private String operator; + + /** + * 指定医生 + */ + private String serDoct; + + public String getSerType() { + return serType; + } + + public void setSerType(String serType) { + this.serType = serType; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + public String getSerDoct() { + return serDoct; + } + + public void setSerDoct(String serDoct) { + this.serDoct = serDoct; + } + public Date getEndTime() { return endTime; } diff --git a/platform-biz-service/src/main/resources/mainOrm/master/PatientService.xml b/platform-biz-service/src/main/resources/mainOrm/master/PatientService.xml index f284fb9..5de1a27 100644 --- a/platform-biz-service/src/main/resources/mainOrm/master/PatientService.xml +++ b/platform-biz-service/src/main/resources/mainOrm/master/PatientService.xml @@ -410,6 +410,18 @@ AND ps.create_date <= #{query.endTime} + + AND ps.ser_type = #{query.serType} + + + AND ps.create_user = #{query.createUser} + + + AND ps.update_user = #{query.operator} + + + AND ps.ser_doct = #{query.serDoct} + and o.province_id = #{query.provinceId} @@ -446,6 +458,18 @@ #{item} + + AND ps.ser_type = #{param.serType} + + + AND ps.create_user = #{param.createUser} + + + AND ps.update_user = #{param.operator} + + + AND ps.ser_doct = #{param.serDoct} + @@ -526,7 +576,13 @@ select o.id as "hospitalId" from organization o - join (select ps.hospital_id from patient_service ps where ps.create_date >= #{param.startTime} and ps.create_date <= #{param.endTime} group by ps.hospital_id) + join (select ps.hospital_id from patient_service ps + where ps.create_date >= #{param.startTime} and ps.create_date <= #{param.endTime} + and ps.ser_type = #{param.serType} + and ps.create_user = #{param.createUser} + and ps.update_user = #{param.operator} + and ps.ser_doct = #{param.serDoct} + group by ps.hospital_id) t on t.hospital_id = o.id where t.hospital_id in diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java index cb36663..f9eaed8 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java @@ -1151,12 +1151,24 @@ public class AreaCountFacade { return response; } + /** + * + * @param object + * @return + */ private String getString(Object object){ if (object != null){ return object.toString(); } return ""; } + + /** + * 增值服务详情list和导出公用方法:查出符合条件的list + * + * @param param + * @return + */ private List> getServiceDetailListMap(ServiceListQuery param) { List> mapList = patientServiceService.getServeDetailList(param); if (CollectionUtils.isNotEmpty(mapList)){ @@ -1170,6 +1182,10 @@ public class AreaCountFacade { Object serDoctObj = map.get("serDoct"); String serDoct = getString(serDoctObj); Date createDate = (Date) map.get("createDate"); + Object createUserObj = map.get("createUser"); + String createUser = getString(createUserObj); + Object updateUserObj = map.get("updateUser"); + String updateUser = getString(updateUserObj); String userName = ""; if ("1".equals(perType)){ // 孕妇 @@ -1197,6 +1213,8 @@ public class AreaCountFacade { map.put("patientName", userName); String serTypeName = getSerTypeName(serType); map.put("serTypeName", serTypeName); + + // 指定医生 String doctorName = ""; if (serDoct != null && !"".equals(serDoct)){ Users users = usersService.getUsers(Integer.parseInt(serDoct)); @@ -1204,12 +1222,26 @@ public class AreaCountFacade { doctorName = users.getName(); } } - + // 开通人 + String createUserName = ""; + if (StringUtils.isNotEmpty(createUser)){ + Users users = usersService.getUsers(Integer.parseInt(createUser)); + if (users != null){ + createUserName = users.getName(); + } + } + // 操作人 + String operatorName = ""; + if (StringUtils.isNotEmpty(updateUser)){ + Users users = usersService.getUsers(Integer.parseInt(updateUser)); + if (users != null){ + operatorName = users.getName(); + } + } + map.put("createUserName", createUserName); + map.put("operatorName", operatorName); map.put("doctorName", doctorName); - map.remove("parentId"); - map.remove("perType"); - map.remove("serType"); - map.remove("serDoct"); + removeKey(map); } } @@ -1217,6 +1249,20 @@ public class AreaCountFacade { } /** + * 删除多余的key,方便导出 + * + * @param map + */ + private void removeKey(Map map) { + map.remove("parentId"); + map.remove("perType"); + map.remove("serType"); + map.remove("serDoct"); + map.remove("createUser"); + map.remove("updateUser"); + } + + /** * 详情导出 * * @param param @@ -1230,10 +1276,12 @@ public class AreaCountFacade { names.put("createDate","购买日期"); names.put("patientName", "姓名"); names.put("opnYumSize", "开通孕周"); + names.put("createUserName", "开通人"); names.put("serTypeName", "服务类型"); names.put("serviceWeek","服务周期"); names.put("doctorName", "指定医生"); names.put("serStatus","服务状态"); + names.put("operatorName", "操作人"); ResponseUtil.responseExcel(names,serviceDetailListMap,response); } } -- 1.8.3.1