|
|
|
@ -731,7 +731,7 @@ public class M_Bf_foodController extends AbstractControllerManager{
|
|
|
|
|
DataMap info = recommendBO.select_baby_info(paramMap);
|
|
|
|
|
DataMap.putToModel(model, "info", info);
|
|
|
|
|
|
|
|
|
|
// 영양기록
|
|
|
|
|
// 영양기록 - 모유,홈메이드이유식,시판이유식,간식,분유
|
|
|
|
|
List<DataMap> lm = scoreBO.select_daily_list(paramMap);
|
|
|
|
|
// DataMap.putToModel(model, "lm", lm);
|
|
|
|
|
// 영양소 총합
|
|
|
|
@ -787,7 +787,87 @@ public class M_Bf_foodController extends AbstractControllerManager{
|
|
|
|
|
|
|
|
|
|
return redirect_url;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Ajax Call 외부 연동(챗봇) > 이유식 > 추천 홈페이드 이유식 화면 - snut97
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value="list_bf_homemade_recommend_ajax", method=RequestMethod.GET)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public DataMap list_bf_homemade_recommend_ajax(HttpServletRequest request) {
|
|
|
|
|
DataMap result = new DataMap();
|
|
|
|
|
result.put("RESULT", "200");
|
|
|
|
|
DataMap paramMap = gmUtil.getDataMapFromRequest(request);
|
|
|
|
|
|
|
|
|
|
try{
|
|
|
|
|
// 아이 SMC정보 조회
|
|
|
|
|
DataMap smcInfo = recommendBO.select_baby_smc(paramMap);
|
|
|
|
|
|
|
|
|
|
//세션에 선택된 아이정보가 있을 경우
|
|
|
|
|
if(smcInfo == null) {
|
|
|
|
|
result.put("RESULT", "Not found child");
|
|
|
|
|
return result;
|
|
|
|
|
} else {
|
|
|
|
|
paramMap.put("smc_no", smcInfo.get("smc_no"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 아이 정보
|
|
|
|
|
DataMap info = recommendBO.select_baby_info(paramMap);
|
|
|
|
|
|
|
|
|
|
// 금일 기록별 영양기록 - 모유,홈메이드이유식,시판이유식,간식,분유
|
|
|
|
|
List<DataMap> lm = scoreBO.select_daily_list(paramMap);
|
|
|
|
|
|
|
|
|
|
// 금일 영양소 총합
|
|
|
|
|
DataMap tot = scoreBO.select_day_total(paramMap);
|
|
|
|
|
|
|
|
|
|
// 산술값 순위화
|
|
|
|
|
DataMap rank = new DataMap();
|
|
|
|
|
|
|
|
|
|
// 권장량대비섭취량
|
|
|
|
|
DataMap intake = new DataMap();
|
|
|
|
|
|
|
|
|
|
// 홈메이드,시판 이유식 추천시 필요한 dm
|
|
|
|
|
DataMap recommend = new DataMap();
|
|
|
|
|
|
|
|
|
|
// 금일 섭취 기록 없음
|
|
|
|
|
if(lm.isEmpty()) {
|
|
|
|
|
NutrientScoreCalculation nut = new NutrientScoreCalculation(info);
|
|
|
|
|
recommend.put("for_m", nut.getBabyFoodStage());
|
|
|
|
|
rank.putAll(nut.NutrientSortingForNoRecord());
|
|
|
|
|
if(nut.getLabel() != -1) rank.put("record", "N");
|
|
|
|
|
} else { //섭취기록 있을 경우
|
|
|
|
|
NutrientScoreCalculation nut = new NutrientScoreCalculation(tot);
|
|
|
|
|
recommend.put("for_m", nut.getBabyFoodStage());
|
|
|
|
|
intake = nut.getIntakeComparedToTheRecommendedAmount();
|
|
|
|
|
rank.mergeDataMap(nut.NutrientSortingForRecord(intake));
|
|
|
|
|
|
|
|
|
|
FoodScoreCalculation food = new FoodScoreCalculation(tot);
|
|
|
|
|
rank.mergeDataMap(food.Foodsort(food.getScore()));
|
|
|
|
|
if(nut.getLabel() != -1) rank.put("record", "Y");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//추천 식재료 검색 - 랭크값(영양소별 수치값)에 따라. 금일 섭취기록 없을 경우 추천식재료 영양소 총합이 100이상, 금일 섭취기록 있을 경우 추천식재료 영양소 총합 40이상 상위 3가지 검색
|
|
|
|
|
List<DataMap> ingre = recommendBO.select_ingre_recommend_list(rank);
|
|
|
|
|
|
|
|
|
|
List<String> ingre_name = new ArrayList<String>();
|
|
|
|
|
for(DataMap dm:ingre) {
|
|
|
|
|
String name = dm.getString("name_real");
|
|
|
|
|
ingre_name.add(name);
|
|
|
|
|
}
|
|
|
|
|
recommend.put("name_real", ingre_name);
|
|
|
|
|
|
|
|
|
|
//추천 식재료에 따른 홈메이드 이유식 검색
|
|
|
|
|
List<DataMap> home = recommendBO.select_home_recommend_list(recommend);
|
|
|
|
|
|
|
|
|
|
result.put("home", home); //추천 홈메이드 이유식
|
|
|
|
|
result.put("ingre", ingre); //추천 식재료
|
|
|
|
|
|
|
|
|
|
} catch(Exception ex1){
|
|
|
|
|
result.put("RESULT", "500");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value="list_bf_ingredient")
|
|
|
|
|
public String list_bf_ingredient(@ModelAttribute("model") ModelMap model, HttpServletRequest request, HttpServletResponse response
|
|
|
|
|
, RedirectAttributes ra) {
|
|
|
|
|