From 66bc9cf1e93482841718da1bc435a0361c3c130c Mon Sep 17 00:00:00 2001 From: liquanyu Date: Wed, 20 May 2020 16:51:08 +0800 Subject: [PATCH] update --- .../java/com/lyms/platform/pojo/BloodSugar.java | 13 +++++++ .../java/com/lyms/platform/pojo/PatientWeight.java | 10 ----- .../operate/web/controller/TestController.java | 43 +++++++++++++++++++++- .../web/facade/AntenatalExaminationFacade.java | 14 +++++++ .../web/service/impl/BloodSugarServiceImpl.java | 4 +- 5 files changed, 71 insertions(+), 13 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BloodSugar.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BloodSugar.java index 70e8d3c..e03e15f 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BloodSugar.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BloodSugar.java @@ -5,6 +5,7 @@ import com.lyms.platform.common.result.BaseModel; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; +import java.util.List; /** * 血糖 @@ -71,6 +72,18 @@ public class BloodSugar extends BaseModel { //0 未推送 1已经推送 private Integer sevenSend; + + //高危风险id + private List riskFactorId; + + public List getRiskFactorId() { + return riskFactorId; + } + + public void setRiskFactorId(List riskFactorId) { + this.riskFactorId = riskFactorId; + } + public Integer getExceptionSend() { return exceptionSend; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/PatientWeight.java b/platform-dal/src/main/java/com/lyms/platform/pojo/PatientWeight.java index 1deafec..be30e0f 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/PatientWeight.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/PatientWeight.java @@ -137,16 +137,6 @@ public class PatientWeight extends BaseModel { // private boolean printing; - //高危风险id - private List riskFactorId; - - public List getRiskFactorId() { - return riskFactorId; - } - - public void setRiskFactorId(List riskFactorId) { - this.riskFactorId = riskFactorId; - } public boolean isPrinting() { return printing; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index 2c74acd..3aa49a8 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -50,6 +50,7 @@ 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.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @@ -3444,7 +3445,7 @@ public class TestController extends BaseController { @ResponseBody public String syncTrckDownNextTime() { TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); - downRecordQuery.setLastMensesStart(DateUtil.addMonth(new Date(),-10)); + downRecordQuery.setLastMensesStart(DateUtil.addMonth(new Date(), -10)); downRecordQuery.setStatus(3); List records = trackDownRecordService.queryTrackDown(downRecordQuery); int batchSize = 1000; @@ -3476,4 +3477,44 @@ public class TestController extends BaseController { return "syncTrckDownNextTime finish"; } + + @RequestMapping(value = "/syncBloodSugar", method = RequestMethod.GET) + @ResponseBody + public String syncBloodSugar() { + List bloodSugars = mongoTemplate.find(Query.query(Criteria.where("yn").is(1)), BloodSugar.class); + int batchSize = 2000; + int end = 0; + for (int i = 0; i < bloodSugars.size(); i += batchSize) { + end = (end + batchSize); + if (end > bloodSugars.size()) { + end = bloodSugars.size(); + } + System.out.println("start:" + i + ",end:" + end); + final List tempList = bloodSugars.subList(i, end); + commonThreadPool.execute(new Runnable() { + @Override + public void run() { + if (CollectionUtils.isNotEmpty(tempList)) { + for (BloodSugar bloodSugar : tempList) { + if (bloodSugar != null) { + Patients pat = patientsService.findOnePatientById(bloodSugar.getParentId()); + if (pat != null) + { + bloodSugar.setRiskFactorId(pat.getRiskFactorId()); + + Query query = Query.query(Criteria.where("id").is(bloodSugar.getId())); + Update update = MongoConvertHelper + .convertToNativeUpdate(ReflectionUtils.getUpdateField(bloodSugar)); + mongoTemplate.updateFirst(query, update, BloodSugar.class); + } + } + } + } + } + }); + } + + return "syncBloodSugar finish"; + } + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java index 1975c5a..125669a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java @@ -3153,6 +3153,20 @@ public class AntenatalExaminationFacade { patients1.setNextCheckTime((Date) map.get("nextCheckTime")); } patientsService.findAndModify(patientsQuery1, patients1); + + + //新增加的高危因素冗余到血糖 + if (patients != null) + { + BloodSugar bloodSugar = new BloodSugar(); + bloodSugar.setRiskFactorId(patients.getRiskFactorId()); + bloodSugar.setParentId(patients.getId()); + + Query query = Query.query(Criteria.where("parentId").is(patients.getId())); + Update update = MongoConvertHelper + .convertToNativeUpdate(ReflectionUtils.getUpdateField(bloodSugar)); + mongoTemplate.updateFirst(query, update, BloodSugar.class); + } } /** diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java index b42a3da..514efd5 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java @@ -148,8 +148,8 @@ public class BloodSugarServiceImpl extends BaseServiceImpl implements IBloodSuga rids.add("5aab6d3e422b03d4ad2bf83f"); rids.add("de7468e6-1bb5-4fab-ae84-78857868409a"); criteria.and("riskFactorId").in(rids); - - PageResult pageResult = findMongoPage(BloodSugar.class, Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")), page, limit); + Query query = Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")); + PageResult pageResult = findMongoPage(BloodSugar.class, query, page, limit); List bloodSugars = (List) pageResult.getGrid(); List> restList = new ArrayList<>(); for (BloodSugar bloodSugar : bloodSugars) { -- 1.8.3.1