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

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

import java.util.Set;

/**
 * 用户可见性配置（通道 3）跨模块响应 DTO。
 *
 * directions 类型已由 API 端把 directionId → directionCode 转换好；业务侧不用再 join system_dept。
 * projects 类型字段保留，当前业务不消费。
 */
@Schema(description = "RPC 服务 - 用户可见性配置 Response DTO")
@Data
public class UserVisibilityConfigRespDTO {

    @Schema(description = "\"all\" / \"directions\" / \"projects\"", example = "all")
    private String type;

    @ArraySchema(schema = @Schema(description = "type=directions 时为方向 code 集合（API 端已转换）", example = "direction_code_1"))
    private Set<String> directionCodes;

    @ArraySchema(schema = @Schema(description = "type=projects 时为项目 id 集合（保留位，当前业务不消费）", example = "1"))
    private Set<Long> projectIds;
}
