1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.ym.mec.biz.dal.mapper.StudentPlusMapper">
- <select id="userPage" resultType="com.ym.mec.biz.dal.wrapper.StudentWrapper$StudentList">
- select
- distinct s.user_id_ as studentId
- ,if(s.member_rank_setting_id_ is not null, true, false) as vipFlag,
- s.subject_id_list_ as subjectId,
- group_concat(sr.music_group_id_) as musicGroupIds
- from student s
- left join sys_user su on su.id_ = s.user_id_
- left join student_registration sr on sr.user_id_ = s.user_id_
- left join music_group mg on mg.id_ = sr.music_group_id_
- <where>
- sr.music_group_status_ in
- <foreach collection="param.statusList" close=")" item="status" open="(" separator=",">
- #{status}
- </foreach>
- and mg.status_ = 'PROGRESS'
- <if test="param.keyword != null and param.keyword != ''">
- and (su.username_ like concat('%', #{param.keyword}, '%'))
- </if>
- <if test="param.musicGroupId != null and param.musicGroupId != ''">
- and sr.music_group_id_ = #{param.musicGroupId}
- </if>
- <if test="param.subjectId != null">
- and s.subject_id_list_ = #{param.subjectId}
- </if>
- <if test="param.cooperationOrganId != null">
- and mg.cooperation_organ_id_ = #{param.cooperationOrganId}
- </if>
- <if test="param.studentId != null">
- and s.user_id_ = #{param.studentId}
- </if>
- <if test="param.vipFlag != null">
- <if test="param.vipFlag">
- and s.member_rank_setting_id_ is not null
- </if>
- <if test="param.vipFlag == false">
- and s.member_rank_setting_id_ is null
- </if>
- </if>
- </where>
- group by su.username_ ,s.user_id_,s.subject_id_list_
- </select>
- </mapper>
|