From 3570c3e45d85aa09f7f4c3fe7a29be0218119f75 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Tue, 12 Jun 2018 15:38:18 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E5=8D=B1=E6=A3=80=E6=9F=A5=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lyms/platform/pojo/AntExRecordModel.java | 12 +++ .../com/lyms/platform/query/AntExRecordQuery.java | 13 ++++ .../platform/msg/remote/AmsMessageService.java | 2 +- .../src/main/resources/config.properties | 2 +- .../operate/web/facade/AntExRecordFacade.java | 85 +++++++++++++++++++--- .../web/facade/AntenatalExaminationFacade.java | 2 +- 6 files changed, 104 insertions(+), 12 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java index 9eef870..c8582ad 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java @@ -52,6 +52,10 @@ public class AntExRecordModel extends BaseModel { private List hLevel; //风险因素 private List hRisk; + + //增加风险因素 + private List incrhRisk; + //风险因素 private List screenResult ; private String pid; @@ -87,6 +91,14 @@ public class AntExRecordModel extends BaseModel { private Integer first; // 1否 2 是,是否当前医院第一次初诊 德州需求 + public List getIncrhRisk() { + return incrhRisk; + } + + public void setIncrhRisk(List incrhRisk) { + this.incrhRisk = incrhRisk; + } + public List getScreenResult() { return screenResult; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java index 8778648..972e9db 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java @@ -61,6 +61,15 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery private String areaId; private String streetId; private Integer type; + private String neqId; + + public String getNeqId() { + return neqId; + } + + public void setNeqId(String neqId) { + this.neqId = neqId; + } public Integer getFirst() { return first; @@ -437,6 +446,10 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery if(CollectionUtils.isNotEmpty(parentIds)){ condition = condition.and("parentId", parentIds, MongoOper.IN); } + if (null != neqId) { + condition = condition.and("id", neqId, MongoOper.NE); + } + if (null != pid) { condition = condition.and("pid", pid, MongoOper.IS); } diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java index c0ec6f7..d7d9693 100644 --- a/platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java @@ -173,7 +173,7 @@ public class AmsMessageService { // } public static void main(String[] args) { - Map> list = getMessageTemplateMap("197", + Map> list = getMessageTemplateMap("2100001718", AmsServiceTypeEnum.CHILD_GUIDE); List msgs = list.get("0周"); System.out.println(list); diff --git a/platform-msg-generate/src/main/resources/config.properties b/platform-msg-generate/src/main/resources/config.properties index d9d52aa..7327113 100644 --- a/platform-msg-generate/src/main/resources/config.properties +++ b/platform-msg-generate/src/main/resources/config.properties @@ -4,7 +4,7 @@ msg_base_url=https://push.stage.platform.healthbaby.com.cn #AMS地址 线上:http://data.api.healthbaby.com.cn/v1/messages 测试:http://data.api.stage.healthbaby.com.cn/v1/messages #演示地址 https://stage-rp-data-api.healthbaby.com.cn/v1/messages -ams_url=http://data.api.stage.healthbaby.com.cn/v1/messages +ams_url=http://data.api.healthbaby.com.cn/v1/messages #短信当天发送时间 如16:00 send_time=16:00 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java index c0b75c2..2b15529 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java @@ -661,6 +661,8 @@ public class AntExRecordFacade { List riskList = new ArrayList<>(); + AntExRecordQuery beforeRecordQuery = new AntExRecordQuery(); + if (map.size() > 0) { for (String patientId : map.keySet()) @@ -670,24 +672,89 @@ public class AntExRecordFacade { { if (list.size() == 1) { - AntExRecordModel after = list.get(0); - if (!(after.gethRisk() != null && after.gethRisk().contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")) - || !CollectionUtils.isNotEmpty(after.gethRisk())) + AntExRecordModel oneRecord = list.get(0); + if (!(CollectionUtils.isNotEmpty(oneRecord.gethRisk()) && oneRecord.gethRisk().contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6"))) { - riskList.add(after); + if (CollectionUtils.isNotEmpty(oneRecord.gethRisk())) + { + beforeRecordQuery.setParentId(patientId); + beforeRecordQuery.setCheckTimeEnd(oneRecord.getCheckTime()); + beforeRecordQuery.setNeqId(oneRecord.getId()); + List beforeAntRecords = recordService.queryAntExRecords(beforeRecordQuery); + if (CollectionUtils.isNotEmpty(beforeAntRecords)) + { + AntExRecordModel twoRecord = beforeAntRecords.get(0); + List currentRiskList = oneRecord.gethRisk(); + List beforeRiskList = twoRecord.gethRisk(); + if (CollectionUtils.isNotEmpty(beforeRiskList) && beforeRiskList.contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")) + { + oneRecord.setIncrhRisk(currentRiskList); + riskList.add(oneRecord); + } + else if (CollectionUtils.isNotEmpty(beforeRiskList) ) + { + List incrHrisk = new ArrayList(); + for (Object riskId : currentRiskList) + { + if (!beforeRiskList.contains(riskId)) + { + incrHrisk.add(riskId); + } + } + if (CollectionUtils.isNotEmpty(incrHrisk)) + { + oneRecord.setIncrhRisk(incrHrisk); + riskList.add(oneRecord); + } + } + } + else + { + oneRecord.setIncrhRisk(oneRecord.gethRisk()); + riskList.add(oneRecord); + } + } } - } - else if (list.size() == 2) + else if (list.size() > 1) { - AntExRecordModel after = list.get(0); - AntExRecordModel before = list.get(1); + AntExRecordModel oneRecord = list.get(0); + + if (CollectionUtils.isNotEmpty(oneRecord.gethRisk()) && oneRecord.gethRisk().contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")) + { + continue; + } + + AntExRecordModel twoRecord = list.get(1); + + List currentRiskList = oneRecord.gethRisk(); + List beforeRiskList = twoRecord.gethRisk(); + if (CollectionUtils.isNotEmpty(beforeRiskList) && beforeRiskList.contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")) + { + oneRecord.setIncrhRisk(currentRiskList); + riskList.add(oneRecord); + } + else if (CollectionUtils.isNotEmpty(beforeRiskList) ) + { + List incrHrisk = new ArrayList(); + for (Object riskId : currentRiskList) + { + if (!beforeRiskList.contains(riskId)) + { + incrHrisk.add(riskId); + } + } + if (CollectionUtils.isNotEmpty(incrHrisk)) + { + oneRecord.setIncrhRisk(incrHrisk); + riskList.add(oneRecord); + } + } } } } } - return null; } } \ No newline at end of file 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 1364aa7..598267d 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 @@ -2496,7 +2496,7 @@ public class AntenatalExaminationFacade { if(patients.getSendMsgTime()!=null){ String sendMsgTime = DateUtil.getyyyy_MM_dd1(patients.getSendMsgTime()); - Integer day = DateUtil.daysBetween(new Date(),patients.getSendMsgTime()); + Integer day = DateUtil.daysBetween(patients.getSendMsgTime(),new Date()); String sendMsg = "(上次发送时间"+sendMsgTime+"【"+day+"天前】)"; antexListResult.setLastSendMsg(sendMsg); -- 1.8.3.1