Files
as-daycard-openapi/src/main/java/io/as/common/utils/R.java

100 lines
2.0 KiB
Java
Raw Normal View History

package io.as.common.utils;
import org.apache.http.HttpStatus;
import java.util.HashMap;
import java.util.Map;
/**
* 返回数据
*
* @author Mark sunlightcs@gmail.com
*/
public class R extends HashMap<String, Object> {
private static final long serialVersionUID = 1L;
public R() {
put("code", 0);
put("msg", "success");
}
public static R error() {
return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, "未知异常,请联系管理员");
}
public static R error(String msg) {
return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, msg);
}
public static R error(int code, String msg) {
R r = new R();
r.put("code", code);
r.put("msg", msg);
return r;
}
public static R ok(String msg) {
R r = new R();
r.put("msg", msg);
return r;
}
public static R ok(Map<String, Object> map) {
R r = new R();
r.putAll(map);
return r;
}
public static R ok() {
return new R();
}
/**
* App 等统一响应:成功时 {@code { "code": 200, "msg": "", "data": {...} }}
*/
public static R dataOk() {
return dataOk(new HashMap<String, Object>());
}
/**
* App 等统一响应:成功时 payload 放在 {@code data} 内。
*/
public static R dataOk(Map<String, Object> data) {
R r = new R();
r.clear();
r.put("code", 200);
r.put("msg", "");
r.put("data", data != null ? data : new HashMap<String, Object>());
return r;
}
/**
* 统一响应(code 为 0):成功时 {@code { "code": 0, "msg": "", "data": {...} }}
*/
public static R dataSuccess(Map<String, Object> data) {
R r = new R();
r.clear();
r.put("code", 0);
r.put("msg", "");
r.put("data", data != null ? data : new HashMap<String, Object>());
return r;
}
/**
* App 等统一响应:失败时 {@code { "code": code, "msg": msg, "data": {} }}
*/
public static R dataError(int code, String msg) {
R r = new R();
r.clear();
r.put("code", code);
r.put("msg", msg != null ? msg : "");
r.put("data", new HashMap<String, Object>());
return r;
}
public R put(String key, Object value) {
super.put(key, value);
return this;
}
}