青锋系统中的权限分为:菜单权限、功能权限(按钮)和数据权限。

菜单权限、功能权限

image.png
用户的菜单、功能权限示例图:
1、角色配置管理菜单、按钮关联信息
2、用户关联角色、组织关联角色、用户关联组织

功能已经集成好,关于如何分配可以参考使用教程。

数据权限

数据权限的配置:
image.png
1、新建数据表必须包含:创建人(create_user)、创建组织(create_organize)两个字段。
2、数据权限分配后,在数据表中:
权限是根据用户组织表进行分配管理,适用于多组织权限控制,不同组织身份进来的用户享有不同的数据权限。分配后的信息存储在表:system_user_organize。
image.png
3、数据保存的时候,需要保存当前操作人的id(create_user)和当前操作人的组织id(create_organize)。
image.png
4、组织查询参数
下面标注的内容,一般是固定模式。需要查询出当前用户的id和分配的组织id集合。
image.png
5、根据参数查询
image.png
image.png

  1. <!--数据权限-->
  2. <sql id="authPageSql">
  3. <!-- 数据权限 -->
  4. <if test="(obj.auth_organize_ids == null or obj.auth_organize_ids.size == 0) and (obj.auth_user != null and obj.auth_user != '')">
  5. and a.create_user=#{obj.auth_user}
  6. </if>
  7. <if test="obj.auth_organize_ids != null and obj.auth_organize_ids.size > 0">
  8. and (a.create_user=#{obj.auth_user} or a.create_organize in
  9. <foreach collection="obj.auth_organize_ids" item="organize_id" open="(" separator="," close=")">
  10. #{organize_id}
  11. </foreach>
  12. )
  13. </if>
  14. </sql>
  15. <sql id="authObjSql">
  16. <!-- 数据权限 -->
  17. <if test="(auth_organize_ids == null or auth_organize_ids.size == 0) and (auth_user != null and auth_user != '')">
  18. and a.create_user=#{auth_user}
  19. </if>
  20. <if test="auth_organize_ids != null and auth_organize_ids.size > 0">
  21. and (a.create_user=#{auth_user} or a.create_organize in
  22. <foreach collection="auth_organize_ids" item="organize_id" open="(" separator="," close=")">
  23. #{organize_id}
  24. </foreach>
  25. )
  26. </if>
  27. </sql>