package com.mikufufu.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; import java.util.Arrays; /** * 系统角色枚举 * */ @Getter @AllArgsConstructor public enum RoleCode { /** * 超级管理员 */ ROLE_SYSTEM_ADMIN("system_admin", 1, "超级管理员"), /** * 管理员 */ ROLE_ADMIN("admin",2, "管理员"), /** * 普通用户 */ ROLE_USER("user",3, "普通用户"), /** * 游客 */ ROLE_VISITOR("visitor", 4, "游客"); /** * 角色编码 */ private final String code; /** * 角色值 */ private final Integer value; /** * 描述 */ private final String desc; /** * 根据角色编码获取枚举 * @param code 角色编码 * @return 枚举 */ public static RoleCode getRoleCodeByCode(String code) { return Arrays.stream(RoleCode.values()) .filter(role -> role.getCode().equals(code)) .findFirst() .orElse(null); } public static RoleCode getRoleCodeByValue(Integer value) { return Arrays.stream(RoleCode.values()) .filter(role -> role.getValue().equals(value)) .findFirst() .orElse(null); } }