Selaa lähdekoodia

管乐迷需求迭代

zouxuan 2 vuotta sitten
vanhempi
commit
b9010813b6
1 muutettua tiedostoa jossa 11 lisäystä ja 11 poistoa
  1. 11 11
      mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

+ 11 - 11
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -1183,11 +1183,11 @@
     </resultMap>
     <select id="cloudTeacherSum" resultMap="CloudTeacherSumDto">
         select o.id_ organ_id_,o.name_ organ_name_,COUNT(distinct s.user_id_) normal_num_,COUNT(distinct smcr.user_id_) train_student_num_,
-        COUNT(distinct CASE WHEN smcr.train_time_ &lt; 60 THEN smcr.user_id_ END) 'train1',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 60 AND smcr.train_time_ &lt; 120 THEN smcr.user_id_ END) 'train2',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 120 AND smcr.train_time_ &lt; 240 THEN smcr.user_id_ END) 'train3',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 240 THEN smcr.user_id_ END) 'train4',
-        SUM(smcr.train_time_) train_total_time_,COUNT(distinct CASE WHEN smcr.train_time_ > 60 THEN smcr.user_id_ END) 'train0'
+        COUNT(distinct CASE WHEN smcr.train_time_ &lt; 60 OR smcr.train_time_ IS NULL THEN s.user_id_ END) 'train1',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 60 AND smcr.train_time_ &lt; 120 THEN s.user_id_ END) 'train2',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 120 AND smcr.train_time_ &lt; 240 THEN s.user_id_ END) 'train3',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 240 THEN s.user_id_ END) 'train4',
+        SUM(smcr.train_time_) train_total_time_,COUNT(distinct CASE WHEN smcr.train_time_ > 60 THEN s.user_id_ END) 'train0'
         from (select distinct sr.user_id_ from music_group mg
         left join student_registration sr ON mg.id_ = sr.music_group_id_
         where mg.status_ IN ('PROGRESS','PAUSE') AND sr.music_group_status_ = 'NORMAL') mg
@@ -1215,11 +1215,11 @@
     </select>
     <select id="queryCloudTeacherSumDetail" resultMap="CloudTeacherSumDto">
         select su.real_name_ teacher_name_,COUNT(distinct s.user_id_) normal_num_,COUNT(distinct smcr.user_id_) train_student_num_,
-        COUNT(distinct CASE WHEN smcr.train_time_ &lt; 60 THEN smcr.user_id_ END) 'train1',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 60 AND smcr.train_time_ &lt; 120 THEN smcr.user_id_ END) 'train2',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 120 AND smcr.train_time_ &lt; 240 THEN smcr.user_id_ END) 'train3',
-        COUNT(distinct CASE WHEN smcr.train_time_ >= 240 THEN smcr.user_id_ END) 'train4',
-        SUM(smcr.train_time_) train_total_time_,COUNT(distinct CASE WHEN smcr.train_time_ > 60 THEN smcr.user_id_ END) 'train0'
+        COUNT(distinct CASE WHEN smcr.train_time_ &lt; 60 OR smcr.train_time_ IS NULL THEN s.user_id_ END) 'train1',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 60 AND smcr.train_time_ &lt; 120 THEN s.user_id_ END) 'train2',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 120 AND smcr.train_time_ &lt; 240 THEN s.user_id_ END) 'train3',
+        COUNT(distinct CASE WHEN smcr.train_time_ >= 240 THEN s.user_id_ END) 'train4',
+        SUM(smcr.train_time_) train_total_time_,COUNT(distinct CASE WHEN smcr.train_time_ > 60 THEN s.user_id_ END) 'train0'
         from student_teacher_mapper stm
         left join (select distinct sr.user_id_ from music_group mg
         left join student_registration sr ON mg.id_ = sr.music_group_id_
@@ -1229,7 +1229,7 @@
         select smcr.user_id_,ROUND(SUM(smcr.train_time_)/60/#{weekBetween}) train_time_ from sys_music_compare_day_data smcr
         where day_ BETWEEN #{startDate} AND #{endDate} group by smcr.user_id_) smcr ON s.user_id_ = smcr.user_id_
         left JOIN teacher t ON t.id_ = stm.teacher_id_
-        left JOIN sys_user su ON su.id_ = mg.user_id_
+        left JOIN sys_user su ON su.id_ = stm.teacher_id_
         where s.membership_end_time_ >= NOW() AND stm.teacher_type_ = 'NORMAL' AND t.organ_id_ = #{organId}
         group by stm.teacher_id_
         <include refid="global.limit"/>