Skip to content

[4주차] 김지훈 /[feat] 추가 API 구현#160

Open
jihoonkim501 wants to merge 17 commits intoLeets-Official:김지훈/mainfrom
jihoonkim501:김지훈/4주차

Hidden character warning

The head ref may contain hidden characters: "\uae40\uc9c0\ud6c8/4\uc8fc\ucc28"
Open

[4주차] 김지훈 /[feat] 추가 API 구현#160
jihoonkim501 wants to merge 17 commits intoLeets-Official:김지훈/mainfrom
jihoonkim501:김지훈/4주차

Conversation

@jihoonkim501
Copy link
Copy Markdown

1. 과제 요구사항 중 구현한 내용

  • 게시글 관련 기본 API 구현 (생성,조회,삭제,수정)
  • 댓글 관련 기본 API 구현 (생성,삭제,수정)
  • 게시글 좋아요,좋아요취소,신고 API 구현
  • 댓글 좋아요,좋아요취소,신고 API 구현

2. 핵심 변경 사항

기본 API는 각설하고 게시글 좋아요 , 좋아요 취소 기능 ( 게시글, 댓글)을 구현하였습니다. 요구사항에 따라 좋아요 상태에서 다시 좋아요를 누르는, 좋아요가 되어있지않은 상태에서 좋아요 취소하는 상황을 구현체에서 예외처리를 하였고 신고 기능 또한 추가하였습니다. 일정 신고 갯수가 누적되면 status를 변화하여 접수 , 삭제 or 숨김 상태로 전환되도록 구현하였고 soft delete 형식을 사용하기위해 추후에 scheduler를 도입하여 관리할 생각입니다.

3. 실행 및 검증 결과

!! 기본적인 CRUD 캡쳐는 제외하고 올립니다.

  • 게시글 좋아요 Request
image
  • Response
image
  • 반복요청 예외
image
  • 게시글 좋아요 취소 Request
image
  • Response
image
  • 반복요청 예외
image
  • 게시글 신고 Request
image
  • Response
image
  • 반복요청 예외
image
  • 게시글 신고 DB
image
  • 신고 10개를 넘어설 시
image

게시글 Stauts가 HIDDEN 상태로 전환.

댓글 또한 이와 같습니다.

4. 완료 사항

게시글, 댓글 좋아요,신고 상태 변환에 대한 예외처리 및 기능 구현 성공

5. 추가 사항

제출 체크리스트

  • PR 제목이 규칙에 맞다
  • base가 {이름}/main 브랜치다
  • compare가 {이름}/{숫자}주차 브랜치다
  • 프로젝트가 정상 실행된다
  • 본인을 Assignee로 지정했다
  • 파트 담당 Reviewer를 지정했다
  • 리뷰 피드백을 반영한 뒤 머지/PR close를 진행한다

@jihoonkim501 jihoonkim501 requested a review from a team April 28, 2026 14:21
@jihoonkim501 jihoonkim501 self-assigned this Apr 28, 2026
@jihoonkim501 jihoonkim501 changed the title 김지훈/4주차 [4주차] 김지훈 /[feat] 추가 API 구현 Apr 29, 2026
Copy link
Copy Markdown

@gusanans218 gusanans218 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

댓글 관련 로직을 controller / service / repository / entity / dto 단위로 잘 분리하신 점이 좋았습니다!! Post 도메인과 유사한 구조로 확장되어서 전체 코드베이스의 일관성이 잘 유지되는 것 같아요 ㅎㅎ

POST_ALREADY_DELETED(HttpStatus.BAD_REQUEST,"POST_400","이미 삭제된 게시글입니다.");
POST_NOT_FOUND(HttpStatus.NOT_FOUND,"POST_404","게시글이 존재하지 않습니다."),
POST_ALREADY_DELETED(HttpStatus.BAD_REQUEST,"POST_400","이미 삭제된 게시글입니다."),
FORBIDDEN_COMMENT_UPDATE(HttpStatus.FORBIDDEN,"POST_403","게시글을 수정할 권한이 없습니다."),
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FORBIDDEN_COMMENT_UPDATE는 댓글 관련 에러라서 Post 에러들과 함께 있는 것보다 Comment 영역으로 분리하면 더 읽기 좋을 것 같아요! 현재 code/message도 게시글 기준으로 되어 있어 댓글 수정 권한 문구로 맞추면 좋을 것 같습니다!!

Copy link
Copy Markdown

@N-yujeong N-yujeong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 좋아요/신고 기능의 중복 방지 로직을 ErrorStatus에 잘 반영해주셨습니다.

다만, FORBIDDEN_COMMENT_UPDATE는 Comment 영역의 에러인데 Post 영역에 분류되어 있네요. Comment 에러 섹션으로 이동하면 가독성이 더 좋을 것 같습니다!

Copy link
Copy Markdown

@Hanharam Hanharam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 전체적으로 깔끔한 코드와 validator를 따로 분리한 점이 좋았습니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants