package comruoyiframeworkwebservice;import javabeansBeanInfo;import javabeansIntrospector;import javabeansPropertyDescriptor;import orgapacheshiroSecurityUtils;import orgapacheshirosubjectSubject;impo
该代码是一个服务类,用于在前端页面中通过Thymeleaf模板引擎实现按钮权限的可见性控制。
具体功能如下:
- hasPermi方法:判断当前用户是否具备某个权限,如果具备,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- lacksPermi方法:判断当前用户是否不具备某个权限,与hasPermi方法逻辑相反,如果不具备,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- hasAnyPermi方法:判断当前用户是否具备以下任意一个权限,参数permissions是以逗号为分隔符的权限字符串,如果具备任意一个权限,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- hasRole方法:判断当前用户是否具备某个角色,如果具备,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- lacksRole方法:判断当前用户是否不具备某个角色,与hasRole方法逻辑相反,如果不具备,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- hasAnyRoles方法:判断当前用户是否具备以下任意一个角色,参数roles是以逗号为分隔符的角色字符串,如果具备任意一个角色,则返回空字符串,否则返回"hidden",用于在前端页面隐藏按钮。
- isUser方法:判断当前用户是否已认证通过或已记住的用户,如果是,则返回true,否则返回false。
- isPermitted方法:判断当前用户是否具备某个权限,如果具备,则返回true,否则返回false。
- isLacksPermitted方法:判断当前用户是否不具备某个权限,与isPermitted方法逻辑相反,如果不具备,则返回true,否则返回false。
- hasAnyPermissions方法:判断当前用户是否具备以下任意一个权限,参数permissions是以指定分隔符为分隔符的权限字符串,如果具备任意一个权限,则返回true,否则返回false。
- isRole方法:判断当前用户是否具备某个角色,如果具备,则返回true,否则返回false。
- isLacksRole方法:判断当前用户是否不具备某个角色,与isRole方法逻辑相反,如果不具备,则返回true,否则返回false。
- isAnyRoles方法:判断当前用户是否具备以下任意一个角色,参数roles是以指定分隔符为分隔符的角色字符串,如果具备任意一个角色,则返回true,否则返回false。
- getPrincipalProperty方法:获取当前用户的指定属性值,参数property为属性名称,返回当前用户属性的值。该方法通过反射的方式获取用户对象的属性值。
通过上述方法,可以在Thymeleaf模板中根据当前用户的权限或角色控制按钮的可见性,实现动态的权限管理
原文地址: http://www.cveoy.top/t/topic/hRoE 著作权归作者所有。请勿转载和采集!