From af775e48a774e04bfe3d61f64c2ea172412b2978 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Fri, 1 Jun 2018 16:40:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/biz/BasicConfigServiceTest.java | 2 +- .../web/facade/AntenatalExaminationFacade.java | 8 +++ .../operate/web/facade/MeasureInfoFacade.java | 41 +++++++++-- .../operate/web/service/SyncDataTaskService.java | 1 + .../web/service/impl/PatientWeightServiceImpl.java | 80 ++++++++++++++++++++++ 5 files changed, 125 insertions(+), 7 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java index f0be185..961b20e 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java @@ -843,7 +843,7 @@ public class BasicConfigServiceTest { } } - + System.out.println("week=" + model.getWeek()+";type="+model.getWeightType()); mongoTemplate.save(model); } } 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 9e19866..c16f439 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 @@ -632,6 +632,14 @@ public class AntenatalExaminationFacade { return new BaseResponse().setErrorcode(ErrorCodeConstants.PARAMETER_ERROR).setErrormsg("您已经做过初诊"); } } + + //聊城东昌府医院初诊的身高更新到随心测 + if ("1000000116".equals(hospitalId) || "2100001305".equals(hospitalId)) + { + measureInfoFacade.updateHeight(antExChuModel.getParentId(),hospitalId,antExChuModel.getHeight()); + } + + //处理自定义高危状态为已使用状态 highRiskFacade.dispHospHighRiskUse(antExChuModel.getOtherHighRisk()); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java index 31b33a6..b965ce6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java @@ -240,12 +240,12 @@ public class MeasureInfoFacade { MeasureDataInfoQuery measureDataInfoQuery = new MeasureDataInfoQuery(); measureDataInfoQuery.setMeasureUserId(userInfo.getId()); measureDataInfoQuery.setValueType(1); - List dataModels = mysqlMeasureDataInfoService.queryMeasureDataInfoList(measureDataInfoQuery); - if (CollectionUtils.isNotEmpty(dataModels)) - { - result.setHeight(dataModels.get(0).getValueTwo() == null ? "" : dataModels.get(0).getValueTwo()); - result.setWeight(dataModels.get(0).getValueOne() == null ? "" : dataModels.get(0).getValueOne()); - } +// List dataModels = mysqlMeasureDataInfoService.queryMeasureDataInfoList(measureDataInfoQuery); +// if (CollectionUtils.isNotEmpty(dataModels)) +// { +// result.setHeight(dataModels.get(0).getValueTwo() == null ? "" : dataModels.get(0).getValueTwo()); +// result.setWeight(dataModels.get(0).getValueOne() == null ? "" : dataModels.get(0).getValueOne()); +// } } else { @@ -267,6 +267,17 @@ public class MeasureInfoFacade { mysqlMeasureUserInfoService.addMeasureUserInfo(model); } + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setHospitalId(hospitalId); + antExChuQuery.setParentId(patients.getId()); + antExChuQuery.setYn(YnEnums.YES.getId()); + List chuModelList = antenatalExaminationService.queryAntExChu(antExChuQuery); + if (CollectionUtils.isNotEmpty(chuModelList)) { + AntExChuModel chuModel = chuModelList.get(0); + String beforeHeight = chuModel.getHeight() == null ? "" : chuModel.getHeight(); + result.setHeight(beforeHeight); + } + result.setHospitalId(patients.getHospitalId()); result.setUserName(patients.getUsername()); result.setPhone(patients.getPhone()); @@ -546,6 +557,24 @@ public class MeasureInfoFacade { } + public int updateHeight(String patientId,String hospitalId,String height) + { + Patients pat = patientsService.findOnePatientById(patientId); + MeasureDataInfoQuery query = new MeasureDataInfoQuery(); + query.setHospitalId(hospitalId); + query.setCertNo(pat.getCardNo()); + query.setCertType(pat.getPcerteTypeId()); + query.setValueType(1); + List list = mysqlMeasureDataInfoService.queryMeasureList(query); + if (CollectionUtils.isNotEmpty(list)) + { + MeasureDataInfoModel model = list.get(0); + model.setValueTwo(height); + return mysqlMeasureDataInfoService.updateMeasureDataInfo(model); + } + return 0; + } + /** * 添加测量人基本信息 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java index dc958d6..624f5ce 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java @@ -55,6 +55,7 @@ public class SyncDataTaskService { urls.put("rp-zk-api.healthbaby.com.cn","周口市妇幼保健院"); urls.put("area-huaiyang-api.healthbaby.com.cn:12356","淮阳县人民医院"); urls.put("area-rongcheng-api.healthbaby.com.cn:12356","荣成"); + urls.put("area-changyi-api.healthbaby.com.cn:12356","昌邑"); } @Autowired diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java index 6dc2ea0..a938e9e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java @@ -1223,4 +1223,84 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient WeightManageConfigModel.class); return weightManageConfigModel; } + + + /** + * 孕妇期所需卡里计算 + * @param beforeWeight + * @param currentWeight + * @return + */ + private Map getComputeKul(double beforeWeight,double currentWeight,int week,double bmi) + { + Map map = new HashMap<>(); + + double kulStart = 0; + double kulEnd = 0; + double add = currentWeight - beforeWeight; + //孕早期 + if (week <= 12) + { + if (add < 1 && (1 - add >= 0.5)) + { + kulStart = currentWeight*25+500; + } + else if (add > 1.5 && (add - 1.5 >= 0.5)) + { + kulStart = currentWeight*25-500; + } + else + { + kulStart = currentWeight*25; + kulEnd = kulStart; + } + } + //孕中期 //孕晚期 + else if (week > 12) + { + //基础kcal值 + int basekul = (week > 12 && week <= 27) ? 340 : 450; + + double avge = 0; + if (bmi < 18.5) + { + avge = 0.51; + } + else if (bmi <= 24.9 && bmi >= 18.5) + { + avge = 0.42; + } + else if (bmi <= 29.9 && bmi >= 25) + { + avge = 0.28; + } + else if (bmi >= 30) + { + avge = 0.22; + } + + double addWeightStart = 1 + (week - 12) * avge; + double addWeightEnd = 1.5 + (week - 12) * avge; + + double kstart = (currentWeight + addWeightStart) * 25 + basekul; + double kend = (currentWeight + addWeightEnd) * 25 + basekul; + + if (addWeightEnd > add && (addWeightEnd - add) > 0.5) + { + kstart -= 500; + kend -= 500; + } + else if (addWeightEnd < add && (add - addWeightEnd) > 0.5) + { + kstart += 500; + kend += 500; + } + kulStart = kstart; + kulEnd = kend; + } + + map.put("kulStart",kulStart); + map.put("kulEnd",kulEnd); + return map; + } } -- 1.8.3.1