diff --git a/resource-server/src/main/java/com/inhabas/api/domain/menu/domain/valueObject/MenuType.java b/resource-server/src/main/java/com/inhabas/api/domain/menu/domain/valueObject/MenuType.java index 62397ad7..7f3c0ac7 100644 --- a/resource-server/src/main/java/com/inhabas/api/domain/menu/domain/valueObject/MenuType.java +++ b/resource-server/src/main/java/com/inhabas/api/domain/menu/domain/valueObject/MenuType.java @@ -51,9 +51,9 @@ public enum MenuType { // 장학회 SCHOLARSHIP(ANONYMOUS, SECRETARY, ANONYMOUS, ADMIN, ADMIN), // 후원 내용 - SPONSOR(ANONYMOUS, EXECUTIVES, ANONYMOUS, BASIC, ANONYMOUS), + SPONSOR(ANONYMOUS, SECRETARY, ANONYMOUS, BASIC, ANONYMOUS), // 사용 내역 - USAGE(ANONYMOUS, EXECUTIVES, ANONYMOUS, BASIC, ANONYMOUS), + USAGE(ANONYMOUS, SECRETARY, ANONYMOUS, BASIC, ANONYMOUS), // 관리자가 추가, 삭제 가능한 메뉴.(NormalBoard 연관) LIST(ANONYMOUS, ANONYMOUS, ANONYMOUS, ANONYMOUS, ANONYMOUS), // 리스트형 게시판 메뉴 diff --git a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryCustom.java b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryCustom.java index 75f7c569..3a2638c1 100644 --- a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryCustom.java +++ b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryCustom.java @@ -11,13 +11,7 @@ public interface NormalBoardRepositoryCustom { List findAllByTypeAndIsPinned(NormalBoardType boardType); - List findAllByMemberIdAndTypeAndSearch( - Long memberId, NormalBoardType boardType, String search); - List findAllByTypeAndSearch(NormalBoardType boardType, String search); - Optional findByMemberIdAndTypeAndId( - Long memberId, NormalBoardType boardType, Long boardId); - Optional findByTypeAndId(NormalBoardType boardType, Long boardId); } diff --git a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryImpl.java b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryImpl.java index 58cab1bf..2e7f8d17 100644 --- a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryImpl.java +++ b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryImpl.java @@ -43,30 +43,6 @@ public List findAllByTypeAndIsPinned(NormalBoardType boardType) .fetch(); } - @Override - public List findAllByMemberIdAndTypeAndSearch( - Long memberId, NormalBoardType boardType, String search) { - return queryFactory - .select( - Projections.constructor( - NormalBoardDto.class, - normalBoard.id, - normalBoard.title.value, - normalBoard.writer.id, - normalBoard.writer.name.value, - normalBoard.datePinExpiration, - normalBoard.dateCreated, - normalBoard.dateUpdated, - normalBoard.isPinned)) - .from(normalBoard) - .where( - eqMemberId(memberId) - .and(eqNormalBoardType(boardType)) - .and(likeTitle(search).or(likeContent(search)))) - .orderBy(normalBoard.dateCreated.desc()) - .fetch(); - } - @Override public List findAllByTypeAndSearch(NormalBoardType boardType, String search) { return queryFactory @@ -87,20 +63,6 @@ public List findAllByTypeAndSearch(NormalBoardType boardType, St .fetch(); } - @Override - public Optional findByMemberIdAndTypeAndId( - Long memberId, NormalBoardType boardType, Long boardId) { - return Optional.ofNullable( - queryFactory - .selectFrom(normalBoard) - .where( - eqMemberId(memberId) - .and(eqNormalBoardType(boardType)) - .and(normalBoard.id.eq(boardId))) - .orderBy(normalBoard.dateCreated.desc()) - .fetchOne()); - } - @Override public Optional findByTypeAndId(NormalBoardType boardType, Long boardId) { return Optional.ofNullable( @@ -111,10 +73,6 @@ public Optional findByTypeAndId(NormalBoardType boardType, Long boa .fetchOne()); } - private BooleanExpression eqMemberId(Long memberId) { - return normalBoard.writer.id.eq(memberId); - } - private BooleanExpression eqNormalBoardType(NormalBoardType normalBoardType) { return normalBoard.menu.id.eq(normalBoardType.getMenuId()); } diff --git a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardService.java b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardService.java index 6bfc7ce1..54471f33 100644 --- a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardService.java +++ b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardService.java @@ -13,7 +13,7 @@ public interface NormalBoardService { List getPosts(NormalBoardType boardType, String search); - NormalBoardDetailDto getPost(Long memberId, NormalBoardType boardType, Long boardId); + NormalBoardDetailDto getPost(NormalBoardType boardType, Long boardId); Long write(Long memberId, NormalBoardType normalBoardType, SaveNormalBoardDto saveNormalBoardDto); diff --git a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImpl.java b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImpl.java index 7c898e62..64ee1034 100644 --- a/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImpl.java +++ b/resource-server/src/main/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImpl.java @@ -1,7 +1,6 @@ package com.inhabas.api.domain.normalBoard.usecase; import static com.inhabas.api.domain.board.domain.PinOption.*; -import static com.inhabas.api.domain.normalBoard.domain.NormalBoardType.*; import static com.inhabas.api.domain.normalBoard.domain.NormalBoardType.EXECUTIVE; import static com.inhabas.api.domain.normalBoard.domain.NormalBoardType.NOTICE; @@ -11,11 +10,9 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.inhabas.api.auth.domain.error.authException.InvalidAuthorityException; import com.inhabas.api.auth.domain.error.businessException.InvalidInputException; import com.inhabas.api.auth.domain.error.businessException.NotFoundException; import com.inhabas.api.auth.domain.oauth2.member.domain.entity.Member; @@ -62,35 +59,16 @@ public List getPinned(NormalBoardType boardType) { @Override @Transactional(readOnly = true) public List getPosts(NormalBoardType boardType, String search) { - List normalBoardList = new ArrayList<>(); - if (boardType.equals(SUGGEST)) { - if (SecurityContextHolder.getContext() == null) { - throw new InvalidAuthorityException(); - } - Long memberId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); - normalBoardList.addAll( - normalBoardRepository.findAllByMemberIdAndTypeAndSearch(memberId, boardType, search)); - } else { - normalBoardList.addAll(normalBoardRepository.findAllByTypeAndSearch(boardType, search)); - } - return normalBoardList; + return normalBoardRepository.findAllByTypeAndSearch(boardType, search); } @Override @Transactional(readOnly = true) - public NormalBoardDetailDto getPost(Long memberId, NormalBoardType boardType, Long boardId) { - NormalBoard normalBoard; - if (boardType.equals(SUGGEST)) { - normalBoard = - normalBoardRepository - .findByMemberIdAndTypeAndId(memberId, boardType, boardId) - .orElseThrow(NotFoundException::new); - } else { - normalBoard = - normalBoardRepository - .findByTypeAndId(boardType, boardId) - .orElseThrow(NotFoundException::new); - } + public NormalBoardDetailDto getPost(NormalBoardType boardType, Long boardId) { + NormalBoard normalBoard = + normalBoardRepository + .findByTypeAndId(boardType, boardId) + .orElseThrow(NotFoundException::new); ClassifiedFiles classifiedFiles = ClassifyFiles.classifyFiles(normalBoard.getFiles()); diff --git a/resource-server/src/main/java/com/inhabas/api/web/NormalBoardController.java b/resource-server/src/main/java/com/inhabas/api/web/NormalBoardController.java index f2f6f044..f5b15dbf 100644 --- a/resource-server/src/main/java/com/inhabas/api/web/NormalBoardController.java +++ b/resource-server/src/main/java/com/inhabas/api/web/NormalBoardController.java @@ -146,11 +146,9 @@ public ResponseEntity> getBoardList( "{\"status\": 404, \"code\": \"G004\", \"message\": \"데이터가 존재하지 않습니다.\"}"))) }) public ResponseEntity getBoard( - @PathVariable Long boardId, - @PathVariable NormalBoardType boardType, - @Authenticated Long memberId) { + @PathVariable Long boardId, @PathVariable NormalBoardType boardType) { - return ResponseEntity.ok(normalBoardService.getPost(memberId, boardType, boardId)); + return ResponseEntity.ok(normalBoardService.getPost(boardType, boardId)); } @Operation(summary = "게시글 추가") diff --git a/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryTest.java b/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryTest.java index 0ab56e6c..089b93bf 100644 --- a/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryTest.java +++ b/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/repository/NormalBoardRepositoryTest.java @@ -74,23 +74,6 @@ public void save() { assertThat(saveBoard.getWriter()).isEqualTo(writer); } - @DisplayName("memberId, type, search 로 게시글 목록 조회한다.") - @Test - public void findAllByMemberIdAndTypeAndSearch() { - // given - NormalBoard saveBoard = normalBoardRepository.save(NOTICE_BOARD); - NormalBoard saveBoard2 = normalBoardRepository.save(NOTICE_BOARD_2); - Long writerId = writer.getId(); - - // when - List dtoList = - normalBoardRepository.findAllByMemberIdAndTypeAndSearch(writerId, NOTICE, ""); - - // then - assertThat(dtoList).hasSize(2); - assertThat(dtoList.get(0).getTitle()).isEqualTo(saveBoard.getTitle()); - } - @DisplayName("type, search 로 게시글 목록 조회한다.") @Test public void findAllByTypeAndSearch() { @@ -106,24 +89,6 @@ public void findAllByTypeAndSearch() { assertThat(dtoList.get(0).getTitle()).isEqualTo(saveBoard.getTitle()); } - @DisplayName("memberId, type, id 로 게시글 상세 조회한다.") - @Test - public void findByMemberIdAndTypeAndId() { - // given - NormalBoard saveBoard = normalBoardRepository.save(NOTICE_BOARD); - Long writerId = writer.getId(); - - // when - NormalBoard normalBoard = - normalBoardRepository - .findByMemberIdAndTypeAndId(writerId, NOTICE, saveBoard.getId()) - .orElse(null); - - // then - assertThat(normalBoard).isNotNull(); - assertThat(normalBoard.getTitle()).isEqualTo(saveBoard.getTitle()); - } - @DisplayName("type, id 로 게시글 상세 조회한다.") @Test public void findByTypeAndId() { diff --git a/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImplTest.java b/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImplTest.java index a205016c..75475288 100644 --- a/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImplTest.java +++ b/resource-server/src/test/java/com/inhabas/api/domain/normalBoard/usecase/NormalBoardServiceImplTest.java @@ -88,7 +88,7 @@ void getPost() { given(normalBoardRepository.findByTypeAndId(any(), any())).willReturn(Optional.of(normalBoard)); // when - NormalBoardDetailDto dto = normalBoardService.getPost(1L, NOTICE, 1L); + NormalBoardDetailDto dto = normalBoardService.getPost(NOTICE, 1L); // then assertThat(dto.getTitle()).isEqualTo(normalBoard.getTitle()); diff --git a/resource-server/src/test/java/com/inhabas/api/web/NormalBoardControllerTest.java b/resource-server/src/test/java/com/inhabas/api/web/NormalBoardControllerTest.java index 4b86df61..87308125 100644 --- a/resource-server/src/test/java/com/inhabas/api/web/NormalBoardControllerTest.java +++ b/resource-server/src/test/java/com/inhabas/api/web/NormalBoardControllerTest.java @@ -132,7 +132,7 @@ void getBoard() throws Exception { .dateUpdated(LocalDateTime.now()) .isPinned(false) .build(); - given(normalBoardService.getPost(any(), any(), any())).willReturn(normalBoardDetailDto); + given(normalBoardService.getPost(any(), any())).willReturn(normalBoardDetailDto); // when String response = @@ -165,7 +165,7 @@ void getBoard_Invalid_Input() throws Exception { @Test void getBoard_Not_Found() throws Exception { // given - doThrow(NotFoundException.class).when(normalBoardService).getPost(any(), any(), any()); + doThrow(NotFoundException.class).when(normalBoardService).getPost(any(), any()); // when String response =