From 736e34c6bc20ea402ed93c0ee719b370d537e86a Mon Sep 17 00:00:00 2001 From: subin <200516bb@gmail.com> Date: Thu, 10 Oct 2024 14:47:45 +0900 Subject: [PATCH 1/5] =?UTF-8?q?refactor:=20HistoryFacade=EC=97=90=EC=84=9C?= =?UTF-8?q?=20Repository=EB=A5=BC=20Service=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/history/service/HistoryFacade.java | 13 ++++++------- .../domain/history/service/HistoryService.java | 10 ++++++++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryFacade.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryFacade.java index af33fa7a..e7327f9a 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryFacade.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryFacade.java @@ -1,12 +1,11 @@ package com.uspray.uspray.domain.history.service; +import com.uspray.uspray.domain.member.service.MemberService; import com.uspray.uspray.domain.pray.dto.pray.request.PrayRequestDto; import com.uspray.uspray.domain.pray.dto.pray.response.PrayResponseDto; import com.uspray.uspray.domain.history.model.History; import com.uspray.uspray.domain.member.model.Member; import com.uspray.uspray.domain.pray.service.PrayFacade; -import com.uspray.uspray.domain.history.repository.HistoryRepository; -import com.uspray.uspray.domain.member.repository.MemberRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -16,15 +15,15 @@ public class HistoryFacade { private final PrayFacade prayFacade; - private final MemberRepository memberRepository; - private final HistoryRepository historyRepository; + private final MemberService memberService; + private final HistoryService historyService; @Transactional public PrayResponseDto historyToPray(PrayRequestDto prayRequestDto, String username, Long historyId) { - Member member = memberRepository.getMemberByUserId(username); - History history = historyRepository.getHistoryByIdAndMember(historyId, member); + Member member = memberService.findMemberByUserId(username); + History history = historyService.getHistoryByIdAndMember(historyId, member); - historyRepository.delete(history); + historyService.deleteHistory(history); return prayFacade.createPray(prayRequestDto, username, history.getStartDate()); diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java index 7e86ef50..8fa3dd19 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java @@ -86,4 +86,14 @@ public HistoryDetailResponseDto getHistoryDetail(String username, Long historyId public void saveHistory(History history) { historyRepository.save(history); } + + @Transactional + public void deleteHistory(History history) { + historyRepository.delete(history); + } + + @Transactional + public History getHistoryByIdAndMember(Long historyId, Member member) { + return historyRepository.getHistoryByIdAndMember(historyId, member); + } } From c4a10f053539af3afa7d9179ea09bbf690b5e242 Mon Sep 17 00:00:00 2001 From: subin <200516bb@gmail.com> Date: Tue, 15 Oct 2024 17:08:18 +0900 Subject: [PATCH 2/5] =?UTF-8?q?refactor:=20error=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uspray/domain/history/service/HistoryService.java | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java index 8fa3dd19..fccbd00f 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java @@ -9,7 +9,6 @@ import com.uspray.uspray.domain.member.model.Member; import com.uspray.uspray.domain.pray.model.Pray; import com.uspray.uspray.global.exception.ErrorStatus; -import com.uspray.uspray.global.exception.model.CustomException; import com.uspray.uspray.global.exception.model.NotFoundException; import com.uspray.uspray.domain.history.repository.HistoryRepository; import com.uspray.uspray.domain.member.repository.MemberRepository; @@ -40,20 +39,16 @@ public HistoryListResponseDto getHistoryList(String username, String type, int p if (PrayType.PERSONAL.name().equalsIgnoreCase(type)) { historyList = historyRepository.findByMemberAndOriginPrayIdIsNull(member, pageable) - .map(HistoryResponseDto::of); - return new HistoryListResponseDto(historyList.getContent(), - historyList.getTotalPages()); + .map(HistoryResponseDto::of); } - if (PrayType.SHARED.name().equalsIgnoreCase(type)) { + else { historyList = historyRepository.findByMemberAndOriginPrayIdIsNotNull( member, pageable).map(history -> { Member originMember = memberRepository.getMemberById(history.getOriginMemberId()); return HistoryResponseDto.shared(history, originMember); }); - return new HistoryListResponseDto(historyList.getContent(), - historyList.getTotalPages()); } - throw new CustomException(ErrorStatus.INVALID_TYPE_EXCEPTION); + return new HistoryListResponseDto(historyList.getContent(), historyList.getTotalPages()); } @Transactional(readOnly = true) From a400a528635137d3e27c42e00959297d893b2772 Mon Sep 17 00:00:00 2001 From: subin <200516bb@gmail.com> Date: Thu, 24 Oct 2024 13:57:09 +0900 Subject: [PATCH 3/5] =?UTF-8?q?refactor:=20id=20=EC=B2=B4=ED=81=AC=20?= =?UTF-8?q?=EB=A1=9C=EC=A7=81=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uspray/uspray/domain/history/service/HistoryService.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java index fccbd00f..f3116141 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java @@ -67,9 +67,6 @@ public HistoryListResponseDto searchHistoryList(String username, public HistoryDetailResponseDto getHistoryDetail(String username, Long historyId) { Member member = memberRepository.getMemberByUserId(username); History history = historyRepository.getHistoryById(historyId); - if (!history.getMember().getId().equals(member.getId())) { - throw new NotFoundException(ErrorStatus.HISTORY_NOT_FOUND_EXCEPTION); - } if (history.getPrayType().equals(PrayType.SHARED)) { Pray originPray = prayRepository.getPrayById(history.getOriginPrayId()); return HistoryDetailResponseDto.shared(history, originPray); From c648f89d240efa4efa4d7f2605b9e854ade093f8 Mon Sep 17 00:00:00 2001 From: subin <200516bb@gmail.com> Date: Thu, 24 Oct 2024 14:29:13 +0900 Subject: [PATCH 4/5] =?UTF-8?q?refactor:=20HistoryRepository=20=EB=A6=AC?= =?UTF-8?q?=ED=8C=A9=ED=86=A0=EB=A7=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../history/repository/HistoryRepository.java | 13 +------------ .../domain/history/service/HistoryService.java | 17 ++++++++++++++--- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/uspray/uspray/domain/history/repository/HistoryRepository.java b/src/main/java/com/uspray/uspray/domain/history/repository/HistoryRepository.java index cf758868..20b8d3ef 100644 --- a/src/main/java/com/uspray/uspray/domain/history/repository/HistoryRepository.java +++ b/src/main/java/com/uspray/uspray/domain/history/repository/HistoryRepository.java @@ -18,18 +18,7 @@ public interface HistoryRepository extends JpaRepository, History Page findByMemberAndOriginPrayIdIsNotNull(Member member, Pageable pageable); - Optional findByIdAndMember(Long historyId, Member member); - default History getHistoryByIdAndMember(Long historyId, Member member) { - return findByIdAndMember(historyId, member) - .orElseThrow(() -> new NotFoundException(ErrorStatus.HISTORY_NOT_FOUND_EXCEPTION)); - } - - default History getHistoryById(Long historyId) { - return findById(historyId) - .orElseThrow(() -> new NotFoundException( - ErrorStatus.HISTORY_NOT_FOUND_EXCEPTION - )); - } + Optional findById(Long historyId); } diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java index f3116141..100e36fe 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java @@ -66,7 +66,7 @@ public HistoryListResponseDto searchHistoryList(String username, @Transactional(readOnly = true) public HistoryDetailResponseDto getHistoryDetail(String username, Long historyId) { Member member = memberRepository.getMemberByUserId(username); - History history = historyRepository.getHistoryById(historyId); + History history = getHistoryById(historyId); if (history.getPrayType().equals(PrayType.SHARED)) { Pray originPray = prayRepository.getPrayById(history.getOriginPrayId()); return HistoryDetailResponseDto.shared(history, originPray); @@ -84,8 +84,19 @@ public void deleteHistory(History history) { historyRepository.delete(history); } - @Transactional + @Transactional(readOnly = true) public History getHistoryByIdAndMember(Long historyId, Member member) { - return historyRepository.getHistoryByIdAndMember(historyId, member); + return historyRepository.findByIdAndMember(historyId, member) + .orElseThrow(() -> new NotFoundException( + ErrorStatus.HISTORY_NOT_FOUND_EXCEPTION + )); + } + + @Transactional(readOnly = true) + public History getHistoryById(Long historyId) { + return historyRepository.findById(historyId) + .orElseThrow(() -> new NotFoundException( + ErrorStatus.HISTORY_NOT_FOUND_EXCEPTION + )); } } From c3abc0c7b90aa8455189a6096948f443b3c5a409 Mon Sep 17 00:00:00 2001 From: subin <200516bb@gmail.com> Date: Fri, 29 Nov 2024 21:22:46 +0900 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20error=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/uspray/uspray/domain/history/service/HistoryService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java index 577aa22f..3c34d672 100644 --- a/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java +++ b/src/main/java/com/uspray/uspray/domain/history/service/HistoryService.java @@ -12,6 +12,7 @@ import com.uspray.uspray.domain.pray.repository.PrayRepository; import com.uspray.uspray.global.enums.CategoryType; import com.uspray.uspray.global.exception.ErrorStatus; +import com.uspray.uspray.global.exception.model.CustomException; import com.uspray.uspray.global.exception.model.NotFoundException; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page;