diff --git a/api-module/src/main/java/com/likelion/apimodule/home/application/HomeFindUseCase.java b/api-module/src/main/java/com/likelion/apimodule/home/application/HomeFindUseCase.java index a831ec7..4a3370a 100644 --- a/api-module/src/main/java/com/likelion/apimodule/home/application/HomeFindUseCase.java +++ b/api-module/src/main/java/com/likelion/apimodule/home/application/HomeFindUseCase.java @@ -74,15 +74,16 @@ public HomeInfo findMarketLists(String accessToken) { visitListHomeList.add(visitListHome); } - MarketQrVisit marketQrVisit = marketQueryService.findMarketVisit(market.getId()); - int qrVisit = (marketQrVisit != null) ? marketQrVisit.getQrVisit() : 0; + List marketQrVisit = marketQueryService.findMarketVisit(market.getId()); + int qrVisitTotal = marketQrVisit.stream().mapToInt(MarketQrVisit::getQrVisit).sum(); + HotListHome hotListHome = new HotListHome( market.getId(), market.getName(), market.getImageUrl(), market.getLocation(), - qrVisit + qrVisitTotal ); hotListHomeList.add(hotListHome); } diff --git a/core-module/src/main/java/com/likelion/coremodule/market/repository/MarketQrVisitRepository.java b/core-module/src/main/java/com/likelion/coremodule/market/repository/MarketQrVisitRepository.java index 457ba36..ba15d56 100644 --- a/core-module/src/main/java/com/likelion/coremodule/market/repository/MarketQrVisitRepository.java +++ b/core-module/src/main/java/com/likelion/coremodule/market/repository/MarketQrVisitRepository.java @@ -3,9 +3,13 @@ import com.likelion.coremodule.market.domain.MarketQrVisit; import org.springframework.data.jpa.repository.JpaRepository; +import java.util.List; + public interface MarketQrVisitRepository extends JpaRepository { - MarketQrVisit findByMarketIdAAndUserUserId(Long marketId, Long userId); + MarketQrVisit findByMarketIdAndUserUserId(Long marketId, Long userId); + + List findMarketQrVisitsByMarketId(Long marketId); Integer countAllByMarketIdAndUserUserId(Long marketId, Long userId); } diff --git a/core-module/src/main/java/com/likelion/coremodule/market/service/HomeQueryService.java b/core-module/src/main/java/com/likelion/coremodule/market/service/HomeQueryService.java index 44cc43d..33d34fd 100644 --- a/core-module/src/main/java/com/likelion/coremodule/market/service/HomeQueryService.java +++ b/core-module/src/main/java/com/likelion/coremodule/market/service/HomeQueryService.java @@ -17,7 +17,7 @@ public class HomeQueryService { public void updateQrVisit(User user, Market market) { - MarketQrVisit marketQrVisit = marketQrVisitRepository.findByMarketIdAAndUserUserId(market.getId(), user.getUserId()); + MarketQrVisit marketQrVisit = marketQrVisitRepository.findByMarketIdAndUserUserId(market.getId(), user.getUserId()); if (marketQrVisit != null) { marketQrVisit.updateQrVisit(); diff --git a/core-module/src/main/java/com/likelion/coremodule/market/service/MarketQueryService.java b/core-module/src/main/java/com/likelion/coremodule/market/service/MarketQueryService.java index 87eca5c..d749435 100644 --- a/core-module/src/main/java/com/likelion/coremodule/market/service/MarketQueryService.java +++ b/core-module/src/main/java/com/likelion/coremodule/market/service/MarketQueryService.java @@ -42,8 +42,8 @@ public Market findMarket(Long id) { return marketRepository.findById(id).orElseThrow(() -> new MarketException(MarketErrorCode.NO_MARKET_INFO)); } - public MarketQrVisit findMarketVisit(Long marketId) { - return marketQrVisitRepository.findByMarketId(marketId); + public List findMarketVisit(Long marketId) { + return marketQrVisitRepository.findMarketQrVisitsByMarketId(marketId); } public Integer findMyMarketVisit(Long marketId, Long userId) {