Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,25 @@

import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.Repository;
import org.springframework.data.repository.query.Param;

import in.koreatech.koin.domain.benefit.model.BenefitCategoryMap;

public interface BenefitCategoryMapRepository extends Repository<BenefitCategoryMap, Integer> {

List<BenefitCategoryMap> findByBenefitCategoryId(Integer benefitCategoryId);
@Query("""
SELECT bcm FROM BenefitCategoryMap bcm
JOIN FETCH bcm.shop s
WHERE bcm.benefitCategory.id = :benefitCategoryId
AND s.isDeleted = false
""")
List<BenefitCategoryMap> findActiveShopMapsByBenefitCategoryId(@Param("benefitCategoryId") Integer benefitCategoryId);

@Query("""
SELECT bcm FROM BenefitCategoryMap bcm
JOIN FETCH bcm.shop s
JOIN FETCH bcm.benefitCategory bc
WHERE s.isDeleted = false
""")
List<BenefitCategoryMap> findAllWithFetchJoin();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@ public BenefitCategoryResponse getBenefitCategories() {
}

public BenefitShopsResponse getBenefitShops(Integer benefitId) {
List<BenefitCategoryMap> benefitCategoryMaps = benefitCategoryMapRepository.findByBenefitCategoryId(benefitId);
List<BenefitCategoryMap> benefitCategoryMaps =
benefitCategoryMapRepository.findActiveShopMapsByBenefitCategoryId(benefitId);
LocalDateTime now = LocalDateTime.now(clock);

List<InnerShopResponse> innerShopResponses = benefitCategoryMaps.stream()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,23 @@ void setup() {
benefitCategoryMapFixture.혜택_추가(마슬랜, 배달비_무료);
benefitCategoryMapFixture.혜택_추가(영업중인_티바, 배달비_무료);
benefitCategoryMapFixture.혜택_추가(영업중이_아닌_신전_떡볶이, 배달비_무료);
Shop 삭제된_굿모닝살로만치킨 = shopFixture.builder()
.owner(현수_사장님)
.name("굿모닝살로만치킨")
.internalName("굿모닝살로만치킨")
.phone("010-0000-0000")
.address("천안시 동남구 병천면 1600")
.description("삭제된 상점입니다.")
.delivery(true)
.deliveryPrice(3000)
.payCard(true)
.payBank(true)
.isDeleted(true)
.isEvent(false)
.remarks("비고")
.hit(0)
.build();
benefitCategoryMapFixture.설명이_포함된_혜택_추가(삭제된_굿모닝살로만치킨, 배달비_무료, "배달비 무료");

shopReviewFixture.리뷰_4점(성빈_학생, 마슬랜);
shopReviewFixture.리뷰_4점(성빈_학생, 영업중인_티바);
Expand Down
Loading