若依注解学习(二)@DataScope

@DataScope
        
        作用:
            一般写在service层的一些需要权限控制的业务方法上,针对部门和用户的权限,生成sql条件
            dao层注入,实现数据权限的控制
        位置:
            common下的annotation包下
        核心类:
            DataScopeAspect
        实现步骤:
            设置切入点,@Before,任何加了该注解的方法
            1.清空JoinPoint防止注入
            2.安全框架中获取当前的用户信息,包括用户,部门,角色信息
            3.判断是否管理员,非管理员进行处理
                从注解获取权信息,进行过滤
                遍历用户的role信息,添加权限
                    判断role的数据权限,生成sql条件append,or 。。。,添加到列表        
            添加到baseEntity的param
        
            dao层 ${param.dataScope} 注入条件

你可能感兴趣的:(学习,java,开发语言)