|
|
@ -0,0 +1,79 @@ |
|
|
|
|
|
package com.example.gb.util; |
|
|
|
|
|
|
|
|
|
|
|
import com.fasterxml.jackson.core.JsonProcessingException; |
|
|
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper; |
|
|
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
|
import lombok.Data; |
|
|
|
|
|
import lombok.NoArgsConstructor; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import java.io.Serializable; |
|
|
|
|
|
import java.util.HashMap; |
|
|
|
|
|
|
|
|
|
|
|
@Data |
|
|
|
|
|
@NoArgsConstructor |
|
|
|
|
|
@AllArgsConstructor |
|
|
|
|
|
public class Result implements Serializable { |
|
|
|
|
|
private static final long serialVersionUID = 1L; |
|
|
|
|
|
private Integer code; // 响应码,200 代表成功;401 代表未授权 |
|
|
|
|
|
private String msg; // 响应消息 |
|
|
|
|
|
private Object data; // 返回的数据 |
|
|
|
|
|
|
|
|
|
|
|
// 成功响应(不需要给前端返回数据) |
|
|
|
|
|
public static Result success() { |
|
|
|
|
|
return new Result(200, "success", new HashMap<>()); |
|
|
|
|
|
} |
|
|
|
|
|
//登录返回token使用 |
|
|
|
|
|
public static Result success(String token,Object data) { |
|
|
|
|
|
return new Result(200, token, data); |
|
|
|
|
|
} |
|
|
|
|
|
// 查询成功响应(把查询结果作为返回数据响应给前端) |
|
|
|
|
|
public static Result success(Object data) { |
|
|
|
|
|
return new Result(200, "success", data); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 失败响应 |
|
|
|
|
|
public static Result error(String msg) { |
|
|
|
|
|
return new Result(0, msg, new HashMap<>()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 失败响应,可以自定义错误码 |
|
|
|
|
|
public static Result error(int code, String msg) { |
|
|
|
|
|
return new Result(code, msg, new HashMap<>()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 成功响应,可以自定义消息和数据 |
|
|
|
|
|
public static Result success(String msg, HashMap<String, Object> resultData) { |
|
|
|
|
|
return new Result(200, msg, resultData); // 返回成功响应,状态码为 200 |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 未授权响应,可以自定义错误码 |
|
|
|
|
|
public static Result unauthorized(int code, String msg) { |
|
|
|
|
|
return new Result(code, msg, new HashMap<>()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 错误响应,状态码为200,code为401 |
|
|
|
|
|
public static Result unauthorized(String msg) { |
|
|
|
|
|
return new Result(401, msg, new HashMap<>()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//失败响应 自定义状态码 默认为500 |
|
|
|
|
|
public static Result error(BusinessException e) { |
|
|
|
|
|
Result response = new Result(); |
|
|
|
|
|
// 定义默认错误码映射 |
|
|
|
|
|
final int defaultErrorCode = 400; |
|
|
|
|
|
// 检查 getCode() 是否为 null(如果是 Integer) |
|
|
|
|
|
Integer code = e.getCode(); |
|
|
|
|
|
if (code == null || code == 0) { |
|
|
|
|
|
response.setCode(defaultErrorCode); // 默认错误码 |
|
|
|
|
|
} else { |
|
|
|
|
|
response.setCode(code); |
|
|
|
|
|
} |
|
|
|
|
|
response.setMsg(e.getMessage()); |
|
|
|
|
|
return response; |
|
|
|
|
|
} |
|
|
|
|
|
public String toJson() throws JsonProcessingException { |
|
|
|
|
|
ObjectMapper mapper = new ObjectMapper(); |
|
|
|
|
|
return mapper.writeValueAsString(this); |
|
|
|
|
|
} |
|
|
|
|
|
} |