diff --git a/src/main/java/com/avab/avab/domain/Recreation.java b/src/main/java/com/avab/avab/domain/Recreation.java index 89370ad..b75b127 100644 --- a/src/main/java/com/avab/avab/domain/Recreation.java +++ b/src/main/java/com/avab/avab/domain/Recreation.java @@ -63,8 +63,6 @@ public class Recreation extends BaseEntity { private Long viewCount; - private Long weeklyViewCount; - private Long favoriteCount; @ColumnDefault("0") @@ -140,4 +138,12 @@ public Boolean isAuthorDeleted() { public Boolean isReportedByUser(User user) { return this.reportList.stream().anyMatch(report -> report.isReporter(user)); } + + public void incrementFavoriteCount() { + this.favoriteCount++; + } + + public void decrementFavoriteCount() { + this.favoriteCount--; + } } diff --git a/src/main/java/com/avab/avab/service/impl/RecreationServiceImpl.java b/src/main/java/com/avab/avab/service/impl/RecreationServiceImpl.java index 00793e9..116eaa0 100644 --- a/src/main/java/com/avab/avab/service/impl/RecreationServiceImpl.java +++ b/src/main/java/com/avab/avab/service/impl/RecreationServiceImpl.java @@ -87,12 +87,14 @@ public Boolean toggleFavoriteRecreation(Long recreationId, User user) { if (recreationFavorite.isPresent()) { recreationFavoriteRepository.delete(recreationFavorite.get()); + recreation.decrementFavoriteCount(); return false; } else { RecreationFavorite favorite = RecreationConverter.toRecreationFavorite(recreation, user); recreationFavoriteRepository.save(favorite); + recreation.incrementFavoriteCount(); return true; }