SysMenuMapper.xml 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="org.dromara.system.mapper.SysMenuMapper">
  6. <resultMap type="org.dromara.system.domain.SysMenu" id="SysMenuResult">
  7. </resultMap>
  8. <select id="selectMenuListByUserId" resultMap="SysMenuResult">
  9. select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query_param, m.visible, m.status,
  10. m.perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
  11. from sys_menu m
  12. left join sys_role_menu rm on m.menu_id = rm.menu_id
  13. left join sys_role r on sur.role_id = r.role_id
  14. ${ew.getCustomSqlSegment}
  15. </select>
  16. <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
  17. select distinct m.menu_id,
  18. m.parent_id,
  19. m.menu_name,
  20. m.path,
  21. m.component,
  22. m.query_param,
  23. m.visible,
  24. m.status,
  25. m.perms,
  26. m.is_frame,
  27. m.is_cache,
  28. m.menu_type,
  29. m.icon,
  30. m.order_num,
  31. m.create_time
  32. from sys_menu m
  33. left join sys_role_menu rm on m.menu_id = rm.menu_id and m.status = '0'
  34. left join sys_role r on rm.role_id = r.role_id and r.status = '0'
  35. where m.menu_type in ('M', 'C')
  36. and r.role_id in (select role_id from sys_user_role where user_id = #{userId})
  37. order by m.parent_id, m.order_num
  38. </select>
  39. <select id="selectMenuListByRoleId" resultType="Long">
  40. select m.menu_id
  41. from sys_menu m
  42. left join sys_role_menu rm on m.menu_id = rm.menu_id
  43. where rm.role_id = #{roleId}
  44. <if test="menuCheckStrictly">
  45. and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id =
  46. rm.menu_id and rm.role_id = #{roleId})
  47. </if>
  48. order by m.parent_id, m.order_num
  49. </select>
  50. <select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
  51. select distinct m.perms
  52. from sys_menu m
  53. left join sys_role_menu rm on m.menu_id = rm.menu_id and m.status = '0'
  54. left join sys_role r on r.role_id = rm.role_id and r.status = '0'
  55. where r.role_id in (select role_id from sys_user_role where user_id = #{userId})
  56. </select>
  57. <select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
  58. select distinct m.perms
  59. from sys_menu m
  60. left join sys_role_menu rm on m.menu_id = rm.menu_id
  61. where m.status = '0' and rm.role_id = #{roleId}
  62. </select>
  63. </mapper>