|
@@ -763,31 +763,58 @@
|
|
|
</select>
|
|
|
|
|
|
<select id="getOrganStudentNum" resultType="int">
|
|
|
- SELECT COUNT(sr.user_id_) totalStudentNum
|
|
|
- FROM student_registration sr
|
|
|
- LEFT JOIN sys_user su ON sr.user_id_=su.id_
|
|
|
- WHERE su.del_flag_=0
|
|
|
- AND sr.music_group_status_='NORMAL'
|
|
|
- <if test="organId!=null">
|
|
|
- AND su.organ_id_=#{organId}
|
|
|
- </if>
|
|
|
+ SELECT COUNT(DISTINCT user_id_)
|
|
|
+ FROM ((SELECT sr.user_id_
|
|
|
+ FROM student_registration sr
|
|
|
+ LEFT JOIN sys_user su ON sr.user_id_=su.id_
|
|
|
+ WHERE su.del_flag_=0
|
|
|
+ AND sr.music_group_status_='NORMAL'
|
|
|
+ AND su.organ_id_ = #{organId})
|
|
|
+ UNION ALL
|
|
|
+ (SELECT
|
|
|
+ cssp.user_id_
|
|
|
+ FROM
|
|
|
+ course_schedule_student_payment cssp
|
|
|
+ LEFT JOIN course_schedule cs ON cssp.course_schedule_id_=cs.id_
|
|
|
+ LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
|
|
|
+ WHERE
|
|
|
+ cssp.group_type_ IN ('VIP', 'PRACTICE')
|
|
|
+ AND cs.status_='NOT_START'
|
|
|
+ AND su.del_flag_ = 0
|
|
|
+ AND su.organ_id_ = #{organId})) t
|
|
|
</select>
|
|
|
|
|
|
<select id="getOrgansStudentNum" resultType="map">
|
|
|
- SELECT
|
|
|
- su.organ_id_ 'key',
|
|
|
- COUNT(DISTINCT sr.user_id_) 'value'
|
|
|
+ SELECT t.organ_id_ 'key',COUNT(DISTINCT user_id_) 'value'
|
|
|
+ FROM ((SELECT su.organ_id_,sr.user_id_
|
|
|
FROM student_registration sr
|
|
|
LEFT JOIN sys_user su ON sr.user_id_=su.id_
|
|
|
WHERE su.del_flag_=0
|
|
|
- AND sr.music_group_status_='NORMAL'
|
|
|
+ AND sr.music_group_status_='NORMAL'
|
|
|
<if test="organIds!=null and organIds.size()>0">
|
|
|
AND su.organ_id_ IN
|
|
|
<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
|
|
|
#{organId}
|
|
|
</foreach>
|
|
|
- </if>
|
|
|
- GROUP BY su.organ_id_
|
|
|
+ </if>)
|
|
|
+ UNION ALL
|
|
|
+ (SELECT
|
|
|
+ su.organ_id_,cssp.user_id_
|
|
|
+ FROM
|
|
|
+ course_schedule_student_payment cssp
|
|
|
+ LEFT JOIN course_schedule cs ON cssp.course_schedule_id_=cs.id_
|
|
|
+ LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
|
|
|
+ WHERE
|
|
|
+ cssp.group_type_ IN ('VIP', 'PRACTICE')
|
|
|
+ AND cs.status_='NOT_START'
|
|
|
+ AND su.del_flag_ = 0
|
|
|
+ <if test="organIds!=null and organIds.size()>0">
|
|
|
+ AND su.organ_id_ IN
|
|
|
+ <foreach collection="organIds" item="organId" open="(" close=")" separator=",">
|
|
|
+ #{organId}
|
|
|
+ </foreach>
|
|
|
+ </if>)) t
|
|
|
+ GROUP BY t.organ_id_
|
|
|
</select>
|
|
|
|
|
|
<select id="getCloudStudyStudentNum" resultType="int">
|