package cn.hobbystocks.auc.common.enums; import lombok.Getter; import org.apache.commons.lang3.StringUtils; /** * 拍卖状态 * * @author zheng */ @Getter public enum PubStatusEnum { /** * 未审核 */ UNREVIEWED(0, "未审核"), /** * 已上架 */ SHELVE_UP(1, "已上架"), /** * 已下架 */ SHELVE_DOWN(2, "已下架"); /** * 状态编码(数字值:0/1/2) */ private final int code; /** * 状态中文描述 */ private final String desc; /** * 构造方法 * @param code 状态编码(数字) * @param desc 中文描述 */ PubStatusEnum(int code, String desc) { this.code = code; this.desc = desc; } /** * 根据状态编码(数字)获取枚举对象(核心业务方法) * @param code 状态编码(0/1/2) * @return 对应的枚举对象,无效编码返回null(也可抛异常,按需调整) */ public static PubStatusEnum of(int code) { for (PubStatusEnum status : values()) { if (status.getCode() == code) { return status; } } // 若需严格校验,可抛出异常: // throw new IllegalArgumentException("无效的发布状态编码:" + code); return null; } /** * 重写toString,便于日志打印和调试 * @return 状态编码 + 中文描述(如 "0(未审核)") */ @Override public String toString() { return this.code + "(" + this.desc + ")"; } }