From f278c075ec0a96d9dde07de3fdc4d5c6471707f5 Mon Sep 17 00:00:00 2001 From: BlueBerrySoda Date: Fri, 17 May 2024 15:28:46 +0900 Subject: [PATCH 1/2] =?UTF-8?q?refator:=20DTO=20Put=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/example/capstone/domain/qna/dto/LikeRequest.java | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 back/src/main/java/com/example/capstone/domain/qna/dto/LikeRequest.java diff --git a/back/src/main/java/com/example/capstone/domain/qna/dto/LikeRequest.java b/back/src/main/java/com/example/capstone/domain/qna/dto/LikeRequest.java new file mode 100644 index 0000000000..7c0ec9bd77 --- /dev/null +++ b/back/src/main/java/com/example/capstone/domain/qna/dto/LikeRequest.java @@ -0,0 +1,6 @@ +package com.example.capstone.domain.qna.dto; + +public record LikeRequest( + Long answerId +) { +} From 8aeded5d988e64c9d896e7017aaf5725c9929f1d Mon Sep 17 00:00:00 2001 From: BlueBerrySoda Date: Fri, 17 May 2024 15:29:25 +0900 Subject: [PATCH 2/2] =?UTF-8?q?refator:=20=EC=A2=8B=EC=95=84=EC=9A=94=20?= =?UTF-8?q?=EC=97=AC=EB=B6=80=20null=20=EA=B0=92=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/qna/controller/AnswerController.java | 12 ++++++------ .../domain/qna/repository/AnswerRepositoryImpl.java | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/back/src/main/java/com/example/capstone/domain/qna/controller/AnswerController.java b/back/src/main/java/com/example/capstone/domain/qna/controller/AnswerController.java index 2bd17015d6..1b511a28cf 100644 --- a/back/src/main/java/com/example/capstone/domain/qna/controller/AnswerController.java +++ b/back/src/main/java/com/example/capstone/domain/qna/controller/AnswerController.java @@ -67,9 +67,9 @@ public ResponseEntity> eraseAnswer( @Parameter(description @ApiResponse(responseCode = "200", description = "완료시 200을 반환합니다.") public ResponseEntity> upLikeCount(@RequestHeader("X-User-ID") String userId, @Parameter(description = "추천할 댓글의 id가 필요합니다.", required = true) - @RequestParam Long id) { - likeService.likeAnswer(userId, id); - answerService.increaseLikeCountById(id); + @RequestBody LikeRequest id) { + likeService.likeAnswer(userId, id.answerId()); + answerService.increaseLikeCountById(id.answerId()); return ResponseEntity .ok(new ApiResult<>("Successfully like answer", 200)); @@ -80,9 +80,9 @@ public ResponseEntity> upLikeCount(@RequestHeader("X-User-ID" @ApiResponse(responseCode = "200", description = "완료시 200을 반환합니다.") public ResponseEntity> downLikeCount(@RequestHeader("X-User-ID") String userId, @Parameter(description = "추천 해제할 댓글의 id가 필요합니다.", required = true) - @RequestParam Long id) { - likeService.unlikeAnswer(userId, id); - answerService.decreaseLikeCountById(id); + @RequestBody LikeRequest id) { + likeService.unlikeAnswer(userId, id.answerId()); + answerService.decreaseLikeCountById(id.answerId()); return ResponseEntity .ok(new ApiResult<>("Successfully unlike answer", 200)); diff --git a/back/src/main/java/com/example/capstone/domain/qna/repository/AnswerRepositoryImpl.java b/back/src/main/java/com/example/capstone/domain/qna/repository/AnswerRepositoryImpl.java index 27dfd7a89b..d751c51e33 100644 --- a/back/src/main/java/com/example/capstone/domain/qna/repository/AnswerRepositoryImpl.java +++ b/back/src/main/java/com/example/capstone/domain/qna/repository/AnswerRepositoryImpl.java @@ -31,7 +31,7 @@ public AnswerSliceResponse getAnswerListByPaging(Long cursorId, Pageable page, L .select( Projections.constructor(AnswerListResponse.class, answer.id, answer.question.id, answer.author, answer.context, - answer.likeCount, like.isClick.isTrue(), answer.createdDate, answer.updatedDate, answer.uuid) + answer.likeCount, like.isClick.coalesce(false).as("likeCheck"), answer.createdDate, answer.updatedDate, answer.uuid) ) .from(answer) .innerJoin(answer.question, question)