@bropen.toolkit.annotation.DomainEquals(compareMap = true, includes = "role, permission") class PermissionRole extends Object
权限和角色的关联表
| Type | Name and description |
|---|---|
static Object |
constraints |
static Object |
mapping |
Permission |
permission |
Role |
role |
| Type | Name and description |
|---|---|
static Boolean |
exists(Long roleId, Long permissionId)检查角色与权限是否有关联 |
static PermissionRole |
findByRoleIdAndPermissionId(Long roleId, Long permissionId)根据角色ID、权限ID搜索关联对象 |
static Integer |
link(Long roleId, Long permissionId)关联角色和权限 |
static Integer |
unlink(Long roleId, Long permissionId)取消角色与权限的关联 |
static Integer |
unlink(Role role, Permission permission)取消角色与权限的关联 |
static Integer |
unlink(Object objs)取消角色与权限的关联 |
static Integer |
unlinkPermission(Permission permission)取消权限与角色的关联 |
static Integer |
unlinkRole(Role role)取消角色与权限的关联 |
static void |
updateRolePermissions(Long roleId, List permissionIds)清空并更新角色的权限 |
| Methods inherited from class | Name |
|---|---|
class Object |
Object#wait(long, int), Object#wait(long), Object#wait(), Object#equals(Object), Object#toString(), Object#hashCode(), Object#getClass(), Object#notify(), Object#notifyAll() |
检查角色与权限是否有关联
roleId - 角色IDpermissionId - 权限ID根据角色ID、权限ID搜索关联对象
关联角色和权限
不同于 new PermissionRole(permission: permissionId, role: adminRoleId).save() 的是,
这里直接执行数据库的 INSERT 语句,但是如果角色ID或权限ID不存在、或者对应的角色和权限已经关联了的话,可能抛出异常。
取消角色与权限的关联
roleId - 角色IDpermissionId - 权限ID取消角色与权限的关联
取消角色与权限的关联
objs - 角色、权限对象或列表(数组)取消权限与角色的关联
permission - 权限取消角色与权限的关联
role - 角色清空并更新角色的权限
roleId - 角色IDpermissionIds - 权限ID列表