From 949378003137be535780188dff0de454ee61a4d3 Mon Sep 17 00:00:00 2001 From: dongqin <123456> Date: Mon, 9 Sep 2019 23:59:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/BabyAfterVisitServiceImpl.java | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java index eea2597..ec5ffc0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java @@ -154,16 +154,18 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { public BaseResponse syncInitStatistics(String babyId, String startTime, String endTime, String hospitalId) throws ExecutionException, InterruptedException { BaseResponse response = new BaseResponse(); BabyAfterVisitRequest afterVisitQuery = new BabyAfterVisitRequest(); - afterVisitQuery.setLimit(500); + afterVisitQuery.setLimit(7000); Date startDate = DateUtil.parseYMD(startTime); Date endDate = DateUtil.parseYMD(endTime); - Map map = new HashMap<>(16); + Map map = new HashMap<>(); // 访视概况 Integer statisticsModelsSize = getStatisticsModelsSize(babyId, afterVisitQuery, startDate, endDate, hospitalId); map.put("statisticsModelsSize", statisticsModelsSize); + + // 档案转正 List infoModels = new ArrayList<>(); setSyncAfterVisitInfoList(null, infoModels, afterVisitQuery, TYPE_BUILD, startDate, endDate, hospitalId); @@ -176,7 +178,7 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { Query query = new Query(); query.addCriteria(Criteria.where("created").gte(startDate).lt(endDate)); - query.addCriteria(Criteria.where("yn").ne(0).and("dataStatus").ne(1)); + query.addCriteria(Criteria.where("yn").is(1)); query.addCriteria(Criteria.where("nextDate").exists(false).and("weakSon").exists(false).and("highRisk").exists(false)); List babyModels = mongoTemplate.find(query, BabyModel.class); for (BabyModel model : babyModels) { @@ -204,6 +206,11 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { } } } + + List models = mongoTemplate.find(Query.query(Criteria.where("_id").nin(ids).and("hospitalId").is(hospitalId).and("yn").is(1)), BabyModel.class); + if (models != null) { + ids.add(models.get(0).getId()); + } setSyncAfterVisitInfoList(ids, infoCheckModels, afterVisitQuery, TYPE_CHECK, startDate, endDate, hospitalId); mongoTemplate.insert(infoCheckModels, BabyAfterVisitInfoModel.class); map.put("infoModels-check-size", infoCheckModels.size()); @@ -212,7 +219,7 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { List infoEyeCheckModels = new ArrayList<>(); Query eyeQuery = new Query(); eyeQuery.addCriteria(Criteria.where("created").gte(startDate).lt(endDate)); - eyeQuery.addCriteria(Criteria.where("yn").ne(0).and("dataStatus").ne(1)); + eyeQuery.addCriteria(Criteria.where("yn").is(1)); List eyeBabyModels = mongoTemplate.find(eyeQuery, BabyModel.class); List babyIds = new ArrayList<>(); for (BabyModel babyModel : eyeBabyModels) { @@ -242,6 +249,11 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { } } + List modelsEye = mongoTemplate.find(Query.query(Criteria.where("_id").nin(babyIds).and("hospitalId").is(hospitalId).and("yn").is(1)), BabyModel.class); + if (models != null) { + babyIds.add(modelsEye.get(0).getId()); + } + setSyncAfterVisitInfoList(babyIds, infoEyeCheckModels, afterVisitQuery, TYPE_EYE_CHECK, startDate, endDate, hospitalId); mongoTemplate.insert(infoEyeCheckModels, BabyAfterVisitInfoModel.class); map.put("infoModels-eyeCheck-size", infoEyeCheckModels.size()); -- 1.8.3.1