From 16b49549bb2b9f1c79b970342b2a246cb3142c64 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Mon, 30 Jul 2018 10:28:40 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E5=8D=B1=E7=AD=89=E7=BA=A7=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/operate/web/facade/ViewFacade.java | 227 ++++++++++++++++----- 1 file changed, 178 insertions(+), 49 deletions(-) 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 497fc54..45d58b0 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 @@ -4871,79 +4871,208 @@ public class ViewFacade { List list = patientsService.queryPatient(patientsQuery); if (CollectionUtils.isNotEmpty(list)) { Patients patients = list.get(0); - - HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(patients.getPid(), false); AntExQuery antExQuery = new AntExQuery(); antExQuery.setYn(YnEnums.YES.getId()); antExQuery.setPid(patients.getPid()); antExQuery.setStart(DateUtil.addMonth(new Date(), -12)); - // 姓名: VARCHAR2 - // 证件号: VARCHAR2 - // 就诊卡号:VARCHAR2 - // 高危因素:VARCHAR2 - // 产检医生:VARCHAR2 - // 产检孕周:VARCHAR2 - - Element nameElement = riskElement.addElement("username"); + + Element baseElement = riskElement.addElement("baseInfo"); + + Element nameElement = baseElement.addElement("username"); nameElement.addText(patients.getUsername()); - Element cardNoElement = riskElement.addElement("cardNo"); + Element cardNoElement = baseElement.addElement("cardNo"); cardNoElement.addText(patients.getCardNo()); - Element vcCardNoElement = riskElement.addElement("vcCardNo"); + Element vcCardNoElement = baseElement.addElement("vcCardNo"); vcCardNoElement.addText(patients.getVcCardNo()); - String checkDoctor = ""; - if (StringUtils.isNotEmpty(patients.getLastCheckEmployeeId()) && FunvCommonUtil.isNumeric(patients.getLastCheckEmployeeId())) { - Users users = usersService.getUsers(Integer.parseInt(patients.getLastCheckEmployeeId())); - if (users != null && users.getYn() == YnEnums.YES.getId()) { - checkDoctor = users.getName(); + + Element birthdayElement = baseElement.addElement("birthday"); + birthdayElement.addText(DateUtil.getyyyy_MM_dd(patients.getBirth())); + + + Element phoneElement = baseElement.addElement("phone"); + phoneElement.addText(patients.getPhone()); + + Element ageElement = baseElement.addElement("age"); + ageElement.addText(DateUtil.getAge(patients.getBirth(),new Date())+""); + + Element dueDateElement = baseElement.addElement("dueDate"); + dueDateElement.addText(DateUtil.getyyyy_MM_dd(patients.getDueDate())); + + //初诊记录 + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setYn(YnEnums.YES.getId()); + antExChuQuery.setParentId(patients.getId()); + List antExChuModels = antenatalExaminationService.queryAntExChu(antExChuQuery); + if (CollectionUtils.isNotEmpty(antExChuModels)) { + AntExChuModel an = antExChuModels.get(0); + + Element checkElement = riskElement.addElement("check"); + + String checkDoctor = ""; + if (StringUtils.isNotEmpty(an.getProdDoctor()) && FunvCommonUtil.isNumeric(an.getProdDoctor())) { + Users users = usersService.getUsers(Integer.parseInt(an.getProdDoctor())); + if (users != null && users.getYn() == YnEnums.YES.getId()) { + checkDoctor = users.getName(); + } } - } - Element checkDoctorElement = riskElement.addElement("checkDoctor"); - checkDoctorElement.addText(checkDoctor); + Element checkDoctorElement = checkElement.addElement("checkDoctor"); + checkDoctorElement.addText(checkDoctor); - Element checkWeekElement = riskElement.addElement("checkWeek"); - checkWeekElement.addText(patients.getLastCTime() == null ? "" : DateUtil.getWeekDesc(patients.getLastMenses(), patients.getLastCTime())); + Element checkWeekElement = checkElement.addElement("checkWeek"); + checkWeekElement.addText(an.getCheckTime() == null ? "" : DateUtil.getWeekDesc(patients.getLastMenses(), an.getCheckTime())); + Element checkDateElement = checkElement.addElement("checkDate"); + checkDateElement.addText(DateUtil.getyyyy_MM_dd(an.getCheckTime())); - List riskList = highScoreResult.getHighRisk(); - if (CollectionUtils.isNotEmpty(riskList)) - { - for (int i = 0 ;i < riskList.size() ; i++) - { - Map rmap = (Map) riskList.get(i); - String color = rmap.get("color"); - if ("risk_green".equals(color)) - { - color = "绿色"; + + String hospital = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(an.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(an.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + hospital = organization.getName(); } - else if ("risk_orange".equals(color)) + } + Element checkHospitalElement = checkElement.addElement("checkHospital"); + checkHospitalElement.addText(hospital); + + Element nextCheckDateElement = checkElement.addElement("nextCheckDate"); + nextCheckDateElement.addText(an.getNextCheckTime() == null ? "" : DateUtil.getyyyy_MM_dd(an.getNextCheckTime())); + + Map map = new HashMap(); + //处理高危因素 + getRisk(an.getHighrisk(), an.getOtherHighRisk(), map); + + List riskList = (List)map.get("highRisk"); + if (CollectionUtils.isNotEmpty(riskList)) + { + for (int i = 0 ;i < riskList.size() ; i++) { - color = "橙色"; + Map rmap = (Map) riskList.get(i); + String color = rmap.get("color"); + if ("risk_green".equals(color)) + { + color = "绿色"; + } + else if ("risk_orange".equals(color)) + { + color = "橙色"; + } + else if ("risk_yellow".equals(color)) + { + color = "黄色"; + } + else if ("risk_red".equals(color)) + { + color = "红色"; + } + else if ("risk_purple".equals(color)) + { + color = "紫色"; + } + Element riskFactorElement = checkElement.addElement("riskFactor"); + + String name = rmap.get("name"); + Element nElement = riskFactorElement.addElement("riskName"); + nElement.addText(name); + + Element colorElement = riskFactorElement.addElement("color"); + colorElement.addText(color); } - else if ("risk_yellow".equals(color)) - { - color = "黄色"; + } + + } + + AntExQuery exQuery = new AntExQuery(); + exQuery.setParentId(patients.getId()); + exQuery.setYn(YnEnums.YES.getId()); + List anmodels = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery().addOrder(Sort.Direction.DESC, + "created")); + if (CollectionUtils.isNotEmpty(anmodels)) { + + for ( AntenatalExaminationModel ae : anmodels) + + { + Element checkElement = riskElement.addElement("check"); + + String checkDoctor = ""; + if (StringUtils.isNotEmpty(ae.getCheckDoctor()) && FunvCommonUtil.isNumeric(ae.getCheckDoctor())) { + Users users = usersService.getUsers(Integer.parseInt(ae.getCheckDoctor())); + if (users != null && users.getYn() == YnEnums.YES.getId()) { + checkDoctor = users.getName(); + } } - else if ("risk_red".equals(color)) - { - color = "红色"; + + Element checkDoctorElement = checkElement.addElement("checkDoctor"); + checkDoctorElement.addText(checkDoctor); + + + Element checkWeekElement = checkElement.addElement("checkWeek"); + checkWeekElement.addText(ae.getCheckDate() == null ? "" : DateUtil.getWeekDesc(patients.getLastMenses(), ae.getCheckDate())); + + Element checkDateElement = checkElement.addElement("checkDate"); + checkDateElement.addText(DateUtil.getyyyy_MM_dd(ae.getCheckDate())); + + + String hospital = ""; + if (org.apache.commons.lang.StringUtils.isNotEmpty(ae.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(ae.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + hospital = organization.getName(); + } } - else if ("risk_purple".equals(color)) + Element checkHospitalElement = checkElement.addElement("checkHospital"); + checkHospitalElement.addText(hospital); + + Element nextCheckDateElement = checkElement.addElement("nextCheckDate"); + nextCheckDateElement.addText(ae.getNextCheckTime() == null ? "" : DateUtil.getyyyy_MM_dd(ae.getNextCheckTime())); + + + Map map = new HashMap(); + //处理高危因素 + getRisk(ae.getRiskFactor(), ae.getOtherRisk(), map); + + List riskList = (List)map.get("highRisk"); + if (CollectionUtils.isNotEmpty(riskList)) { - color = "紫色"; - } - Element riskFactorElement = riskElement.addElement("riskFactor"); + for (int i = 0 ;i < riskList.size() ; i++) + { + Map rmap = (Map) riskList.get(i); + String color = rmap.get("color"); + if ("risk_green".equals(color)) + { + color = "绿色"; + } + else if ("risk_orange".equals(color)) + { + color = "橙色"; + } + else if ("risk_yellow".equals(color)) + { + color = "黄色"; + } + else if ("risk_red".equals(color)) + { + color = "红色"; + } + else if ("risk_purple".equals(color)) + { + color = "紫色"; + } + Element riskFactorElement = checkElement.addElement("riskFactor"); - String name = rmap.get("name"); - Element nElement = riskFactorElement.addElement("riskName"); - nElement.addText(name); + String name = rmap.get("name"); + Element nElement = riskFactorElement.addElement("riskName"); + nElement.addText(name); - Element colorElement = riskFactorElement.addElement("color"); - colorElement.addText(color); + Element colorElement = riskFactorElement.addElement("color"); + colorElement.addText(color); + } + } } } } -- 1.8.3.1