package shop.alien.entity.store.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * 角色权限VO（用于展示权限层级结构）
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@JsonInclude
@ApiModel(value = "RolePermissionVo对象", description = "角色权限VO（用于展示权限层级结构）")
public class RolePermissionVo {

    @ApiModelProperty(value = "菜单ID")
    private Long menuId;

    @ApiModelProperty(value = "菜单名称")
    private String menuName;

    @ApiModelProperty(value = "父菜单ID")
    private Long parentId;

    @ApiModelProperty(value = "菜单层级（1一级菜单 2二级菜单 3三级菜单）")
    private Integer level;

    @ApiModelProperty(value = "菜单类型（M目录 C菜单 F按钮）")
    private String menuType;

    @ApiModelProperty(value = "显示顺序")
    private Integer menuSort;

    @ApiModelProperty(value = "权限标识")
    private String perms;

    @ApiModelProperty(value = "子权限列表")
    private List<RolePermissionVo> children;
}

