[수정] 식품군 점수 로직 수정 및 ftl 적용

dev_bert
Unknown 3 years ago
parent 1bb8f0252e
commit aeafc84ff1

@ -150,7 +150,7 @@ public class FoodScoreCalculation {
* @return
*/
private double get_dqi_food1(double x) {
if( x ==0 )
if( x == 0 )
return 0;
else if(label==0) {
if(dqi_food_1>0 && dqi_food_2>0) return 5;
@ -209,7 +209,7 @@ public class FoodScoreCalculation {
private double get_dqi_food4(double x) {
// 0~5M은 곡물, 통곡물을 곡류로 합쳐 계산
// 둘 중 하나라도 섭취하면 5점 배점
if( x ==0 )
if( x == 0 && label != 0 )
return 0;
else if(label==0) {
if(x>0 || dqi_food_5>0) return 0;
@ -272,7 +272,7 @@ public class FoodScoreCalculation {
* @return
*/
private double get_dqi_food6(double x) {
if( x ==0 )
if( x == 0 && label != 0 )
return 0;
else if(label==0) {
if(x>0) return 0;
@ -307,7 +307,7 @@ public class FoodScoreCalculation {
* @return
*/
private double get_dqi_food7(double x) {
if( x ==0 )
if( x == 0 && label != 0 )
return 0;
else if(label==0) {
if(x>0) return 0;
@ -338,7 +338,7 @@ public class FoodScoreCalculation {
* @return
*/
private double get_dqi_food8(double x) {
if( x ==0 )
if( x == 0 && label != 0 )
return 0;
else if(label==0) {
if(x>0) return 0;
@ -517,34 +517,50 @@ public class FoodScoreCalculation {
}
private double gethealthyFood() {
return scoreMap.getDouble("dqi_food_1")+scoreMap.getDouble("dqi_food_2")+scoreMap.getDouble("dqi_food_4")+
scoreMap.getDouble("dqi_food_5")+scoreMap.getDouble("dqi_food_6")+scoreMap.getDouble("dqi_food_7")+scoreMap.getDouble("dqi_food_8");
if (label == 0) {
double t = scoreMap.getDouble("dqi_food_1")+scoreMap.getDouble("dqi_food_2");
return t/15*100;
} else {
return scoreMap.getDouble("dqi_food_1")+scoreMap.getDouble("dqi_food_2")+scoreMap.getDouble("dqi_food_4")+
scoreMap.getDouble("dqi_food_5")+scoreMap.getDouble("dqi_food_6")+scoreMap.getDouble("dqi_food_7")+scoreMap.getDouble("dqi_food_8");
}
}
private double getUnhealthyFood() {
return scoreMap.getDouble("dqi_food_9")+scoreMap.getDouble("dqi_food_10")+scoreMap.getDouble("dqi_food_11")+scoreMap.getDouble("dqi_food_12");
if (label == 0) {
double t = scoreMap.getDouble("dqi_food_4")+scoreMap.getDouble("dqi_food_6")+
scoreMap.getDouble("dqi_food_7")+scoreMap.getDouble("dqi_food_8")+scoreMap.getDouble("dqi_food_9")+
scoreMap.getDouble("dqi_food_10")+scoreMap.getDouble("dqi_food_11")+scoreMap.getDouble("dqi_food_12");
t=t;
return t/40*100;
} else {
double t = scoreMap.getDouble("dqi_food_9")+scoreMap.getDouble("dqi_food_10")+scoreMap.getDouble("dqi_food_11")+scoreMap.getDouble("dqi_food_12");
return t*2.5;
}
}
private long gethealthyFoodScore() {
long result = 0;
if(label==0) {
result = Math.round(gethealthyFood()*1.428571429);
result = Math.round(gethealthyFood());
}else if(label==1) {
result = Math.round(gethealthyFood()*1.818181818);
}else if(label>1){
result = Math.round(gethealthyFood()*2);
}
result = result;
return result;
}
private long getUnhealthyFoodScore() {
long result = 0;
if(label>=0)
result = Math.round(getUnhealthyFood()*2.5);
result = Math.round(getUnhealthyFood());
return result;
}
private long getTotalFoodScore() {
return gethealthyFoodScore() + getUnhealthyFoodScore();
return (gethealthyFoodScore() + getUnhealthyFoodScore())/2;
}
public DataMap getScore() {
@ -571,8 +587,7 @@ public class FoodScoreCalculation {
milk = dqi_food_2;
else if(label>1)
milk = dqi_food_2 + dqi_food_3;
scoreMap.put("dqi_food_1", get_dqi_food1(dqi_food_1));
scoreMap.put("dqi_food_1", get_dqi_food1(dqi_food_1) + get_dqi_food2(dqi_food_2));
scoreMap.put("dqi_food_2", get_dqi_food2(milk));
scoreMap.put("dqi_food_4", get_dqi_food4(dqi_food_4));
scoreMap.put("dqi_food_5", get_dqi_food5(dqi_food_5));
@ -595,6 +610,7 @@ public class FoodScoreCalculation {
public DataMap getLights() {
DataMap result = new DataMap();
result.put("dqi_food_1", get_milk_light(scoreMap.getDouble("dqi_food_1")));
result.put("dqi_food_2", get_milk_light(scoreMap.getDouble("dqi_food_2")));
result.put("dqi_food_4", get_grains_light(scoreMap.getDouble("dqi_food_4")));
result.put("dqi_food_5", get_grains_light(scoreMap.getDouble("dqi_food_5")));
@ -615,7 +631,14 @@ public class FoodScoreCalculation {
* @return
*/
private String get_milk_light(double score) {
if(label==1) {
if(label==0) {
if(score==0)
return Light.red.name();
else if(score==10 || score==5)
return Light.yellow.name();
else if(score==15)
return Light.green.name();
}else if(label==1) {
if(score==0)
return Light.red.name();
else if(score==1.25)
@ -644,7 +667,7 @@ public class FoodScoreCalculation {
return Light.red.name();
else if(score==1.25)
return Light.yellow.name();
else if(score==2.5)
else if(score==2.5 || score==5.0)
return Light.green.name();
}
return null;

@ -48,18 +48,33 @@
<h2>긍정 식품군</h2>
<!-- nutrient_list -->
<div class="nutrient_list">
<!-- nutrient_box -->
<div class="nutrient_box">
<p class="tit">모유/분유/유제품<span>Breast Milk, Milk, Fomula</span></p>
<#assign dqi_food_2_3=model['score']['dqi_food_2']?number>
<p class="per">${dqi_food_2_3!}점</p>
<div class="nutrient_slider">
<p class="base"></p>
<p class="move ${model['lights']['dqi_food_2']!}" style="width:${dqi_food_2_3!*20}%"></p>
<span class="point ${model['lights']['dqi_food_2']!}" style="left:${dqi_food_2_3!*20}%"></span>
</div>
</div>
<!-- //nutrient_box -->
<#if (5 < model['rm_child']['m'])>
<!-- nutrient_box -->
<div class="nutrient_box">
<p class="tit">모유/분유/유제품<span>Breast Milk, Milk, Fomula</span></p>
<#assign dqi_food_2_3=model['score']['dqi_food_2']?number>
<p class="per">${dqi_food_2_3!}점</p>
<div class="nutrient_slider">
<p class="base"></p>
<p class="move ${model['lights']['dqi_food_2']!}" style="width:${dqi_food_2_3!*20}%"></p>
<span class="point ${model['lights']['dqi_food_2']!}" style="left:${dqi_food_2_3!*20}%"></span>
</div>
</div>
<!-- //nutrient_box -->
<#else>
<!-- nutrient_box -->
<div class="nutrient_box">
<p class="tit">모유/분유/유제품<span>Breast Milk, Milk, Fomula</span></p>
<#assign dqi_food_1=model['score']['dqi_food_1']?number>
<p class="per">${dqi_food_1!}점</p>
<div class="nutrient_slider">
<p class="base"></p>
<p class="move ${model['lights']['dqi_food_1']!}" style="width:${dqi_food_1!/15*100}%"></p>
<span class="point ${model['lights']['dqi_food_1']!}" style="left:${dqi_food_1!/15*100}%"></span>
</div>
</div>
<!-- //nutrient_box -->
</#if>
<#if (5 < model['rm_child']['m'])>
<!-- nutrient_box -->
<div class="nutrient_box">

Loading…
Cancel
Save