diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java index ca016f2..564cdba 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java @@ -47,7 +47,7 @@ public class PatientsService { iPatientDao.updatePatient(obj, obj.getId()); } public void findAndModify(PatientsQuery query,Patients obj){ - iPatientDao.findAndModify(query.convertToQuery(),obj); + iPatientDao.findAndModify(query.convertToQuery(), obj); } public List queryPatient(PatientsQuery patientsQuery) { MongoQuery query = patientsQuery.convertToQuery(); @@ -58,6 +58,11 @@ public class PatientsService { return iPatientDao.queryPatient(query.addOrder(Sort.Direction.DESC, "id")); } + + public List findLatelyCreated(MongoQuery mongoQuery){ + return iPatientDao.queryPatient(mongoQuery); + } + public List queryPatient1(PatientsQuery patientsQuery) { MongoQuery query = patientsQuery.convertToQuery(); if (StringUtils.isNotEmpty(patientsQuery.getNeed())) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java index 97880cc..b8133b7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java @@ -246,7 +246,7 @@ public class AntenatalExaminationFacade { List listDate = new ArrayList<>(); //分娩记录 List modelList = matDeliverService.query(matDeliverQuery); - if(CollectionUtils.isNotEmpty(modelList)){ + if (CollectionUtils.isNotEmpty(modelList)) { for (MaternalDeliverModel model : modelList) { listDate.add(new SortIn(model)); } @@ -257,17 +257,17 @@ public class AntenatalExaminationFacade { query.setYn(YnEnums.YES.getId()); query.setPid(pid); List stopPregs = stopPregnancyService.queryStopPreg(query); - if(CollectionUtils.isNotEmpty(stopPregs)) { + if (CollectionUtils.isNotEmpty(stopPregs)) { for (StopPregModel stopPregModel : stopPregs) { listDate.add(new SortIn(stopPregModel)); } } - PatientsQuery patientsQuery=new PatientsQuery(); + PatientsQuery patientsQuery = new PatientsQuery(); patientsQuery.setPid(pid); patientsQuery.setType(3); patientsQuery.setYn(YnEnums.YES.getId()); List patientses = patientsService.queryPatient(patientsQuery); - if(CollectionUtils.isNotEmpty(patientses)) { + if (CollectionUtils.isNotEmpty(patientses)) { for (Patients patients : patientses) { listDate.add(new SortIn(patients, 1)); } @@ -275,12 +275,23 @@ public class AntenatalExaminationFacade { //排序集合 sortList(listDate); + + PatientsQuery patientsQuery1 = new PatientsQuery(); + patientsQuery1.setPid(pid); + patientsQuery1.setType(1); + List patientses1 = patientsService.findLatelyCreated(patientsQuery1.convertToQuery().addOrder(Sort.Direction.ASC, "created")); + + Date min = null; + if (CollectionUtils.isNotEmpty(patientses1)) { + min = patientses1.get(0).getBookbuildingDate(); + } + Date max = null; if (!listDate.isEmpty()) { max = listDate.get(0).getDate(); } - HighScoreResult highScoreResult = getPatLastRiskByDate(pid, needLevel, max); + HighScoreResult highScoreResult = getPatLastRiskByDate(pid, needLevel,min, max); return highScoreResult; } @@ -292,12 +303,14 @@ public class AntenatalExaminationFacade { * @param date * @return */ - public HighScoreResult getPatLastRiskByDate(String pid, boolean needLevel, Date date) { + public HighScoreResult getPatLastRiskByDate(String pid, boolean needLevel, Date min,Date date) { AntExQuery antExQuery = new AntExQuery(); antExQuery.setPid(pid); antExQuery.setYn(YnEnums.YES.getId()); - if (date != null) { - antExQuery.setStart(date); + if (min != null) { + antExQuery.setStart(min); + }else if(null!=date){ + antExQuery.setEnd(date); } List list = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery().addOrder(Sort.Direction.DESC, "modified")); HighScoreResult highScoreResult = new HighScoreResult(); @@ -356,8 +369,10 @@ public class AntenatalExaminationFacade { //初诊 AntExChuQuery antExChuQuery = new AntExChuQuery(); antExChuQuery.setPid(pid); - if (date != null) { - antExChuQuery.setStart(date); + if (min != null) { + antExChuQuery.setStart(min); + } else if (date != null) { + antExChuQuery.setEnd(date); } antExChuQuery.setYn(YnEnums.YES.getId()); List list1 = antenatalExaminationService.queryAntExChu(antExChuQuery); @@ -727,11 +742,13 @@ public class AntenatalExaminationFacade { this.date = patients.getBookbuildingDate(); this.type = 2; } - public SortIn(Patients patients,int i) { + + public SortIn(Patients patients, int i) { this.id = patients.getId(); this.date = patients.getFmDate(); this.type = 2; } + public SortIn(StopPregModel stopPregModel) { this.id = stopPregModel.getId(); this.date = stopPregModel.getStopDate();