From 7f21dc582a2a3593992c966a63fbdc92dc9cfb4b Mon Sep 17 00:00:00 2001 From: moonyaeyoon Date: Fri, 20 Sep 2024 14:03:01 +0900 Subject: [PATCH 1/3] =?UTF-8?q?fix=20:=20=EC=9E=90=EC=8B=9D=20=EB=8C=93?= =?UTF-8?q?=EA=B8=80=20=EC=82=AD=EC=A0=9C=20=EC=8B=9C=20=EB=B6=80=EB=AA=A8?= =?UTF-8?q?=20=EB=8C=93=EA=B8=80=EB=8F=84=20=EC=82=AD=EC=A0=9C=EB=90=98?= =?UTF-8?q?=EB=8A=94=20=EC=98=A4=EB=A5=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/meltingpot/server/comment/service/CommentService.java | 3 --- src/main/java/meltingpot/server/post/service/PostService.java | 1 - 2 files changed, 4 deletions(-) diff --git a/src/main/java/meltingpot/server/comment/service/CommentService.java b/src/main/java/meltingpot/server/comment/service/CommentService.java index 20c83fd..814e534 100644 --- a/src/main/java/meltingpot/server/comment/service/CommentService.java +++ b/src/main/java/meltingpot/server/comment/service/CommentService.java @@ -166,9 +166,6 @@ public ResponseCode deleteComment(Long commentId, Account account) { Comment parentComment = comment.getParent(); commentRepository.delete(comment); parentComment.getChildren().remove(comment); - if (parentComment.getChildren().isEmpty()) { - commentRepository.delete(parentComment); - } } return ResponseCode.COMMENT_DELETE_SUCCESS; } diff --git a/src/main/java/meltingpot/server/post/service/PostService.java b/src/main/java/meltingpot/server/post/service/PostService.java index d572b24..b0eb40a 100644 --- a/src/main/java/meltingpot/server/post/service/PostService.java +++ b/src/main/java/meltingpot/server/post/service/PostService.java @@ -42,7 +42,6 @@ public class PostService { public ResponseCode createPost(PostCreateRequest postCreateRequest, Account account, boolean isDraft) { Optional optionalDraft = getDraftPost(account); Post post = optionalDraft.orElseGet(() -> postCreateRequest.toEntity(account)); - System.out.println("Post " + post.getId() + post.getTitle() + post.getIsDraft()); if (optionalDraft.isPresent()) { updatePostContent(post, account, postCreateRequest); From 5032db0731d2ac537839bf51492b0a9898672376 Mon Sep 17 00:00:00 2001 From: moonyaeyoon Date: Fri, 20 Sep 2024 14:13:29 +0900 Subject: [PATCH 2/3] =?UTF-8?q?fix=20:=20=EC=9E=90=EC=8B=9D=20=EB=8C=93?= =?UTF-8?q?=EA=B8=80=20=EC=82=AD=EC=A0=9C=20=EC=8B=9C=20=EB=B6=80=EB=AA=A8?= =?UTF-8?q?=20=EB=8C=93=EA=B8=80=EB=8F=84=20=EC=82=AD=EC=A0=9C=EB=90=98?= =?UTF-8?q?=EB=8A=94=20=EC=98=A4=EB=A5=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../comment/service/CommentService.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/main/java/meltingpot/server/comment/service/CommentService.java b/src/main/java/meltingpot/server/comment/service/CommentService.java index 814e534..4c3bf71 100644 --- a/src/main/java/meltingpot/server/comment/service/CommentService.java +++ b/src/main/java/meltingpot/server/comment/service/CommentService.java @@ -142,7 +142,6 @@ public CommentsListResponse getCommentsList(Account account, Long postId, Long c @Transactional public ResponseCode deleteComment(Long commentId, Account account) { Comment comment = findCommentById(commentId); - if (!comment.getAccount().getId().equals(account.getId())) { throw new ResponseStatusException(HttpStatus.FORBIDDEN, "삭제 권한이 없습니다."); } @@ -150,22 +149,15 @@ public ResponseCode deleteComment(Long commentId, Account account) { comment.setContent("삭제된 댓글입니다."); comment.setAccount(null); comment.setIsAnonymous(true); - - if (comment.getCommentImage() != null) { - CommentImage commentImage = comment.getCommentImage(); - comment.setCommentImage(null); - commentImageRepository.delete(commentImage); - } - // 자식 댓글이 남아있지 않으면 부모 댓글도 삭제 + deleteCommentImage(comment); if (comment.getChildren().isEmpty()) { commentRepository.delete(comment); } - - } else { + deleteCommentImage(comment); Comment parentComment = comment.getParent(); - commentRepository.delete(comment); parentComment.getChildren().remove(comment); + commentRepository.delete(comment); } return ResponseCode.COMMENT_DELETE_SUCCESS; } @@ -212,6 +204,14 @@ private void updateCommentImage(Comment comment, Account account, String newImag } } + private void deleteCommentImage(Comment comment) { + if (comment.getCommentImage() != null) { + CommentImage commentImage = comment.getCommentImage(); + comment.setCommentImage(null); + commentImageRepository.delete(commentImage); + } + } + } From d77b5342b0a9b6ec31eac68a16ddb0ba4f6f370d Mon Sep 17 00:00:00 2001 From: moonyaeyoon Date: Fri, 20 Sep 2024 14:21:19 +0900 Subject: [PATCH 3/3] =?UTF-8?q?fix=20:=20post=EA=B8=80=20=EB=AA=A9?= =?UTF-8?q?=EB=A1=9D=20=EC=B5=9C=EC=8B=A0=EC=88=9C=20=EB=B0=98=ED=99=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/meltingpot/server/domain/entity/comment/Comment.java | 2 ++ src/main/java/meltingpot/server/domain/entity/post/Post.java | 3 +++ .../meltingpot/server/domain/repository/PostRepository.java | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/meltingpot/server/domain/entity/comment/Comment.java b/src/main/java/meltingpot/server/domain/entity/comment/Comment.java index 2c763db..529edfe 100644 --- a/src/main/java/meltingpot/server/domain/entity/comment/Comment.java +++ b/src/main/java/meltingpot/server/domain/entity/comment/Comment.java @@ -1,6 +1,7 @@ package meltingpot.server.domain.entity.comment; import jakarta.persistence.*; +import jakarta.validation.constraints.Size; import lombok.*; import meltingpot.server.domain.entity.Account; import meltingpot.server.domain.entity.post.Post; @@ -20,6 +21,7 @@ public class Comment extends BaseEntity { @Column(name = "comment_id") private Long id; + @Size(min = 10, max = 500) private String content; @Column(name = "is_anonymous") diff --git a/src/main/java/meltingpot/server/domain/entity/post/Post.java b/src/main/java/meltingpot/server/domain/entity/post/Post.java index 0af91f4..fde69e0 100644 --- a/src/main/java/meltingpot/server/domain/entity/post/Post.java +++ b/src/main/java/meltingpot/server/domain/entity/post/Post.java @@ -2,6 +2,7 @@ import jakarta.persistence.*; +import jakarta.validation.constraints.Size; import lombok.*; import meltingpot.server.domain.entity.Account; import meltingpot.server.domain.entity.Report; @@ -28,8 +29,10 @@ public class Post extends BaseEntity { @Column(name = "post_id") private Long id; + @Size(min = 10, max = 500) private String title; + @Size(min = 10, max = 500) private String content; @Enumerated(EnumType.STRING) diff --git a/src/main/java/meltingpot/server/domain/repository/PostRepository.java b/src/main/java/meltingpot/server/domain/repository/PostRepository.java index e4d4c7a..64b4f4a 100644 --- a/src/main/java/meltingpot/server/domain/repository/PostRepository.java +++ b/src/main/java/meltingpot/server/domain/repository/PostRepository.java @@ -16,7 +16,7 @@ public interface PostRepository extends JpaRepository { - @Query("SELECT p FROM Post p WHERE p.postType = :postType AND p.isDraft = false AND (:cursor IS NULL OR p.id > :cursor) ORDER BY p.id ASC") + @Query("SELECT p FROM Post p WHERE p.postType = :postType AND p.isDraft = false AND (:cursor IS NULL OR p.id < :cursor) ORDER BY p.id DESC") List findByPostTypeAndCursor(@Param("postType") PostType postType, @Param("cursor") Long cursor, Pageable pageable); Slice findAllByAccountAndDeletedAtIsNullOrderByIdDesc(Account account, Pageable page);