SysUserMapper.xml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. ~
  4. ~ Copyright (c) 2018-2025, lengleng All rights reserved.
  5. ~
  6. ~ Redistribution and use in source and binary forms, with or without
  7. ~ modification, are permitted provided that the following conditions are met:
  8. ~
  9. ~ Redistributions of source code must retain the above copyright notice,
  10. ~ this list of conditions and the following disclaimer.
  11. ~ Redistributions in binary form must reproduce the above copyright
  12. ~ notice, this list of conditions and the following disclaimer in the
  13. ~ documentation and/or other materials provided with the distribution.
  14. ~ Neither the name of the pig4cloud.com developer nor the names of its
  15. ~ contributors may be used to endorse or promote products derived from
  16. ~ this software without specific prior written permission.
  17. ~ Author: lengleng (wangiegie@gmail.com)
  18. ~
  19. -->
  20. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  21. <mapper namespace="com.pig4cloud.pigx.admin.mapper.SysUserMapper">
  22. <!-- 通用查询映射结果 -->
  23. <resultMap id="baseResultMap" type="com.pig4cloud.pigx.admin.api.entity.SysUser">
  24. <id column="user_id" property="userId"/>
  25. <result column="username" property="username"/>
  26. <result column="password" property="password"/>
  27. <result column="phone" property="phone"/>
  28. <result column="avatar" property="avatar"/>
  29. <result column="salt" property="salt"/>
  30. <result column="dept_id" property="deptId"/>
  31. <result column="tenant_id" property="tenantId"/>
  32. <result column="wx_openid" property="wxOpenid"/>
  33. <result column="qq_openid" property="qqOpenid"/>
  34. <result column="create_time" property="createTime"/>
  35. <result column="update_time" property="updateTime"/>
  36. <result column="del_flag" property="delFlag"/>
  37. </resultMap>
  38. <!-- userVo结果集 -->
  39. <resultMap id="userVoResultMap" type="com.pig4cloud.pigx.admin.api.vo.UserVO">
  40. <id column="user_id" property="userId"/>
  41. <result column="username" property="username"/>
  42. <result column="password" property="password"/>
  43. <result column="salt" property="salt"/>
  44. <result column="phone" property="phone"/>
  45. <result column="avatar" property="avatar"/>
  46. <result column="wx_openid" property="wxOpenid"/>
  47. <result column="qq_openid" property="qqOpenid"/>
  48. <result column="ucreate_time" property="createTime"/>
  49. <result column="uupdate_time" property="updateTime"/>
  50. <result column="udel_flag" property="delFlag"/>
  51. <result column="deptId" property="deptId"/>
  52. <result column="tenantId" property="tenantId"/>
  53. <result column="deptName" property="deptName"/>
  54. <collection property="roleList" ofType="com.pig4cloud.pigx.admin.api.entity.SysRole">
  55. <id column="role_id" property="roleId"/>
  56. <result column="role_name" property="roleName"/>
  57. <result column="role_code" property="roleCode"/>
  58. <result column="role_desc" property="roleDesc"/>
  59. <result column="rcreate_time" property="createTime"/>
  60. <result column="rupdate_time" property="updateTime"/>
  61. </collection>
  62. </resultMap>
  63. <sql id="selectUserVo">
  64. SELECT
  65. `user`.user_id,
  66. `user`.username,
  67. `user`.`password`,
  68. `user`.salt,
  69. `user`.phone,
  70. `user`.avatar,
  71. `user`.wx_openid,
  72. `user`.qq_openid,
  73. `user`.dept_id,
  74. `user`.create_time AS ucreate_time,
  75. `user`.update_time AS uupdate_time,
  76. `user`.del_flag AS udel_flag,
  77. `user`.dept_id AS deptId,
  78. `user`.tenant_id AS tenantId,
  79. r.role_id,
  80. r.role_name,
  81. r.role_code,
  82. r.role_desc,
  83. r.create_time AS rcreate_time,
  84. r.update_time AS rupdate_time
  85. FROM
  86. sys_user AS `user`
  87. LEFT JOIN sys_user_role AS ur ON ur.user_id = `user`.user_id
  88. LEFT JOIN sys_role AS r ON r.role_id = ur.role_id
  89. </sql>
  90. <select id="selectUserVoByUsername" resultMap="userVoResultMap">
  91. <include refid="selectUserVo"/>
  92. WHERE `user`.username = #{username}
  93. </select>
  94. <select id="selectUserVoById" resultMap="userVoResultMap">
  95. SELECT
  96. `user`.user_id,
  97. `user`.username,
  98. `user`.`password`,
  99. `user`.salt,
  100. `user`.phone,
  101. `user`.avatar,
  102. `user`.wx_openid,
  103. `user`.qq_openid,
  104. `user`.create_time AS ucreate_time,
  105. `user`.update_time AS uupdate_time,
  106. `user`.del_flag AS udel_flag,
  107. `user`.tenant_id AS tenantId,
  108. r.role_id,
  109. r.role_name,
  110. r.role_code,
  111. r.role_desc,
  112. r.create_time AS rcreate_time,
  113. r.update_time AS rupdate_time,
  114. d.name AS deptName,
  115. d.dept_id AS deptId
  116. FROM
  117. sys_user AS `user`
  118. LEFT JOIN sys_user_role AS ur ON ur.user_id = `user`.user_id
  119. LEFT JOIN sys_role AS r ON r.role_id = ur.role_id
  120. LEFT JOIN sys_dept AS d ON d.dept_id = `user`.dept_id
  121. WHERE
  122. `user`.user_id = #{id}
  123. </select>
  124. <select id="selectUserVoPage" resultMap="userVoResultMap">
  125. SELECT
  126. `user`.user_id,
  127. `user`.username,
  128. `user`.`password`,
  129. `user`.salt,
  130. `user`.phone,
  131. `user`.avatar,
  132. `user`.wx_openid,
  133. `user`.qq_openid,
  134. `user`.create_time AS ucreate_time,
  135. `user`.update_time AS uupdate_time,
  136. `user`.del_flag AS udel_flag,
  137. `user`.tenant_id AS tenantId,
  138. r.role_id,
  139. r.role_name,
  140. r.role_code,
  141. r.role_desc,
  142. r.create_time AS rcreate_time,
  143. r.update_time AS rupdate_time,
  144. d.name AS deptName,
  145. d.dept_id AS deptId
  146. FROM
  147. sys_user AS `user`
  148. LEFT JOIN sys_user_role AS ur ON ur.user_id = `user`.user_id
  149. LEFT JOIN sys_role AS r ON r.role_id = ur.role_id
  150. LEFT JOIN sys_dept AS d ON d.dept_id = `user`.dept_id
  151. WHERE
  152. r.del_flag = 0
  153. <if test="username != null and username != ''">
  154. and `user`.username LIKE CONCAT('%',#{username},'%')
  155. </if>
  156. ORDER BY `user`.create_time DESC
  157. </select>
  158. </mapper>