comment 기능의 댓글 작성, 목록 조회, 댓글 삭제 기능을 완성했고, 댓글을 달면 포스트잇을 하나씩 받도록 했다.
그리고 본인이 작성한 댓글만 삭제 가능하도록 에러 처리를 해줬는데, 방금 @PreAuthorize 라는 어노테이션을 알게되서 이걸 사용해 본인&관리자만 삭제 가능하도록 변경할 예정이다.
report 기능의 댓글 신고, 목록 조회, 신고 수락, 신고 거절 기능을 완성했다.
이때 댓글이 신고되면 일단 댓글 목록에서 보이지 않게 하기 위해 use_yn -> false로 변경해주고 신고가 수락되면 그대로, 신고가 거절되면 다시 use_yn -> true로 변경한다.
// 신고 수락
@PatchMapping("/report/{reportId}/accept")
@Secured("ROLE_ADMIN")
public ResponseEntity<Void> acceptReport(@PathVariable Long reportId) {
reportService.acceptReport(reportId);
return ResponseEntity.ok().build();
}
권한 어노테이션 적용 참고 사이트
https://steemit.com/kr-dev/@igna84/spring-security-preauthorize-postauthorize