diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyBookbuildingService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyBookbuildingService.java index 19bb89c..41bd1a1 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyBookbuildingService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyBookbuildingService.java @@ -1,13 +1,19 @@ package com.lyms.platform.biz.service; import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.pojo.*; +import com.lyms.platform.query.BabyCheckModelQuery; import com.lyms.platform.query.BabyModelQuery; import com.lyms.platform.query.PatientsQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; import org.springframework.stereotype.Service; import com.lyms.platform.biz.dal.IBabyBookBuildingDao; @@ -23,7 +29,9 @@ public class BabyBookbuildingService { private IBabyBookBuildingDao babyBookBuildingDao; @Autowired private PatientsService patientsService; - + + @Autowired + private MongoTemplate mongoTemplate; public BabyModel addBabyBookbuilding(BabyModel babyModel) { return babyBookBuildingDao.addBaby(babyModel); @@ -117,7 +125,43 @@ public class BabyBookbuildingService { public List queryBabyBuildByCond(BabyModelQuery babyQuery,String sortkey,Sort.Direction sort) { MongoQuery query = babyQuery.convertToQuery(); - List list=babyBookBuildingDao.queryBabyWithQuery(query); + + //不要动。这里是查询一个儿童所有检查记录是否有高危详情判断是否高危儿(以后可能用到) +// if(null!=babyQuery.getHealthHigh()){ +// List list=babyBookBuildingDao.queryBabyWithQuery(query); +// if(babyQuery.getHealthHigh()==0){ +// for (BabyModel babyModel : list) { +// Query query2 =Query.query(Criteria.where("buildId").is(babyModel.getId())); +// List babyCheckModelList = mongoTemplate.find(query2,BabyCheckModel.class); +// int i=0; +// for (BabyCheckModel babyCheckModel : babyCheckModelList) { +// if(CollectionUtils.isEmpty(babyCheckModel.getHighRiskInfo())){ +// i++; +// } +// } +// if (i==0) { +// list.remove(babyModel); +// } +// } +// }else{ +// for (BabyModel babyModel : list) { +// Query query2 =Query.query(Criteria.where("buildId").is(babyModel.getId())); +// List babyCheckModelList = mongoTemplate.find(query2,BabyCheckModel.class); +// int i=0; +// for (BabyCheckModel babyCheckModel : babyCheckModelList) { +// if(CollectionUtils.isNotEmpty(babyCheckModel.getHighRiskInfo())){ +// i++; +// } +// } +// if (i==0) { +// list.remove(babyModel); +// } +// } +// } +// +// } + + if (StringUtils.isNotEmpty(babyQuery.getNeed())) { babyQuery.mysqlBuild(babyBookBuildingDao.queryBabyManageCount(babyQuery.convertToQuery())); query.start(babyQuery.getOffset()).end(babyQuery.getLimit()); diff --git a/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java index 6a2f7fc..255d74e 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java @@ -379,6 +379,17 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { //儿童高危-其它高危 private String wcOtherHighRisk; + //隆华、滦平 儿保管理全部 加健康/高危 筛查 0:健康,1:高危 + private Integer healthHigh; + + public Integer getHealthHigh() { + return healthHigh; + } + + public void setHealthHigh(Integer healthHigh) { + this.healthHigh = healthHigh; + } + public String getWcOtherHighRisk() { return wcOtherHighRisk; } @@ -2006,19 +2017,34 @@ public class BabyModelQuery extends BaseQuery implements IConvertToNativeQuery { cor2 = con.orCondition(new MongoCondition[]{con1, con2}).getCriteria(); } } - //隆华、滦平 是否结案 条件查询 + + //隆华、滦平定制 Criteria cor3=MongoCondition.newInstance().getCriteria();//这里不能给null return拼接不能为空 - if(null != endCase){ - if(endCase==1){ - cor3=Criteria.where("endCase").is(endCase); - }else{ - MongoCondition con = MongoCondition.newInstance(); - MongoCondition con1 = MongoCondition.newInstance("endCase", endCase, MongoOper.IS); - MongoCondition con2 = MongoCondition.newInstance("endCase",false,MongoOper.EXISTS);//只建档没检查的也算没结案 - cor3=con.orCondition(new MongoCondition[]{con1, con2}).getCriteria(); + if(StringUtils.isNotEmpty(hospitalId)&&(hospitalId=="2100001605"||hospitalId=="2100001377")){ + //是否结案0:未结案,1:已结案 条件查询 + + if(null != endCase){ + if(endCase==1){ + cor3=Criteria.where("endCase").is(endCase); + }else{ + MongoCondition con = MongoCondition.newInstance(); + MongoCondition con1 = MongoCondition.newInstance("endCase", endCase, MongoOper.IS); + MongoCondition con2 = MongoCondition.newInstance("endCase",false,MongoOper.EXISTS);//只建档没检查的也算没结案 + cor3=con.orCondition(new MongoCondition[]{con1, con2}).getCriteria(); + } + } + //隆华、滦平 是否结案 条件查询 健康0/高危1,有没有高危详情来判断 + if(null!=healthHigh){ + if(healthHigh==0){ + condition=condition.and("highRiskInfo", false, MongoOper.EXISTS); + }else { + condition=condition.and("highRiskInfo", true, MongoOper.EXISTS); + } + } } + /** * 多个orCondition 需要添加Criteria来控制json同级两个and或者or来解决mongodb执行查询问题 */ diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java index 00b7d7b..00da97b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java @@ -267,7 +267,8 @@ public class BabyBuildController extends BaseController { @RequestParam(value = "dueWeekStart", required = false) Integer dueWeekStart, @RequestParam(value = "dueWeekEnd", required = false) Integer dueWeekEnd, @RequestParam(value = "lastCheckDoctor", required = false) String lastCheckDoctor, - @RequestParam(value = "riskCode", required = false) String riskCode + @RequestParam(value = "riskCode", required = false) String riskCode, + @RequestParam(value = "healthHigh", required = false) Integer healthHigh ) { if (CollectionUtils.isNotEmpty(highRiskInfos)) { @@ -376,6 +377,7 @@ public class BabyBuildController extends BaseController { request.setDueWeekEnd(dueWeekEnd); request.setLastCheckDoctor(lastCheckDoctor); request.setRiskCode(riskCode); + request.setHealthHigh(healthHigh); return babyBookbuildingFacade.queryBabyList(request, loginState.getId()); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index d3f85cb..304afd2 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -3347,7 +3347,9 @@ public class BabyBookbuildingFacade { babyQuery.setStreetId(StringUtils.isEmpty(request.getStreetId()) ? null : request.getStreetId()); babyQuery.setQueryNo(request.getQueryNo()); - System.out.println(babyQuery.convertToQuery().convertToMongoQuery().toString()); + //秦皇岛-儿保管理-全部 加健康/高危筛选 + babyQuery.setHealthHigh(null!=request.getHealthHigh()?request.getHealthHigh():null); +// System.out.println(babyQuery.convertToQuery().convertToMongoQuery().toString()); List models = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "created", Sort.Direction.DESC); return models; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java index 3cffdbe..466bf11 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java @@ -112,6 +112,17 @@ public class BabyManageRequest extends BaseQuery { private String lastCheckDoctor; private String riskCode; + //秦皇岛儿保管理全部 加健康/高危 筛查 0:健康,1:高危 + private Integer healthHigh; + + public Integer getHealthHigh() { + return healthHigh; + } + + public void setHealthHigh(Integer healthHigh) { + this.healthHigh = healthHigh; + } + public Integer getIsShowPhone() { return isShowPhone; }