SysRoleMapper.xml 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.diagbot.mapper.SysRoleMapper">
  4. <!-- 通用查询映射结果 -->
  5. <resultMap id="BaseResultMap" type="com.diagbot.entity.SysRole">
  6. <id column="id" property="id" />
  7. <result column="is_deleted" property="isDeleted" />
  8. <result column="gmt_create" property="gmtCreate" />
  9. <result column="gmt_modified" property="gmtModified" />
  10. <result column="creator" property="creator" />
  11. <result column="modifier" property="modifier" />
  12. <result column="name" property="name" />
  13. <result column="roleLevel" property="roleLevel" />
  14. <result column="descritpion" property="descritpion" />
  15. <result column="menuItems" property="menuItems" />
  16. <result column="remark" property="remark" />
  17. </resultMap>
  18. <select id="getMenuPermission" parameterType="com.diagbot.vo.SysRoleMenuQueryVO" resultType="com.diagbot.dto.SysMenuPermissionDTO">
  19. SELECT
  20. t4.menuId AS menuId,
  21. t4.menuName AS menuName,
  22. t4.parentId AS parentId,
  23. t4.permissionId AS permissionId,
  24. t4.permissionName AS permissionName,
  25. t4.orderNo AS orderNo,
  26. IF (IFNULL(t5.id, 0) = 0, 0, 1) AS haveMenu,
  27. IF (IFNULL(t6.id, 0) = 0, 0, 1) AS havePermission
  28. FROM
  29. (
  30. SELECT
  31. t2.id AS menuId,
  32. t2.`name` AS menuName,
  33. t2.parent_id AS parentId,
  34. t3.id AS permissionId,
  35. t3.`name` AS permissionName,
  36. t2.order_no AS orderNo
  37. FROM
  38. sys_menu t2
  39. LEFT JOIN sys_menu_permission t1 ON t1.is_deleted = 'N'
  40. AND t1.menu_id = t2.id
  41. LEFT JOIN sys_permission t3 ON t3.is_deleted = 'N'
  42. AND t1.permission_id = t3.id
  43. WHERE
  44. t2.is_deleted = 'N'
  45. AND t2.maintain_status = 1
  46. ) t4
  47. LEFT JOIN sys_role_menu t5 ON t5.is_deleted = 'N'
  48. AND t5.menu_id = t4.menuId
  49. AND t5.role_id = #{roleId}
  50. LEFT JOIN sys_role_permission t6 ON t6.is_deleted = 'N'
  51. AND t6.permission_id = t4.permissionId
  52. AND t6.role_id = #{roleId}
  53. ORDER BY
  54. orderNo ASC,menuId ASC
  55. </select>
  56. </mapper>