package cn.iocoder.yudao.module.archives.entity;

import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 档案权限表
 * @author 小李
 * @date 8:50 2024/8/28
**/
@TableName(value ="company_archives_role")
@Data
@EqualsAndHashCode(callSuper = true)
public class ArchivesRole extends TenantBaseDO {
    /**
     * 主键标识
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 字典类型（system_dict_type的dict_type）
     */
    private String dictType;

    /**
     * 字典值ID（system_dict_data的id）
     */
    private Long dataId;

    /**
     * 角色ID（system_role的ID，用于分辨用户是否有权限查看）
     */
    private String queryRoleIds;

    /**
     * 角色ID（system_role的ID，用于分辨用户是否有权限修改）
     */
    private String updateRoleIds;

    /**
     * 角色ID（system_role的ID，用于分辨用户是否有权限新增）
     */
    private String createRoleIds;

    /**
     * 角色ID（system_role的ID，用于分辨用户是否有权限删除）
     */
    private String deleteRoleIds;

    /**
     * 角色ID（system_role的ID，用于分辨用户是否有权限下载）
     */
    private String downloadRoleIds;

    /**
     * 部门id
     */
    private String deptId;

    /** 字典值 档案名称 */
    @TableField(exist = false)
    private String dictLabel;

    /** 用户是否可以新增档案 */
    @TableField(exist = false)
    private Boolean isCreated;

    /** 用户是否可以修改档案 */
    @TableField(exist = false)
    private Boolean isUpdated;

    /** 用户是否可以删除档案 */
    @TableField(exist = false)
    private Boolean isDeleted;

    /** 用户是否可以下载档案 */
    @TableField(exist = false)
    private Boolean isDownload;
}