StudentPlusMapper.xml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  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="com.ym.mec.biz.dal.mapper.StudentPlusMapper">
  4. <select id="userPage" resultType="com.ym.mec.biz.dal.wrapper.StudentWrapper$StudentList">
  5. select
  6. distinct s.user_id_ as studentId
  7. ,if(s.member_rank_setting_id_ is not null, true, false) as vipFlag,
  8. s.subject_id_list_ as subjectId,
  9. group_concat(sr.music_group_id_) as musicGroupIds
  10. from student s
  11. left join sys_user su on su.id_ = s.user_id_
  12. left join student_registration sr on sr.user_id_ = s.user_id_
  13. left join music_group mg on mg.id_ = sr.music_group_id_
  14. <where>
  15. sr.music_group_status_ in
  16. <foreach collection="param.statusList" close=")" item="status" open="(" separator=",">
  17. #{status}
  18. </foreach>
  19. and mg.status_ = 'PROGRESS'
  20. <if test="param.keyword != null and param.keyword != ''">
  21. and (su.username_ like concat('%', #{param.keyword}, '%'))
  22. </if>
  23. <if test="param.musicGroupId != null and param.musicGroupId != ''">
  24. and sr.music_group_id_ = #{param.musicGroupId}
  25. </if>
  26. <if test="param.subjectId != null">
  27. and s.subject_id_list_ = #{param.subjectId}
  28. </if>
  29. <if test="param.cooperationOrganId != null">
  30. and mg.cooperation_organ_id_ = #{param.cooperationOrganId}
  31. </if>
  32. <if test="param.studentId != null">
  33. and s.user_id_ = #{param.studentId}
  34. </if>
  35. <if test="param.vipFlag != null">
  36. <if test="param.vipFlag">
  37. and s.member_rank_setting_id_ is not null
  38. </if>
  39. <if test="param.vipFlag == false">
  40. and s.member_rank_setting_id_ is null
  41. </if>
  42. </if>
  43. </where>
  44. group by su.username_ ,s.user_id_,s.subject_id_list_
  45. </select>
  46. </mapper>