diff --git a/platform-dal/src/main/java/com/lyms/platform/query/BreastAfterVisitQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/BreastAfterVisitQuery.java index 5a1fd52..300097a 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/BreastAfterVisitQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/BreastAfterVisitQuery.java @@ -338,42 +338,57 @@ public class BreastAfterVisitQuery extends BaseQuery implements IConvertToNative c = Criteria.where("nextAfterVisitTime").gte(overdueStart); } } - if (null != nextAfterVisitTime) { - if (null != c) { - if(null!=overdueEnd){ - if (c.getCriteriaObject().containsField("nextAfterVisitTime")){ - c = c.lte(overdueEnd); - }else { - c = c.and("nextAfterVisitTime").lte(overdueEnd); - } + if (null != overdueEnd) { + if (c != null) { + if(c.getCriteriaObject().containsField("nextAfterVisitTime")){ + c=c.lte(overdueEnd); }else { - if (c.getCriteriaObject().containsField("nextAfterVisitTime")){ - c = c.lte(nextAfterVisitTime); - }else { - c = c.and("nextAfterVisitTime").lte(nextAfterVisitTime); - } + c = c.and("nextAfterVisitTime").lte(overdueEnd); } } else { - if(null!=overdueEnd){ - c = Criteria.where("nextAfterVisitTime").lte(overdueEnd); - }else { - c = Criteria.where("nextAfterVisitTime").lte(nextAfterVisitTime); - } + c = Criteria.where("nextAfterVisitTime").lte(overdueEnd); } } +// if (null != nextAfterVisitTime) { +// if (null != c) { +// if(null!=overdueEnd){ +// if (c.getCriteriaObject().containsField("nextAfterVisitTime")){ +// c = c.lte(overdueEnd); +// }else { +// c = c.and("nextAfterVisitTime").lte(overdueEnd); +// } +// }else { +// if (c.getCriteriaObject().containsField("nextAfterVisitTime")){ +// c = c.lte(nextAfterVisitTime); +// }else { +// c = c.and("nextAfterVisitTime").lte(nextAfterVisitTime); +// } +// } +// } else { +// if(null!=overdueEnd){ +// c = Criteria.where("nextAfterVisitTime").lte(overdueEnd); +// }else { +// c = Criteria.where("nextAfterVisitTime").lte(nextAfterVisitTime); +// } +// } +// } Criteria c2=MongoCondition.newInstance().getCriteria(); + if (null != nextAfterVisitTime) { + MongoCondition con = MongoCondition.newInstance(); + MongoCondition con1 = MongoCondition.newInstance("nextAfterVisitTime", nextAfterVisitTime, MongoOper.LTE); + MongoCondition con2 = MongoCondition.newInstance("nextAfterVisitTime", false, MongoOper.EXISTS); + MongoCondition con3 = MongoCondition.newInstance("nextAfterVisitTime", null, MongoOper.IS); + c2 = c2.orOperator(con.orCondition(new MongoCondition[]{con1, con2,con3}).getCriteria()); + } + Criteria c3=MongoCondition.newInstance().getCriteria(); if (null != nextAfterVisitTimeStart &&null!= nextAfterVisitTimeEnd) { - if (null != c2) { - c2 = c2.where("nextAfterVisitTime").gte(nextAfterVisitTimeStart).lte(nextAfterVisitTimeEnd); - } else { - c2 = Criteria.where("nextAfterVisitTime").gte(nextAfterVisitTimeStart).lte(nextAfterVisitTimeEnd); - } + c3 = c3.where("nextAfterVisitTime").gte(nextAfterVisitTimeStart).lte(nextAfterVisitTimeEnd); } if (null != c) { - return new MongoCondition(c.andOperator(condition.getCriteria(),c2)).toMongoQuery(); + return new MongoCondition(c.andOperator(condition.getCriteria(),c2,c3)).toMongoQuery(); } - return new MongoCondition(c2.andOperator(condition.getCriteria())).toMongoQuery(); + return new MongoCondition(c2.andOperator(condition.getCriteria(),c3)).toMongoQuery(); } } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/CervixVisitQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/CervixVisitQuery.java index 3de5161..1378ce9 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/CervixVisitQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/CervixVisitQuery.java @@ -337,7 +337,8 @@ public class CervixVisitQuery extends BaseQuery implements IConvertToNativeQuery MongoCondition con = MongoCondition.newInstance(); MongoCondition con1 = MongoCondition.newInstance("nextAfterVisitTime", nextAfterVisitTime, MongoOper.LTE); MongoCondition con2 = MongoCondition.newInstance("nextAfterVisitTime", false, MongoOper.EXISTS); - c2 = c2.orOperator(con.orCondition(new MongoCondition[]{con1, con2}).getCriteria()); + MongoCondition con3 = MongoCondition.newInstance("nextAfterVisitTime", null, MongoOper.IS); + c2 = c2.orOperator(con.orCondition(new MongoCondition[]{con1, con2,con3}).getCriteria()); } Criteria c3=MongoCondition.newInstance().getCriteria(); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java index 952939e..a9bbfba 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java @@ -808,6 +808,10 @@ public class CancerScreeningFacade { model.setNextAfterVisitTime(RecordModel.getNextAfterVisitTime()); model.setType(0);//追访状态,修改预约下次时间后改为待追访。 } + //选择不需要预约下次追访时间置为空 + if(0==RecordModel.getAppointment()){ + model.setNextAfterVisitTime(null); + } breastAfterVisitService.updateOneBreastAfterVisit(model,1); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java index 8a760c4..da99c9b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java @@ -1289,7 +1289,10 @@ public class CervicalCancerServiceImpl implements CervicalCancerService { model.setNextAfterVisitTime(RecordModel.getNextAfterVisitTime()); model.setType(0);//追访状态,修改预约下次时间后改为待追访。 } - + //选择不需要预约下次追访时间置为空 + if(0==RecordModel.getAppointment()){ + model.setNextAfterVisitTime(null); + } cervixVisitService.updateOneCervixVisit(model,1); return new BaseResponse("成功", ErrorCodeConstants.SUCCESS);