PrivilegeMapper.xml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  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="net.lab1024.smartadmin.module.system.privilege.dao.PrivilegeDao">
  4. <resultMap id="PrivilegeEntity"
  5. type="net.lab1024.smartadmin.module.system.privilege.domain.entity.PrivilegeEntity"></resultMap>
  6. <sql id="baseSql">
  7. p.id,
  8. p.type,
  9. p.name,
  10. p.key,
  11. p.url,
  12. p.sort,
  13. p.parent_key,
  14. p.update_time,
  15. p.create_time
  16. </sql>
  17. <select id="selectByType" resultMap="PrivilegeEntity">
  18. SELECT
  19. <include refid="baseSql"></include>
  20. FROM
  21. t_privilege p
  22. WHERE
  23. p.type = #{type}
  24. </select>
  25. <select id="selectByExcludeType" resultMap="PrivilegeEntity">
  26. SELECT
  27. <include refid="baseSql"></include>
  28. FROM
  29. t_privilege p
  30. WHERE
  31. p.type &lt;&gt; #{type}
  32. </select>
  33. <delete id="delByKeyList">
  34. DELETE FROM t_privilege
  35. WHERE `key` IN
  36. <foreach collection="keyList" item="item" separator="," open="(" close=")">
  37. #{item}
  38. </foreach>
  39. </delete>
  40. <delete id="delByParentKeyList">
  41. DELETE FROM t_privilege
  42. WHERE parent_key IN
  43. <foreach collection="keyList" item="item" separator="," open="(" close=")">
  44. #{item}
  45. </foreach>
  46. </delete>
  47. <insert id="batchInsert" useGeneratedKeys="true" keyProperty="id" parameterType="java.util.List">
  48. INSERT INTO t_privilege (`type`, `name`, `key`,url,sort,parent_key,create_time,update_time) VALUES
  49. <foreach collection="list" item="item" separator=",">
  50. (
  51. #{item.type},
  52. #{item.name},
  53. #{item.key},
  54. #{item.url},
  55. #{item.sort},
  56. #{item.parentKey},
  57. now(),
  58. now()
  59. )
  60. </foreach>
  61. </insert>
  62. <update id="batchUpdate">
  63. <foreach collection="updateList" item="item" index="index" separator=";">
  64. UPDATE t_privilege
  65. SET `type`=#{item.type},`name`=#{item.name},url=#{item.url},sort=#{item.sort},parent_key=#{item.parentKey},update_time=now()
  66. WHERE `key` = #{item.key}
  67. </foreach>
  68. </update>
  69. <select id="selectByParentKey" resultMap="PrivilegeEntity">
  70. SELECT
  71. <include refid="baseSql"></include>
  72. FROM
  73. t_privilege p
  74. WHERE
  75. p.parent_key = #{parentKey}
  76. order by sort asc
  77. </select>
  78. <select id="selectByKey" resultMap="PrivilegeEntity">
  79. SELECT
  80. <include refid="baseSql"></include>
  81. FROM
  82. t_privilege p
  83. WHERE
  84. p.key = #{key}
  85. </select>
  86. <select id="selectByKeyList" resultMap="PrivilegeEntity">
  87. SELECT
  88. <include refid="baseSql"></include>
  89. FROM
  90. t_privilege p
  91. WHERE
  92. p.key in
  93. <foreach item="item" collection="keyList" open="(" close=")"
  94. separator=",">
  95. #{item}
  96. </foreach>
  97. </select>
  98. <select id="selectAll" resultMap="PrivilegeEntity">
  99. SELECT
  100. <include refid="baseSql"></include>,
  101. parent.id as parent_id
  102. FROM
  103. t_privilege p
  104. LEFT JOIN t_privilege parent on p.parent_key = parent.`key`
  105. </select>
  106. </mapper>