解决方法:将方法上面的权限注解修改即可,权限字段写错了,数据库中的商机捞取权限字段不是那个
@PreAuthorize("@ss.hasPermi('business:business:gain')")
涉及到了目前主流的权限设计方案:RBAC基于角色的访问控制
该方法设计到了五个数据库表格,用户表:sys_user,角色表:sys_role,权限表:sys_menu,还有两个关系表:sys_user_role,sys_role_menu.
关系表是为了让其他三个表之间耦合度没那么高,方便修改用户的权限
sql语句:
select distinct m.perms
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role ur on rm.role_id = ur.role_id
where ur.user_id = 4