From 08b4c3f78224fb0e7a34fee3bc70c5600f849816 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Tue, 19 Jun 2018 17:39:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=84=BF=E7=AB=A5=E5=BB=BA=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/web/facade/BabyBookbuildingFacade.java | 25 +++-- .../web/service/impl/PatientWeightServiceImpl.java | 123 +++++++++++++++++++-- 2 files changed, 131 insertions(+), 17 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index 9d7fe30..1fc11eb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -2301,9 +2301,9 @@ public class BabyBookbuildingFacade { // 省 babyQuery.setProvinceId(StringUtils.isEmpty(request.getProvinceId())?null:request.getProvinceId()); // 市 - babyQuery.setCityId(StringUtils.isEmpty(request.getCityId())?null:request.getCityId()); + babyQuery.setCityId(StringUtils.isEmpty(request.getCityId()) ? null : request.getCityId()); // 区/县 - babyQuery.setAreaId(StringUtils.isEmpty(request.getAreaId())?null:request.getAreaId()); + babyQuery.setAreaId(StringUtils.isEmpty(request.getAreaId()) ? null : request.getAreaId()); babyQuery.setStreetId(StringUtils.isEmpty(request.getStreetId()) ? null : request.getStreetId()); babyQuery.setQueryNo(request.getQueryNo()); @@ -2451,11 +2451,17 @@ public class BabyBookbuildingFacade { //获取最近一次的建档记录 List models = babyBookbuildingService.queryBabyBuildByCond(babyQuery); //去掉删除的数据 - removeDeleted(models); + models = removeDeleted(models); if (CollectionUtils.isNotEmpty(models)) { BabyModel babyModel = models.get(0); result = new BabyBuildResult(); + + if (babyModel.getDataStatus() != null && babyModel.getDataStatus() == 1) + { + result.setId(babyModel.getId()); + } + result.setYn(babyModel.getYn()); result.setDataStatus(babyModel.getDataStatus()); result.setMommyName(babyModel.getMname()); @@ -2523,14 +2529,17 @@ public class BabyBookbuildingFacade { * 移除yn为0 的 * @param babyModels */ - private void removeDeleted(List babyModels){ + private List removeDeleted(List babyModels){ + List results = new ArrayList<>(); if(CollectionUtils.isNotEmpty(babyModels)){ - for(int i=0;i WEIGHT_RANGE = new HashMap<>(); + + private static Map N_S_AREA = new HashMap<>(); static { @@ -111,6 +114,101 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient N_S_AREA.put("吉林省","北方"); N_S_AREA.put("黑龙江省","北方"); N_S_AREA.put("宁夏回族自治区","北方"); + + + + WEIGHT_RANGE.put("BMI<18.5孕0-12周","1.00-1.50"); + WEIGHT_RANGE.put("BMI<18.5孕13周","1.41-2.09"); + WEIGHT_RANGE.put("BMI<18.5孕14周","1.82-2.68"); + WEIGHT_RANGE.put("BMI<18.5孕15周","2.23-3.27"); + WEIGHT_RANGE.put("BMI<18.5孕16周","2.64-3.86"); + WEIGHT_RANGE.put("BMI<18.5孕17周","3.05-4.45"); + WEIGHT_RANGE.put("BMI<18.5孕18周","3.46-5.04"); + WEIGHT_RANGE.put("BMI<18.5孕19周","3.87-5.63"); + WEIGHT_RANGE.put("BMI<18.5孕20周","4.28-6.22"); + WEIGHT_RANGE.put("BMI<18.5孕21周","4.69-6.81"); + WEIGHT_RANGE.put("BMI<18.5孕22周","5.10-7.40"); + WEIGHT_RANGE.put("BMI<18.5孕23周","5.51-7.99"); + WEIGHT_RANGE.put("BMI<18.5孕24周","5.92-8.58"); + WEIGHT_RANGE.put("BMI<18.5孕25周","6.33-9.17"); + WEIGHT_RANGE.put("BMI<18.5孕26周","6.74-9.76"); + WEIGHT_RANGE.put("BMI<18.5孕27周","7.15-10.35"); + WEIGHT_RANGE.put("BMI<18.5孕28周","7.56-10.94"); + WEIGHT_RANGE.put("BMI<18.5孕29周","7.97-11.53"); + WEIGHT_RANGE.put("BMI<18.5孕30周","8.38-12.12"); + WEIGHT_RANGE.put("BMI<18.5孕31周","8.79-12.71"); + WEIGHT_RANGE.put("BMI<18.5孕32周","9.20-13.30"); + WEIGHT_RANGE.put("BMI<18.5孕33周","9.61-13.89"); + WEIGHT_RANGE.put("BMI<18.5孕34周","10.02-14.48"); + WEIGHT_RANGE.put("BMI<18.5孕35周","10.43-15.07"); + WEIGHT_RANGE.put("BMI<18.5孕36周","10.84-15.66"); + WEIGHT_RANGE.put("BMI<18.5孕37周","11.25-16.25"); + WEIGHT_RANGE.put("BMI<18.5孕38周","11.66-16.84"); + WEIGHT_RANGE.put("BMI<18.5孕39周","12.07-17.43"); + WEIGHT_RANGE.put("BMI<18.5孕40周","12.50-18.00"); + + + WEIGHT_RANGE.put("BMI=18.5-24.9孕0-12周","1.00-1.50"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕13周","1.37-2.02"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕14周","1.75-2.54"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕15周","2.12-3.06"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕16周","2.50-3.58"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕17周","2.87-4.10"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕18周","3.25-4.62"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕19周","3.62-5.14"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕20周","4.00-5.66"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕21周","4.37-6.18"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕22周","4.75-6.70"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕23周","5.12-7.22"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕24周","5.50-7.74"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕25周","5.87-8.26"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕26周","6.25-8.78"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕27周","6.62-9.30"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕28周","7.00-9.82"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕29周","7.37-10.34"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕30周","7.75-10.86"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕31周","8.12-11.38"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕32周","8.50-11.90"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕33周","8.87-12.42"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕34周","9.25-12.94"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕35周","9.62-13.46"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕36周","10.00-13.98"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕37周","10.37-14.50"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕38周","10.75-15.02"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕39周","11.12-15.54"); + WEIGHT_RANGE.put("BMI=18.5-24.9孕40周","11.50-16.00"); + + + WEIGHT_RANGE.put("BMI=25-29.9孕0-12周","1.00-1.50"); + WEIGHT_RANGE.put("BMI=25-29.9孕13周","1.21-1.86"); + WEIGHT_RANGE.put("BMI=25-29.9孕14周","1.42-2.22"); + WEIGHT_RANGE.put("BMI=25-29.9孕15周","1.64-2.58"); + WEIGHT_RANGE.put("BMI=25-29.9孕16周","1.85-2.94"); + WEIGHT_RANGE.put("BMI=25-29.9孕17周","2.07-3.30"); + WEIGHT_RANGE.put("BMI=25-29.9孕18周","2.28-3.66"); + WEIGHT_RANGE.put("BMI=25-29.9孕19周","2.49-4.02"); + WEIGHT_RANGE.put("BMI=25-29.9孕20周","2.71-4.38"); + WEIGHT_RANGE.put("BMI=25-29.9孕21周","2.92-4.74"); + WEIGHT_RANGE.put("BMI=25-29.9孕22周","3.14-5.10"); + WEIGHT_RANGE.put("BMI=25-29.9孕23周","3.35-5.46"); + WEIGHT_RANGE.put("BMI=25-29.9孕24周","3.56-5.82"); + WEIGHT_RANGE.put("BMI=25-29.9孕25周","3.78-6.18"); + WEIGHT_RANGE.put("BMI=25-29.9孕26周","3.99-6.54"); + WEIGHT_RANGE.put("BMI=25-29.9孕27周","4.21-6.90"); + WEIGHT_RANGE.put("BMI=25-29.9孕28周","4.42-7.26"); + WEIGHT_RANGE.put("BMI=25-29.9孕29周","4.63-7.62"); + WEIGHT_RANGE.put("BMI=25-29.9孕30周","4.85-7.98"); + WEIGHT_RANGE.put("BMI=25-29.9孕31周","5.06-8.34"); + WEIGHT_RANGE.put("BMI=25-29.9孕32周","5.28-8.70"); + WEIGHT_RANGE.put("BMI=25-29.9孕33周","5.49-9.06"); + WEIGHT_RANGE.put("BMI=25-29.9孕34周","5.70-9.42"); + WEIGHT_RANGE.put("BMI=25-29.9孕35周","5.92-9.78"); + WEIGHT_RANGE.put("BMI=25-29.9孕36周","6.13-10.14"); + WEIGHT_RANGE.put("BMI=25-29.9孕37周","6.35-10.50"); + WEIGHT_RANGE.put("BMI=25-29.9孕38周","6.56-10.86"); + WEIGHT_RANGE.put("BMI=25-29.9孕39周","6.77-11.22"); + WEIGHT_RANGE.put("BMI=25-29.9孕40周","7.00-11.50"); + } @@ -1356,28 +1454,35 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient //基础kcal值 int basekul = (week > 12 && week <= 27) ? 340 : 450; - double avge = 0; + + String bmiStr = ""; if (bmi < 18.5) { - avge = 0.51; + bmiStr = "BMI<18.5孕"+week+"周"; } else if (bmi <= 24.9 && bmi >= 18.5) { - avge = 0.42; + bmiStr = "BMI=18.5-24.9孕"+week+"周"; } else if (bmi <= 29.9 && bmi >= 25) { - avge = 0.28; + bmiStr = "BMI=25-29.9孕"+week+"周"; } - else if (bmi >= 30) + + if (StringUtils.isEmpty(bmiStr)) { - avge = 0.22; + return map; } - int rangeweek = week - 12; + String[] rangeWeight = WEIGHT_RANGE.get(bmiStr).split("-"); + + if (rangeWeight == null || rangeWeight.length != 2) + { + return map; + } - double addWeightStart = 1 + rangeweek*avge; - double addWeightEnd = 1.5 + rangeweek*avge; + double addWeightStart = Double.parseDouble(rangeWeight[0]); + double addWeightEnd = Double.parseDouble(rangeWeight[1]); double kstart = (beforeWeight + addWeightStart) * 25 + basekul; double kend = (beforeWeight + addWeightEnd) * 25 + basekul; -- 1.8.3.1