EmployeeMapper.xml 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  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.employee.EmployeeDao">
  4. <resultMap id="EmployeeDTO"
  5. type="net.lab1024.smartadmin.module.system.employee.domain.dto.EmployeeDTO"></resultMap>
  6. <resultMap id="EmployeeVO" type="net.lab1024.smartadmin.module.system.employee.domain.vo.EmployeeVO"></resultMap>
  7. <sql id="baseSql">
  8. e.id,
  9. e.login_name,
  10. e.login_pwd,
  11. e.actual_name,
  12. e.nick_name,
  13. e.phone,
  14. e.id_card,
  15. e.birthday,
  16. e.email,
  17. e.department_id,
  18. e.is_leave,
  19. e.is_disabled,
  20. e.remark,
  21. e.is_delete,
  22. e.update_time,
  23. e.create_time
  24. </sql>
  25. <select id="selectEmployeeList" resultMap="EmployeeDTO">
  26. SELECT
  27. <include refid="baseSql"></include>,
  28. d.name AS department_name
  29. FROM
  30. t_employee e
  31. LEFT JOIN t_department d ON d.id = e.department_id
  32. <where>
  33. <if test="queryDTO.phone != null and queryDTO.phone != ''">
  34. <bind name="likephone" value=" '%' + queryDTO.phone +'%' "></bind>
  35. AND e.actual_name like #{likephone}
  36. </if>
  37. <if test="queryDTO.actualName != null and queryDTO.actualName != ''">
  38. <bind name="likeActualName" value=" '%' + queryDTO.actualName +'%' "></bind>
  39. AND e.actual_name like #{likeActualName}
  40. </if>
  41. <if test="queryDTO.keyword != null and queryDTO.keyword != ''">
  42. <bind name="likeName" value=" '%' + queryDTO.keyword +'%' "></bind>
  43. AND (e.actual_name like #{likeName} or e.nick_name like #{likeName} or e.phone like #{likeName})
  44. </if>
  45. <if test="queryDTO.departmentId != null">
  46. AND e.department_id = #{queryDTO.departmentId}
  47. </if>
  48. <if test="queryDTO.isLeave != null">
  49. AND e.is_leave = #{queryDTO.isLeave}
  50. </if>
  51. <if test="queryDTO.isDisabled != null">
  52. AND e.is_disabled = #{queryDTO.isDisabled}
  53. </if>
  54. <if test="queryDTO.isDelete != null">
  55. AND e.is_delete = #{queryDTO.isDelete}
  56. </if>
  57. <if test="queryDTO.employeeIds != null and queryDTO.employeeIds.size > 0">
  58. AND e.id IN
  59. <foreach collection="queryDTO.employeeIds" open="(" close= ")" item="item" separator="," >
  60. #{item}
  61. </foreach>
  62. </if>
  63. </where>
  64. order by e.create_time desc
  65. </select>
  66. <update id="batchUpdateStatus">
  67. UPDATE t_employee e
  68. set e.is_disabled = #{isDisabled}
  69. WHERE id in
  70. <foreach collection="employeeIds" item="item" separator="," open="(" close=")">
  71. #{item}
  72. </foreach>
  73. </update>
  74. <select id="login" resultMap="EmployeeDTO">
  75. SELECT
  76. <include refid="baseSql"></include>
  77. FROM
  78. t_employee e
  79. WHERE
  80. e.login_name = #{loginName} and e.login_pwd = #{loginPwd}
  81. </select>
  82. <select id="getByLoginName" resultMap="EmployeeDTO">
  83. SELECT
  84. <include refid="baseSql"></include>
  85. FROM
  86. t_employee e
  87. WHERE
  88. e.login_name = #{loginName} and e.is_disabled = #{isDisabled}
  89. </select>
  90. <select id="getByPhone" resultMap="EmployeeDTO">
  91. SELECT
  92. <include refid="baseSql"></include>
  93. FROM
  94. t_employee e
  95. WHERE
  96. e.login_name = #{phone} and e.is_disabled = #{isDisabled}
  97. </select>
  98. <select id="listAll" resultMap="EmployeeDTO">
  99. SELECT
  100. <include refid="baseSql"></include>
  101. FROM
  102. t_employee e
  103. order by e.create_time desc
  104. </select>
  105. <select id="selectAll" resultMap="EmployeeVO">
  106. SELECT
  107. <include refid="baseSql"></include>
  108. FROM
  109. t_employee e
  110. order by e.create_time desc
  111. </select>
  112. <select id="countByDepartmentId" resultType="integer">
  113. SELECT
  114. count(1)
  115. FROM
  116. t_employee e
  117. WHERE
  118. e.department_id = #{departmentId}
  119. </select>
  120. <select id="getEmployeeIdByDeptId" resultMap="EmployeeVO">
  121. SELECT
  122. <include refid="baseSql"></include>
  123. FROM
  124. t_employee e
  125. WHERE
  126. e.department_id = #{departmentId}
  127. order by e.create_time desc
  128. </select>
  129. <select id="getEmployeeIdByDeptIds" resultMap="EmployeeDTO">
  130. SELECT
  131. <include refid="baseSql"></include>
  132. FROM
  133. t_employee e
  134. WHERE
  135. e.department_id IN
  136. <foreach collection="departmentIds" open="(" close=")" item="item" separator=",">
  137. #{item}
  138. </foreach>
  139. order by e.create_time desc
  140. </select>
  141. <select id="getEmployeeByIds" resultMap="EmployeeDTO">
  142. SELECT
  143. <include refid="baseSql"></include>
  144. FROM
  145. t_employee e
  146. where e.id IN
  147. <foreach collection="ids" item="item" separator=",">
  148. #{item}
  149. </foreach>
  150. order by e.create_time desc
  151. </select>
  152. <select id="getEmployeeById" resultMap="EmployeeDTO">
  153. SELECT
  154. <include refid="baseSql"></include>
  155. FROM
  156. t_employee e
  157. where e.id = #{id}
  158. </select>
  159. <update id="updatePassword">
  160. UPDATE t_employee
  161. SET login_pwd = #{password}
  162. WHERE id = #{employeeId}
  163. </update>
  164. <select id="getByNickName" resultMap="EmployeeDTO">
  165. SELECT
  166. <include refid="baseSql"></include>
  167. FROM
  168. t_employee e
  169. WHERE
  170. e.nick_name = #{nickName}
  171. <if test="isDisabled != null and isDisabled != ''">
  172. AND e.is_disabled = #{isDisabled}
  173. </if>
  174. </select>
  175. </mapper>