package com.ruoyi.system.api.domain; import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.common.core.annotation.Excel; import com.ruoyi.common.core.annotation.Excel.ColumnType; import com.ruoyi.common.core.web.domain.BaseEntity; import io.swagger.annotations.ApiModelProperty; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import javax.validation.constraints.NotBlank; import javax.validation.constraints.Size; import java.util.List; import java.util.Set; /** * 角色表 sys_role * * @author ruoyi */ public class SysRole extends BaseEntity { private static final long serialVersionUID = 1L; /** 角色ID */ @Excel(name = "角色序号", cellType = ColumnType.NUMERIC) @TableField("role_id") private Long roleId; /** 角色名称 */ @Excel(name = "角色名称") @TableField("role_name") private String roleName; /** 角色权限 */ @Excel(name = "角色权限") @TableField("role_key") private String roleKey; /** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */ @Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限") @TableField("data_scope") private String dataScope; /** 角色状态(0正常 1停用) */ @Excel(name = "角色状态", readConverterExp = "0=正常,1=停用") private String status; /** * 门店id */ @TableField("shop_id") private Integer shopId; /** 删除标志(0代表存在 2代表删除) */ @TableField("del_flag") private String delFlag; /** 用户是否存在此角色标识 默认不存在 */ @TableField(exist = false) private boolean flag = false; /** 菜单组 */ @TableField(exist = false) private Long[] menuIds; /** 部门组(数据权限) */ @TableField(exist = false) private Long[] deptIds; /** 角色菜单权限 */ @TableField(exist = false) private Set permissions; @ApiModelProperty(value = "站点名称") @TableField(exist = false) private List siteNames; @TableField(exist = false) private Long number; public SysRole() { } public SysRole(Long roleId) { this.roleId = roleId; } public Long getRoleId() { return roleId; } public void setRoleId(Long roleId) { this.roleId = roleId; } public boolean isAdmin() { return isAdmin(this.roleId); } public static boolean isAdmin(Long roleId) { return roleId != null && 1L == roleId; } @NotBlank(message = "角色名称不能为空") @Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符") public String getRoleName() { return roleName; } public void setRoleName(String roleName) { this.roleName = roleName; } @NotBlank(message = "权限字符不能为空") @Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符") public String getRoleKey() { return roleKey; } public void setRoleKey(String roleKey) { this.roleKey = roleKey; } public String getDataScope() { return dataScope; } public void setDataScope(String dataScope) { this.dataScope = dataScope; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getDelFlag() { return delFlag; } public void setDelFlag(String delFlag) { this.delFlag = delFlag; } public boolean isFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; } public Long[] getMenuIds() { return menuIds; } public void setMenuIds(Long[] menuIds) { this.menuIds = menuIds; } public Long[] getDeptIds() { return deptIds; } public void setDeptIds(Long[] deptIds) { this.deptIds = deptIds; } public Set getPermissions() { return permissions; } public void setPermissions(Set permissions) { this.permissions = permissions; } public List getSiteNames() { return siteNames; } public void setSiteNames(List siteNames) { this.siteNames = siteNames; } public Long getNumber() { return number; } public void setNumber(Long number) { this.number = number; } public Integer getShopId() { return shopId; } public void setShopId(Integer shopId) { this.shopId = shopId; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("roleId", getRoleId()) .append("roleName", getRoleName()) .append("roleKey", getRoleKey()) .append("dataScope", getDataScope()) .append("status", getStatus()) .append("delFlag", getDelFlag()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) .append("remark", getRemark()) .toString(); } }