package itn.let.mail.service; import java.time.LocalDateTime; import org.springframework.http.HttpStatus; import itn.let.mjo.pay.service.RefundVO; import lombok.Builder; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; /** * * @packageName : itn.let.mail.service * @fileName : SuccessResponse.java * @author : 이호영 * @date : 2022.07.04 * @description : RestApi 응답에 사용할 Class * @TODO : CLASS 위치를 다시 잡아서 사용해야함 * =========================================================== * DATE AUTHOR NOTE * ----------------------------------------------------------- * * 2022.07.04 이호영 최초 생성 * * * */ /* * • 1XX : 조건부 응답 * • 2XX : 성공 * • 3XX : 리다이렉션 완료 * • 4XX : 요청 오류 * • 500 : 서버 오류 * * 참고 : https://km0830.tistory.com/33 * * ====== 자주 사용하는 코드 ===== * 200 : Ok : 서버가 클라이언트의 요청을 성공적으로 처리, 웹 페이지에서는 페이지 요청이 정상적으로 완료 (Ok) * 400 : Bad Request : 잘못 요청 (Bad Request) * 401 : Unauthorized : 권한 없음, 예를 들면, 로그인 페이지가 필요한 페이지를 로그인 없이 접속하려는 경우 반환되는 코드 (인증 실패) (Unauthorized) * * */ @Getter @Setter @NoArgsConstructor public class StatusResponse { private HttpStatus status; private String message; private RefundVO refundVO; private Object object; private String messageTemp; private LocalDateTime timestamp; public StatusResponse(HttpStatus status, RefundVO refundVO, LocalDateTime timestamp) { this.status = status; this.refundVO = refundVO; this.timestamp = timestamp; } public StatusResponse(HttpStatus status, Object object, LocalDateTime timestamp) { this.status = status; this.object = object; this.timestamp = timestamp; } public StatusResponse(HttpStatus status, String message, LocalDateTime timestamp) { this.status = status; this.message = message; this.timestamp = timestamp; } public StatusResponse(HttpStatus status, String message, String messageTemp, LocalDateTime timestamp) { this.status = status; this.message = message; this.timestamp = timestamp; this.messageTemp = messageTemp; } public StatusResponse(HttpStatus status, String message) { this.status = status; this.message = message; } public StatusResponse(HttpStatus status, String message, Object object) { this.status = status; this.message = message; this.object = object; } }