diff --git a/Dockerfile b/Dockerfile index 5f24a4c..f1ef194 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,3 +12,13 @@ ENTRYPOINT ["java", "-jar", "/app.jar"] + + + + + + + + + + diff --git a/src/main/java/com/example/trello/card/Card.java b/src/main/java/com/example/trello/card/Card.java index 621b3b9..58710af 100644 --- a/src/main/java/com/example/trello/card/Card.java +++ b/src/main/java/com/example/trello/card/Card.java @@ -68,6 +68,7 @@ public void updateCard(UpdateCardResponseDto responseDto) { this.cardList = responseDto.getCardList(); this.title = responseDto.getTitle(); this.description = responseDto.getDescription(); + this.workspaceMember = responseDto.getWorkspaceMember(); this.startAt = responseDto.getStartAt(); this.endAt = responseDto.getEndAt(); } diff --git a/src/main/java/com/example/trello/card/CardService.java b/src/main/java/com/example/trello/card/CardService.java index af8a216..1dca14d 100644 --- a/src/main/java/com/example/trello/card/CardService.java +++ b/src/main/java/com/example/trello/card/CardService.java @@ -91,11 +91,13 @@ public CardResponseDto createdCardService(CardRequestDto requestDto, UserDetails public CardResponseDto updateCardService(Long cardId, UpdateCardRequestDto requestDto, UserDetailsImpl userDetails) { Card card = cardRepository.findByIdOrElseThrow(cardId); - WorkspaceMember workspaceMember = findWorkSpaceMember(userDetails, cardId); + WorkspaceMember changeWorkspaceMember = workspaceMemberRepository.findByIdOrElseThrow(requestDto.getWorkspaceMemberId()); CardList cardList = cardRepository.findByIdOrElseThrow(requestDto.getCardListId()).getCardList(); - UpdateCardResponseDto responseDto = new UpdateCardResponseDto(cardList, requestDto.getTitle(), requestDto.getDescription(), requestDto.getStartAt(), requestDto.getEndAt()); + UpdateCardResponseDto responseDto = new UpdateCardResponseDto(cardList, requestDto.getTitle(), requestDto.getDescription(), changeWorkspaceMember, requestDto.getStartAt(), requestDto.getEndAt()); + + WorkspaceMember workspaceMember = findWorkSpaceMember(userDetails, cardId); if (!workspaceMemberRepository.existsByUserIdAndWorkspaceId(workspaceMember.getId(), card.getCardList().getBoard().getWorkspace().getId())) { throw new WorkspaceMemberException(WorkspaceMemberErrorCode.IS_NOT_WORKSPACEMEMBER); diff --git a/src/main/java/com/example/trello/card/requestDto/UpdateCardRequestDto.java b/src/main/java/com/example/trello/card/requestDto/UpdateCardRequestDto.java index 0c06299..745910f 100644 --- a/src/main/java/com/example/trello/card/requestDto/UpdateCardRequestDto.java +++ b/src/main/java/com/example/trello/card/requestDto/UpdateCardRequestDto.java @@ -15,7 +15,7 @@ public class UpdateCardRequestDto { private String description; - private Long workSpaceMemberId; + private Long workspaceMemberId; @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate startAt; @@ -23,11 +23,11 @@ public class UpdateCardRequestDto { @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate endAt; - public UpdateCardRequestDto(String title, Long cardListId, String description, Long workSpaceMemberId, LocalDate startAt, LocalDate endAt) { + public UpdateCardRequestDto(String title, Long cardListId, String description, Long workspaceMemberId, LocalDate startAt, LocalDate endAt) { this.title = title; this.CardListId = cardListId; this.description = description; - this.workSpaceMemberId = workSpaceMemberId; + this.workspaceMemberId = workspaceMemberId; this.startAt = startAt; this.endAt = endAt; } diff --git a/src/main/java/com/example/trello/card/responsedto/CardResponseDto.java b/src/main/java/com/example/trello/card/responsedto/CardResponseDto.java index 15a5e3a..41a4b05 100644 --- a/src/main/java/com/example/trello/card/responsedto/CardResponseDto.java +++ b/src/main/java/com/example/trello/card/responsedto/CardResponseDto.java @@ -21,6 +21,8 @@ public class CardResponseDto { private String description; + private Long workspaceMemberId; + @JsonFormat(pattern = "yyyy-MM-dd") LocalDate startAt; @@ -28,11 +30,12 @@ public class CardResponseDto { LocalDate endAt; - public CardResponseDto(Long cardListId, Long cardId, String title, String description, LocalDate startAt, LocalDate endAt) { + public CardResponseDto(Long cardListId, Long cardId, String title, String description, Long workspaceMemberId, LocalDate startAt, LocalDate endAt) { this.cardListId = cardListId; this.cardId = cardId; this.title = title; this.description = description; + this.workspaceMemberId = workspaceMemberId; this.startAt = startAt; this.endAt =endAt; } @@ -43,6 +46,7 @@ public static CardResponseDto toDto(Card card) { card.getId(), card.getTitle(), card.getDescription(), + card.getWorkspaceMember().getId(), card.getStartAt(), card.getEndAt()); } diff --git a/src/main/java/com/example/trello/card/responsedto/UpdateCardResponseDto.java b/src/main/java/com/example/trello/card/responsedto/UpdateCardResponseDto.java index 8cd2901..003149c 100644 --- a/src/main/java/com/example/trello/card/responsedto/UpdateCardResponseDto.java +++ b/src/main/java/com/example/trello/card/responsedto/UpdateCardResponseDto.java @@ -1,6 +1,7 @@ package com.example.trello.card.responsedto; import com.example.trello.cardlist.CardList; +import com.example.trello.workspace_member.WorkspaceMember; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; @@ -15,16 +16,19 @@ public class UpdateCardResponseDto { private String description; + private WorkspaceMember workspaceMember; + @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate startAt; @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate endAt; - public UpdateCardResponseDto(CardList cardListId, String title, String description, LocalDate startAt, LocalDate endAt) { + public UpdateCardResponseDto(CardList cardListId, String title, String description, WorkspaceMember workspaceMember, LocalDate startAt, LocalDate endAt) { this.cardList = cardListId; this.title = title; this.description = description; + this.workspaceMember = workspaceMember; this.startAt = startAt; this.endAt = endAt; } diff --git a/src/main/java/com/example/trello/comment/CommentRepository.java b/src/main/java/com/example/trello/comment/CommentRepository.java index 1d9f114..797dda4 100644 --- a/src/main/java/com/example/trello/comment/CommentRepository.java +++ b/src/main/java/com/example/trello/comment/CommentRepository.java @@ -1,6 +1,8 @@ package com.example.trello.comment; import com.example.trello.board.Board; +import com.example.trello.common.exception.CommentErrorCode; +import com.example.trello.common.exception.CommentException; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @@ -8,6 +10,6 @@ public interface CommentRepository extends JpaRepository { default Comment findByIdOrElseThrow(Long id){ - return findById(id).orElseThrow(()->new RuntimeException()); + return findById(id).orElseThrow(()->new CommentException(CommentErrorCode.COMMENT_NOT_FOUND)); } } diff --git a/src/main/java/com/example/trello/common/exception/CommentErrorCode.java b/src/main/java/com/example/trello/common/exception/CommentErrorCode.java index c6199e4..f6668fa 100644 --- a/src/main/java/com/example/trello/common/exception/CommentErrorCode.java +++ b/src/main/java/com/example/trello/common/exception/CommentErrorCode.java @@ -8,7 +8,8 @@ @Getter public enum CommentErrorCode { - CANNOT_BE_MODIFIED("댓글 수정은 작성자만 가능합니다", HttpStatus.FORBIDDEN); + CANNOT_BE_MODIFIED("댓글 수정은 작성자만 가능합니다", HttpStatus.FORBIDDEN), + COMMENT_NOT_FOUND("댓글을 찾을 수 없습니다", HttpStatus.NOT_FOUND); private final String message; private final HttpStatus httpStatus;