UmsAdminRoleRelationDao.xml 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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.hwrj.cloud.admin.dao.UmsAdminRoleRelationDao">
  4. <!--批量新增回写主键支持-->
  5. <insert id="insertList">
  6. INSERT INTO ums_admin_role_relation (admin_id, role_id) VALUES
  7. <foreach collection="list" separator="," item="item" index="index">
  8. (#{item.adminId,jdbcType=BIGINT},
  9. #{item.roleId,jdbcType=BIGINT})
  10. </foreach>
  11. </insert>
  12. <select id="getRoleList" resultMap="com.hwrj.cloud.admin.mapper.UmsRoleMapper.BaseResultMap">
  13. select r.*
  14. from ums_admin_role_relation ar left join ums_role r on ar.role_id = r.id
  15. where
  16. 1=1
  17. AND r.id IS NOT NULL
  18. <if test="adminId !=null and adminId!=''">
  19. and ar.admin_id = #{adminId}
  20. </if>
  21. </select>
  22. <select id="getRolePermissionList" resultMap="com.hwrj.cloud.admin.mapper.UmsPermissionMapper.BaseResultMap">
  23. select p.*
  24. from ums_admin_role_relation ar left join ums_role r on ar.role_id = r.id
  25. left join ums_role_permission_relation rp on r.id = rp.role_id
  26. left join ums_permission p on rp.permission_id=p.id
  27. where ar.admin_id = #{adminId} and p.id is not null
  28. </select>
  29. <select id="getPermissionList" resultMap="com.hwrj.cloud.admin.mapper.UmsPermissionMapper.BaseResultMap">
  30. SELECT
  31. p.*
  32. FROM
  33. ums_admin_role_relation ar
  34. LEFT JOIN ums_role r ON ar.role_id = r.id
  35. LEFT JOIN ums_role_permission_relation rp ON r.id = rp.role_id
  36. LEFT JOIN ums_permission p ON rp.permission_id = p.id
  37. WHERE
  38. ar.admin_id = #{adminId}
  39. AND p.id IS NOT NULL
  40. AND p.id NOT IN (
  41. SELECT
  42. p.id
  43. FROM
  44. ums_admin_permission_relation pr
  45. LEFT JOIN ums_permission p ON pr.permission_id = p.id
  46. WHERE
  47. pr.type = - 1
  48. AND pr.admin_id = #{adminId}
  49. )
  50. UNION
  51. SELECT
  52. p.*
  53. FROM
  54. ums_admin_permission_relation pr
  55. LEFT JOIN ums_permission p ON pr.permission_id = p.id
  56. WHERE
  57. pr.type = 1
  58. AND pr.admin_id = #{adminId}
  59. </select>
  60. <select id="getResourceList" resultType="com.hwrj.cloud.admin.model.UmsResource">
  61. SELECT
  62. ur.id id,
  63. ur.create_time createTime,
  64. ur.`name` `name`,
  65. ur.url url,
  66. ur.description description,
  67. ur.category_id categoryId
  68. FROM
  69. ums_admin_role_relation ar
  70. LEFT JOIN ums_role r ON ar.role_id = r.id
  71. LEFT JOIN ums_role_resource_relation rrr ON r.id = rrr.role_id
  72. LEFT JOIN ums_resource ur ON ur.id = rrr.resource_id
  73. WHERE
  74. ar.admin_id = #{adminId}
  75. AND ur.id IS NOT NULL
  76. GROUP BY
  77. ur.id
  78. </select>
  79. <select id="getAdminIdList" resultType="java.lang.Long">
  80. SELECT
  81. DISTINCT ar.admin_id
  82. FROM
  83. ums_role_resource_relation rr
  84. LEFT JOIN ums_admin_role_relation ar ON rr.role_id = ar.role_id
  85. WHERE rr.resource_id=#{resourceId}
  86. </select>
  87. </mapper>