package com.njcn.rdms.module.system.api.permission.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Schema(description = "RPC 服务 - 对象作用域菜单 Response DTO")
@Data
public class ObjectMenuRespDTO {

    @Schema(description = "菜单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2001")
    private Long id;

    @Schema(description = "菜单名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "产品设置")
    private String name;

    @Schema(description = "权限标识", example = "project:product:update")
    private String permission;

    @Schema(description = "菜单类型；允许返回目录、菜单、按钮，业务侧可按 type 再拆分导航或按钮", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    private Integer type;

    @Schema(description = "显示排序", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Integer sort;

    @Schema(description = "路由路径", example = "/project/product/detail")
    private String path;

    @Schema(description = "菜单图标", example = "ep:box")
    private String icon;

    @Schema(description = "是否可见", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
    private Boolean visible;

}
