프로젝트

17. REVIEW 삭제

uni5948 2022. 1. 4. 15:36

17. REVIEW 삭제

리뷰 삭제는 리뷰를 등록한 member로 로그인 할 경우만 삭제 가능하다.

 

  • 리뷰 삭제하기 추가

1. ReviewService   

    //리뷰 삭제
    public void deleteReview(long no);
 
2. ReviewServiceImpl

    //리뷰 삭제
    @Override
    public void deleteReview(long no) {
        rRepository.deleteById(no);
    }
 
 
  • 리뷰 삭제하기 추가(ReviewController.java)
    //리뷰 삭제
    //127.0.0.1:8080/REST/reviewdelete?rno=
    @RequestMapping(value = "/reviewdelete", method = {RequestMethod.DELETE},
    consumes = MediaType.ALL_VALUE,
    produces = MediaType.APPLICATION_JSON_VALUE)
    public Map<String, Object> reviewDELETE(
        @RequestBody Review review,
        @RequestParam(name = "rno", defaultValue = "0")long reviewNo,
        @RequestHeader("token") String token){
        Map<String, Object> map = new HashMap<String, Object>();
        try{
            String memberid = jwtUtil.extractUsername(token); // 토큰을 통해 회원 정보 찾기
            String reviewid = rService.getReview(reviewNo).getMember().getUserid(); // 리뷰 정보에서 member id 찾기
            if(memberid.equals(reviewid)){
                rService.deleteReview(review.getReviewno());
                map.put("status", 200);
            }
            else{
                map.put("status", 300);
            }
        }
        catch(Exception e){
            e.printStackTrace();
            map.put("status", e.hashCode());
        }
        return map;
    }

 

  • 리뷰 삭제하기

2번 리뷰 삭제

등록된 리뷰 확인

 

리뷰 삭제

 

리뷰 삭제 확인

  • 다른 아이디로 삭제할 경우

아이디 u1 로 리뷰3 작성

 

리뷰 3 생성

아이디  u2로 로그인 후 삭제

삭제 실패