package itn.let.mail.service;

import java.time.LocalDateTime;

import org.springframework.http.HttpStatus;

import itn.let.mjo.pay.service.RefundVO;

/**
 * 
 * @packageName : itn.let.mail.service 
 * @fileName 	: SuccessResponse.java 
 * @author 		: 이호영 
 * @date 		: 2022.07.04
 * @description : RestApi 응답에 사용할 Class
 * @TODO : CLASS 위치를 다시 잡아서 사용해야함
 * =========================================================== 
 * DATE          AUTHOR   NOTE 
 * ----------------------------------------------------------- *
 * 2022.07.04    이호영      최초 생성
 * 
 * 
 * 
 */
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 HttpStatus getStatus() {
		return status;
	}

	public void setStatus(HttpStatus status) {
		this.status = status;
	}

	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}

	public String getMessageTemp() {
		return messageTemp;
	}

	public void setMessageTemp(String messageTemp) {
		this.messageTemp = messageTemp;
	}

	public RefundVO getRefundVO() {
		return refundVO;
	}

	public void setRefundVO(RefundVO refundVO) {
		this.refundVO = refundVO;
	}

	public Object getObject() {
		return object;
	}

	public void setObject(Object object) {
		this.object = object;
	}

	public LocalDateTime getTimestamp() {
		return timestamp;
	}

	public void setTimestamp(LocalDateTime timestamp) {
		this.timestamp = timestamp;
	}
}
