| | |
| | | package com.ycl.jxkg.base; |
| | | |
| | | import java.util.HashMap; |
| | | |
| | | /** |
| | | * @version 3.3.0 |
| | | * @description: The type Rest response. |
| | | * Copyright (C), 2020-2024, 武汉思维跳跃科技有限公司 |
| | | * @date 2021/5/25 10:45 |
| | | */ |
| | | public class Result<T> { |
| | | private int code; |
| | | private String message; |
| | | private T response; |
| | | public class Result<T> extends HashMap<String, Object> { |
| | | |
| | | public Result() { |
| | | } |
| | | |
| | | /** |
| | | * Instantiates a new Rest response. |
| | |
| | | * @param message the message |
| | | */ |
| | | public Result(int code, String message) { |
| | | this.code = code; |
| | | this.message = message; |
| | | this.put("code", code); |
| | | this.put("message", message); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param message the message |
| | | * @param response the response |
| | | */ |
| | | public Result(int code, String message, T response) { |
| | | this.code = code; |
| | | this.message = message; |
| | | this.response = response; |
| | | public static Result response(int code, String message, Object response) { |
| | | Result restResponse = new Result(); |
| | | restResponse.put("code", code); |
| | | restResponse.put("message", message); |
| | | restResponse.put("data", response); |
| | | return restResponse; |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return the rest response |
| | | */ |
| | | public static Result fail(Integer code, String msg) { |
| | | return new Result<>(code, msg); |
| | | Result restResponse = new Result(); |
| | | restResponse.put("code", code); |
| | | restResponse.put("message", msg); |
| | | return restResponse; |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | public static Result ok() { |
| | | SystemCode systemCode = SystemCode.OK; |
| | | return new Result<>(systemCode.getCode(), systemCode.getMessage()); |
| | | Result restResponse = new Result(); |
| | | restResponse.put("code", systemCode.getCode()); |
| | | restResponse.put("message", systemCode.getMessage()); |
| | | return restResponse; |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | public static <F> Result<F> ok(F response) { |
| | | SystemCode systemCode = SystemCode.OK; |
| | | return new Result<>(systemCode.getCode(), systemCode.getMessage(), response); |
| | | Result restResponse = new Result(); |
| | | restResponse.put("code", systemCode.getCode()); |
| | | restResponse.put("message", systemCode.getMessage()); |
| | | restResponse.put("data", response); |
| | | return restResponse; |
| | | } |
| | | |
| | | /** |
| | | * Ok rest response. |
| | | * |
| | | * @return the rest response |
| | | */ |
| | | public static Result ok(String msg) { |
| | | SystemCode systemCode = SystemCode.OK; |
| | | Result restResponse = new Result(); |
| | | restResponse.put("code", systemCode.getCode()); |
| | | restResponse.put("message", msg); |
| | | return restResponse; |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return the code |
| | | */ |
| | | public int getCode() { |
| | | return code; |
| | | return (int) this.get("code"); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param code the code |
| | | */ |
| | | public void setCode(int code) { |
| | | this.code = code; |
| | | this.put("code", code); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return the message |
| | | */ |
| | | public String getMessage() { |
| | | return message; |
| | | return (String) this.get("message"); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param message the message |
| | | */ |
| | | public void setMessage(String message) { |
| | | this.message = message; |
| | | this.put("message", message); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return the response |
| | | */ |
| | | public T getResponse() { |
| | | return response; |
| | | return (T) this.get("data"); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param response the response |
| | | */ |
| | | public void setResponse(T response) { |
| | | this.response = response; |
| | | this.put("data", response); |
| | | } |
| | | |
| | | @Override |
| | | public Result<T> put(String key, Object value) { |
| | | super.put(key, value); |
| | | return this; |
| | | } |
| | | |
| | | public Result data(Object data) { |
| | | super.put("data", data); |
| | | return this; |
| | | } |
| | | |
| | | public Result total(Long total) { |
| | | super.put("total", total); |
| | | return this; |
| | | } |
| | | } |