From 3f88f77174d75ec7bb2119dfa475cd9286de93ae Mon Sep 17 00:00:00 2001 From: yangfei Date: Thu, 23 Nov 2017 09:20:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/web/facade/MatDeliverFacade.java | 48 ++++++++++++++-------- .../web/facade/PostpartumFollowMakeFacade.java | 38 ++++++++--------- .../operate/web/result/PostpartumFollowResult.java | 14 +------ 3 files changed, 49 insertions(+), 51 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java index 763993d..cde3c10 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java @@ -4,6 +4,7 @@ import com.lyms.platform.biz.RemoteService; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.*; +import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.utils.*; @@ -1123,7 +1124,9 @@ public class MatDeliverFacade { * @param postpartumFollowMakeRequest * @return */ - public List postpartumDeliver(PostpartumFollowMakeRequest postpartumFollowMakeRequest) { + public BaseListResponse postpartumDeliver(PostpartumFollowMakeRequest postpartumFollowMakeRequest) { + BaseListResponse listResponse = new BaseListResponse(); + List postpartumFollowResults = new ArrayList<>(); PatientsQuery patientsQuery = new PatientsQuery(); @@ -1141,9 +1144,13 @@ public class MatDeliverFacade { // 非区域 hospitalList.add(postpartumFollowMakeRequest.getHospitalId()); } else { - // 未传入查询条件 - if (StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalProvinceId()) && StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalProvinceId()) && StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalAreaId()) && StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalId())) { + if(StringUtils.isNotEmpty(postpartumFollowMakeRequest.getHospitalId())){ + hospitalList.add(postpartumFollowMakeRequest.getHospitalId()); + } + + // 未传入查询条件,进行院内系统进行查询 + if (StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalProvinceId()) && StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalCityId()) && StringUtils.isEmpty(postpartumFollowMakeRequest.getHospitalAreaId())) { DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); dataPermissionsModelQuery.setUserId(postpartumFollowMakeRequest.getOperatorId()); List dataPermissionsModelList = dataPermissionService.queryPermission(dataPermissionsModelQuery); @@ -1181,22 +1188,16 @@ public class MatDeliverFacade { List parentIdList = new ArrayList<>(); if (CollectionUtils.isEmpty(patientsList)) { // 没有查到,直接抛出 - return postpartumFollowResults; + return listResponse; } - Map patientsMap = new HashMap<>(); + Map patientsMap = new HashMap<>(); for (Patients patients : patientsList) { parentIdList.add(patients.getId()); - patientsMap.put(patients.getId(),patients); - } - - MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); - matDeliverQuery.setParentIdList(parentIdList); - matDeliverQuery.setYn(YnEnums.YES.getId()); - List maternalDeliverModelList = matDeliverService.query(matDeliverQuery); - - for(MaternalDeliverModel deliverModel : maternalDeliverModelList){ PostpartumFollowResult postpartumFollowResult = new PostpartumFollowResult(); - Patients patients = patientsMap.get(deliverModel.getParentId()); + postpartumFollowResult.setPid(patients.getPid()); + postpartumFollowResult.setPatientId(patients.getId()); + postpartumFollowResult.setPostViewDay(DateUtil.daysBetween(patients.getFmDate(), new Date()) + "天"); + // 居住地 postpartumFollowResult.setAddress(CommonsHelper.getResidence(patients.getProvinceRegisterId(), patients.getCityRegisterId(), patients.getAreaRegisterId(), patients.getStreetRegisterId(), patients.getAddressRegister(), basicConfigService)); // 电话转换 @@ -1205,6 +1206,17 @@ public class MatDeliverFacade { postpartumFollowResult.setName(patients.getUsername()); // 年龄 postpartumFollowResult.setAge(DateUtil.getAge(patients.getBirth())); + //放入map,进行下一步数据整合 + patientsMap.put(patients.getId(),postpartumFollowResult); + } + + MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); + matDeliverQuery.setParentIdList(parentIdList); + matDeliverQuery.setYn(YnEnums.YES.getId()); + List maternalDeliverModelList = matDeliverService.query(matDeliverQuery); + + for(MaternalDeliverModel deliverModel : maternalDeliverModelList){ + PostpartumFollowResult postpartumFollowResult = patientsMap.get(deliverModel.getParentId()); //机构信息 Organization organization = organizationService.getOrganization(Integer.valueOf(deliverModel.getFmHospital())); // 市 @@ -1219,11 +1231,11 @@ public class MatDeliverFacade { } //分娩医院 postpartumFollowResult.setFmHospital(organization.getName()); - postpartumFollowResults.add(postpartumFollowResult); } - - return postpartumFollowResults; + listResponse.setPageInfo(patientsQuery.getPageInfo()); + listResponse.setObject(postpartumFollowResults); + return listResponse; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumFollowMakeFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumFollowMakeFacade.java index c2481bc..58bd050 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumFollowMakeFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumFollowMakeFacade.java @@ -2,16 +2,15 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseResponse; -import com.lyms.platform.common.utils.BeanUtils; -import com.lyms.platform.operate.web.request.ChildbirthManagerRequest; import com.lyms.platform.operate.web.request.PostpartumFollowMakeRequest; -import com.lyms.platform.operate.web.result.ChildbirthManagerResult; +import com.lyms.platform.operate.web.result.PostpartumFollowResult; import com.lyms.platform.permission.model.PostpartumFollowMake; import com.lyms.platform.permission.service.PostpartumFollowMakeService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.util.Map; +import java.util.ArrayList; +import java.util.List; /** * @auther yangfei @@ -25,6 +24,9 @@ public class PostpartumFollowMakeFacade { @Autowired private MatDeliverFacade matDeliverFacade; + @Autowired + private AutoMatchFacade autoMatchFacade; + public BaseResponse postpartumFollowMakeInit(Integer id) { return null; } @@ -47,30 +49,26 @@ public class PostpartumFollowMakeFacade { public BaseListResponse getPostpartumFollowMake( PostpartumFollowMakeRequest postpartumFollowMakeRequest, Integer id) { BaseListResponse baseListResponse = new BaseListResponse(); - + String hospitalId = autoMatchFacade.getHospitalId(id); + postpartumFollowMakeRequest.setOperatorId(id); //如果有访视状态、产妇随访确认、联系结果、联系失败原因就先查询预约随访记录表,根据pid进行查分娩信息。 if (postpartumFollowMakeRequest.getVisitResult()!=null||postpartumFollowMakeRequest.getContactResult()!=null || postpartumFollowMakeRequest.getContactReason()!=null|| postpartumFollowMakeRequest.getVisitAffirm()!=null){ }else{//查询孕妇表,type=3 - ChildbirthManagerRequest childbirthManagerRequest = new ChildbirthManagerRequest(); - childbirthManagerRequest.setOperatorId(id); - //查区域 - childbirthManagerRequest.setIsArea("area"); - BeanUtils.copy(postpartumFollowMakeRequest, childbirthManagerRequest); - // 区域 - Map query = childbirthManagerRequest.getAreaQueryMap(); - - StringBuffer queryStr = new StringBuffer(); - for (String key : query.keySet()) { - queryStr.append(key + ","); + postpartumFollowMakeRequest.setIsArea("area"); + baseListResponse = matDeliverFacade.postpartumDeliver(postpartumFollowMakeRequest); + } + if(baseListResponse.getObject()!=null){ + List postpartumFollowResults = (List) baseListResponse.getObject(); + List patientIds = new ArrayList<>(); + for(PostpartumFollowResult pf:postpartumFollowResults){ + patientIds.add(pf.getPatientId()); } - childbirthManagerRequest.setInitQuery(queryStr.substring(0, queryStr.length() - 1)); - ChildbirthManagerResult childbirthManagerResult = matDeliverFacade.childbirthManager(childbirthManagerRequest); - baseListResponse.setObject(childbirthManagerResult); + //根据In查询,进行grunp by patientId,进行排序 + //返回结果,进行前端开发 } - return baseListResponse; } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumFollowResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumFollowResult.java index f94f290..856fcea 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumFollowResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumFollowResult.java @@ -21,10 +21,6 @@ public class PostpartumFollowResult { */ private Integer age; - /** - * @discription 证件号 - */ - private String cardNo; /** * @discription 联系方式 @@ -36,7 +32,7 @@ public class PostpartumFollowResult { */ private String address; /** - * @discription 分娩医院市 + * @discription 分娩医院 */ private String hospitalCityName; @@ -103,14 +99,6 @@ public class PostpartumFollowResult { this.age = age; } - public String getCardNo() { - return cardNo; - } - - public void setCardNo(String cardNo) { - this.cardNo = cardNo; - } - public String getPhone() { return phone; } -- 1.8.3.1