|
@@ -178,30 +178,38 @@
|
|
|
</collection>
|
|
|
</resultMap>
|
|
|
<select id="queryEmployByOrganId" resultMap="EmployeeDto">
|
|
|
- SELECT e.user_id_,su.real_name_,su.gender_,su.phone_,su.user_type_,e.job_nature_,su.lock_flag_,
|
|
|
- e.entry_date_,e.demission_date_,o.name_ organ_name_list_,o.id_ organ_id_list_,sr.role_name_,sr.id_ role_id_
|
|
|
- FROM (SELECT * FROM employee WHERE FIND_IN_SET(#{organId},organ_id_list_) <include refid="global.limit"/>) e
|
|
|
- LEFT JOIN sys_user su ON su.id_ = e.user_id_
|
|
|
- LEFT JOIN sys_user_role sur ON sur.user_id_ = e.user_id_
|
|
|
+ SELECT ue.*,o.name_ organ_name_list_,o.id_ organ_id_list_,sr.role_name_,sr.id_ role_id_
|
|
|
+ FROM (SELECT e.user_id_,su.real_name_,su.gender_,su.phone_,su.user_type_,e.job_nature_,su.lock_flag_,
|
|
|
+ e.entry_date_,e.demission_date_,e.organ_id_list_ organ_id_,e.create_time_
|
|
|
+ FROM employee e LEFT JOIN sys_user su ON e.user_id_ = su.id_
|
|
|
+ <where>
|
|
|
+ <if test="organId != null">
|
|
|
+ FIND_IN_SET(su.organ_id_,#{organId})
|
|
|
+ </if>
|
|
|
+ </where> <include refid="global.limit"/>) ue
|
|
|
+ LEFT JOIN sys_user_role sur ON sur.user_id_ = ue.user_id_
|
|
|
LEFT JOIN sys_role sr ON sr.id_ = sur.role_id_
|
|
|
- LEFT JOIN organization o ON FIND_IN_SET(o.id_,e.organ_id_list_)
|
|
|
- WHERE su.user_type_ LIKE '%SYSTEM%'
|
|
|
+ LEFT JOIN organization o ON FIND_IN_SET(o.id_,ue.organ_id_)
|
|
|
+ WHERE ue.user_type_ LIKE '%SYSTEM%'
|
|
|
<if test="search != null">
|
|
|
- AND (su.real_name_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
|
|
|
+ AND (ue.real_name_ LIKE CONCAT('%',#{search},'%') OR ue.phone_ LIKE CONCAT('%',#{search},'%'))
|
|
|
</if>
|
|
|
- ORDER BY e.create_time_ DESC
|
|
|
+ ORDER BY ue.create_time_ DESC
|
|
|
</select>
|
|
|
|
|
|
<select id="queryEmployByOrganIdCount" resultType="int">
|
|
|
- SELECT COUNT(e.user_id_)
|
|
|
- FROM employee e
|
|
|
- LEFT JOIN sys_user su ON su.id_ = e.user_id_
|
|
|
- WHERE su.user_type_ LIKE '%SYSTEM%'
|
|
|
+ SELECT COUNT(ue.user_id_)
|
|
|
+ FROM (SELECT e.user_id_,su.real_name_,su.gender_,su.phone_,su.user_type_,e.job_nature_,su.lock_flag_,
|
|
|
+ e.entry_date_,e.demission_date_,e.organ_id_list_,e.create_time_
|
|
|
+ FROM employee e LEFT JOIN sys_user su ON e.user_id_ = su.id_
|
|
|
+ <where>
|
|
|
+ <if test="organId != null">
|
|
|
+ FIND_IN_SET(su.organ_id_,#{organId})
|
|
|
+ </if>
|
|
|
+ </where>) ue
|
|
|
+ WHERE ue.user_type_ LIKE '%SYSTEM%'
|
|
|
<if test="search != null">
|
|
|
- AND (su.real_name_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
|
|
|
- </if>
|
|
|
- <if test="organId != null">
|
|
|
- AND FIND_IN_SET(#{organId},e.organ_id_list_)
|
|
|
+ AND (ue.real_name_ LIKE CONCAT('%',#{search},'%') OR ue.phone_ LIKE CONCAT('%',#{search},'%'))
|
|
|
</if>
|
|
|
</select>
|
|
|
</mapper>
|