diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java index cfc6a68..4425fc7 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java @@ -1335,6 +1335,8 @@ public class Patients extends BaseModel { downRecord.setAppointmentDate(new Date()); downRecord.setStop("0"); downRecord.setTrackType(TrackDownDateEnums.C.getId()); + //特殊处理 产筛预约追访时间 + downRecord.setSieveAppointmentDate(new Date()); return downRecord; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java index ee61aeb..7498ab7 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java @@ -128,6 +128,7 @@ public class ResidentsArchiveModel extends BaseModel { //追访预约时间 private Date followupTime; + //是否终止流程 0 正常流程 1 终止流程 private String stop; @@ -185,6 +186,7 @@ public class ResidentsArchiveModel extends BaseModel { this.followupTime = followupTime; } + public String getCheckup() { return checkup; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDownRecord.java b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDownRecord.java index d2d6fe3..a976375 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDownRecord.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDownRecord.java @@ -60,12 +60,35 @@ public class TrackDownRecord extends BaseModel { //预约追访日期 private Date appointmentDate; + //特殊 产筛预约追访时间 + private Date sieveAppointmentDate; + + //特殊 产筛追访日期 + private Date sieveTrackDownDate; + //追访日期 private Date trackDownDate; + //是否终止流程 private String stop; + public Date getSieveAppointmentDate() { + return sieveAppointmentDate; + } + + public Date getSieveTrackDownDate() { + return sieveTrackDownDate; + } + + public void setSieveTrackDownDate(Date sieveTrackDownDate) { + this.sieveTrackDownDate = sieveTrackDownDate; + } + + public void setSieveAppointmentDate(Date sieveAppointmentDate) { + this.sieveAppointmentDate = sieveAppointmentDate; + } + public Date getWomanBuildTime() { return womanBuildTime; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/TrackDownRecordQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/TrackDownRecordQuery.java index eb9baa0..649163f 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/TrackDownRecordQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/TrackDownRecordQuery.java @@ -84,6 +84,18 @@ public class TrackDownRecordQuery extends BaseQuery implements IConvertToNativeQ private Date endBeOverdueDays; + //查询TrackType; + private Integer queryTrackType; + + public Integer getQueryTrackType() { + return queryTrackType; + } + + public void setQueryTrackType(Integer queryTrackType) { + this.queryTrackType = queryTrackType; + } + + public Date getStartBeOverdueDays() { return startBeOverdueDays; } @@ -382,6 +394,24 @@ public class TrackDownRecordQuery extends BaseQuery implements IConvertToNativeQ condition = condition.and("stop", "1", MongoOper.IS); } } + + /*******产筛特殊处理**********/ + if (queryTrackType != null && queryTrackType == 4) { + if (null != followupStatus) { + if (followupStatus == 0) { + Date newDate = DateUtil.parseYMDHMS(DateUtil.getyyyy_MM_dd(new Date()) + " 00:00:00"); + condition = condition.and("sieveAppointmentDate", newDate, MongoOper.GTE); + } else if (followupStatus == 1) { + Date newDate = DateUtil.parseYMDHMS(DateUtil.getyyyy_MM_dd(new Date()) + " 00:00:00"); + condition = condition.and("sieveAppointmentDate", newDate, MongoOper.LT); + } else if (followupStatus == 2) { + condition = condition.and("stop", "1", MongoOper.IS); + } + } + + } + + Criteria c1 = null; if (StringUtils.isNotEmpty(key)) { @@ -471,6 +501,55 @@ public class TrackDownRecordQuery extends BaseQuery implements IConvertToNativeQ c1 = Criteria.where("appointmentDate").lte(endBeOverdueDays); } } + /******产筛特殊处理*******/ + if (null != queryTrackType && queryTrackType == 4) { + if (null != trackDownDateStart) { + if (null != c1) { + c1 = c1.and("sieveTrackDownDate").gte(trackDownDateStart); + } else { + c1 = Criteria.where("sieveTrackDownDate").gte(trackDownDateStart); + } + } + if (null != trackDownDateEnd) { + if (c1 != null) { + c1 = c1.lte(trackDownDateEnd); + } else { + c1 = Criteria.where("sieveTrackDownDate").lte(trackDownDateEnd); + } + } + + if (null != startBeOverdueDays) { + if (null != c1) { + c1 = c1.and("sieveAppointmentDate").gte(startBeOverdueDays); + } else { + c1 = Criteria.where("sieveAppointmentDate").gte(startBeOverdueDays); + } + } + if (null != endBeOverdueDays) { + if (c1 != null) { + c1 = c1.lte(endBeOverdueDays); + } else { + c1 = Criteria.where("sieveAppointmentDate").lte(endBeOverdueDays); + } + } + if (null != appointmentDateStart) { + if (null != c1) { + c1 = c1.and("sieveAppointmentDate").gte(appointmentDateStart); + } else { + c1 = Criteria.where("sieveAppointmentDate").gte(appointmentDateStart); + } + } + if (null != appointmentDateEnd) { + if (c1 != null) { + c1 = c1.lte(appointmentDateEnd); + } else { + c1 = Criteria.where("sieveAppointmentDate").lte(appointmentDateEnd); + } + } + + + } + if (null != c1) { condition = condition.andCondition(new MongoCondition(c1)); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java index 2d0dfd5..a9affe5 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java @@ -447,14 +447,18 @@ public class TrackDownFacade { downRecordQuery.setFoundStart(downQueryRequest.getFoundDateStart()); downRecordQuery.setFoundEnd(downQueryRequest.getFoundDateEnd()); //预约追访时间 - downRecordQuery.setAppointmentDateStart(DateUtil.parseYMD(downQueryRequest.getAppointmentDateStart())); - downRecordQuery.setAppointmentDateEnd(DateUtil.parseYMD(downQueryRequest.getAppointmentDateEnd())); + downRecordQuery.setAppointmentDateStart(DateUtil.parseYMDHMS(downQueryRequest.getAppointmentDateStart() + " 00:00:00")); + downRecordQuery.setAppointmentDateEnd(DateUtil.parseYMDHMS(downQueryRequest.getAppointmentDateEnd() + " 23:59:59")); //追访状态 downRecordQuery.setFollowupStatus(downQueryRequest.getFollowupStatus()); //追访时间 downRecordQuery.setTrackDownDateStart(DateUtil.parseYMD(downQueryRequest.getTrackDownDateStart())); downRecordQuery.setTrackDownDateEnd(DateUtil.parseYMD(downQueryRequest.getTrackDownDateEnd())); + //设置查询queryTrackType 如果是4 执行产筛的查询条件 + downRecordQuery.setQueryTrackType(downQueryRequest.getTrackType()); + + //逾期天数 if (null != downQueryRequest.getBeOverdueDays()) { Calendar instance = Calendar.getInstance(); @@ -943,8 +947,17 @@ public class TrackDownFacade { TrackDown trackDown = mongoTemplate.findOne(Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); if (trackDown != null) { temp.put("result", StringUtils.isEmpty(trackDown.getResult()) ? "--" : trackDown.getResult()); // 追访结果 - temp.put("trackDownTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(trackDown.getTrackDownDate())); // 追访时间 - temp.put("yyzfTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(downRecord.getAppointmentDate())); // 预约时间 + + + //获取产筛的预约时间 跟追访时间 + if (downRecord.getTrackType() != null && downRecord.getTrackType() == 4) { + temp.put("yyzfTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(downRecord.getSieveAppointmentDate())); // 产筛预约时间 + temp.put("trackDownTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(downRecord.getSieveTrackDownDate())); // 产筛追访时间 + } else { + temp.put("yyzfTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(downRecord.getAppointmentDate())); // 预约时间 + temp.put("trackDownTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(trackDown.getTrackDownDate())); // 追访时间 + } + } else { temp.put("result", "--"); // 婚检追访结果 temp.put("trackDownTime", "--"); // 追访时间 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ResidentsArchiveAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ResidentsArchiveAddRequest.java index 754b166..7c3f9d6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ResidentsArchiveAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ResidentsArchiveAddRequest.java @@ -248,6 +248,8 @@ public class ResidentsArchiveAddRequest implements IBasicRequestConvert