diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java index db45d45..eebd0bb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java @@ -4415,36 +4415,40 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService //建档且初诊(限本院) List filingPids = new ArrayList<>(); for (Patients patients : patientsList) { - filingPids.add(patients.getPid()); + filingPids.add(patients.getId()); } - Criteria criteria3 = Criteria.where("pid").in(filingPids) + Criteria criteria3 = Criteria.where("parentId").in(filingPids) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()) .and("checkTime").gte(startDate).lte(endDate); long filingRoAntExChu = mongoTemplate.count(Query.query(criteria3), AntExChuModel.class); //建档未初诊(包含外院初诊) - criteria.and("firstCheckTime").exists(false); - List antExChuNotList = mongoTemplate.find(Query.query(criteria), Patients.class); - //建档未初诊-下月初诊 - List antExChuNotPids = new ArrayList<>(); - for (Patients patients : antExChuNotList) { - antExChuNotPids.add(patients.getPid()); + List antExChuNotList = new ArrayList<>();//档案pid + for (Object obj : filingPids) { + Criteria criteria0 = Criteria.where("parentId").is(obj) + .and("yn").is(YnEnums.YES.getId()) + .and("checkTime").gte(startDate).lte(endDate); + long count = mongoTemplate.count(Query.query(criteria0), AntExChuModel.class); + if(count==0){ + antExChuNotList.add(obj); + } } - Criteria criteria4 = Criteria.where("pid").in(antExChuNotPids) + //建档未初诊-下月初诊 + Criteria criteria4 = Criteria.where("parentId").in(antExChuNotList) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()) .and("checkTime").gte(DateUtil.getMonthDay(startDate,1,1)).lte(DateUtil.getMonthDay(startDate,1,0)); long antExChuNext = mongoTemplate.count(Query.query(criteria4), AntExChuModel.class); //建档未初诊-外院初诊 - Criteria criteria5= Criteria.where("pid").in(antExChuNotPids) + Criteria criteria5= Criteria.where("parentId").in(antExChuNotList) .and("hospitalId").ne(hospitalId) .and("yn").is(YnEnums.YES.getId()) .and("checkTime").gte(startDate); long antExChuWai = mongoTemplate.count(Query.query(criteria5), AntExChuModel.class); //一直未初诊 int filingNotAntExChu= 0; - for (Patients patients : antExChuNotList) { - Criteria criteria6= Criteria.where("pid").is(patients.getPid()) + for (Object obj : antExChuNotList) { + Criteria criteria6= Criteria.where("parentId").is(obj) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()) .and("checkTime").gte(startDate); @@ -4461,7 +4465,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService int filingBefore=0; for (AntExChuModel antExChuModel : antExChuBeforeFiling) { Criteria criteria8 = Criteria.where("bookbuildingDate").gte(antExChuModel.getLastMenses()).lt(startDate) - .and("pid").is(antExChuModel.getPid()) + .and("parentId").is(antExChuModel.getParentId()) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()); Patients patient = mongoTemplate.findOne(Query.query(criteria8), Patients.class); @@ -4474,7 +4478,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService for (AntExChuModel antExChuModel : antExChuBeforeFiling) { Criteria criteria9 = Criteria.where("bookbuildingDate") .gte(DateUtil.getMonthDay(startDate,-1,1)).lte(DateUtil.getMonthDay(startDate,-1,0)) - .and("pid").is(antExChuModel.getPid()) + .and("parentId").is(antExChuModel.getParentId()) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()); Patients patient = mongoTemplate.findOne(Query.query(criteria9), Patients.class); @@ -4487,7 +4491,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService for (AntExChuModel antExChuModel : antExChuBeforeFiling) { Criteria criteria10 = Criteria.where("bookbuildingDate") .gte(antExChuModel.getLastMenses()).lt(DateUtil.getMonthDay(startDate,-1,1)) - .and("pid").is(antExChuModel.getPid()) + .and("parentId").is(antExChuModel.getParentId()) .and("hospitalId").is(hospitalId) .and("yn").is(YnEnums.YES.getId()); Patients patient = mongoTemplate.findOne(Query.query(criteria10), Patients.class);