Commit 4ca3f988f9f5be10727f677af5943fadd92bbdf7
1 parent
756aac7919
Exists in
master
and in
6 other branches
儿童膳食报告修改
Showing 1 changed file with 50 additions and 25 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyNutritionFacade.java
View file @
4ca3f98
... | ... | @@ -790,7 +790,7 @@ |
790 | 790 | /** |
791 | 791 | * 1-5 体重 * 90kcal/kg |
792 | 792 | * 6-11月龄热量计算:体重 * 80kcal/kg |
793 | - * 12月龄-35月龄 [80×体重(kg)-100]+20kcal/day | |
793 | + * 12月龄-35月龄 [89×体重(kg)-100]+20kcal/day | |
794 | 794 | * 36月龄 男童:88.5-61.9×年龄(岁)+PA[26.7×体重(kg)+903×身长(m)]+20kcal/day PA=1.26 |
795 | 795 | * 36月龄 女童:135.3-30.8×年龄(岁)+PA[10×体重(kg)+934×身长(m)]+20kcal/day PA=1.31 |
796 | 796 | * 获取热量 |
... | ... | @@ -1248,6 +1248,9 @@ |
1248 | 1248 | return String.valueOf(tag); |
1249 | 1249 | } |
1250 | 1250 | |
1251 | + /** | |
1252 | + * 秦皇岛精简版儿童膳食报告 | |
1253 | + */ | |
1251 | 1254 | public BaseObjectResponse queryBabyDietReport(String id, Integer userId) { |
1252 | 1255 | BaseObjectResponse objectResponse = new BaseObjectResponse(); |
1253 | 1256 | Map data = new HashMap(); |
... | ... | @@ -1289,6 +1292,8 @@ |
1289 | 1292 | map.put("kaupEvaluate", kaupEvaluate); |
1290 | 1293 | //获取热量值 体重在正常范围内的不计算热量值 |
1291 | 1294 | double kaul = getKcal(month, model.getWeight(), model.getHeight(), baby.getSex(), kaupEvaluate); |
1295 | + | |
1296 | + double kauls = getBasicKaul(month, model.getWeight(), model.getHeight(), baby.getSex()); | |
1292 | 1297 | if (month >= 0 && month <= 5) { |
1293 | 1298 | List<BabyDietReportModel> babyDietReport = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month).and("feedingPattern").is(Integer.valueOf(model.getFeedType()))), BabyDietReportModel.class); |
1294 | 1299 | for (BabyDietReportModel babyDiet : babyDietReport) { |
... | ... | @@ -1352,7 +1357,7 @@ |
1352 | 1357 | } |
1353 | 1358 | } |
1354 | 1359 | |
1355 | - map.put("kaul", kaul + "kacl"); | |
1360 | + map.put("kaul", String.format("%.2f", kauls) + "kacl"); | |
1356 | 1361 | data.put("userInfo", map); |
1357 | 1362 | if ((kaupEvaluate.equals("消瘦") || kaupEvaluate.equals("超重")) && month >= 6 && month <= 11) { |
1358 | 1363 | List<BabyDietReportModel> babyDietReport = mongoTemplate.find(Query.query(Criteria.where("monthAge").is(month)), BabyDietReportModel.class); |
1359 | 1364 | |
... | ... | @@ -1420,9 +1425,9 @@ |
1420 | 1425 | |
1421 | 1426 | //秦皇岛精简版算法 |
1422 | 1427 | private double getKcal(int month, Double weight, Double height, int sex, String kaupEvaluate) { |
1423 | - double kaul = getBasicKaul(month, weight, height, sex); | |
1428 | + Integer kaul = (int) getBasicKaul(month, weight, height, sex); | |
1424 | 1429 | if (month < 12) { |
1425 | - kaul = getMathAbs(kaul); | |
1430 | + kaul = getRoundingFifty(kaul); | |
1426 | 1431 | if (kaul < 400) { |
1427 | 1432 | kaul = 400; |
1428 | 1433 | } else if (kaul > 1000) { |
1429 | 1434 | |
1430 | 1435 | |
1431 | 1436 | |
1432 | 1437 | |
1433 | 1438 | |
... | ... | @@ -1459,40 +1464,60 @@ |
1459 | 1464 | } |
1460 | 1465 | |
1461 | 1466 | // 25 为分割 |
1462 | - public Double getRounding(Double number) { | |
1467 | + public Integer getRounding(Integer number) { | |
1463 | 1468 | if (number / 10 % 10 >= 5) { |
1464 | 1469 | if (number / 10 % 10 >= 7 && number % 10 >= 5) { |
1465 | - double g = 0; //s % 10; | |
1466 | - double sw = 0;//s / 10 % 10; | |
1467 | - double b = number / 100 % 10 + 1; | |
1468 | - double q = number / 1000 % 10; | |
1469 | - double num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1470 | + int g = 0; //s % 10; | |
1471 | + int sw = 0;//s / 10 % 10; | |
1472 | + int b = number / 100 % 10 + 1; | |
1473 | + int q = number / 1000 % 10; | |
1474 | + int num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1470 | 1475 | return num; |
1471 | 1476 | } else { |
1472 | - double g = 0; //s % 10; | |
1473 | - double sw = 5;//s / 10 % 10; | |
1474 | - double b = number / 100 % 10; | |
1475 | - double q = number / 1000 % 10; | |
1476 | - double num = q * 1000 + b * 100 + sw * 10 + g * 0; | |
1477 | + int g = 0; //s % 10; | |
1478 | + int sw = 5;//s / 10 % 10; | |
1479 | + int b = number / 100 % 10; | |
1480 | + int q = number / 1000 % 10; | |
1481 | + int num = q * 1000 + b * 100 + sw * 10 + g * 0; | |
1477 | 1482 | return num; |
1478 | 1483 | } |
1479 | 1484 | } else { |
1480 | 1485 | if (number / 10 % 10 >= 2 && number % 10 >= 5) { |
1481 | - double g = 0; //s % 10; | |
1482 | - double sw = 5;//s / 10 % 10; | |
1483 | - double b = number / 100 % 10; | |
1484 | - double q = number / 1000 % 10; | |
1485 | - double num = q * 1000 + b * 100 + sw * 10 + g * 0; | |
1486 | + int g = 0; //s % 10; | |
1487 | + int sw = 5;//s / 10 % 10; | |
1488 | + int b = number / 100 % 10; | |
1489 | + int q = number / 1000 % 10; | |
1490 | + int num = q * 1000 + b * 100 + sw * 10 + g * 0; | |
1486 | 1491 | return num; |
1487 | 1492 | } else { |
1488 | - double g = 0; //s % 10; | |
1489 | - double sw = 0;//s / 10 % 10; | |
1490 | - double b = number / 100 % 10; | |
1491 | - double q = number / 1000 % 10; | |
1492 | - double num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1493 | + int g = 0; //s % 10; | |
1494 | + int sw = 0;//s / 10 % 10; | |
1495 | + int b = number / 100 % 10; | |
1496 | + int q = number / 1000 % 10; | |
1497 | + int num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1493 | 1498 | return num; |
1494 | 1499 | } |
1495 | 1500 | } |
1496 | 1501 | } |
1502 | + | |
1503 | + //50为分割 | |
1504 | + public Integer getRoundingFifty(Integer number) { | |
1505 | + if (number / 10 % 10 >= 5) { | |
1506 | + int g = 0; //s % 10; | |
1507 | + int sw = 0;//s / 10 % 10; | |
1508 | + int b = number / 100 % 10 + 1; | |
1509 | + int q = number / 1000 % 10; | |
1510 | + int num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1511 | + return num; | |
1512 | + } else { | |
1513 | + int g = 0; //s % 10; | |
1514 | + int sw = 0;//s / 10 % 10; | |
1515 | + int b = number / 100 % 10; | |
1516 | + int q = number / 1000 % 10; | |
1517 | + int num = q * 1000 + b * 100 + sw * 0 + g * 0; | |
1518 | + return num; | |
1519 | + } | |
1520 | + } | |
1521 | + | |
1497 | 1522 | } |