diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ViewController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ViewController.java index b733220..c0fede5 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ViewController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ViewController.java @@ -1103,5 +1103,24 @@ public class ViewController extends BaseController { return viewFacade.getBabyScreeningInfo(blNo); } + /** + * 通过请求接口返回本院新生儿及家长的基本信息 + * + * @param cardNo + * @param Authorization + * @Author: 武涛涛 + * @Date: 2020/11/9 16:05 + */ + @RequestMapping(value = "/getBabyScreening", method = RequestMethod.GET) + @ResponseBody + public BaseObjectResponse getBabyScreening(@RequestParam(required = true) String cardNo, + @RequestHeader(required = true) String Authorization) { + if (StringUtils.isEmpty(Authorization) || !"1a8152fc04c86b9cca3244e0e52ecb33".equals(Authorization)) + { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.TOKEN_EXPIRE).setErrormsg("Authorization验证失败"); + } + + return viewFacade.getBabyScreening(cardNo); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java index b844baf..ba0f11b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java @@ -7902,6 +7902,74 @@ public class ViewFacade { } return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(data); } + public BaseObjectResponse getBabyScreening(String cardNo) { + + if (StringUtils.isEmpty(cardNo)) { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.DATA_EXIST).setErrormsg("身份证号码不能为空"); + } + Map data = new HashMap(); + + PersonModel personModel = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardNo).and("type").ne(2)), PersonModel.class); + if (personModel != null) { + String personModelId = personModel.getId(); + List models = mongoTemplate.find(Query.query(Criteria.where("pid").is(personModelId)). + with(new Sort(Sort.Direction.DESC, "created")), MaternalDeliverModel.class); + if (CollectionUtils.isNotEmpty(models)) { + MaternalDeliverModel deliverModel = models.get(0); + String parentId = deliverModel.getParentId(); + Patients patientsModel = mongoTemplate.findOne(Query.query(Criteria.where("id").is(parentId)), Patients.class); + if (patientsModel != null) { + //data.put("blNo", blNo);//住院号 + data.put("mommyName", patientsModel.getUsername()); + data.put("phone", patientsModel.getPhone()); + + String dueWeek = ""; + String week = (patientsModel.getFmWeek() / 7) + ""; + int day = (patientsModel.getFmWeek() % 7); + dueWeek = "孕" + week + "周" + (day > 0 ? "+" + day + "天" : ""); + Map handDueWeekMap = deliverModel.getHandDueWeek(); + if (handDueWeekMap != null && handDueWeekMap.size() > 0 && handDueWeekMap.get("week") != null && com.lyms.platform.common.utils.StringUtils.isNotEmpty(String.valueOf(handDueWeekMap.get("week")))) { + dueWeek = "孕" + String.valueOf(handDueWeekMap.get("week")) + "周" + ((handDueWeekMap.get("day") == null + || String.valueOf(handDueWeekMap.get("day")).equals("0") || String.valueOf(handDueWeekMap.get("day")).equals("")) ? "" : "+" + String.valueOf(handDueWeekMap.get("day")) + "天"); + } + data.put("week", dueWeek); + + List babies = new ArrayList <>(); + for (MaternalDeliverModel.Baby baby : deliverModel.getBaby()) { + Map b = new HashMap(); + + b.put("dueTime", baby.getDueTime()); + b.put("weight", baby.getBabyWeight()); + b.put("hegint", baby.getBabyHeight()); + b.put("sex", baby.getBabyGender()); + babies.add(b); + } + + data.put("babies", babies); + + data.put("cardNo", patientsModel.getCardNo()); + + String live = ""; //居住性质 对应户籍 + if (StringUtils.isNotEmpty(patientsModel.getPcensusTypeId())) { + live = patientsModel.getPcensusTypeId(); + } + + String registered = ""; //户口性质 对应居住类别 + if (StringUtils.isNotEmpty(patientsModel.getPliveTypeId())) { + registered = patientsModel.getPliveTypeId(); + } + + data.put("registered", registered); + data.put("live", live); + } + } else { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.DATA_EXIST).setErrormsg("孕产婴系统没有找到对应的产妇分娩信息"); + } + } else { + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.DATA_EXIST).setErrormsg("孕产婴系统没有找到对应的产妇"); + } + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(data); + } public BaseObjectResponse findDtAntExChuData(String id) {