개발 기록/도서관 관리 시스템

[Library Management System] 25.10.09 (65일) | (리팩토링)

dev.jelee 2025. 10. 11. 20:27

[ 작업한 내용 ]

# Backend

1. 공용: 공지사항 전체 목록 조회 (페이징)

- Controller에서 RequestParam의 속성 name을 value로 변경.

- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 PageResponse로 수정.

- Service에서 Repository에서 조회한 값을 List로 형변환 하였는데 불필요하다고 판단하여 삭제하고 조회한 결과를 Page<UserNoticeListResDTO>로 맵핑하여 저장.


2. 공용: 공지사항 상세 조회

- 주석 내용만 수정


3. 공용: 공지사항 검색 목록 보기 (페이징)

- Controller에서 RequestParam의 속성 name을 value로 변경.

- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 PageResponse로 수정.

- Service에서 Repository에서 조회한 값을 List로 형변환 하였는데 불필요하다고 판단하여 삭제하고 조회한 결과를 Page<UserNoticeSearchResDTO>로 맵핑하여 저장.


4. 관리자: 공지사항 등록

- Controller에서 Service로 전달하는 파라미터 user를 user.getId()로 변경.

- 관리자 조회 및 권한 체크시 전달받은 userId로 조회하는 것으로 변경.

- 반환 시 생성한 notice객체를 기반으로 AdminNoticeCreateResDTO를 생성해 바로 반환.


5. 관리자: 공지사항 수정

- Controller에서 Service로 전달하는 파라미터 user를 user.getId()로 변경.

- 관리자 조회 및 권한 체크시 전달받은 userId로 조회하는 것으로 변경.


6. 관리자: 공지사항 삭제

- AdminNoticeDeleteResDTO 생성. id 필드만 있음.

- Controller에서 Service로 전달하는 파라미터 user를 user.getId()로 변경.

- 관리자 조회 및 권한 체크시 전달받은 userId로 조회하는 것으로 변경.

- 반환 시 삭제하기 전에 생성한 AdminNoticeDeleteResDTO를 반환.


7. 관리자: 공지사항 전체 목록 조회 (페이징)

- 권한 체크를 위해 @AuthenticationPrincipal 추가

- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 PageResponse로 수정.

- Service에서 Repository에서 조회한 값을 List로 형변환 하였는데 불필요하다고 판단하여 삭제하고 조회한 결과를 Page<AdminNoticeListResDTO>로 맵핑하여 저장.


8. 관리자: 공지사항 검색 (페이징)

- Controller에서 권한 체크를 위해 @AuthenticationPrincipal 추가하고 Service로 user.getId()를 전달.

- Controller에서 RequestParam의 속성 name을 value로 변경.

- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 PageResponse로 수정.

- Service에서 불필요한 @Transactional 어노테이션 삭제.

- Service에서 Repository에서 조회한 값을 List로 형변환 하였는데 불필요하다고 판단하여 삭제하고 조회한 결과를 Page<AdminNoticeSearchResDTO>로 맵핑하여 저장.


9. 관리자: 공지사항 상세 조회

- Controller에서 권한 체크를 위해 @AuthenticationPrincipal 추가하고 Service로 user.getId()를 전달.


commit