package com.ruoyi.project.business.domain.vo.train;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.List;

/**
 * @author fangk
 * @date 2024/6/12
 * @desc FileDataVisibleRangeVo 修改文件文件可见范围 
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class FileDataVisibleRangeVo {
    
    /**
     * 文件ID
     */
    private List<Long> ids;
    
    private List<Long> directoryIds;

    /**
     * 可见范围(角色) *可以复选、以[,]分隔
     */
    @Size(max = 500, message = "编码长度不能超过500")
    @ApiModelProperty("可见范围(角色) *可以复选、以[,]分隔")
    @Length(max = 500, message = "编码长度不能超过500")
    private String visibleRange1;
    /**
     * 可见范围(区域) *可以复选、以[,]分隔
     */
    @Size(max = 500, message = "编码长度不能超过500")
    @ApiModelProperty("可见范围(区域) *可以复选、以[,]分隔")
    @Length(max = 500, message = "编码长度不能超过500")
    private String visibleRange2;
    /**
     * 可见范围(代理商) *可以复选、以[,]分隔
     */
    @Size(max = 500, message = "编码长度不能超过500")
    @ApiModelProperty("可见范围(代理商) *可以复选、以[,]分隔")
    @Length(max = 500, message = "编码长度不能超过500")
    private String visibleRange3;

    
    // private List<Long> roleIds;
    private List<String> roleKeys;
    
    private List<Long> areaIds;
    
    private Long updateBy;

    /**
     * 1: 设置文件可见范围 2: 设置目录可见范围
     */
    @ApiModelProperty("0: 设置文件可见范围 1: 设置目录可见范围")
    @NotBlank(message = "类型不能为空")
    private Integer type;
}