package com.mosty.common.base.constant.enums;

import lombok.AllArgsConstructor;

/**
 *  菜单类型枚举
 * @author kevin
 * @date 2022/2/22 12:53 PM
 * @since 1.0.0
 */
@AllArgsConstructor
public enum MenuTypeEnum {

    MENU_GROUP(1, "菜单组"),
    MENU(2, "菜单"),
    PAGE(3, "页面"),
    RESOURCE(4, "资源"),
    ;

    /** 编码 */
    public final Integer code;

    /** 描述 */
    public final String desc;

    /**
     * 根据编码匹配菜单类型
     * @param code 编码
     * @return 菜单类型枚举
     */
    public static MenuTypeEnum valueOf(Integer code) {
        if (code == null) {
            return null;
        }
        for (MenuTypeEnum menuTypeEnum : MenuTypeEnum.values()) {
            if (menuTypeEnum.code.equals(code)) {
                return menuTypeEnum;
            }
        }
        return null;
    }

}
