| | |
| | | /** 管理员角色权限标识 */ |
| | | private static final String SUPER_ADMIN = "admin"; |
| | | |
| | | /** 数组为0时 */ |
| | | private static final Integer ARRAY_EMPTY = 0; |
| | | |
| | | @Around("@annotation(com.ruoyi.common.security.annotation.PreAuthorize)") |
| | | public Object around(ProceedingJoinPoint point) throws Throwable |
| | | { |
| | |
| | | } |
| | | throw new PreAuthorizeException(); |
| | | } |
| | | else if (!StringUtils.isEmpty(annotation.hasAnyPermi())) |
| | | else if (ARRAY_EMPTY < annotation.hasAnyPermi().length) |
| | | { |
| | | if (hasAnyPermi(annotation.hasAnyPermi())) |
| | | { |
| | |
| | | } |
| | | throw new PreAuthorizeException(); |
| | | } |
| | | else if (!StringUtils.isEmpty(annotation.hasAnyRoles())) |
| | | else if (ARRAY_EMPTY < annotation.hasAnyRoles().length) |
| | | { |
| | | if (hasAnyRoles(annotation.hasAnyRoles())) |
| | | { |
| | |
| | | } |
| | | for (String roleKey : userInfo.getRoles()) |
| | | { |
| | | if (SUPER_ADMIN.contains(roleKey) || roleKey.contains(role)) |
| | | if (SUPER_ADMIN.equals(roleKey) || roleKey.equals(role)) |
| | | { |
| | | return true; |
| | | } |