From f0629e7e1c86da9408e0f005e57163058c1f29f7 Mon Sep 17 00:00:00 2001 From: Ssamssamukja <109636635+Ssamssamukja@users.noreply.github.com> Date: Thu, 14 Nov 2024 19:27:39 +0900 Subject: [PATCH] =?UTF-8?q?:sparkles:=20Mission(#7)=20:=20Status=20?= =?UTF-8?q?=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiPayload/code/status/ErrorStatus.java | 49 +++++++++++++++++++ .../apiPayload/code/status/SuccessStatus.java | 36 ++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 spring/src/main/java/umc/spring/apiPayload/code/status/ErrorStatus.java create mode 100644 spring/src/main/java/umc/spring/apiPayload/code/status/SuccessStatus.java diff --git a/spring/src/main/java/umc/spring/apiPayload/code/status/ErrorStatus.java b/spring/src/main/java/umc/spring/apiPayload/code/status/ErrorStatus.java new file mode 100644 index 0000000..8c1deb8 --- /dev/null +++ b/spring/src/main/java/umc/spring/apiPayload/code/status/ErrorStatus.java @@ -0,0 +1,49 @@ +package umc.spring.apiPayload.code.status; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springframework.http.HttpStatus; +import umc.spring.apiPayload.code.BaseErrorCode; +import umc.spring.apiPayload.code.ErrorReasonDTO; +@Getter +@AllArgsConstructor +public enum ErrorStatus implements BaseErrorCode { + // 가장 일반적인 응답 + _INTERNAL_SERVER_ERROR(HttpStatus.INTERNAL_SERVER_ERROR, "COMMON500", "서버 에러, 관리자에게 문의 바랍니다."), + _BAD_REQUEST(HttpStatus.BAD_REQUEST,"COMMON400","잘못된 요청입니다."), + _UNAUTHORIZED(HttpStatus.UNAUTHORIZED,"COMMON401","인증이 필요합니다."), + _FORBIDDEN(HttpStatus.FORBIDDEN, "COMMON403", "금지된 요청입니다."), + + // For test + TEMP_EXCEPTION(HttpStatus.BAD_REQUEST, "TEMP4001", "이거는 테스트"), + + // Member Error + MEMBER_NOT_FOUND(HttpStatus.BAD_REQUEST, "MEMBER4001", "사용자가 없습니다."), + NICKNAME_NOT_EXIST(HttpStatus.BAD_REQUEST, "MEMBER4002", "닉네임은 필수 입니다."), + + // Article Error + ARTICLE_NOT_FOUND(HttpStatus.NOT_FOUND, "ARTICLE4001", "게시글이 없습니다."); + + private final HttpStatus httpStatus; + private final String code; + private final String message; + + @Override + public ErrorReasonDTO getReason() { + return ErrorReasonDTO.builder() + .message(message) + .code(code) + .isSuccess(false) + .build(); + } + @Override + public ErrorReasonDTO getReasonHttpStatus() { + return ErrorReasonDTO.builder() + .message(message) + .code(code) + .isSuccess(false) + .httpStatus(httpStatus) + .build() + ; + } +} diff --git a/spring/src/main/java/umc/spring/apiPayload/code/status/SuccessStatus.java b/spring/src/main/java/umc/spring/apiPayload/code/status/SuccessStatus.java new file mode 100644 index 0000000..f03c6db --- /dev/null +++ b/spring/src/main/java/umc/spring/apiPayload/code/status/SuccessStatus.java @@ -0,0 +1,36 @@ +package umc.spring.apiPayload.code.status; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springframework.http.HttpStatus; +import umc.spring.apiPayload.code.BaseCode; +import umc.spring.apiPayload.code.ReasonDTO; +@Getter +@AllArgsConstructor +public enum SuccessStatus implements BaseCode { + // 일반적인 응답 + _OK(HttpStatus.OK, "COMMON200", "성공입니다."); + // 멤버 관련 응답 + // ~~~ 관련 응답 + private final HttpStatus httpStatus; + private final String code; + private final String message; + @Override + public ReasonDTO getReason() { + return ReasonDTO.builder() + .message(message) + .code(code) + .isSuccess(true) + .build(); + } + @Override + public ReasonDTO getReasonHttpStatus() { + return ReasonDTO.builder() + .message(message) + .code(code) + .isSuccess(true) + .httpStatus(httpStatus) + .build() + ; + } +}