package org.ruoyi.system.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.ruoyi.common.core.constant.UserConstants; import org.ruoyi.common.excel.annotation.ExcelDictFormat; import org.ruoyi.common.excel.convert.ExcelDictConvert; import org.ruoyi.system.domain.SysRole; import java.io.Serial; import java.io.Serializable; import java.util.Date; /** * 角色信息视图对象 sys_role * * @author Michelle.Chung */ @Data @ExcelIgnoreUnannotated @AutoMapper(target = SysRole.class) public class SysRoleVo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** * 角色ID */ @ExcelProperty(value = "角色序号") private Long roleId; /** * 角色名称 */ @ExcelProperty(value = "角色名称") private String roleName; /** * 角色权限字符串 */ @ExcelProperty(value = "角色权限") private String roleKey; /** * 显示顺序 */ @ExcelProperty(value = "角色排序") private Integer roleSort; /** * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) */ @ExcelProperty(value = "数据范围", converter = ExcelDictConvert.class) @ExcelDictFormat(readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限") private String dataScope; /** * 菜单树选择项是否关联显示 */ @ExcelProperty(value = "菜单树选择项是否关联显示") private Boolean menuCheckStrictly; /** * 部门树选择项是否关联显示 */ @ExcelProperty(value = "部门树选择项是否关联显示") private Boolean deptCheckStrictly; /** * 角色状态(0正常 1停用) */ @ExcelProperty(value = "角色状态", converter = ExcelDictConvert.class) @ExcelDictFormat(dictType = "sys_normal_disable") private String status; /** * 备注 */ @ExcelProperty(value = "备注") private String remark; /** * 创建时间 */ @ExcelProperty(value = "创建时间") private Date createTime; /** * 用户是否存在此角色标识 默认不存在 */ private boolean flag = false; public boolean isSuperAdmin() { return UserConstants.SUPER_ADMIN_ID.equals(this.roleId); } }