From 34f3c726275544aa0c0e6621bcbb3b16d4c30522 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Fri, 15 Jun 2018 16:18:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=B7=E5=B7=9E=E4=BA=A7=E6=A3=80=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=B7=BB=E5=8A=A0=E5=A4=84=E7=90=86=E6=84=8F=E8=A7=81?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=8E=86=E5=8F=B2=E6=95=B0=E6=8D=AE=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lyms/platform/query/AntExChuQuery.java | 15 +++ .../java/com/lyms/platform/query/AntExQuery.java | 13 +++ .../operate/web/controller/TestController.java | 110 +++++++++++++++++++++ 3 files changed, 138 insertions(+) diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java index e0ecf28..aa3f612 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java @@ -37,6 +37,16 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { // 其他高危 private String otherHighRisk; + private boolean isOpinion; + + public boolean isOpinion() { + return isOpinion; + } + + public void setIsOpinion(boolean isOpinion) { + this.isOpinion = isOpinion; + } + public String getCheckDoctor() { return checkDoctor; } @@ -188,6 +198,11 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { if (null != otherHighRisk) { condition = condition.and("otherHighRisk", otherHighRisk, MongoOper.NE); } + + if (isOpinion) { + condition = condition.and("treatOpinion", true, MongoOper.EXISTS); + } + if(CollectionUtils.isNotEmpty(parentIds)){ condition = condition.and("parentId", parentIds, MongoOper.IN); } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java index cc23220..a99c41a 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java @@ -40,6 +40,16 @@ public class AntExQuery extends BaseQuery implements IConvertToNativeQuery { //其他高危 private String otherRisk; + private boolean isOpinion; + + public boolean isOpinion() { + return isOpinion; + } + + public void setIsOpinion(boolean isOpinion) { + this.isOpinion = isOpinion; + } + public String getOtherRisk() { return otherRisk; } @@ -156,6 +166,9 @@ public class AntExQuery extends BaseQuery implements IConvertToNativeQuery { condition= condition.and("checkDoctor",checkDoctor, MongoOper.IS); } + if (isOpinion) { + condition = condition.and("treatOpinion", true, MongoOper.EXISTS); + } boolean isAddStart = Boolean.FALSE; Criteria c = null; 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 24f2907..1c0cbf7 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 @@ -1655,6 +1655,116 @@ public class TestController extends BaseController { return "upateNewHighRisk finish"; } + + + @RequestMapping(value = "/updateRecordOpinion", method = RequestMethod.GET) + @ResponseBody + public String updateRecordOpinion(@RequestParam(required = false) String hospitalId, @RequestParam(required = false) String cid + , @RequestParam(required = false) String fid) { + + + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setIsOpinion(true); + if (StringUtils.isNotEmpty(hospitalId)) { + + antExChuQuery.setHospitalId(hospitalId); + } + if (StringUtils.isNotEmpty(cid)) + { + antExChuQuery.setId(cid); + } + + List antExChuModelList = antenatalExaminationService.queryAntExChu(antExChuQuery); + + if (CollectionUtils.isNotEmpty(antExChuModelList)) { + int batchSize = 100; + int end = 0; + for (int i = 0; i < antExChuModelList.size(); i += batchSize) { + end = (end + batchSize); + if (end > antExChuModelList.size()) { + end = antExChuModelList.size(); + } + System.out.println("start:" + i + ",end:" + end); + final List tempList = antExChuModelList.subList(i, end); + commonThreadPool.execute(new Runnable() { + @Override + public void run() { + if (CollectionUtils.isNotEmpty(tempList)) { + for (AntExChuModel chuModel : tempList) { + + AntExRecordQuery pageAntExRecordsQuery = new AntExRecordQuery(); + pageAntExRecordsQuery.setfId(chuModel.getId()); + List recordModels = recordService.queryAntExRecords(pageAntExRecordsQuery); + if (CollectionUtils.isNotEmpty(recordModels)) + { + if (StringUtils.isNotEmpty(chuModel.getTreatOpinion())) + { + System.out.println("chuId=" + chuModel.getId()+";chuModel.getTreatOpinion()"); + AntExRecordModel recordModel = recordModels.get(0); + recordModel.setTreatOpinion(chuModel.getTreatOpinion()); + recordService.updateOne(recordModel,recordModel.getId()); + } + } + } + } + } + }); + } + } + + // 查询复诊 + AntExQuery antExQuery = new AntExQuery(); + antExQuery.setIsOpinion(true); + if (StringUtils.isNotEmpty(hospitalId)) { + + antExQuery.setHospitalId(hospitalId); + } + if (StringUtils.isNotEmpty(cid)) + { + antExQuery.setId(cid); + } + + List antenatalExaminationModelList = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery()); + if (CollectionUtils.isNotEmpty(antenatalExaminationModelList)) { + int batchSize = 100; + int end = 0; + for (int i = 0; i < antenatalExaminationModelList.size(); i += batchSize) { + end = (end + batchSize); + if (end > antenatalExaminationModelList.size()) { + end = antenatalExaminationModelList.size(); + } + System.out.println("fstart:" + i + ",fend:" + end); + final List tempList = antenatalExaminationModelList.subList(i, end); + commonThreadPool.execute(new Runnable() { + @Override + public void run() { + if (CollectionUtils.isNotEmpty(tempList)) { + for (AntenatalExaminationModel fuModel : tempList) { + + AntExRecordQuery pageAntExRecordsQuery = new AntExRecordQuery(); + pageAntExRecordsQuery.setfId(fuModel.getId()); + List recordModels = recordService.queryAntExRecords(pageAntExRecordsQuery); + if (CollectionUtils.isNotEmpty(recordModels)) + { + if (StringUtils.isNotEmpty(fuModel.getTreatmentOpinion())) + { + System.out.println("fId=" + fuModel.getId()+";chuModel.getTreatOpinion()"); + AntExRecordModel recordModel = recordModels.get(0); + recordModel.setTreatOpinion(fuModel.getTreatmentOpinion()); + recordService.updateOne(recordModel,recordModel.getId()); + } + } + } + } + } + }); + } + } + + return "updateRecordOpinion finish"; + } + + @Autowired private CommonService commonService; @Autowired -- 1.8.3.1