package com.zsc.edu.gateway.modules.system.dto;

import com.zsc.edu.gateway.modules.system.entity.Menu;
import jakarta.validation.constraints.NotBlank;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author zhuang
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class MenuDto {
    /**
     * 父菜单ID
     */
    private Long pid = null;
    /**
     * 菜单类型
     */
    private Menu.Type type;
    /**
     * 名称
     */
    @NotBlank(message = "名字不能为空")
    private String name;
    /**
     * 路径
     */
    private String path;
    /**
     * 应用区域
     */
    private String locale;
    /**
     * 标注
     */
    private String icon;
    /**
     * 是否需要认证
     */
    private Boolean requiresAuth;
    /**
     * 是否隐藏
     */
    private Boolean hideInMenu;
    /**
     * 菜单排序
     */
    private Integer menuOrder;
    /**
     * 权限
     */
    @NotBlank(message = "权限不能为空")
    private String permissions;
}
