Spring Level 3 댓글 삭제 API 구현

song yuheon·2023년 9월 2일
0

Spring

목록 보기
38/93
post-thumbnail
post-custom-banner

Controller 구현


@DeleteMapping("/comment/{id}")
public ResponseEntity<String> deleteComment(@PathVariable Long id, HttpServletRequest req) {
    User user = (User) req.getAttribute("user");
    return commentService.deleteComment(id, user.getUsername(), user.getRole());
}

Service 구현


public ResponseEntity<String> deleteComment(Long id, String username, UserRoleEnum role) {
    Comment comment = findComment(id);
    if(role.getAuthority().equals("ROLE_ADMIN")|| comment.getUsername().equals(username))
        commentRepository.delete(comment);
    else
        return ResponseEntity.ok("{\"msg\": \"댓글 삭제 실패\", \"statusCode\": 444}");
    return ResponseEntity.ok("{\"msg\": \"댓글 삭제 성공\", \"statusCode\": 200}");

}

Test


단순 댓글 삭제




게시글 삭제




=>


Casecade로 게시판을 삭제시 관련 댓글 한번에 삭제, 댓글 삭제 시에는 댓글만 삭제


profile
backend_Devloper
post-custom-banner

0개의 댓글