mirror of
https://gitee.com/lab1024/smart-admin.git
synced 2025-09-17 19:06:39 +08:00
【工具类】增加错误码工具类 1.可根据code查询msg 2.可打印所有错误码及其说明
This commit is contained in:
parent
17a3e1fd86
commit
2c907dd5c5
@ -26,6 +26,11 @@ public enum UnexpectedErrorCode implements ErrorCode {
|
|||||||
*/
|
*/
|
||||||
PAY_ORDER_ID_ERROR(20002, "付款单id发生了异常,请联系技术人员排查"),
|
PAY_ORDER_ID_ERROR(20002, "付款单id发生了异常,请联系技术人员排查"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 错误码错误
|
||||||
|
*/
|
||||||
|
UNKNOWN_ERROR_CODE(20004, "错误码竟然没有找到,请联系技术人员排查"),
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
private final int code;
|
private final int code;
|
||||||
|
@ -0,0 +1,97 @@
|
|||||||
|
package net.lab1024.sa.base.common.util;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import net.lab1024.sa.base.common.code.ErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.SystemErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.UnexpectedErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.UserErrorCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 错误码工具类
|
||||||
|
*
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @version 1.0
|
||||||
|
* @since 2024/10/25
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
public class SmartErrorCodeUtils {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 默认的 ErrorCode 枚举类数组
|
||||||
|
*
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
private static final Class<? extends ErrorCode>[] DEFAULT_ERROR_CODE_ENUMS = new Class[]{
|
||||||
|
UserErrorCode.class,
|
||||||
|
SystemErrorCode.class,
|
||||||
|
UnexpectedErrorCode.class
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据指定的错误码查找,使用默认的 errorCodeEnums
|
||||||
|
*
|
||||||
|
* @param code
|
||||||
|
* @return net.lab1024.sa.base.common.code.ErrorCode
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
public static ErrorCode findErrorCodeByCode(int code) {
|
||||||
|
return findErrorCodeByCode(code, DEFAULT_ERROR_CODE_ENUMS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据指定的错误码查找,使用传入的 errorCodeEnums
|
||||||
|
*
|
||||||
|
* @param code
|
||||||
|
* @param errorCodeEnums
|
||||||
|
* @return net.lab1024.sa.base.common.code.ErrorCode
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
@SafeVarargs
|
||||||
|
public static ErrorCode findErrorCodeByCode(int code, Class<? extends ErrorCode>... errorCodeEnums) {
|
||||||
|
for (Class<? extends ErrorCode> errorCodeEnum : errorCodeEnums) {
|
||||||
|
for (ErrorCode errorCode : errorCodeEnum.getEnumConstants()) {
|
||||||
|
if (errorCode.getCode() == code) {
|
||||||
|
return errorCode;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 未找到对应的错误码
|
||||||
|
return UnexpectedErrorCode.UNKNOWN_ERROR_CODE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打印所有默认的 errorCodeEnums 中的错误码
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
public static void printAllErrorCodes() {
|
||||||
|
printAllErrorCodes(DEFAULT_ERROR_CODE_ENUMS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打印指定的 errorCodeEnums 中的错误码
|
||||||
|
*
|
||||||
|
* @param errorCodeEnums
|
||||||
|
* @return void
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
@SafeVarargs
|
||||||
|
public static void printAllErrorCodes(Class<? extends ErrorCode>... errorCodeEnums) {
|
||||||
|
log.info("All Error Codes:");
|
||||||
|
for (Class<? extends ErrorCode> errorCodeEnum : errorCodeEnums) {
|
||||||
|
log.info("Error Codes in {}:", errorCodeEnum.getSimpleName());
|
||||||
|
for (ErrorCode errorCode : errorCodeEnum.getEnumConstants()) {
|
||||||
|
log.info("Code: {}, Message: {}", errorCode.getCode(), errorCode.getMsg());
|
||||||
|
}
|
||||||
|
// 空行分隔每个枚举类的输出
|
||||||
|
log.info("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -26,6 +26,11 @@ public enum UnexpectedErrorCode implements ErrorCode {
|
|||||||
*/
|
*/
|
||||||
PAY_ORDER_ID_ERROR(20002, "付款单id发生了异常,请联系技术人员排查"),
|
PAY_ORDER_ID_ERROR(20002, "付款单id发生了异常,请联系技术人员排查"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 错误码错误
|
||||||
|
*/
|
||||||
|
UNKNOWN_ERROR_CODE(20004, "错误码竟然没有找到,请联系技术人员排查"),
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
private final int code;
|
private final int code;
|
||||||
|
@ -0,0 +1,97 @@
|
|||||||
|
package net.lab1024.sa.base.common.util;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import net.lab1024.sa.base.common.code.ErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.SystemErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.UnexpectedErrorCode;
|
||||||
|
import net.lab1024.sa.base.common.code.UserErrorCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 错误码工具类
|
||||||
|
*
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @version 1.0
|
||||||
|
* @since 2024/10/25
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
public class SmartErrorCodeUtils {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 默认的 ErrorCode 枚举类数组
|
||||||
|
*
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
private static final Class<? extends ErrorCode>[] DEFAULT_ERROR_CODE_ENUMS = new Class[]{
|
||||||
|
UserErrorCode.class,
|
||||||
|
SystemErrorCode.class,
|
||||||
|
UnexpectedErrorCode.class
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据指定的错误码查找,使用默认的 errorCodeEnums
|
||||||
|
*
|
||||||
|
* @param code
|
||||||
|
* @return net.lab1024.sa.base.common.code.ErrorCode
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
public static ErrorCode findErrorCodeByCode(int code) {
|
||||||
|
return findErrorCodeByCode(code, DEFAULT_ERROR_CODE_ENUMS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据指定的错误码查找,使用传入的 errorCodeEnums
|
||||||
|
*
|
||||||
|
* @param code
|
||||||
|
* @param errorCodeEnums
|
||||||
|
* @return net.lab1024.sa.base.common.code.ErrorCode
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
@SafeVarargs
|
||||||
|
public static ErrorCode findErrorCodeByCode(int code, Class<? extends ErrorCode>... errorCodeEnums) {
|
||||||
|
for (Class<? extends ErrorCode> errorCodeEnum : errorCodeEnums) {
|
||||||
|
for (ErrorCode errorCode : errorCodeEnum.getEnumConstants()) {
|
||||||
|
if (errorCode.getCode() == code) {
|
||||||
|
return errorCode;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 未找到对应的错误码
|
||||||
|
return UnexpectedErrorCode.UNKNOWN_ERROR_CODE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打印所有默认的 errorCodeEnums 中的错误码
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
public static void printAllErrorCodes() {
|
||||||
|
printAllErrorCodes(DEFAULT_ERROR_CODE_ENUMS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打印指定的 errorCodeEnums 中的错误码
|
||||||
|
*
|
||||||
|
* @param errorCodeEnums
|
||||||
|
* @return void
|
||||||
|
* @author zhaoshuo
|
||||||
|
* @since 2024/10/25
|
||||||
|
**/
|
||||||
|
@SafeVarargs
|
||||||
|
public static void printAllErrorCodes(Class<? extends ErrorCode>... errorCodeEnums) {
|
||||||
|
log.info("All Error Codes:");
|
||||||
|
for (Class<? extends ErrorCode> errorCodeEnum : errorCodeEnums) {
|
||||||
|
log.info("Error Codes in {}:", errorCodeEnum.getSimpleName());
|
||||||
|
for (ErrorCode errorCode : errorCodeEnum.getEnumConstants()) {
|
||||||
|
log.info("Code: {}, Message: {}", errorCode.getCode(), errorCode.getMsg());
|
||||||
|
}
|
||||||
|
// 空行分隔每个枚举类的输出
|
||||||
|
log.info("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user