BaseApiService.java
import com.baizhi.api.constants.PageConstants;
import com.baizhi.api.constants.BaseApiConstants;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.session.RowBounds;
import java.util.HashMap;
import java.util.Map;
/**
* 类描述信息 (通用BaseApi 父类)
*
* @author : buxiaoyu
* @date : 2019-07-10 15:13
* @version: V_1.0.0
*/
public class BaseApiService {
/**
* 方法描述: (返回成功)
* @author buxiaoyu
* @date 2019-07-10
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultSuccess() {
return setResult(BaseApiConstants.HTTP_RES_CODE_200, BaseApiConstants.HTTP_RES_CODE_200_VALUE, null);
}
/**
* 方法描述: (返回成功,有参数)
* @author buxiaoyu
* @date 2019-07-10
* @param msg
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultSuccess(String msg) {
return setResult(BaseApiConstants.HTTP_RES_CODE_200, msg, null);
}
/**
* 方法描述: (返回成功,有参数,有数据)
* @author buxiaoyu
* @date 2019-07-10
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultSuccessData(Object data) {
return setResult(BaseApiConstants.HTTP_RES_CODE_200, BaseApiConstants.HTTP_RES_CODE_200_VALUE, data);
}
/**
* 方法描述: (返回失败)
* @author buxiaoyu
* @date 2019-07-10
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultError() {
return setResult(BaseApiConstants.HTTP_RES_CODE_500, BaseApiConstants.HTTP_RES_CODE_500_VALUE, null);
}
/**
* 方法描述: (返回失败,有参数)
* @author buxiaoyu
* @date 2019-07-10
* @param msg
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultError(String msg) {
return setResult(BaseApiConstants.HTTP_RES_CODE_500, msg, null);
}
/**
* 方法描述: (参数错误)
* @author buxiaoyu
* @date 2019-07-10
* @param msg
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResultParamterError(String msg) {
return setResult(BaseApiConstants.HTTP_RES_CODE_400, msg, null);
}
public Map<String, Object> setResultSuccessDataByPage(Object data,Integer page,Integer total,Integer records) {
return setResult(BaseApiConstants.HTTP_RES_CODE_200, BaseApiConstants.HTTP_RES_CODE_200_VALUE, data,page,total,records);
}
/**
* 方法描述: (自定义返回 )
* @author buxiaoyu
* @date 2019-07-10
* @param code
* @param msg
* @param data
* @return java.util.Map<java.lang.String, java.lang.Object>
* @version V_1.0.0
*/
public Map<String, Object> setResult(Integer code, String msg, Object data) {
HashMap<String, Object> result = new HashMap<>();
result.put(BaseApiConstants.HTTP_RES_CODE_NAME, code);
result.put(BaseApiConstants.HTTP_RES_CODE_MSG, msg);
if (data != null)
result.put(BaseApiConstants.HTTP_RES_CODE_DATA, data);
return result;
}
/**
* 方法描述: (自定义返回 根据分页查询结果)
* @param code 状态码
* @param msg 携带信息
* @param data 数据
* @param page 当前页码
* @param total 总页数
* @param records 总条数
* @return java.util.Map<java.lang.String, java.lang.Object>
*/
public Map<String, Object> setResult(Integer code, String msg, Object data,Integer page,Integer total,Integer records) {
HashMap<String, Object> result = new HashMap<>();
result.put(BaseApiConstants.HTTP_RES_CODE_NAME, code);
result.put(BaseApiConstants.HTTP_RES_CODE_MSG, msg);
result.put(PageConstants.PAGE_PAGE_PAGE,page);
result.put(PageConstants.PAGE_PAGE_TOTAL,total);
result.put(PageConstants.PAGE_PAGE_RECORDS,records);
if (data != null)
result.put(PageConstants.PAGE_PAGE_ROWS, data);
return result;
}
/**
* 方法描述: (封装分页查询RowBounds)
* @param page
* @param size
* @return org.apache.ibatis.session.RowBounds
*/
public RowBounds getRowBounds(Integer page, Integer size) {
if (page == null || page == 0){
page = 1;
}
Integer offset = (page - 1) * size;
return new RowBounds(offset,size);
}
/**
* 方法描述: (封装Controller中的check()方法)
* @param i Service 查询/修改/添加/删除 到的结果数量
* @param id 操作对象的ID
* @return java.util.Map<java.lang.String, java.lang.Object>
*/
public Map<String, Object> setCheck(Integer i,String id){
if (i != 0){
return setResultSuccessData(id);
}
return setResultError("操作编号为: "+id+" 失败");
}
}
BaseApiContants.java
/**
* 接口描述信息 (Base Api 常量)
*
* @author : buxiaoyu
* @date : 2019-07-10 15:32
* @version: V_1.0.0
*/
public interface BaseApiConstants {
//响应code
String HTTP_RES_CODE_NAME = "code";
//响应msg
String HTTP_RES_CODE_MSG = "msg";
//响应date
String HTTP_RES_CODE_DATA = "data";
//响应请求成功code
Integer HTTP_RES_CODE_200 = 200;
//响应请求成功信息
String HTTP_RES_CODE_200_VALUE = "success";
//系统错误信息
Integer HTTP_RES_CODE_500 = 500;
//系统错误code
String HTTP_RES_CODE_500_VALUE = "error";
//参数错误
Integer HTTP_RES_CODE_400 = 400;
}
还有这样的
public class RespBean {
private Integer status;
private String msg;
private Object obj;
public static RespBean build() {
return new RespBean();
}
public static RespBean ok(String msg) {
return new RespBean(-1, msg, null);
}
public static RespBean ok(String msg, Object obj) {
return new RespBean(-1, msg, obj);
}
public static RespBean error(String msg) {
return new RespBean(0, msg, null);
}
public static RespBean error(String msg, Object obj) {
return new RespBean(0, msg, obj);
}
private RespBean() {
}
private RespBean(Integer status, String msg, Object obj) {
this.status = status;
this.msg = msg;
this.obj = obj;
}
public Integer getStatus() {
return status;
}
public RespBean setStatus(Integer status) {
this.status = status;
return this;
}
public String getMsg() {
return msg;
}
public RespBean setMsg(String msg) {
this.msg = msg;
return this;
}
public Object getObj() {
return obj;
}
public RespBean setObj(Object obj) {
this.obj = obj;
return this;
}
}