| | |
| | | package com.ots.project.exam.dto; |
| | | |
| | | import com.ots.common.enums.ResponseCode; |
| | | import com.ots.common.enums.SystemCode; |
| | | import com.ots.project.common.exception.BaseException; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.dao.DuplicateKeyException; |
| | | |
| | | /** |
| | | * @author Shawn |
| | | */ |
| | | @Slf4j |
| | | public class RestResponse<T> { |
| | | private int code; |
| | | private String message; |
| | | private T response; |
| | | |
| | | public RestResponse(int code, String message) { |
| | | this.code = code; |
| | | this.message = message; |
| | | } |
| | | |
| | | public RestResponse(int code, String message, T response) { |
| | | this.code = code; |
| | | this.message = message; |
| | | this.response = response; |
| | | } |
| | | |
| | | public static RestResponse fail(Integer code, String msg) { |
| | | return new RestResponse<>(code, msg); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 增加错误编码统一处理 |
| | | * |
| | | * @param enumCode |
| | | * @return |
| | | */ |
| | | public static RestResponse fail(ResponseCode enumCode) { |
| | | return new RestResponse<>(enumCode.getCode(), enumCode.getMessage()); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 异常结合枚举方便异常统一处理 |
| | | * |
| | | * @param e |
| | | * @return |
| | | */ |
| | | public static RestResponse fail(Exception e) { |
| | | if (e instanceof BaseException) { |
| | | BaseException e1 = (BaseException) e; |
| | |
| | | return new RestResponse<>(999, e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | public static RestResponse ok() { |
| | | SystemCode systemCode = SystemCode.OK; |
| | | return new RestResponse<>(systemCode.getCode(), systemCode.getMessage()); |
| | | } |
| | | |
| | | public static <F> RestResponse<F> ok(F response) { |
| | | SystemCode systemCode = SystemCode.OK; |
| | | return new RestResponse<>(systemCode.getCode(), systemCode.getMessage(), response); |
| | | } |
| | | |
| | | public int getCode() { |
| | | return code; |
| | | } |
| | | |
| | | public void setCode(int code) { |
| | | this.code = code; |
| | | } |
| | | |
| | | public String getMessage() { |
| | | return message; |
| | | } |
| | | |
| | | public void setMessage(String message) { |
| | | this.message = message; |
| | | } |
| | | |
| | | public T getResponse() { |
| | | return response; |
| | | } |
| | | |
| | | public void setResponse(T response) { |
| | | this.response = response; |
| | | } |