-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[dev to release] 버그 수정 #145
Conversation
- 잘못 들어가있는 변수 업데이트 : diaryImage.id -> image.id
[fix/image-api] 일기 PATCH 로직 버그 수정
Review the provided code changes and provide feedback. Good points:
Improvement suggestions:
Proposed changes:
Here is an example of how the refactored code could look like: // ImageService.java
public class ImageService {
public void deleteImage(Long imageId) {
// implementation details...
}
public void deleteImageAndMapping(Diary diary) {
// implementation details...
}
}
// ImageController.java
@RestController
@RequestMapping("/api")
public class ImageController {
@Autowired
private ImageService imageService;
@PostMapping("/diary/{diaryId}")
public ResponseEntity<?> sendImage(@PathVariable Long diaryId, @RequestPart("image") MultipartFile image) throws IOException {
// implementation details...
}
@DeleteMapping("/diary/{diaryId}")
public ResponseEntity<?> deleteDiaryImage(@PathVariable Long diaryId) {
imageService.deleteImageAndMapping(diaryToImageDAO.findByDiaryId(diaryId).orElseThrow());
return ResponseEntity.ok().build();
}
} Note that this is just a suggestion, and the actual implementation may vary depending on the specific requirements of your project. |
안녕하세요, 리뷰봇입니다. 댓글 기능 PR 주신 것을 확인하고 몇 가지의 사항을 리뷰 해보았습니다.
수고하셨습니다! 👍 |
Feat/comment
안녕하세요! 리뷰봇입니다.
public Comment update(String content, Long parentCommentId) {
return requestDTO.toEntity(member, diary, parentComment, content);
}
private int makeRewardPoint() {
return new Random().nextInt(100);
}
public record CommentResponseDTO(
boolean deleted,
String createdDate,
String createdAt,
List<CommentResponseDTO> childComments
) {
public static CommentResponseDTO from(Comment comment) {
return new CommentResponseDTO(comment.isDeleted(), comment.getCreatedAt().format(DateTimeFormatter.ofPattern("yy년 MM월 dd일")), comment.getCreatedAt().format(DateTimeFormatter.ofPattern("HH:mm")), comment.getChildComments().stream().map(CommentResponseDTO::from).collect(Collectors.toList()));
}
}
private void removeDiaryLikes(Long diaryId) {
List<DiaryLike> diaryLikes = diaryLikeDAO.findAllByDiaryId(diaryId);
for (DiaryLike like : diaryLikes) {
imageService.deleteImage(like.getImage().getId());
}
diaryLikeDAO.deleteAll(diaryLikes);
}
public Comment toEntity(Member member, Diary diary, Comment parentComment, int depth) {
return Comment.builder()
.member(member)
.diary(diary)
.content(content)
.parentComment(parentComment)
.depth(depth)
.build();
}
@PostMapping("/diary/{diaryId}")
public ResponseEntity<?> deleteDiaryImage(
@PathVariable Long diaryId
) {
imageService.deleteImage(diaryId);
return ResponseEntity.ok().build();
}
public enum ClientErrorCode implements ErrorCodeModel {
IMAGE_MAPPING_NOT_FOUND_ERR(400, "IMAGE_MAPPING_NOT_FOUND_ERR", "해당 이미지를 찾을 수 없습니다.(이미지 등록 값 없음)"),
AUTHOR_MISMATCH_ERR(403, "AUTHOR_MISMATCH_ERR", "작성자가 아닙니다."),
COMMENT_ALREADY_DELETED_ERR(400, "COMMENT_ALREADY_DELETED_ERR", "이미 삭제된 댓글입니다."),
COMMENT_DEPTH_EXCEEDED_ERR(400, "COMMENT_DEPTH_EXCEEDED_ERR", "댓글은 대댓글까지만 허용합니다."),
// 추가 에러 코드
} 수고하셨습니다! 코드 리뷰를 통해 개선할 수 있는 부분이 있으니, 이를 참고하여 더욱 나은 코드로 발전시켜 주시기 바랍니다.👍 |
Random -> ThreadLocalRandom 으로 수정
안녕하세요! 리뷰봇으로서 이 코드를 검토하면서 몇 가지 의견을 드리려고 합니다.
이러한 점들을 검토하여 개선할 수 있는 방법을 제안드린 것으로, 코드의 일관성과 유지 보수성을 높일 수 있을 것이라 생각합니다. 감사합니다! 👍 |
기존 이미지가 있는 일기의 경우 PATCH 되지 않는 버그가 수정되었습니다.
그 외:
code-review Action의 경우 가독성을 위해 job 이름이 변경되었습니다.