From a08ca05165ab7ced001b37e5bad8f9167968154c Mon Sep 17 00:00:00 2001 From: choehyeonjin Date: Wed, 11 Feb 2026 15:52:06 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20OCR=20result=20DTO=20=ED=8C=A8?= =?UTF-8?q?=ED=82=A4=EC=A7=80=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/response/OcrLettersResponseDTO.java | 31 ++--------------- .../api/ocr/dto/result/OcrResultDTO.java | 33 +++++++++++++++++++ .../api/ocr/service/LetterOcrService.java | 5 +-- 3 files changed, 36 insertions(+), 33 deletions(-) create mode 100644 src/main/java/com/deare/backend/api/ocr/dto/result/OcrResultDTO.java diff --git a/src/main/java/com/deare/backend/api/ocr/dto/response/OcrLettersResponseDTO.java b/src/main/java/com/deare/backend/api/ocr/dto/response/OcrLettersResponseDTO.java index 0b8f3ab2..5e486b0e 100644 --- a/src/main/java/com/deare/backend/api/ocr/dto/response/OcrLettersResponseDTO.java +++ b/src/main/java/com/deare/backend/api/ocr/dto/response/OcrLettersResponseDTO.java @@ -1,6 +1,8 @@ package com.deare.backend.api.ocr.dto.response; +import com.deare.backend.api.ocr.dto.result.OcrResultDTO; import lombok.*; + import java.util.List; @Getter @@ -24,33 +26,4 @@ public static class SummaryDTO { private boolean partialFailure; private List failedImageIds; } - - @Getter - @Builder - @NoArgsConstructor - @AllArgsConstructor - public static class OcrResultDTO { - private Long imageId; - private boolean success; - private String text; // success=true 일 때만 - private String errorCode; // success=false 일 때만 - private String message; // success=false 일 때만 - - public static OcrResultDTO ok(Long imageId, String text) { - return OcrResultDTO.builder() - .imageId(imageId) - .success(true) - .text(text) - .build(); - } - - public static OcrResultDTO fail(Long imageId, String errorCode, String message) { - return OcrResultDTO.builder() - .imageId(imageId) - .success(false) - .errorCode(errorCode) - .message(message) - .build(); - } - } } diff --git a/src/main/java/com/deare/backend/api/ocr/dto/result/OcrResultDTO.java b/src/main/java/com/deare/backend/api/ocr/dto/result/OcrResultDTO.java new file mode 100644 index 00000000..4b57224e --- /dev/null +++ b/src/main/java/com/deare/backend/api/ocr/dto/result/OcrResultDTO.java @@ -0,0 +1,33 @@ +package com.deare.backend.api.ocr.dto.result; + +import lombok.*; + +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class OcrResultDTO { + + private Long imageId; + private boolean success; + private String text; // success=true 일 때만 + private String errorCode; // success=false 일 때만 + private String message; // success=false 일 때만 + + public static OcrResultDTO ok(Long imageId, String text) { + return OcrResultDTO.builder() + .imageId(imageId) + .success(true) + .text(text) + .build(); + } + + public static OcrResultDTO fail(Long imageId, String errorCode, String message) { + return OcrResultDTO.builder() + .imageId(imageId) + .success(false) + .errorCode(errorCode) + .message(message) + .build(); + } +} diff --git a/src/main/java/com/deare/backend/api/ocr/service/LetterOcrService.java b/src/main/java/com/deare/backend/api/ocr/service/LetterOcrService.java index 6d67b220..b8fff5cb 100644 --- a/src/main/java/com/deare/backend/api/ocr/service/LetterOcrService.java +++ b/src/main/java/com/deare/backend/api/ocr/service/LetterOcrService.java @@ -2,11 +2,10 @@ import com.deare.backend.api.ocr.dto.request.OcrLettersRequestDTO; import com.deare.backend.api.ocr.dto.response.OcrLettersResponseDTO; -import com.deare.backend.api.ocr.dto.response.OcrLettersResponseDTO.OcrResultDTO; +import com.deare.backend.api.ocr.dto.result.OcrResultDTO; import com.deare.backend.domain.letter.exception.OcrErrorCode; import com.deare.backend.domain.image.entity.Image; import com.deare.backend.domain.image.repository.ImageRepository; -import com.deare.backend.global.auth.util.SecurityUtil; import com.deare.backend.global.common.exception.GeneralException; import com.deare.backend.global.external.feign.exception.ExternalApiException; import com.deare.backend.global.external.gemini.adapter.ocr.OcrAdapter; @@ -32,8 +31,6 @@ public OcrLettersResponseDTO ocrLetters(OcrLettersRequestDTO request) { List imageIds = request.getImageIds(); validateImageIds(imageIds); - Long userId = SecurityUtil.getCurrentUserId(); - // DB에서 이미지들 조회 List images = imageRepository.findAllById(imageIds); Map imageMap = images.stream()