From 5c755782d2a73b0ea6ef9b7a187b1af4ab3fe4dd Mon Sep 17 00:00:00 2001 From: oTAETAEo Date: Sat, 31 Oct 2026 00:40:30 +0900 Subject: [PATCH 1/4] =?UTF-8?q?feat:=20=EB=B3=B8=EC=9D=B8=20=EC=86=8C?= =?UTF-8?q?=EC=9C=A0=20=ED=85=9C=ED=94=8C=EB=A6=BF=20=EC=A1=B0=ED=9A=8C?= =?UTF-8?q?=EC=99=80=20404=20=EC=97=90=EB=9F=AC=20=EC=BD=94=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=20(#49)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/exception/TemplateErrorCode.java | 4 ++++ .../template/repository/TemplateRepository.java | 4 ++++ .../template/exception/TemplateErrorCodeTest.java | 12 ++++++++++++ .../repository/TemplateRepositoryTest.java | 14 ++++++++++++++ 4 files changed, 34 insertions(+) diff --git a/src/main/java/com/sniptext/domain/template/exception/TemplateErrorCode.java b/src/main/java/com/sniptext/domain/template/exception/TemplateErrorCode.java index 5c9fc03..36345df 100644 --- a/src/main/java/com/sniptext/domain/template/exception/TemplateErrorCode.java +++ b/src/main/java/com/sniptext/domain/template/exception/TemplateErrorCode.java @@ -30,6 +30,10 @@ public enum TemplateErrorCode implements ResultCode { CONTENT_TOO_LONG(HttpStatus.BAD_REQUEST, "TEMPLATE400_7", "템플릿 내용은 3,000자까지 입력할 수 있어요."), /** 활성 템플릿 수가 플랜 한도 이상 (화면은 한도 모달) */ TEMPLATE_LIMIT_REACHED(HttpStatus.FORBIDDEN, "TEMPLATE403_1", "템플릿 저장 한도에 도달했어요."), + /** 없는 템플릿, 다른 회원의 템플릿 (다른 회원의 휴지통 템플릿 포함) */ + TEMPLATE_NOT_FOUND(HttpStatus.NOT_FOUND, "TEMPLATE404_1", "템플릿을 찾을 수 없어요."), + /** 내 템플릿인데 휴지통에 있음 */ + TEMPLATE_IN_TRASH(HttpStatus.NOT_FOUND, "TEMPLATE404_2", "이미 삭제된 템플릿이에요."), /** 내 템플릿(휴지통 제외)에 같은 단축어 키가 있음. 대소문자 무시 */ SHORTCUT_DUPLICATED(HttpStatus.CONFLICT, "TEMPLATE409_1", "이미 사용 중인 단축어예요."), /** 자동 번호 2~99가 모두 사용 중 (갤러리 저장·휴지통 복구) */ diff --git a/src/main/java/com/sniptext/domain/template/repository/TemplateRepository.java b/src/main/java/com/sniptext/domain/template/repository/TemplateRepository.java index f751467..0eac9ca 100644 --- a/src/main/java/com/sniptext/domain/template/repository/TemplateRepository.java +++ b/src/main/java/com/sniptext/domain/template/repository/TemplateRepository.java @@ -1,6 +1,7 @@ package com.sniptext.domain.template.repository; import java.util.Collection; +import java.util.Optional; import java.util.Set; import org.springframework.data.jpa.repository.JpaRepository; @@ -11,6 +12,9 @@ public interface TemplateRepository extends JpaRepository { + /** 본인 소유 조회. 휴지통 템플릿도 찾으므로 내 휴지통과 다른 회원 것을 호출자가 구분할 수 있다 */ + Optional