From 343e0e43e3bdeb919d2ffed4849d702acf34959c Mon Sep 17 00:00:00 2001 From: wtt Date: Sat, 14 Nov 2020 17:02:56 +0800 Subject: [PATCH] update --- .../com/lyms/platform/pojo/BabyCheckModel.java | 11 +++++ .../com/lyms/platform/query/PatientsQuery.java | 24 ++++++++++ .../operate/web/facade/BabyCheckFacade.java | 18 +++++++ .../platform/operate/web/facade/PatientFacade.java | 56 ++++++++++++++++++++-- .../platform/operate/web/facade/ViewFacade.java | 1 + .../operate/web/request/BabyCheckRequest.java | 11 +++++ .../web/request/RiskPatientsQueryRequest.java | 14 +++++- .../operate/web/result/BabyBasicResult.java | 19 +++++++- .../operate/web/result/BabyCheckPageResult.java | 11 ++++- .../operate/web/result/BabyCheckResult.java | 11 ++++- .../operate/web/result/BabyChooseResult.java | 22 +++++++++ 11 files changed, 190 insertions(+), 8 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java index 126dabd..2d575a3 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java @@ -173,6 +173,8 @@ public class BabyCheckModel extends BaseModel { //血红蛋白 private String hemoglobin; + //血常规检查状态 null | 1是未检查,2是检查 + private String hCheckStatus; //白细胞计数 private String whiteCell; @@ -310,6 +312,7 @@ public class BabyCheckModel extends BaseModel { **/ //辅助检查状态(1检查/null是历史数据,2未检查) private String jcz; + //尿碘 public String nd; /*****乙肝五项***/ @@ -1445,6 +1448,14 @@ public class BabyCheckModel extends BaseModel { return ylSelect; } + public String gethCheckStatus() { + return hCheckStatus; + } + + public void sethCheckStatus(String hCheckStatus) { + this.hCheckStatus = hCheckStatus; + } + public void setYlSelect(String ylSelect) { this.ylSelect = ylSelect; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java index becb6ce..6908c85 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java @@ -286,6 +286,8 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { private Date fmDateStart; private Date fmDateEnd; private Date nextCheckTime; + private boolean nextCheckTimeNe; + private boolean nextCheckTimeIs; private Date isNextCheckTime; private Date nextCheckTimeStart; private Date nextCheckTimeEnd; @@ -1211,6 +1213,12 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { if (null != nextCheckTime) { condition = condition.and("nextCheckTime", nextCheckTime, MongoOper.NE); } + if (nextCheckTimeNe) { + condition = condition.and("nextCheckTime", null, MongoOper.NE); + } + if (nextCheckTimeIs ) { + condition = condition.and("nextCheckTime", null, MongoOper.IS); + } if (null != isNextCheckTime) { condition = condition.and("nextCheckTime", isNextCheckTime, MongoOper.IS); @@ -2231,6 +2239,22 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { return hScoreStart; } + public boolean isNextCheckTimeNe() { + return nextCheckTimeNe; + } + + public void setNextCheckTimeNe(boolean nextCheckTimeNe) { + this.nextCheckTimeNe = nextCheckTimeNe; + } + + public boolean isNextCheckTimeIs() { + return nextCheckTimeIs; + } + + public void setNextCheckTimeIs(boolean nextCheckTimeIs) { + this.nextCheckTimeIs = nextCheckTimeIs; + } + public void sethScoreStart(Integer hScoreStart) { this.hScoreStart = hScoreStart; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java index c35f407..6cb34e7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java @@ -247,6 +247,7 @@ public class BabyCheckFacade extends BaseServiceImpl { model.setJcz(request.getJcz());//辅助检查状态(1检查/null是历史数据,2未检查) model.setCszt(request.getCszt());//经皮疸红素加已测、未测(1已测/null是历史数据,2未测) model.setSlscx(JsonUtil.obj2JsonString(request.getSlscx()));//视力筛查项(select 1正常、 2异常:qtText自己填写) + model.sethCheckStatus(request.gethCheckStatus()); //血常规检查状态 null | 1是未检查,2是检查 model.setHeightEvaluateStandard(request.getHeightEvaluateStandard()); model.setHeadEvaluateStandard(request.getHeadEvaluateStandard()); @@ -1331,6 +1332,22 @@ public class BabyCheckFacade extends BaseServiceImpl { base.setYn(model.getYn()); base.setDataStatus(model.getDataStatus()); base.setmHighRiskReason(mongoUtil.findColor(model.getmHighRiskReason())); + if(CollectionUtils.isNotEmpty(model.getHighRiskInfo())){ + List highRiskInfos = basicConfigFacade.queryBaseInfoByMap(model.getHighRiskInfo()); + for (Map h : highRiskInfos) { + h.put("color", "risk_yellow"); + } + base.setHighRiskInfo(highRiskInfos);//儿童高危详情 + } + + if(CollectionUtils.isNotEmpty(model.getWeakSonInfo())){ + List weakSonInfos = basicConfigFacade.queryBaseInfoByMap(model.getWeakSonInfo()); + for (Map w : weakSonInfos) { + w.put("color", "risk_yellow"); + } + base.setWeakSonInfo(weakSonInfos);//体弱儿详情 + } + base.setBabyLastHighRisk(getBabyLastHighRisk(model.getPid())); base.setId(id); base.setSex(model.getSex()); @@ -1805,6 +1822,7 @@ public class BabyCheckFacade extends BaseServiceImpl { model.setCszt(checkModel.getCszt()); //视力筛查项(select 1正常、 2异常:qtText自己填写) model.setSlscx(checkModel.getSlscx()); + model.sethCheckStatus(checkModel.gethCheckStatus());//血常规检查状态 null | 1是未检查,2是检查 /*秦皇岛儿保检查使用*/ model.setBim(checkModel.getBim()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java index 34fd684..7fc6223 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java @@ -44,6 +44,7 @@ import org.springframework.util.StopWatch; import javax.servlet.http.HttpServletResponse; import java.io.OutputStream; +import java.text.SimpleDateFormat; import java.util.*; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; @@ -664,10 +665,31 @@ public class PatientFacade { //查询符合条件的孕妇 StopWatch stopWatch = new StopWatch("queryPatient1 -" + hospital); stopWatch.start(); - System.out.println(patientsQuery.convertToQuery().convertToMongoQuery().toString()); - List patientses = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); - stopWatch.stop(); + //滦平实现 下次预约时间升序方式,但是空默认在最前特两次查询组合在一起实现 + List patientses = new ArrayList <>(); + if("lp".equals(riskPatientsQueryRequest.getHstart())){ + if(patientsQuery.getNextCheckTimeStart()!=null || patientsQuery.getNextCheckTimeEnd()!=null){ + //下次检查时间非空,不用考虑空排序在前面问题 + patientses = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); + }else { + //下次检查时间空,先获取有检查数据 + patientsQuery.setNextCheckTimeNe(true); + List patients1 = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); + if(CollectionUtils.isNotEmpty(patients1)){ + patientses = patients1; + } + //在获取没有有检查数据 + patientsQuery.setNextCheckTimeIs(true); + patientsQuery.setNextCheckTimeNe(false); + List patientsesm = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); + patientses.addAll(patientsesm); + } + }else { + //以前逻辑 + patientses = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); + } + stopWatch.stop(); logger.info(stopWatch.toString()); List data = new ArrayList(); if (CollectionUtils.isNotEmpty(patientses)) { @@ -708,7 +730,33 @@ public class PatientFacade { // } return new BaseListResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(data).setPageInfo(patientsQuery.getPageInfo()); } - + /** + * list排序(按照日期升序) + * + * @param list + */ + private static void ListSort(List list) { + Collections.sort(list, new Comparator() { + @Override + public int compare(Patients o1, Patients o2) { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + try { +// Date dt1 = format.parse(o1.getNextCheckTime()); +// Date dt2 = format.parse(o2.getNextCheckTime()); + if (o1.getNextCheckTime().getTime() > o2.getNextCheckTime().getTime()) { + return 1; + } else if (o1.getNextCheckTime().getTime() < o2.getNextCheckTime().getTime()) { + return -1; + } else { + return 0; + } + } catch (Exception e) { + e.printStackTrace(); + } + return 0; + } + }); + } /** * 查询双胎全部孕妇管理 * 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 8ecc260..27b9adb 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 @@ -5441,6 +5441,7 @@ public class ViewFacade { model.setCszt(checkModel.getCszt()); //视力筛查项(select 1正常、 2异常:qtText自己填写) model.setSlscx(checkModel.getSlscx()); + model.sethCheckStatus(checkModel.gethCheckStatus());//血常规检查状态 null | 1是未检查,2是检查 /*秦皇岛儿保检查使用*/ model.setBim(checkModel.getBim()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java index 42a4d9c..7914c1c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java @@ -194,6 +194,9 @@ public class BabyCheckRequest { private String heartAction; //血常规:血红蛋白 private String hemoglobin; + //血常规检查状态 null | 1是未检查,2是检查 + private String hCheckStatus; + //血常规:血红蛋白券 private String hemoglobinCoupon; //血常规:白细胞计数 @@ -588,6 +591,14 @@ public class BabyCheckRequest { this.movementIA = movementIA; } + public String gethCheckStatus() { + return hCheckStatus; + } + + public void sethCheckStatus(String hCheckStatus) { + this.hCheckStatus = hCheckStatus; + } + public String getMovementDQ() { return movementDQ; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/RiskPatientsQueryRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/RiskPatientsQueryRequest.java index 9f06ce5..257765b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/RiskPatientsQueryRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/RiskPatientsQueryRequest.java @@ -15,6 +15,9 @@ import java.util.Date; */ @Form public class RiskPatientsQueryRequest extends BasePageQueryRequest { + //判断定制机构 lp滦平 + private String hstart; + @FormParam //孕妇名字 private String name; @@ -240,7 +243,8 @@ public class RiskPatientsQueryRequest extends BasePageQueryRequest { SORT_MODIFIED("1", "modified"),//按更新时间排 SORT_BUILD_DATE("2", "bookbuildingDate"),//按建档时间排 SORT_DUE_TIME("3", "lastMenses"),//按孕产期排 - SORT_DUE_DETE("4", "lastMenses");//按当前孕周排 + SORT_DUE_DETE("4", "lastMenses"),//按当前孕周排 + SORT_DUE_DATE("5", "nextCheckTime");//下次产检时间 private SortEnum(String id, String sort) { this.id = id @@ -633,6 +637,14 @@ public class RiskPatientsQueryRequest extends BasePageQueryRequest { return endHScore; } + public String getHstart() { + return hstart; + } + + public void setHstart(String hstart) { + this.hstart = hstart; + } + public void setEndHScore(Integer endHScore) { this.endHScore = endHScore; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyBasicResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyBasicResult.java index c827cc7..d1f4d9a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyBasicResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyBasicResult.java @@ -7,7 +7,8 @@ import java.util.Map; * Created by Administrator on 2016/6/20. */ public class BabyBasicResult { - + private List highRiskInfo;//儿童高危详情 + private List weakSonInfo;//体弱儿详情 private List> mHighRiskReason; public List> getmHighRiskReason() { @@ -190,6 +191,22 @@ public class BabyBasicResult { return correctValue; } + public List getHighRiskInfo() { + return highRiskInfo; + } + + public void setHighRiskInfo(List highRiskInfo) { + this.highRiskInfo = highRiskInfo; + } + + public List getWeakSonInfo() { + return weakSonInfo; + } + + public void setWeakSonInfo(List weakSonInfo) { + this.weakSonInfo = weakSonInfo; + } + public void setCorrectValue(String correctValue) { this.correctValue = correctValue; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java index 871bd0c..cd12552 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java @@ -373,7 +373,8 @@ public class BabyCheckPageResult { //血红蛋白 private String hemoglobin; - + //血常规检查状态 null | 1是未检查,2是检查 + private String hCheckStatus; //白细胞 private String whiteCell; @@ -2128,6 +2129,14 @@ public class BabyCheckPageResult { this.urineAcetone = urineAcetone; } + public String gethCheckStatus() { + return hCheckStatus; + } + + public void sethCheckStatus(String hCheckStatus) { + this.hCheckStatus = hCheckStatus; + } + public String getHematuria() { return hematuria; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckResult.java index a8f92ab..70d9a45 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckResult.java @@ -304,7 +304,8 @@ public class BabyCheckResult { //血红蛋白 private String hemoglobin; - + //血常规检查状态 null | 1是未检查,2是检查 + private String hCheckStatus; //白细胞 private String whiteCell; @@ -1609,6 +1610,14 @@ public class BabyCheckResult { return height; } + public String gethCheckStatus() { + return hCheckStatus; + } + + public void sethCheckStatus(String hCheckStatus) { + this.hCheckStatus = hCheckStatus; + } + public void setHeight(String height) { this.height = height; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyChooseResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyChooseResult.java index d25dffb..eb90757 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyChooseResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyChooseResult.java @@ -1,5 +1,8 @@ package com.lyms.platform.operate.web.result; +import java.util.List; +import java.util.Map; + /** * Created by Administrator on 2016/6/21. */ @@ -14,6 +17,25 @@ public class BabyChooseResult { private String hospitalId; private String hospitalName; private String blNo; + private List highRiskInfo;//儿童高危详情 + private List weakSonInfo;//体弱儿详情 + + + public List getHighRiskInfo() { + return highRiskInfo; + } + + public void setHighRiskInfo(List highRiskInfo) { + this.highRiskInfo = highRiskInfo; + } + + public List getWeakSonInfo() { + return weakSonInfo; + } + + public void setWeakSonInfo(List weakSonInfo) { + this.weakSonInfo = weakSonInfo; + } public String getTureMonthAge() { return tureMonthAge; -- 1.8.3.1