From 1a79820d78e2817a0df973d6f74423a2f51736b8 Mon Sep 17 00:00:00 2001 From: "litao@lymsh.com" Date: Wed, 26 Jul 2017 11:08:06 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/pojo/NewbornVisit.java | 10 ------ .../web/service/impl/NewbornServiceImpl.java | 38 ++++++++++++++++------ 2 files changed, 28 insertions(+), 20 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/NewbornVisit.java b/platform-dal/src/main/java/com/lyms/platform/pojo/NewbornVisit.java index 8d62890..93357a3 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/NewbornVisit.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/NewbornVisit.java @@ -24,8 +24,6 @@ public class NewbornVisit { private String hospitalId; - private String parentId; - private String babyId; private String pid; @@ -194,14 +192,6 @@ public class NewbornVisit { this.hospitalId = hospitalId; } - public String getParentId() { - return parentId; - } - - public void setParentId(String parentId) { - this.parentId = parentId; - } - public String getBabyId() { return babyId; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java index dfb076c..6a66015 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java @@ -84,6 +84,10 @@ public class NewbornServiceImpl extends BaseServiceImpl implements INewbornVisit newbornVisit.setOperationId(userId.toString()); newbornVisit.setCreated(new Date()); newbornVisit.setYn("1"); + BabyModel babyModel = mongoTemplate.findById(newbornVisit.getBabyId(), BabyModel.class); + if(babyModel != null) { + newbornVisit.setPid(babyModel.getPid()); + } mongoTemplate.save(newbornVisit); return RespBuilder.buildSuccess(newbornVisit.getId()); } else { @@ -149,14 +153,18 @@ public class NewbornServiceImpl extends BaseServiceImpl implements INewbornVisit } if(StringUtils.isNotBlank(key)) { Criteria c = new Criteria(); - mongoUtil.findField(PersonModel.class, c, "id"); + c.orOperator(Criteria.where("mphone").is(key), Criteria.where("name").regex(key), Criteria.where("mcertNo").is(key)).and("yn").ne(0); + List babyModels = mongoUtil.findField(BabyModel.class, c, "id"); + if(CollectionUtils.isNotEmpty(babyModels)) { + List babyIds = CollectionUtils.getId(babyModels, "id", String.class); + criteria.and("babyId").in(babyIds); + } } PageResult pageResult = findMongoPage(NewbornVisit.class, new Query(criteria), page, limit); List newbornVisits = (List) pageResult.getGrid(); List> restMap = new ArrayList<>(); for (NewbornVisit visit : newbornVisits) { Map temp = new HashMap<>(); - temp.put("checkTime", visit.getCheckTime() == null ? null : DateUtil.getyyyy_MM_dd(visit.getCheckTime())); // 复查访视时间 String pid = visit.getPid(); if(StringUtils.isNotBlank(pid)) { @@ -167,19 +175,29 @@ public class NewbornServiceImpl extends BaseServiceImpl implements INewbornVisit temp.put("age", DateUtil.getAge(person.getBirth())); temp.put("phone", person.getPhone()); } - Patients patients = mongoTemplate.findById(visit.getParentId(), Patients.class); + } + BabyModel babyModel = mongoTemplate.findById(visit.getBabyId(), BabyModel.class); + if(babyModel != null) { + Patients patients = mongoTemplate.findById(babyModel.getParentId(), Patients.class); if(patients != null) { int days = DateUtil.daysBetween(patients.getFmDate(), new Date()); - temp.put("days", "产后"+days+"天"); + temp.put("days", days); } - temp.put("count", mongoTemplate.count(new Query(criteria), NewbornVisit.class)); - temp.put("benyuan", mongoTemplate.count(new Query(criteria.and("visitHositalId").is(hospitalId)), NewbornVisit.class)); - restMap.add(temp); - // Users users = mapper.getUsers(Integer.parseInt(visit.getDoctor())); -// temp.put("doctorName", users == null ? null : users.getName()); } - + List nvs = mongoTemplate.find(new Query(criteria), NewbornVisit.class); + temp.put("count", nvs.size()); + int benyuan = 0; + for (NewbornVisit nv : nvs) { + if(hospitalId.equals(nv.getVisitHospitalId())) { + benyuan++; + } + } + temp.put("benyuan", benyuan); + restMap.add(temp); + String doctorName = mapper.getUserName(visit.getDoctor()); + temp.put("doctorName", doctorName); } + return RespBuilder.buildSuccess(restMap); } -- 1.8.3.1