From bcdd6cc9100d915593d8f4cfbc121d7d31800f45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=95=88=EC=A0=95=ED=9B=84?= Date: Wed, 31 Jul 2024 16:00:48 +0900 Subject: [PATCH] fix: visitlist error check --- .../market/application/MarketInfoUseCase.java | 10 ++++++++-- .../application/VisitListSaveUseCase.java | 4 ++-- .../market/presentation/MarketController.java | 18 ++++++++++-------- .../repository/VisitListRepository.java | 4 ++++ .../service/VisitListQueryService.java | 4 ++++ 5 files changed, 28 insertions(+), 12 deletions(-) diff --git a/api-module/src/main/java/com/likelion/apimodule/market/application/MarketInfoUseCase.java b/api-module/src/main/java/com/likelion/apimodule/market/application/MarketInfoUseCase.java index e0a5cf6..6d66a5e 100644 --- a/api-module/src/main/java/com/likelion/apimodule/market/application/MarketInfoUseCase.java +++ b/api-module/src/main/java/com/likelion/apimodule/market/application/MarketInfoUseCase.java @@ -11,6 +11,8 @@ import com.likelion.coremodule.market.service.MarketQueryService; import com.likelion.coremodule.store.domain.Store; import com.likelion.coremodule.store.service.StoreQueryService; +import com.likelion.coremodule.user.application.UserQueryService; +import com.likelion.coremodule.user.domain.User; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -24,6 +26,7 @@ public class MarketInfoUseCase { private final MarketQueryService marketQueryService; private final VisitListQueryService visitListQueryService; private final StoreQueryService storeQueryService; + private final UserQueryService userQueryService; private final JwtUtil jwtUtil; public MarketInfo findMarketInfo(Long marketId) { @@ -47,10 +50,13 @@ public void saveVisitList(Long storeId, String accessToken) { marketQueryService.saveVisitList(storeId, email); } - public List findVisitList() { + public List findVisitList(String accessToken) { + + String email = jwtUtil.getEmail(accessToken); + User user = userQueryService.findByEmail(email); List visitListInfos = new ArrayList<>(); - List visitLists = visitListQueryService.findAllVisitList(); + List visitLists = visitListQueryService.findVisitListsByUserId(user.getUserId()); for (VisitList i : visitLists) { Long id = i.getId(); diff --git a/api-module/src/main/java/com/likelion/apimodule/market/application/VisitListSaveUseCase.java b/api-module/src/main/java/com/likelion/apimodule/market/application/VisitListSaveUseCase.java index e78ff0b..a0f95dd 100644 --- a/api-module/src/main/java/com/likelion/apimodule/market/application/VisitListSaveUseCase.java +++ b/api-module/src/main/java/com/likelion/apimodule/market/application/VisitListSaveUseCase.java @@ -13,13 +13,13 @@ public class VisitListSaveUseCase { private final VisitListQueryService visitListQueryService; - public void updateToPrepared(Long visitListId) { + public void updateToPrepared(String accessToken, Long visitListId) { VisitList visitList = visitListQueryService.findVisitListById(visitListId); visitList.updateToPrepared(); } - public void updateToVisited(Long visitListId) { + public void updateToVisited(String accessToken, Long visitListId) { VisitList visitList = visitListQueryService.findVisitListById(visitListId); visitList.updateToPrepared(); diff --git a/api-module/src/main/java/com/likelion/apimodule/market/presentation/MarketController.java b/api-module/src/main/java/com/likelion/apimodule/market/presentation/MarketController.java index 609536f..632a399 100644 --- a/api-module/src/main/java/com/likelion/apimodule/market/presentation/MarketController.java +++ b/api-module/src/main/java/com/likelion/apimodule/market/presentation/MarketController.java @@ -97,14 +97,14 @@ public ApplicationResponse saveVisitList(@PathVariable Long storeId, } ) @Operation(summary = "방문 리스트 조회 API", description = "방문 리스트 조회 API 입니다.") - public ApplicationResponse> findVisitList() { + public ApplicationResponse> findVisitList(@RequestHeader(AuthConsts.ACCESS_TOKEN_HEADER) String accessToken) { - final List visitList = marketInfoUseCase.findVisitList(); + final List visitList = marketInfoUseCase.findVisitList(accessToken); return ApplicationResponse.ok(visitList); } // 방문 리스트 - 준비 완료로 변경 - @PatchMapping("/{visitlistId}/visitlist/prepared}") + @PatchMapping("/{visitlistId}/visitlist/prepared") @ApiResponses( value = { @ApiResponse( @@ -115,14 +115,15 @@ public ApplicationResponse> findVisitList() { } ) @Operation(summary = "방문 리스트 준비 완료로 변경 API", description = "방문 리스트 준비 완료로 변경 API 입니다.") - public ApplicationResponse changeToPrepared(@PathVariable Long visitlistId) { + public ApplicationResponse changeToPrepared(@RequestHeader(AuthConsts.ACCESS_TOKEN_HEADER) String accessToken, + @PathVariable Long visitlistId) { - visitListSaveUseCase.updateToPrepared(visitlistId); + visitListSaveUseCase.updateToPrepared(accessToken, visitlistId); return ApplicationResponse.ok("준비 완료로 변경했습니다."); } // 방문 리스트 - 방문 완료로 변경 - @PatchMapping("/{visitlistId}/visitlist/visited}") + @PatchMapping("/{visitlistId}/visitlist/visited") @ApiResponses( value = { @ApiResponse( @@ -133,9 +134,10 @@ public ApplicationResponse changeToPrepared(@PathVariable Long visitlist } ) @Operation(summary = "방문 리스트 방문 완료로 변경 API", description = "방문 리스트 방문 완료로 변경 API 입니다.") - public ApplicationResponse changeToVisited(@PathVariable Long visitlistId) { + public ApplicationResponse changeToVisited(@RequestHeader(AuthConsts.ACCESS_TOKEN_HEADER) String accessToken, + @PathVariable Long visitlistId) { - visitListSaveUseCase.updateToVisited(visitlistId); + visitListSaveUseCase.updateToVisited(accessToken, visitlistId); return ApplicationResponse.ok("준비 완료로 변경했습니다."); } diff --git a/core-module/src/main/java/com/likelion/coremodule/VisitList/repository/VisitListRepository.java b/core-module/src/main/java/com/likelion/coremodule/VisitList/repository/VisitListRepository.java index ae77be6..cb9ce69 100644 --- a/core-module/src/main/java/com/likelion/coremodule/VisitList/repository/VisitListRepository.java +++ b/core-module/src/main/java/com/likelion/coremodule/VisitList/repository/VisitListRepository.java @@ -3,7 +3,11 @@ import com.likelion.coremodule.VisitList.domain.VisitList; import org.springframework.data.jpa.repository.JpaRepository; +import java.util.List; + public interface VisitListRepository extends JpaRepository { VisitList findVisitListByUserUserIdAndStoreId(Long userId, Long storeId); + + List findVisitListsByUserUserId(Long userId); } diff --git a/core-module/src/main/java/com/likelion/coremodule/VisitList/service/VisitListQueryService.java b/core-module/src/main/java/com/likelion/coremodule/VisitList/service/VisitListQueryService.java index fed2621..3b93204 100644 --- a/core-module/src/main/java/com/likelion/coremodule/VisitList/service/VisitListQueryService.java +++ b/core-module/src/main/java/com/likelion/coremodule/VisitList/service/VisitListQueryService.java @@ -22,4 +22,8 @@ public List findAllVisitList() { public VisitList findVisitListById(Long id) { return visitListRepository.findById(id).orElseThrow(() -> new VisitException(VisitErrorCode.NO_VISIT_LIST_INFO)); } + + public List findVisitListsByUserId(Long userId) { + return visitListRepository.findVisitListsByUserUserId(userId); + } }