diff --git a/refrigerator/src/main/java/moja/refrigerator/dto/ingredient/response/IngredientResponse.java b/refrigerator/src/main/java/moja/refrigerator/dto/ingredient/response/IngredientResponse.java index bda5d0b..0d4497c 100644 --- a/refrigerator/src/main/java/moja/refrigerator/dto/ingredient/response/IngredientResponse.java +++ b/refrigerator/src/main/java/moja/refrigerator/dto/ingredient/response/IngredientResponse.java @@ -13,6 +13,9 @@ public class IngredientResponse { private long remainExpirationDate; private int seasonDate; private String ingredientStorage; + private long ingredientManagementPk; + private boolean isBookmarked; + private String ingredientCategory; // ModelMapper 를 위한 기본 생성자 생성 public IngredientResponse() {} diff --git a/refrigerator/src/main/java/moja/refrigerator/service/ingredient/IngredientServiceImpl.java b/refrigerator/src/main/java/moja/refrigerator/service/ingredient/IngredientServiceImpl.java index 9842b63..e64dd58 100644 --- a/refrigerator/src/main/java/moja/refrigerator/service/ingredient/IngredientServiceImpl.java +++ b/refrigerator/src/main/java/moja/refrigerator/service/ingredient/IngredientServiceImpl.java @@ -65,6 +65,7 @@ public void createIngredient(IngredientCreateRequest request, Long userPk, Long @Transactional(readOnly = true) public List getIngredient(Long userPk) { List ingredients = ingredientMyRefrigeratorRepository.findByUserUserPk(userPk); + List ingredientBookmarks = ingredientBookmarkRepository.findAllByUser_UserPk(userPk); LocalDate currentDate = LocalDate.now(); AtomicInteger counter = new AtomicInteger(1); @@ -76,6 +77,16 @@ public List getIngredient(Long userPk) { response.setIngredientName(ingredient.getIngredientManagement().getIngredientName()); response.setSeasonDate(ingredient.getIngredientManagement().getSeasonDate()); response.setIngredientStorage(ingredient.getIngredientManagement().getIngredientStorage().getIngredientStorage()); + response.setIngredientCategory(ingredient.getIngredientManagement().getIngredientCategory().getIngredientCategory()); + boolean isBookmark = false; + for (IngredientBookmark ingredientBookmark : ingredientBookmarks) { + if (ingredientBookmark.getIngredientMyRefrigerator().getIngredientMyRefrigeratorPk() + == ingredient.getIngredientMyRefrigeratorPk()) { + isBookmark = true; + break; + } + } + response.setBookmarked(isBookmark); // 현재 날짜 기준, 유통기한 남은 일수 계산 LocalDate expirationDate = LocalDate.parse(ingredient.getExpirationDate());