EsmUserReferrerMapper.xml 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ydtech.modules.esm.dao.EsmUserReferrerMapper">
  6. <resultMap id="SysUserMap" type="com.ydtech.modules.admin.model.SysUser">
  7. </resultMap>
  8. <resultMap id="QueryChannelMap" type="com.ydtech.modules.esm.model.QueryChannel">
  9. </resultMap>
  10. <select id="getUserPage" resultMap="SysUserMap">
  11. SELECT
  12. su.*
  13. FROM
  14. esm_user_referrer eur
  15. LEFT JOIN sys_user su ON su.id = eur.id
  16. WHERE
  17. su.id != 'admin'
  18. AND su.STATUS = 1
  19. AND referrer_id IS NOT NULL
  20. <if test="dto.userId != null and dto.userId != ''">
  21. AND su.id = #{dto.userId}
  22. </if>
  23. <if test="dto.name != null and dto.name != ''">
  24. AND su.name = #{dto.name}
  25. </if>
  26. <if test="dto.mobile != null and dto.mobile != ''">
  27. AND su.mobile = #{dto.mobile}
  28. </if>
  29. </select>
  30. <select id="getQueryChannelPage" resultMap="QueryChannelMap">
  31. SELECT
  32. sd.id as deptId,
  33. sd.name as deptName,
  34. sd.address,
  35. count( su.id ) AS count
  36. FROM
  37. sys_dept sd
  38. LEFT JOIN sys_user su ON su.dept_id = sd.id
  39. WHERE
  40. management_source = 1
  41. <if test="queryChannel.deptId != null and queryChannel.deptId != ''">
  42. AND sd.id = #{queryChannel.deptId}
  43. </if>
  44. <if test="queryChannel.deptName != null and queryChannel.deptName != ''">
  45. AND sd.name = #{queryChannel.deptName}
  46. </if>
  47. GROUP BY
  48. sd.id
  49. </select>
  50. <select id="getByTeam" resultMap="SysUserMap">
  51. with recursive t1 as (select *
  52. from esm_user_referrer
  53. WHERE referrer_id = #{userId}
  54. union all
  55. select r1.*
  56. from esm_user_referrer r1
  57. INNER JOIN t1 on t1.id = r1.referrer_id
  58. WHERE r1.level &lt; #{level})
  59. select u.*
  60. from t1
  61. LEFT JOIN sys_user u on t1.id = u.id
  62. </select>
  63. </mapper>