Skip to content

Commit

Permalink
Merge branch 'dev' into test
Browse files Browse the repository at this point in the history
  • Loading branch information
gouyeonch committed Sep 9, 2024
2 parents ba1f195 + 001e1bd commit 8775800
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@ public ResponseDto<NewsReactionDto> addNewsReaction(@Parameter(hidden = true) @U
return ResponseDto.ok(newsReactionService.createNewsReaction(userId, createNewsReactionDto));
}

@Operation(summary = "뉴스 감정표현 수정")
@PutMapping("")
public ResponseDto<NewsReactionDto> updateNewsReaction(@Parameter(hidden = true) @UserId Long userId,
@RequestBody CreateNewsReactionDto createNewsReactionDto) {
log.info("updateNewsReaction controller");
return ResponseDto.ok(newsReactionService.updateNewsReaction(userId, createNewsReactionDto));
}

@Operation(summary = "뉴스 감정표현 삭제")
@DeleteMapping("")
public ResponseDto<String> removeNewsReaction(@Parameter(hidden = true) @UserId Long userId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,8 @@ public NewsReaction(User user, News news, ENewsReaction reaction) {
this.news = news;
this.reaction = reaction;
}

public void updateReaction(ENewsReaction reaction) {
this.reaction = reaction;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,9 @@ public interface NewsReactionRepository extends JpaRepository<NewsReaction, Long

Boolean existsByNewsIdAndUserId(Long newsId, Long userId);

Boolean existsByNewsIdAndUserIdAndReaction(Long newsId, Long userId, ENewsReaction reaction);

NewsReaction findByNewsAndUser(News news, User user);

void deleteByNewsAndUserAndReaction(News news, User user, ENewsReaction reaction);
}
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,24 @@ public NewsReactionDto createNewsReaction(Long userId, CreateNewsReactionDto cre
return NewsReactionDto.of(newsReaction);
} // 뉴스 감정표현 생성

public NewsReactionDto updateNewsReaction(Long userId, CreateNewsReactionDto createNewsReactionDto) {
log.info("updateNewsReaction service");

// 유저랑 뉴스 유효성 체크
User user = userLookupService.findUserById(userId);

News news = newsLookupService.findNewsById(createNewsReactionDto.newsId());

// 감정표현 객체 조회 및 업데이트
NewsReaction newsReaction = newsReactionRepository.findByNewsAndUser(news, user);

newsReaction.updateReaction(createNewsReactionDto.reaction());

NewsReaction save = newsReactionRepository.save(newsReaction);

return NewsReactionDto.of(save);
} // 뉴스 감정표현 수정

@Transactional
public String deleteNewsReaction(Long userId, Long newsId, String reaction) {
User user = userLookupService.findUserById(userId);
Expand Down

0 comments on commit 8775800

Please sign in to comment.