1.创建枚举类
@Getter
@AllArgsConstructor
@ToString
public enum ResultEnum {
SUCCESS(0, "成功"),
ERROR(-1, "服务器内部错误"),
//-1xx 服务器错误
BAD_SQL_GRAMMAR_ERROR(-101, "sql语法错误"),
SERVLET_ERROR(-102, "servlet请求异常"), //-2xx 参数校验
UPLOAD_ERROR(-103, "文件上传错误"),
EXPORT_DATA_ERROR(104, "数据导出失败"),
IMPORT_DATA_ERROR(105, "数据读入失败"),
FILE_TYPE_ERROR(106, "文件类型不正确"),
FILE_IS_EMPTY(107, "文件数据为空"),
WRITE_DATA_ERROR(108, "数据读出失败"),
NODE_NOT_EMPTY(109, "节点下还有子节点,不能删除!"),
DELETE_IS_FAIL(112, "删除失败!请检查!"),
//-2xx 参数校验
BORROW_AMOUNT_NULL_ERROR(-201, "借款额度不能为空"),
MOBILE_NULL_ERROR(-202, "手机号码不能为空"),
MOBILE_ERROR(-203, "手机号码不正确"),
PASSWORD_NULL_ERROR(204, "密码不能为空"),
CODE_NULL_ERROR(205, "验证码不能为空"),
CODE_ERROR(206, "验证码错误"),
MOBILE_EXIST_ERROR(207, "手机号已被注册"),
LOGIN_MOBILE_ERROR(208, "用户不存在"),
LOGIN_PASSWORD_ERROR(209, "密码错误"),
LOGIN_LOKED_ERROR(210, "用户被锁定"),
LOGIN_AUTH_ERROR(-211, "未登录"),
USER_BIND_IDCARD_EXIST_ERROR(-301, "身份证号码已绑定"),
USER_NO_BIND_ERROR(302, "用户未绑定"),
USER_NO_AMOUNT_ERROR(303, "用户信息未审核"),
USER_AMOUNT_LESS_ERROR(304, "您的借款额度不足"),
LEND_INVEST_ERROR(305, "当前状态无法投标"),
LEND_FULL_SCALE_ERROR(306, "已满标,无法投标"),
NOT_SUFFICIENT_FUNDS_ERROR(307, "余额不足,请充值"),
PAY_UNIFIEDORDER_ERROR(401, "统一下单错误"),
ALIYUN_SMS_LIMIT_CONTROL_ERROR(-502, "短信发送过于频繁"),//业务限流
ALIYUN_SMS_COUNT_CONTROL_ERROR(-505, "短信发送超过今日限制"),//业务限流
ALIYUN_SMS_ERROR(-503, "短信发送失败"),//其他失败
WEIXIN_CALLBACK_PARAM_ERROR(-601, "回调参数不正确"),
WEIXIN_FETCH_ACCESSTOKEN_ERROR(-602, "获取access_token失败"),
WEIXIN_FETCH_USERINFO_ERROR(-603, "获取用户信息失败")
;
private Integer code ;
private String message;
}
2.创建统一响应异常
@Data
@ApiModel("统一响应")
public class Result {
@ApiModelProperty("状态码")
private Integer code ;
@ApiModelProperty("描述")
private String message ;
@ApiModelProperty("数据")
private Map<String,Object> data = new HashMap<>();
//成功
public static Result ok(){
Result result = new Result();
result.setCode(ResultEnum.SUCCESS.getCode());
result.setMessage(ResultEnum.SUCCESS.getMessage());
return result;
}
//成功
public static Result ok(Map<String,Object> data){
Result result = new Result();
result.setCode(ResultEnum.ERROR.getCode());
result.setMessage(ResultEnum.ERROR.getMessage());
result.setData(data);
return result;
}
//失败
public static Result fail(){
Result result = new Result();
result.setCode(ResultEnum.ERROR.getCode());
result.setMessage(ResultEnum.ERROR.getMessage());
return result;
}
//失败
public static Result setResult(ResultEnum resultEnum){
Result result = new Result();
result.setCode(resultEnum.getCode());
result.setMessage(resultEnum.getMessage());
return result;
}
public Result message(String message){
this.setMessage(message);
return this;
}
public Result code(Integer code){
this.setCode(code);
return this;
}
public Result data(String key,Object value){
this.data.put(key,value);
return this ;
}
}