|
@@ -174,15 +174,14 @@
|
|
LEFT JOIN sys_user tsu ON tsu.id_ = s.teacher_id_
|
|
LEFT JOIN sys_user tsu ON tsu.id_ = s.teacher_id_
|
|
LEFT JOIN organization o ON o.id_ = su.organ_id_
|
|
LEFT JOIN organization o ON o.id_ = su.organ_id_
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
- SELECT s.user_id_,
|
|
|
|
|
|
+ SELECT cssp.user_id_,
|
|
SUM(case when (cs.group_type_ = 'VIP' AND cs.teach_mode_='ONLINE') then 1 ELSE 0 END) vip_times_,
|
|
SUM(case when (cs.group_type_ = 'VIP' AND cs.teach_mode_='ONLINE') then 1 ELSE 0 END) vip_times_,
|
|
SUM(case when (pg.buy_months_ > 0) then 1 ELSE 0 END) buy_practice_times_
|
|
SUM(case when (pg.buy_months_ > 0) then 1 ELSE 0 END) buy_practice_times_
|
|
- FROM student s
|
|
|
|
- LEFT JOIN course_schedule_student_payment cssp ON cssp.user_id_ = s.user_id_
|
|
|
|
|
|
+ FROM course_schedule_student_payment cssp
|
|
LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
|
|
LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
|
|
LEFT JOIN practice_group pg ON pg.`id_` = cs.`music_group_id_` AND cs.`group_type_` = 'PRACTICE'
|
|
LEFT JOIN practice_group pg ON pg.`id_` = cs.`music_group_id_` AND cs.`group_type_` = 'PRACTICE'
|
|
WHERE cs.status_ IN ('NOT_START','UNDERWAY') AND (cs.is_lock_ IS NULL OR cs.is_lock_=0)
|
|
WHERE cs.status_ IN ('NOT_START','UNDERWAY') AND (cs.is_lock_ IS NULL OR cs.is_lock_=0)
|
|
- GROUP BY s.user_id_
|
|
|
|
|
|
+ GROUP BY cssp.user_id_
|
|
) a on a.user_id_ = s.user_id_
|
|
) a on a.user_id_ = s.user_id_
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
SELECT student_id_, count(id_) free_practice_times_
|
|
SELECT student_id_, count(id_) free_practice_times_
|
|
@@ -200,15 +199,14 @@
|
|
LEFT JOIN sys_user su ON s.user_id_ = su.id_
|
|
LEFT JOIN sys_user su ON s.user_id_ = su.id_
|
|
LEFT JOIN sys_user tsu ON tsu.id_ = s.teacher_id_
|
|
LEFT JOIN sys_user tsu ON tsu.id_ = s.teacher_id_
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
- SELECT s.user_id_,
|
|
|
|
|
|
+ SELECT cssp.user_id_,
|
|
SUM(case when (cs.group_type_ = 'VIP' AND cs.teach_mode_='ONLINE') then 1 ELSE 0 END) vip_times_,
|
|
SUM(case when (cs.group_type_ = 'VIP' AND cs.teach_mode_='ONLINE') then 1 ELSE 0 END) vip_times_,
|
|
SUM(case when (pg.buy_months_ > 0) then 1 ELSE 0 END) buy_practice_times_
|
|
SUM(case when (pg.buy_months_ > 0) then 1 ELSE 0 END) buy_practice_times_
|
|
- FROM student s
|
|
|
|
- LEFT JOIN course_schedule_student_payment cssp ON cssp.user_id_ = s.user_id_
|
|
|
|
|
|
+ FROM course_schedule_student_payment cssp
|
|
LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
|
|
LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
|
|
LEFT JOIN practice_group pg ON pg.`id_` = cs.`music_group_id_` AND cs.`group_type_` = 'PRACTICE'
|
|
LEFT JOIN practice_group pg ON pg.`id_` = cs.`music_group_id_` AND cs.`group_type_` = 'PRACTICE'
|
|
WHERE cs.status_ IN ('NOT_START','UNDERWAY') AND (cs.is_lock_ IS NULL OR cs.is_lock_=0)
|
|
WHERE cs.status_ IN ('NOT_START','UNDERWAY') AND (cs.is_lock_ IS NULL OR cs.is_lock_=0)
|
|
- GROUP BY s.user_id_
|
|
|
|
|
|
+ GROUP BY cssp.user_id_
|
|
) a on a.user_id_ = s.user_id_
|
|
) a on a.user_id_ = s.user_id_
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
SELECT student_id_, count(id_) free_practice_times_
|
|
SELECT student_id_, count(id_) free_practice_times_
|
|
@@ -256,8 +254,8 @@
|
|
</where>
|
|
</where>
|
|
</sql>
|
|
</sql>
|
|
|
|
|
|
- <select id="getTeacherOperatingStudentsNum" resultMap="student4operating">
|
|
|
|
- select teacher_id_, count(*) student_num_
|
|
|
|
|
|
+ <select id="getTeacherOperatingStudentsNum" resultType="java.util.Map">
|
|
|
|
+ select teacher_id_ 'key', count(*) 'value'
|
|
FROM student
|
|
FROM student
|
|
WHERE FIND_IN_SET(teacher_id_, #{teacherIds})
|
|
WHERE FIND_IN_SET(teacher_id_, #{teacherIds})
|
|
GROUP BY teacher_id_
|
|
GROUP BY teacher_id_
|