From 1fc37a09253bfc8d7f96bc19c2a7d3573a232f4f Mon Sep 17 00:00:00 2001 From: Hyomin Koo <me@eatsteak.dev> Date: Sun, 29 Sep 2024 05:43:14 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20`MemoSummariesView`=EA=B0=80=20?= =?UTF-8?q?=EC=98=AC=EB=B0=94=EB=A5=B4=EA=B2=8C=20=EB=A7=A4=ED=95=91?= =?UTF-8?q?=EB=90=98=EC=A7=80=20=EC=95=8A=EC=9D=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/dev/gooiman/server/memo/repository/MemoRepository.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/dev/gooiman/server/memo/repository/MemoRepository.java b/src/main/java/dev/gooiman/server/memo/repository/MemoRepository.java index 72d2625..8d428d6 100644 --- a/src/main/java/dev/gooiman/server/memo/repository/MemoRepository.java +++ b/src/main/java/dev/gooiman/server/memo/repository/MemoRepository.java @@ -14,7 +14,7 @@ public interface MemoRepository extends JpaRepository<Memo, UUID> { List<Memo> findMemosByPage_PageId(UUID pageId); - @Query("select m.title, m.category, m.subCategory from Memo m where m.page.pageId = :pageId") + @Query("select m.title as title, m.category as category, m.subCategory as subCategory from Memo m where m.page.pageId = :pageId") List<MemoSummariesView> getMemoSummaries(@Param("pageId") UUID pageId); } From 1c7ae3b5b9889742ce8a604e8923697d1c04102b Mon Sep 17 00:00:00 2001 From: Hyomin Koo <me@eatsteak.dev> Date: Sun, 29 Sep 2024 05:43:28 +0900 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20=EB=8B=A4=EB=A5=B8=20=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=EC=9D=98=20=EC=82=AC=EC=9A=A9=EC=9E=90?= =?UTF-8?q?=EB=8F=84=20=EA=B0=80=EC=A0=B8=EC=98=A4=EB=8A=94=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gooiman/server/auth/application/UserService.java | 9 +++++---- .../gooiman/server/memo/application/MemoService.java | 10 +++++----- .../gooiman/server/memo/repository/entity/Memo.java | 7 +++++-- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/main/java/dev/gooiman/server/auth/application/UserService.java b/src/main/java/dev/gooiman/server/auth/application/UserService.java index 8a0a76d..e755fa2 100644 --- a/src/main/java/dev/gooiman/server/auth/application/UserService.java +++ b/src/main/java/dev/gooiman/server/auth/application/UserService.java @@ -1,9 +1,10 @@ package dev.gooiman.server.auth.application; -import dev.gooiman.server.common.exception.CommonException; -import dev.gooiman.server.common.exception.ErrorCode; import dev.gooiman.server.auth.repository.UserRepository; import dev.gooiman.server.auth.repository.entity.User; +import dev.gooiman.server.common.exception.CommonException; +import dev.gooiman.server.common.exception.ErrorCode; +import java.util.UUID; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -15,8 +16,8 @@ public class UserService { private final UserRepository userRepository; - public User getUserByName(String name) { - return userRepository.findByName(name) + public User getUserByNameAndPageId(String name, UUID pageId) { + return userRepository.findByNameAndPage_PageId(name, pageId) .orElseThrow(() -> new CommonException(ErrorCode.NOT_FOUND_USER)); } } diff --git a/src/main/java/dev/gooiman/server/memo/application/MemoService.java b/src/main/java/dev/gooiman/server/memo/application/MemoService.java index 65124df..174ecc9 100644 --- a/src/main/java/dev/gooiman/server/memo/application/MemoService.java +++ b/src/main/java/dev/gooiman/server/memo/application/MemoService.java @@ -1,6 +1,8 @@ package dev.gooiman.server.memo.application; +import dev.gooiman.server.auth.application.UserService; +import dev.gooiman.server.auth.repository.entity.User; import dev.gooiman.server.common.dto.CommonIdResponseDto; import dev.gooiman.server.common.dto.CommonSuccessDto; import dev.gooiman.server.common.exception.CommonException; @@ -13,8 +15,6 @@ import dev.gooiman.server.memo.repository.entity.Memo; import dev.gooiman.server.page.application.PageService; import dev.gooiman.server.page.repository.entity.Page; -import dev.gooiman.server.auth.application.UserService; -import dev.gooiman.server.auth.repository.entity.User; import java.util.UUID; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -51,8 +51,8 @@ public MemoDto[] listMemo(UUID pageId, String category) { @Transactional public CommonSuccessDto updateMemo(UUID memoId, @RequestBody UpdateMemoRequestDto dto) { Memo memo = findMemo(memoId); - User user = userService.getUserByName(dto.author()); - if (!user.getUserId().equals(memo.getUserID())) { + User user = userService.getUserByNameAndPageId(dto.author(), memo.getPageId()); + if (!user.getUserId().equals(memo.getUserId())) { throw new CommonException(ErrorCode.NOT_MATCH_USER); } @@ -72,7 +72,7 @@ public CommonSuccessDto deleteMemo(UUID memoId) { @Transactional public CommonIdResponseDto createMemo(CreateMemoRequestDto dto) { - User user = userService.getUserByName(dto.author()); + User user = userService.getUserByNameAndPageId(dto.author(), dto.pageId()); Page page = pageService.getPageById(dto.pageId()); Memo memo = new Memo(dto.category(), dto.subCategory(), dto.title(), dto.color(), dto.content(), page, user); diff --git a/src/main/java/dev/gooiman/server/memo/repository/entity/Memo.java b/src/main/java/dev/gooiman/server/memo/repository/entity/Memo.java index ab2d90a..5f30bdb 100644 --- a/src/main/java/dev/gooiman/server/memo/repository/entity/Memo.java +++ b/src/main/java/dev/gooiman/server/memo/repository/entity/Memo.java @@ -1,7 +1,7 @@ package dev.gooiman.server.memo.repository.entity; -import dev.gooiman.server.page.repository.entity.Page; import dev.gooiman.server.auth.repository.entity.User; +import dev.gooiman.server.page.repository.entity.Page; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; @@ -51,7 +51,10 @@ public class Memo { private User user; @Column(name = "USER_ID", insertable = false, updatable = false) - private UUID userID; + private UUID userId; + + @Column(name = "PAGE_ID", insertable = false, updatable = false) + private UUID pageId; public String getUsername() { return user.getName();