From c455d252f66f5592d71a2e4090fc52a16d598760 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sat, 9 Jan 2021 09:28:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=84=BF=E7=AB=A5=E8=86=B3=E9=A3=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/biz/BasicConfigServiceTest.java | 64 +++- .../platform/pojo/BabyQhdfyDietReportModel.java | 82 +++++ .../web/controller/BabyNutritionController.java | 30 ++ .../operate/web/facade/BabyNutritionFacade.java | 406 +++++++++++++++++++++ .../operate/web/facade/PatientSyncMysqlFacade.java | 1 - 5 files changed, 581 insertions(+), 2 deletions(-) create mode 100644 platform-dal/src/main/java/com/lyms/platform/pojo/BabyQhdfyDietReportModel.java 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 4cafc63..b8a915c 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 @@ -6667,6 +6667,68 @@ public class BasicConfigServiceTest { } } + + + public static void saveQhdDist(String fileName) { + ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:/spring/applicationContext_biz_patient1.xml"); + MongoTemplate mongoTemplate + = (MongoTemplate) applicationContext.getBean("mongoTemplate"); + mongoTemplate.getDb().authenticate("platform", "platform123".toCharArray()); + File file = new File(fileName); + Workbook wb = null; + try { + wb = Workbook.getWorkbook(file); + Sheet s = wb.getSheet(0); + System.out.println(s.getName() + " : "); + int rows = s.getRows(); + if (rows > 0) { + //遍历每行 + for (int i = 1; i < rows; i++) { + System.out.println("rows=" + i); + BabyQhdfyDietReportModel model = new BabyQhdfyDietReportModel(); + Cell[] cells = s.getRow(i); + if (cells.length > 0) { + for (int j = 0; j < cells.length; j++) { + String str = cells[j].getContents() == null ? null : cells[j].getContents().trim(); + switch (j) { + case 0: + model.setKcal(StringUtils.isNotEmpty(str) ? Integer.parseInt(str) : null); + continue; + case 1: + model.setStartMonthAge(Integer.parseInt(str)); + continue; + case 2: + model.setEndMonthAge(Integer.parseInt(str)); + continue; + case 3: + List datas = new ArrayList<>(); + List list2 = Arrays.asList(str.split("\n")); + for (String key : list2) + { + if (StringUtils.isNotEmpty(key)) + { + datas.add(key); + } + } + model.setContents(datas); + continue; + case 4: + model.setShape(StringUtils.isNotEmpty(str) ? Integer.parseInt(str) : null); + continue; + case 5: + model.setType(Integer.parseInt(str)); + continue; + } + } + } + mongoTemplate.save(model); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } + public static void main(String[] args) { // getData(); //weightWeek("F:\\体重与营养管理\\体重与营养管理第三版(北方)改标红“、冰淇淋”-晓萌.xls"); @@ -6716,7 +6778,7 @@ public class BasicConfigServiceTest { //saveMicroelements("E:\\dev\\微量元素指导报告模板.xls"); //saveBabyMicroelements("F:\\技术文档\\儿童微量元素\\儿童微量元素指导报告模板.xls"); //saveBabyBone("F:\\技术文档\\骨密度\\儿童骨密度报告模板内容表.xls"); - savePragnantBone("F:\\技术文档\\骨密度\\孕期骨密度报告模板内容表.xls"); + saveQhdDist("F:\\儿童营养报告\\秦皇岛市妇幼新版选择儿童膳食报告\\秦皇岛市妇幼儿童膳食报告one.xls"); } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyQhdfyDietReportModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyQhdfyDietReportModel.java new file mode 100644 index 0000000..1597366 --- /dev/null +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyQhdfyDietReportModel.java @@ -0,0 +1,82 @@ +package com.lyms.platform.pojo; + +import com.lyms.platform.common.result.BaseModel; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.util.List; + +@Document(collection = "lyms_qhdfy_baby_diet_report") +public class BabyQhdfyDietReportModel extends BaseModel { + private String id; + + //热量值 + private Integer kcal; + + private Integer startMonthAge; + private Integer endMonthAge; + + //内容 + private List contents; + + //体型 0 消瘦 1.正常 2.超重 + private Integer shape; + + // 1推荐食谱 2 一日喂养参考 + private Integer type; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Integer getStartMonthAge() { + return startMonthAge; + } + + public void setStartMonthAge(Integer startMonthAge) { + this.startMonthAge = startMonthAge; + } + + public Integer getEndMonthAge() { + return endMonthAge; + } + + public void setEndMonthAge(Integer endMonthAge) { + this.endMonthAge = endMonthAge; + } + + public Integer getKcal() { + return kcal; + } + + public void setKcal(Integer kcal) { + this.kcal = kcal; + } + + public List getContents() { + return contents; + } + + public void setContents(List contents) { + this.contents = contents; + } + + public Integer getShape() { + return shape; + } + + public void setShape(Integer shape) { + this.shape = shape; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyNutritionController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyNutritionController.java index b4fcc7f..295199a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyNutritionController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyNutritionController.java @@ -117,6 +117,8 @@ public class BabyNutritionController extends BaseController { } + + /** * 儿童营养报告 * @@ -138,10 +140,38 @@ public class BabyNutritionController extends BaseController { @ResponseBody @TokenRequired public BaseObjectResponse queryBabyDietReport(@PathVariable("id") String id, HttpServletRequest request, @RequestParam("doctorId")String doctorId + ) { return babyNutritionFacade.queryBabyDietReport(id, getUserId(request), doctorId); } + + /** + * 秦皇岛市妇幼定制 + * @param id + * @param request + * @param doctorId + * @return + */ + @RequestMapping(value = "/queryQhfyBabyDietReport/{id}", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseObjectResponse queryQhfyBabyDietReport(@PathVariable("id") String id, HttpServletRequest request, @RequestParam("doctorId")String doctorId + , @RequestParam(required = false)String oid,@RequestParam(required = false)String rid + ) { + return babyNutritionFacade.queryQhfyBabyDietReport(id, getUserId(request), doctorId, oid, rid); + } + + + + @RequestMapping(value = "/queryQhdDeitSelect", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseObjectResponse queryQhdDeitSelect(@RequestParam(required = true) String id, HttpServletRequest request + ) { + return babyNutritionFacade.queryQhdDeitSelect(id, getUserId(request)); + } + /** * 未结算列表 * diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java index 33d82e0..6ee0b6f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java @@ -1609,6 +1609,7 @@ public class BabyNutritionFacade { } + /** * 3-5岁热量计算 *

@@ -1770,4 +1771,409 @@ public class BabyNutritionFacade { objectResponse.setErrormsg("成功"); return objectResponse; } + + + + /** + * 秦皇岛市妇幼精简版儿童膳食报告 + */ + public BaseObjectResponse queryQhfyBabyDietReport(String id, Integer userId, String doctorId,String oid,String rid + ) { + BaseObjectResponse objectResponse = new BaseObjectResponse(); + Map data = new HashMap(); + + BabyNutritionQuery babyQuery = new BabyNutritionQuery(); + String hospitalId = autoMatchFacade.getHospitalId(userId); + babyQuery.setHospitalId(hospitalId); + babyQuery.setId(id); + + List models = babyNutritionService.queryBabyNutritions(babyQuery); + if (CollectionUtils.isNotEmpty(models)) { + BabyNutritionModel model = models.get(0); + BabyModel baby = babyBookbuildingService.queryBabyBuildById(model.getBabyId()); + + Map map = new HashMap(); + map.put("id", model.getId()); + map.put("babyId", model.getBabyId()); + map.put("babyName", baby.getName()); + map.put("babySex", SexEnum.getTextById(baby.getSex())); + map.put("monthAge", StringUtils.emptyDeal(DateUtil.getBabyMonthAge(baby.getBirth(), new Date()))); + map.put("motherName", baby.getMname()); + map.put("phone", baby.getMphone()); + map.put("vcCardNo", baby.getVcCardNo()); + map.put("weight", model.getWeight()); + map.put("height", model.getHeight()); + Organization org = organizationService.getOrganization(Integer.parseInt(hospitalId)); + map.put("hospitalName", org.getName()); + map.put("reportMonthAge", StringUtils.emptyDeal(DateUtil.getBabyMonthAge(baby.getBirth(), model.getNutritiTime()))); + //体重评价 + String weightEvaluate = babyCheckFacade.getGrowthValue(DateUtil.getyyyy_MM_dd(baby.getBirth()), model.getWeight(), baby.getSex(), null, null, DateUtil.getyyyy_MM_dd(model.getNutritiTime())); + map.put("weightEvaluate", weightEvaluate); + //身高评价 + String heightEvaluate = babyCheckFacade.getGrowthValue1(DateUtil.getyyyy_MM_dd(baby.getBirth()), model.getHeight(), baby.getSex(), 1, null, DateUtil.getyyyy_MM_dd(model.getNutritiTime())); + map.put("heightEvaluate", heightEvaluate); + int month = DateUtil.getMonth(baby.getBirth(), model.getNutritiTime()); + if (month > 60) { + return new BaseObjectResponse().setData(data).setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("月龄范围没有报告"); + } + //获取bmi值 + String bmi = patientWeightService.getBmi(String.valueOf(model.getWeight()), String.valueOf(model.getHeight())); + //获取是否 正常 消瘦 超重 + String kaupEvaluate = getBabyStatus(month, baby.getSex(), model.getHeight(), model.getWeight(), bmi); + map.put("bmi", bmi); + map.put("kaupEvaluate", kaupEvaluate); + //获取热量值 体重在正常范围内的不计算热量值 + double kaul = getKcal(month, model.getWeight(), model.getHeight(), baby.getSex(), kaupEvaluate); + + + List ss = mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month)), + BabySSReportModel.class); + if (CollectionUtils.isNotEmpty(ss)) + { + BabySSReportModel ssReportModel = ss.get(0); + + //进食行为建议 + data.put("feedSuggest", ssReportModel.getSuggests()); + //喂养常见问题及处理 + data.put("feedHandle", ssReportModel.getHandles()); + } + + + BabyQhdfyDietReportModel oneDiet = null; + BabyQhdfyDietReportModel recDiet = null; + if (StringUtils.isNotEmpty(oid) && StringUtils.isNotEmpty(rid) ) + { + oneDiet = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(oid)), BabyQhdfyDietReportModel.class); + recDiet = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(rid)), BabyQhdfyDietReportModel.class); + } + + double kauls = getBasicKaul(month, model.getWeight(), model.getHeight(), baby.getSex()); + if (month >= 0 && month <= 5) { + List babyDietReport = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month).and("feedingPattern").is(Integer.valueOf(model.getFeedType()))), BabyDietReportModel.class); + + for (BabyDietReportModel babyDiet : babyDietReport) { + if (null != babyDiet.getShape()) { + if (kaupEvaluate.equals("正常") && babyDiet.getShape() == 1) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } else if (kaupEvaluate.equals("消瘦") && babyDiet.getShape() == 0) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } else if (kaupEvaluate.equals("超重") && babyDiet.getShape() == 2) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + } + } else if (kaupEvaluate.equals("正常") && month >= 6 && month <= 11) { + List babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month)), BabyDietReportModel.class); + for (BabyDietReportModel babyDiet : babyDietReportList) { + + if (null != babyDiet.getShape() && month == 6 && babyDiet.getShape() == 1) { + if (StringUtils.isNotEmpty(model.getFeedType())) { + if (Integer.valueOf(model.getFeedType()) == month) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } else { + //直接返回空 + data.put("feedingGuide", ""); + } + } else if (null != babyDiet.getShape() && babyDiet.getShape() == 1) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + if (null != babyDiet.getWeightType() && babyDiet.getWeightType() == 0) { + //膳食结构 + data.put("dietStructure", babyDiet.getDietStructure()); + //一日喂养参考 + data.put("oneDayRecipes", oneDiet == null ? babyDiet.getOneDayRecipes() : oneDiet.getContents()); + + //推荐食谱 + data.put("recommendRecipes", recDiet == null ? babyDiet.getRecommendRecipes() : recDiet.getContents()); + } + } + } else if (kaupEvaluate.equals("正常") && month >= 12 && month <= 36) { + List babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month)), BabyDietReportModel.class); + for (BabyDietReportModel babyDiet : babyDietReportList) { + // 1代表正常 + if (null != babyDiet.getShape() && babyDiet.getShape() == 1) { + //膳食结构 + data.put("dietStructure", babyDiet.getDietStructure()); + //一日喂养参考 + data.put("oneDayRecipes", oneDiet == null ? babyDiet.getOneDayRecipes() : oneDiet.getContents()); + + //推荐食谱 + data.put("recommendRecipes", recDiet == null ? babyDiet.getRecommendRecipes() : recDiet.getContents()); + } + if (CollectionUtils.isNotEmpty(babyDiet.getFeedingGuide())) { + //喂养指南 + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + } + + map.put("kaul", String.format("%.2f", kauls) + "kacl"); + map.put("mother", month); + data.put("userInfo", map); + if ((kaupEvaluate.equals("消瘦") || kaupEvaluate.equals("超重")) && month >= 6 && month <= 11) { + List babyDietReport = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month)), BabyDietReportModel.class); + for (BabyDietReportModel babyDiet : babyDietReport) { + if (month == 6) { + if (StringUtils.isNotEmpty(model.getFeedType())) { + if (babyDiet.getFeedingPattern() == Integer.valueOf(model.getFeedType())) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + } else { + if (null != babyDiet.getShape()) { + if (CollectionUtils.isNotEmpty(babyDiet.getFeedingGuide()) && kaupEvaluate.equals("消瘦") && babyDiet.getShape() == 0) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } else if (CollectionUtils.isNotEmpty(babyDiet.getFeedingGuide()) && kaupEvaluate.equals("超重") && babyDiet.getShape() == 2) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + + } + if (null != babyDiet.getKcal() && null != babyDiet.getWeightType()) { + if (babyDiet.getWeightType() == 1 && babyDiet.getKcal() == kaul) { + data.put("dietStructure", babyDiet.getDietStructure()); + //一日喂养参考 + data.put("oneDayRecipes", oneDiet == null ? babyDiet.getOneDayRecipes() : oneDiet.getContents()); + + //推荐食谱 + data.put("recommendRecipes", recDiet == null ? babyDiet.getRecommendRecipes() : recDiet.getContents()); + } + } + } + } + if (month >= 12 && month <= 36) { + if (kaupEvaluate.equals("消瘦")) { + List babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month)), BabyDietReportModel.class); + for (BabyDietReportModel babyDiet : babyDietReportList) { + if (null != babyDiet.getKcal() && null != babyDiet.getShape()) { + if (babyDiet.getShape() == 0 && kaul == babyDiet.getKcal()) { + data.put("dietStructure", babyDiet.getDietStructure()); + //一日喂养参考 + data.put("oneDayRecipes", oneDiet == null ? babyDiet.getOneDayRecipes() : oneDiet.getContents()); + + //推荐食谱 + data.put("recommendRecipes", recDiet == null ? babyDiet.getRecommendRecipes() : recDiet.getContents()); + } + } + if (CollectionUtils.isNotEmpty(babyDiet.getFeedingGuide())) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + + } else if (kaupEvaluate.equals("超重")) { + List babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month)), BabyDietReportModel.class); + for (BabyDietReportModel babyDiet : babyDietReportList) { + if (null != babyDiet.getKcal() && null != babyDiet.getShape()) { + if (babyDiet.getShape() == 2 && kaul == babyDiet.getKcal()) { + data.put("dietStructure", babyDiet.getDietStructure()); + //一日喂养参考 + data.put("oneDayRecipes", oneDiet == null ? babyDiet.getOneDayRecipes() : oneDiet.getContents()); + + //推荐食谱 + data.put("recommendRecipes", recDiet == null ? babyDiet.getRecommendRecipes() : recDiet.getContents()); + } + } + if (CollectionUtils.isNotEmpty(babyDiet.getFeedingGuide())) { + data.put("feedingGuide", babyDiet.getFeedingGuide()); + } + } + } + } + + if (month > 36 && month <= 60) { + + int kcal = getThreeAfterKcal(model.getWeight()); + + map.put("kaul", String.format("%.2f", 44 * model.getWeight() / 0.6) + "kacl"); + + int shape = kaupEvaluate.equals("超重") ? 2 : (kaupEvaluate.equals("消瘦") ? 0 : 1); + List babyDietReportList1 = mongoTemplate.find(Query.query(Criteria.where("shape").is(shape).and("type").is(1)), BabyDietReportModel.class); + + for (BabyDietReportModel babyDietReportModel : babyDietReportList1) { + if (babyDietReportModel.getStartMonthAge() <= month && month <= babyDietReportModel.getEndMonthAge()) { + data.put("feedingGuide", babyDietReportModel.getFeedingGuide()); + } + } + + + List babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("kcal").is(kcal).and("type").is(1)), BabyDietReportModel.class); + for (BabyDietReportModel babyDietReportModel : babyDietReportList) { + if (CollectionUtils.isNotEmpty(babyDietReportModel.getDietStructure())) { + data.put("dietStructure", babyDietReportModel.getDietStructure()); + } + if (CollectionUtils.isNotEmpty(babyDietReportModel.getBreakfast())) { + data.put("breakfast", babyDietReportModel.getBreakfast()); + data.put("breakfastAdd", babyDietReportModel.getBreakfastAdd()); + data.put("lunch", babyDietReportModel.getLunch()); + data.put("lunchAdd", babyDietReportModel.getLunchAdd()); + data.put("dinner", babyDietReportModel.getDinner()); + data.put("dinnerAdd", babyDietReportModel.getDinnerAdd()); + } + if (CollectionUtils.isNotEmpty(babyDietReportModel.getRecommendRecipes())) { + data.put("recommendRecipes", babyDietReportModel.getRecommendRecipes()); + } + } + } + + //6-12月龄膳食建议 其中可能包括医生建议和不爱吃某类食物建议 + if (month > 5 && month <= 12 && CollectionUtils.isNotEmpty(model.getDiets())) { + List> list = model.getDiets(); + Collections.sort(list, new Comparator>() { + @Override + public int compare(Map o1, Map o2) { + return o1.get("id") - o2.get("id"); + } + }); + + int items = 0; + switch (month) { + case 6: items = 8;break; + case 7: items = 15;break; + case 8: items = 20;break; + case 9: items = 20;break; + case 10: items = 23;break; + case 11: items = 23;break; + case 12: items = 24;break; + } + + List> dss = new ArrayList<>(); + + Integer noLovelType = 100; + + //获取对应月龄的医生建议 + BabyDietSuggestModel dietDoctorSuggests = mongoTemplate.findOne(Query.query(Criteria.where("type").is(1).and("monthAge").is(month)), BabyDietSuggestModel.class); + List> doctorSuggests = dietDoctorSuggests.getDoctorSuggests(); + List> tempList = list.subList(0, items); + for (int i = 0; i < tempList.size() ; i++) + { + //没有添加对应月龄的食物 add 0 为未添加 1为添加 + if (tempList.get(i).get("add") != null && tempList.get(i).get("add") != 1) + { + dss.add(doctorSuggests.get(i)); + } + else + { //对应月龄添加了食物,才再判断是否爱吃 love 0为不爱吃 1为爱吃 + if(tempList.get(i).get("love") != null && tempList.get(i).get("love") != 1) + { + noLovelType = tempList.get(i).get("type") < noLovelType ? tempList.get(i).get("type") : noLovelType; + } + } + } + + data.put("suggests", null); + if (noLovelType != 100) + { + BabyDietSuggestModel dietSuggestModel1 = mongoTemplate.findOne(Query.query(Criteria.where("type").is(2).and("level").is(noLovelType)), BabyDietSuggestModel.class); + data.put("suggests", dietSuggestModel1.getSuggests()); + } + data.put("doctorSuggests", dss); + } + + healthChargeFacade.addHealthCharge(hospitalId, 5, baby.getId(), null, null, userId, doctorId, true, model.getId()); + } + objectResponse.setData(data); + objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + objectResponse.setErrormsg("成功"); + return objectResponse; + } + + public BaseObjectResponse queryQhdDeitSelect(String id, Integer userId) { + BabyNutritionQuery babyQuery = new BabyNutritionQuery(); + String hospitalId = autoMatchFacade.getHospitalId(userId); + babyQuery.setHospitalId(hospitalId); + babyQuery.setId(id); + + + Map data = new HashMap(); + + List models = babyNutritionService.queryBabyNutritions(babyQuery); + if (CollectionUtils.isNotEmpty(models)) { + BabyNutritionModel model = models.get(0); + BabyModel baby = babyBookbuildingService.queryBabyBuildById(model.getBabyId()); + + int month = DateUtil.getMonth(baby.getBirth(), model.getNutritiTime()); + if (month > 60) { + return new BaseObjectResponse().setData(data).setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("月龄范围没有报告"); + } + //获取bmi值 + String bmi = patientWeightService.getBmi(String.valueOf(model.getWeight()), String.valueOf(model.getHeight())); + //获取是否 正常 消瘦 超重 + String kaupEvaluate = getBabyStatus(month, baby.getSex(), model.getHeight(), model.getWeight(), bmi); + + //获取热量值 体重在正常范围内的不计算热量值 + int kaul = (int)getKcal(month, model.getWeight(), model.getHeight(), baby.getSex(), kaupEvaluate); + + + if (month >= 6 && month <= 11) { + + Query query = Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month).and("type").is(1)); + System.out.println(query.toString()); + List recommendRecipes = + mongoTemplate.find(query, BabyQhdfyDietReportModel.class); + + //推荐食谱 + data.put("recommendRecipes",recommendRecipes); + + List oneDayRecipes = null; + if (kaupEvaluate.equals("正常")) + { + oneDayRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month).and("type").is(2).and("shape").is(1)), BabyQhdfyDietReportModel.class); + } + else + { + oneDayRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month) + .and("type").is(2).and("shape").is(20).and("kcal").is(kaul)), BabyQhdfyDietReportModel.class); + } + //一日喂养 + data.put("oneDayRecipes",oneDayRecipes); + } + else if(kaupEvaluate.equals("正常") && month >= 12 && month <= 36) + { + List recommendRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month).and("type").is(1).and("shape").is(1)), BabyQhdfyDietReportModel.class); + + data.put("recommendRecipes",recommendRecipes); + + List oneDayRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month).and("endMonthAge").gte(month).and("type").is(2).and("shape").is(1)), BabyQhdfyDietReportModel.class); + data.put("oneDayRecipes",oneDayRecipes); + } + else if (kaupEvaluate.equals("消瘦") && month >= 12 && month <= 36) + { + List recommendRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month) + .and("endMonthAge").gte(month).and("type").is(1).and("shape").is(0).and("kcal").is(kaul)), BabyQhdfyDietReportModel.class); + + data.put("recommendRecipes",recommendRecipes); + List oneDayRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month) + .and("endMonthAge").gte(month).and("type").is(2).and("shape").is(0).and("kcal").is(kaul)), BabyQhdfyDietReportModel.class); + + data.put("oneDayRecipes",oneDayRecipes); + } + else if (kaupEvaluate.equals("超重") && month >= 12 && month <= 36) + { + List recommendRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month) + .and("endMonthAge").gte(month).and("type").is(1).and("shape").is(2).and("kcal").is(kaul)), BabyQhdfyDietReportModel.class); + + data.put("recommendRecipes",recommendRecipes); + List oneDayRecipes = + mongoTemplate.find(Query.query(Criteria.where("startMonthAge").lte(month) + .and("endMonthAge").gte(month).and("type").is(2).and("shape").is(2).and("kcal").is(kaul)), BabyQhdfyDietReportModel.class); + + data.put("oneDayRecipes",oneDayRecipes); + } + + + } + BaseObjectResponse objectResponse = new BaseObjectResponse(); + objectResponse.setData(data); + objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + objectResponse.setErrormsg("成功"); + return objectResponse; + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientSyncMysqlFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientSyncMysqlFacade.java index dd97b66..0ace083 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientSyncMysqlFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientSyncMysqlFacade.java @@ -648,7 +648,6 @@ public class PatientSyncMysqlFacade { BabyModelQuery babyBuildQuery = new BabyModelQuery(); babyBuildQuery.setYn(YnEnums.YES.getId()); babyBuildQuery.setHospitalId("2100001377"); - if (start != null) { babyBuildQuery.setCreatedTimeStart(start); -- 1.8.3.1