From 1c49f3875ac49cb96c26b4593a176999f2d148b3 Mon Sep 17 00:00:00 2001 From: JunsuPark Date: Mon, 17 Feb 2025 22:15:00 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EA=B3=B5=EC=97=B0=20=EB=8C=93=EA=B8=80?= =?UTF-8?q?=20cursorValue=20=EC=82=AD=EC=A0=9C=20(#65)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/response/CursorApiResponse.java | 17 ++++-- .../comment/controller/CommentController.java | 20 +++--- .../request/CommentPaginationApiRequest.java | 6 +- .../example/file/component/FileComponent.java | 3 +- .../file/component/FileLocalComponent.java | 23 ++++--- .../file/controller/FileController.java | 8 ++- .../common-domain/src/main/resources/data.sql | 61 ++++++++++++++++++- .../CommentPaginationDomainRequest.java | 2 - 8 files changed, 102 insertions(+), 38 deletions(-) diff --git a/app/api/common-api/src/main/java/org/example/dto/response/CursorApiResponse.java b/app/api/common-api/src/main/java/org/example/dto/response/CursorApiResponse.java index 0d9bfbcf..f6431489 100644 --- a/app/api/common-api/src/main/java/org/example/dto/response/CursorApiResponse.java +++ b/app/api/common-api/src/main/java/org/example/dto/response/CursorApiResponse.java @@ -5,23 +5,30 @@ public record CursorApiResponse( - @Schema(description = "조회한 데이터의 Cursor Id") - Object id, + @Schema(description = "조회한 데이터의 처음 Cursor Id") + Object firstId, + + @Schema(description = "조회한 데이터의 마지막 Cursor Id") + Object lastId, @Schema(description = "조회한 데이터의 Cursor Value") Object value ) { public static CursorApiResponse toCursorResponse(Object id, Object value) { - return new CursorApiResponse(id, value); + return new CursorApiResponse(id, null, value); + } + + public static CursorApiResponse toCursorResponse(Object firstId, Object lastId, Object value) { + return new CursorApiResponse(firstId, lastId, value); } public static CursorApiResponse toCursorId(Object id) { - return new CursorApiResponse(id, null); + return new CursorApiResponse(id, null, null); } public static CursorApiResponse noneCursor() { - return new CursorApiResponse(null, null); + return new CursorApiResponse(null, null, null); } public static T getLastElement(List list) { diff --git a/app/api/show-api/src/main/java/com/example/comment/controller/CommentController.java b/app/api/show-api/src/main/java/com/example/comment/controller/CommentController.java index 9424613b..f30ca0bb 100644 --- a/app/api/show-api/src/main/java/com/example/comment/controller/CommentController.java +++ b/app/api/show-api/src/main/java/com/example/comment/controller/CommentController.java @@ -81,18 +81,16 @@ public SuccessResponse> readComments( @PathVariable UUID refId, @Valid @ParameterObject CommentPaginationApiRequest request ) { - var commentPagination = commentService.getComments(request.toServiceRequest(refId, info.userId())); + var commentPagination = commentService.getComments( + request.toServiceRequest(refId, info.userId())); - CursorApiResponse cursor; - if (request.isInverted()) { - cursor = Optional.ofNullable(CursorApiResponse.getLastElement(commentPagination.data())) - .map(element -> CursorApiResponse.toCursorResponse(element.commentId(), element.createdAt())) - .orElse(CursorApiResponse.noneCursor()); - } else { - cursor = Optional.ofNullable(CursorApiResponse.getFirstElement(commentPagination.data())) - .map(element -> CursorApiResponse.toCursorResponse(element.commentId(), element.createdAt())) - .orElse(CursorApiResponse.noneCursor()); - } + CursorApiResponse cursor = CursorApiResponse.toCursorResponse( + Optional.ofNullable(CursorApiResponse.getFirstElement(commentPagination.data())) + .map(CommentApiParam::commentId) + .orElse(null), + Optional.ofNullable(CursorApiResponse.getLastElement(commentPagination.data())) + .map(CommentApiParam::commentId) + .orElse(null), null); return SuccessResponse.ok( PaginationApiResponse.builder() diff --git a/app/api/show-api/src/main/java/com/example/comment/controller/dto/request/CommentPaginationApiRequest.java b/app/api/show-api/src/main/java/com/example/comment/controller/dto/request/CommentPaginationApiRequest.java index e11ae40f..c52d3528 100644 --- a/app/api/show-api/src/main/java/com/example/comment/controller/dto/request/CommentPaginationApiRequest.java +++ b/app/api/show-api/src/main/java/com/example/comment/controller/dto/request/CommentPaginationApiRequest.java @@ -2,7 +2,6 @@ import io.swagger.v3.oas.annotations.Parameter; import jakarta.validation.constraints.Max; -import java.time.LocalDateTime; import java.util.UUID; import org.example.dto.comment.request.CommentPaginationDomainRequest; import org.example.vo.CommentType; @@ -17,13 +16,11 @@ public record CommentPaginationApiRequest( @Parameter(description = "이전 페이지네이션의 cursorId / 최초 조회라면 null") UUID cursorId, - @Parameter(description = "이전 페이지네이션의 cursorValue/ 최초 조회라면 null") - LocalDateTime cursorValue, - @Parameter(example = "30") @Max(value = 30, message = "조회하는 데이터의 최대 개수는 30입니다.") Integer size ) { + public CommentPaginationApiRequest { if (size == null) { size = 30; @@ -37,7 +34,6 @@ public CommentPaginationDomainRequest toServiceRequest(UUID refId, UUID userId) .userId(userId) .isInverted(isInverted) .cursorId(cursorId) - .cursorValue(cursorValue) .size(size) .build(); } diff --git a/app/api/user-api/src/main/java/org/example/file/component/FileComponent.java b/app/api/user-api/src/main/java/org/example/file/component/FileComponent.java index 715602cd..e5c95ae3 100644 --- a/app/api/user-api/src/main/java/org/example/file/component/FileComponent.java +++ b/app/api/user-api/src/main/java/org/example/file/component/FileComponent.java @@ -1,11 +1,10 @@ package org.example.file.component; import java.util.Optional; -import org.springframework.core.io.Resource; public interface FileComponent { Optional getImageUrl(int id); - Resource getProfileResource(int id); + byte[] getProfileImageBytes(int id); } diff --git a/app/api/user-api/src/main/java/org/example/file/component/FileLocalComponent.java b/app/api/user-api/src/main/java/org/example/file/component/FileLocalComponent.java index 298305bb..fb212d80 100644 --- a/app/api/user-api/src/main/java/org/example/file/component/FileLocalComponent.java +++ b/app/api/user-api/src/main/java/org/example/file/component/FileLocalComponent.java @@ -1,5 +1,6 @@ package org.example.file.component; +import java.io.FileNotFoundException; import java.util.Objects; import java.util.Optional; import lombok.RequiredArgsConstructor; @@ -36,22 +37,26 @@ public Optional getImageUrl(int id) { @Override @Cacheable(value = "profileImages", key = "#id") - public Resource getProfileResource(int id) { - Resource resource; + public byte[] getProfileImageBytes(int id) { + String resourcePath = IMAGE_RESOURCE_LOCATION + id + IMAGE_EXTENSION; + + return convertByteArrayByResourcePath(resourcePath); + } + + private byte[] convertByteArrayByResourcePath(String resourcePath) { try { - String resourcePath = IMAGE_RESOURCE_LOCATION + id + IMAGE_EXTENSION; - resource = new UrlResource( + Resource resource = new UrlResource( Objects.requireNonNull(getClass().getClassLoader().getResource(resourcePath)) .toURI()); - if (!resource.exists() && !resource.isReadable()) { - throw new IllegalArgumentException(); + + if (!resource.exists() || !resource.isReadable()) { + throw new FileNotFoundException(); } + + return resource.getInputStream().readAllBytes(); } catch (Exception e) { throw new IllegalArgumentException(e); } - - return resource; } - } diff --git a/app/api/user-api/src/main/java/org/example/file/controller/FileController.java b/app/api/user-api/src/main/java/org/example/file/controller/FileController.java index e6ece123..f96f33cc 100644 --- a/app/api/user-api/src/main/java/org/example/file/controller/FileController.java +++ b/app/api/user-api/src/main/java/org/example/file/controller/FileController.java @@ -1,7 +1,9 @@ package org.example.file.controller; +import java.util.Arrays; import lombok.RequiredArgsConstructor; import org.example.file.component.FileLocalComponent; +import org.springframework.core.io.ByteArrayResource; import org.springframework.core.io.Resource; import org.springframework.http.ContentDisposition; import org.springframework.http.HttpHeaders; @@ -21,14 +23,14 @@ public class FileController { @GetMapping("/profile-image/{id}") public ResponseEntity getUserProfileImage(@PathVariable int id) { - Resource resource = fileLocalComponent.getProfileResource(id); + byte[] fileBytes = fileLocalComponent.getProfileImageBytes(id); return ResponseEntity.ok() .contentType(MediaType.IMAGE_PNG) .header( HttpHeaders.CONTENT_DISPOSITION, - ContentDisposition.inline().filename(resource.getFilename()).toString()) - .body(resource); + ContentDisposition.inline().filename(Arrays.toString(fileBytes)).toString()) + .body(new ByteArrayResource(fileBytes)); } } \ No newline at end of file diff --git a/app/domain/common-domain/src/main/resources/data.sql b/app/domain/common-domain/src/main/resources/data.sql index b81a7580..4db6c97b 100644 --- a/app/domain/common-domain/src/main/resources/data.sql +++ b/app/domain/common-domain/src/main/resources/data.sql @@ -260,4 +260,63 @@ values ('01937cf9-9c59-6ae1-197e-9fe9efc76c73', '2024-11-30 21:09:13.562', fals ('01937d01-035a-d41c-1a5c-11a4dec35592', '2024-11-30 21:17:18.682', false, '2024-11-30 21:17:18.682', NOW() + INTERVAL '5 days', '01937d01-0358-516e-a16f-fe2e30017cac', 'NORMAL'), ('01937d01-e4aa-82f5-04be-5b3dc9004c03', '2024-11-30 21:18:16.362', false, '2024-11-30 21:18:16.362', NOW() + INTERVAL '5 days', '01937d01-e4a6-7d9b-dbf1-128cfb018783', 'NORMAL'), ('01937d02-d457-ecbf-c3cb-264400e57222', '2024-11-30 21:19:17.720', false, '2024-11-30 21:19:17.720', NOW() + INTERVAL '5 days', '01937d02-d452-b277-3ea3-fb71d3887122', 'NORMAL'), - ('01937d05-17e8-ad05-d846-c04d1bd0f795', '2024-11-30 21:21:46.089', false, '2024-11-30 21:21:46.089', NOW() + INTERVAL '5 days', '01937d05-17e3-3985-b7cf-0241e238c2d0', 'NORMAL'); \ No newline at end of file + ('01937d05-17e8-ad05-d846-c04d1bd0f795', '2024-11-30 21:21:46.089', false, '2024-11-30 21:21:46.089', NOW() + INTERVAL '5 days', '01937d05-17e3-3985-b7cf-0241e238c2d0', 'NORMAL'); + +--- 사용자 +insert into public.users (id, created_at, updated_at, is_deleted, birth, fcm_token, gender, nickname, role, profile_url) +values ('019513dc-c9e9-4265-6a34-ba52f0953e14', '2025-02-17 21:23:11.669', '2025-02-17 21:23:11.669', false, '0001-01-01 BC', 'junsuFcmToken123', 'NOT_CHOSEN', '멋있는 카멜레온282', 'USER', 'https://dev.showpot.net/api/v1/files/profile-image/5'); +insert into public.social_login (id, created_at, updated_at, is_deleted, user_id, identifier, social_login_type) +values ('019513dc-c9e9-4265-6a34-ba52f0953e15', '2025-02-17 21:23:11.653', '2025-02-17 21:23:11.653', false, '019513dc-c9e9-4265-6a34-ba52f0953e14', 'junsu124', 'KAKAO'); + +--- 공연 댓글 +insert into public.comment (id, is_deleted, created_at, updated_at, parent_id, ref_id, user_id, comment_type, content) +values ('a6d14fde-8434-4b21-a275-6bf7b257a3cf', false, '2025-02-17 12:00:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 1'), + ('a05a22ad-3f58-4928-996d-9fd7adeec42c', false, '2025-02-17 12:01:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 2'), + ('0687952b-aa96-48db-8c2a-b15e17728bae', false, '2025-02-17 12:02:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 3'), + ('69a054f7-f862-4754-bf24-91721f3554fe', false, '2025-02-17 12:03:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 4'), + ('17f62f39-d002-43c2-80ba-3e674cd30e92', false, '2025-02-17 12:04:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 5'), + ('4c18a79c-8734-4c09-8c33-af74b24910b0', false, '2025-02-17 12:05:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 6'), + ('acd6d739-d899-4928-ac3c-8d8acf2082a5', false, '2025-02-17 12:06:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 7'), + ('a6259282-3e6e-4eb7-8f97-d55dd04ada07', false, '2025-02-17 12:07:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 8'), + ('df039873-e1da-4008-9eae-7d77516b9e06', false, '2025-02-17 12:08:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 9'), + ('18a50953-b902-408b-bedc-07e368e3f87f', false, '2025-02-17 12:09:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 10'), + ('ec851f55-5896-469d-837b-f7f1c382856f', false, '2025-02-17 12:10:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 11'), + ('be8a9a48-5eac-42b4-a575-69f5262e6837', false, '2025-02-17 12:11:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 12'), + ('c68586f6-7a94-4340-badf-48e74dbeb0f1', false, '2025-02-17 12:12:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 13'), + ('a6807531-ef49-4330-93a2-28e082dcffb7', false, '2025-02-17 12:13:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 14'), + ('005f59dc-f63b-433a-bfea-53fe7253f596', false, '2025-02-17 12:14:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 15'), + ('f8cd541c-9a57-4c04-9ee1-59e47a769b73', false, '2025-02-17 12:15:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 16'), + ('9d6c4ce5-7cbe-4361-a6fd-fa0b9cf03bce', false, '2025-02-17 12:16:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 17'), + ('7fcdbf8e-50d7-4b89-bcc3-716cdc485056', false, '2025-02-17 12:17:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 18'), + ('e3915dd6-ac06-4097-ae0c-3a021a77ed3b', false, '2025-02-17 12:18:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 19'), + ('0d2df2be-a889-4b4d-ade5-6df301ee6436', false, '2025-02-17 12:19:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 20'), + ('e68db742-5403-4382-90fa-4c3bb4cb1dd1', false, '2025-02-17 12:20:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 21'), + ('906d30e2-6b4d-490f-a90d-cdf246c06255', false, '2025-02-17 12:21:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 22'), + ('630c94bf-0382-4df7-964b-0b56dffa8d24', false, '2025-02-17 12:22:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 23'), + ('17a0eb25-f7df-4728-b6a6-e541eed3eaf8', false, '2025-02-17 12:23:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 24'), + ('04cff40e-bf9d-46ea-a0db-a1984915dc2b', false, '2025-02-17 12:24:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 25'), + ('567ba99b-690d-4f30-a1c3-07eae2a8e5f8', false, '2025-02-17 12:25:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 26'), + ('d3f8121c-0e1b-42b9-8c50-8fc3e7f254ea', false, '2025-02-17 12:26:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 27'), + ('4d4a2cc6-7608-4ff8-a250-528d4c2e0bfb', false, '2025-02-17 12:27:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 28'), + ('662ac018-0957-4d03-8ed8-ff2a498c368e', false, '2025-02-17 12:28:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 29'), + ('ae5913d2-af5b-4f26-b26b-819ec07f6d78', false, '2025-02-17 12:29:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 30'), + ('787b9484-dc1e-461c-b44c-c9f83cf88605', false, '2025-02-17 12:30:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 31'), + ('2c0a6cce-2204-43a8-b318-932d52a6dbc1', false, '2025-02-17 12:31:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 32'), + ('b4e9a243-ac46-45ec-bc5b-20eba13296ed', false, '2025-02-17 12:32:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 33'), + ('57364bbb-32c6-4a09-8782-74ec9c0c11ba', false, '2025-02-17 12:33:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 34'), + ('90294327-c643-4b88-9ef6-e5ed83af8edb', false, '2025-02-17 12:34:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 35'), + ('5d6e348a-a0ad-44b3-938f-58632a85fd8b', false, '2025-02-17 12:35:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 36'), + ('bd0a8b93-4666-4e6f-a8f5-06b56817d982', false, '2025-02-17 12:36:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 37'), + ('8f0a57a8-de4a-45f3-9045-7323660194ce', false, '2025-02-17 12:37:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 38'), + ('bb242ffc-7daf-45eb-8f44-8d2ffd4cbe86', false, '2025-02-17 12:38:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 39'), + ('680dd1a9-1bc1-493a-99cb-dcc2da6d539f', false, '2025-02-17 12:39:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 40'), + ('987d12ed-6a76-4b7e-8697-7cce4f2d62a2', false, '2025-02-17 12:40:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 41'), + ('8d1b6ec3-a58f-44fc-9449-b5d0a34ae7f0', false, '2025-02-17 12:41:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 42'), + ('d4c23ddc-35a9-4392-afca-690b02bfedcf', false, '2025-02-17 12:42:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 43'), + ('edf47a37-30a4-40a7-af61-7b829b05fbd4', false, '2025-02-17 12:43:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 44'), + ('b3fe1461-e106-4986-b3f7-261ba43025cd', false, '2025-02-17 12:44:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 45'), + ('813f3a54-8688-4c78-996a-c5b03453fa70', false, '2025-02-17 12:45:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 46'), + ('f0b56ef2-acda-4794-ab7e-83a3c06dec35', false, '2025-02-17 12:46:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 47'), + ('4f277e72-a61b-4f19-ad27-642cb2bb54c1', false, '2025-02-17 12:47:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 48'), + ('4fc4056d-e596-43f7-9198-f7b82a5bc552', false, '2025-02-17 12:48:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 49'), + ('3e149320-00f0-4125-a864-ad7ab210e2a7', false, '2025-02-17 12:49:32.095', '2025-02-17 12:45:32.095', null, '01937cf9-9c48-4ac9-1c57-8aba45fd4a96', '019513dc-c9e9-4265-6a34-ba52f0953e14', 'SHOW', '댓글 내용 50'); \ No newline at end of file diff --git a/app/domain/show-domain/src/main/java/org/example/dto/comment/request/CommentPaginationDomainRequest.java b/app/domain/show-domain/src/main/java/org/example/dto/comment/request/CommentPaginationDomainRequest.java index e1cdcc0c..fa891fb0 100644 --- a/app/domain/show-domain/src/main/java/org/example/dto/comment/request/CommentPaginationDomainRequest.java +++ b/app/domain/show-domain/src/main/java/org/example/dto/comment/request/CommentPaginationDomainRequest.java @@ -1,6 +1,5 @@ package org.example.dto.comment.request; -import java.time.LocalDateTime; import java.util.UUID; import lombok.Builder; import org.example.vo.CommentType; @@ -12,7 +11,6 @@ public record CommentPaginationDomainRequest( UUID userId, boolean isInverted, UUID cursorId, - LocalDateTime cursorValue, Integer size ) {