zouxuan 3 سال پیش
والد
کامیت
4c2ad3fa44
1فایلهای تغییر یافته به همراه4 افزوده شده و 5 حذف شده
  1. 4 5
      mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

+ 4 - 5
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -920,7 +920,6 @@
         <result column="exercises_message_num_" property="exercisesMessageNum" jdbcType="INTEGER"/>
     </resultMap>
 
-    <!-- 还差出勤率和达标率 -->
     <select id="queryStudentServeInfo" resultMap="StudentServeExportDto">
         select sees.student_id_,cs.user_name_,cs.music_group_name_,cs.organ_name_,sees.monday_,sees.sunday_,sees.serve_total_num_,sees.actual_exercises_num_,
         sees.exercises_reply_num_,sees.exercises_message_num_,cs.sign_num_,cs.course_num_,cs.qualified_num_,cs.single_num_,cs.mix_num_,
@@ -929,21 +928,21 @@
         sum(sees.actual_exercises_num_) actual_exercises_num_,SUM(sees.exercises_reply_num_) exercises_reply_num_,sum(sees.exercises_message_num_) exercises_message_num_,
         GROUP_CONCAT(DISTINCT CASE WHEN sees.exercises_reply_num_ &lt; sees.actual_exercises_num_ THEN sees.monday_ END) not_homework_date_
         from student_extracurricular_exercises_situation_ sees
-        where sees.monday_ = #{monday} AND sees.sunday_ = #{sunday}
+        where sees.monday_ >= #{monday} AND sees.sunday_ &lt;= #{sunday}
         group by sees.student_id_,sees.music_group_id_) sees
         LEFT JOIN (
         select sees.student_id_,sbi.organ_id_,sees.music_group_id_,sbi.user_name_,mg.name_ music_group_name_,sbi.organ_name_,
         COUNT(CASE WHEN sa.qualified_flag_ = 1 THEN 1 END) qualified_num_,COUNT(cs.id_) course_num_,COUNT(CASE WHEN cs.type_ = 'SINGLE' THEN 1 END) single_num_,
         COUNT(CASE WHEN cs.type_ = 'MIX' THEN 1 END) mix_num_,COUNT(sa.id_) sign_num_,
         COUNT(CASE WHEN sa.id_ IS NULL THEN 1 END) not_sign_num_,
-        GROUP_CONCAT(DISTINCT CASE WHEN sa.id_ IS NULL THEN cs.class_date_ END) not_sign_date_
+        GROUP_CONCAT(DISTINCT CASE WHEN sa.id_ IS NULL AND cs.status_ = 'OVER' THEN cs.class_date_ END) not_sign_date_
         from student_extracurricular_exercises_situation_ sees
         left join student_basic_info sbi ON sbi.user_id_ = sees.student_id_
         left join music_group mg ON mg.id_ = sees.music_group_id_
         LEFT JOIN course_schedule_student_payment cssp ON cssp.music_group_id_ = sees.music_group_id_ AND cssp.user_id_ = sees.student_id_ AND cssp.group_type_ = 'MUSIC'
-        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
+        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_ AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND cs.is_lock_ = 0 AND ( cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_ )
         LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cssp.course_schedule_id_ AND sa.user_id_ = cssp.user_id_ AND sa.status_ = 'NORMAL'
-        where sees.monday_ = #{monday} AND sees.sunday_ = #{sunday}
+        where sees.monday_ >= #{monday} AND sees.sunday_ &lt;= #{sunday}
         group by sees.student_id_,sees.music_group_id_) cs ON cs.student_id_ = sees.student_id_ AND cs.music_group_id_ = sees.music_group_id_
         <where>
             <if test="organId != null and organId != ''">