当后端定义的枚举 需要通过接口返回给前端时,前端需要拿到枚举中定义的所有属性时,可以在枚举上增加 

@JSONType(serializeEnumAsJavaBean = true)注解,来实现

package gienbi.core.base.enums;

import com.alibaba.fastjson.annotation.JSONType;
import gienbi.core.common.MessageResolver;
import lombok.Getter;

/**
 * 行权限 用户属性枚举
 *
 * @author xiashisong
 * @date 2024/05/09
 */
@Getter
@JSONType(serializeEnumAsJavaBean = true)
public enum RowPermissionsUserAttrEnum {

    /**
     * 用户ID
     */
    USER_ID(MessageResolver.getMessages("message.user.context.user_id"), "USER_ID"),

    /**
     * 用户名
     */
    USER_NAME(MessageResolver.getMessages("message.user.context.user_name"), "USER_NAME"),

    /**
     * 用户所属部门编码
     */
    DEPT_CODE(MessageResolver.getMessages("message.user.context.dept_code"), "DEPT_CODE"),

    /**
     * 用户所属部门名称
     */
    DEPT_NAME(MessageResolver.getMessages("message.user.context.dept_name"), "DEPT_NAME"),

    /**
     * 角色代码
     */
    ROLE_ID(MessageResolver.getMessages("message.user.context.role_id"), "ROLE_ID"),

    /**
     * 角色名称
     */
    ROLE_NAME(MessageResolver.getMessages("message.user.context.role_name"), "ROLE_NAME");

    private final String name;

    private final String value;

    RowPermissionsUserAttrEnum(String name, String value) {
        this.name = name;
        this.value = value;
    }
}

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐