Browse Source

Merge remote-tracking branch 'origin/online1' into online1

zouxuan 3 years ago
parent
commit
759cac20ce
1 changed files with 45 additions and 5 deletions
  1. 45 5
      mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

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

@@ -1034,7 +1034,7 @@
                 AND su.organ_id_=#{organId}
             </if>
             <if test="search!=null and search!=''">
-                AND (stu.user_id_=#{search} OR su.username_ LIKE CONCAT('%', #{search}, '%'))
+                AND (t.user_id_=#{search} OR su.username_ LIKE CONCAT('%', #{search}, '%'))
             </if>
         </where>
     </sql>
@@ -1051,7 +1051,27 @@
             SUM(CASE WHEN smcr.play_time_ IS NULL THEN 0 ELSE play_time_ END) cloudStudyUseTime,
             COUNT(DISTINCT DATE(smcr.create_time_)) cloudStudyUseDays,
             stu.membership_end_time_ membershipEndTime
-        FROM student stu
+        FROM ((
+                SELECT
+                sr.user_id_
+                FROM
+                student_registration sr
+                LEFT JOIN music_group mg ON sr.music_group_id_ = mg.id_
+                WHERE
+                mg.status_ = 'PROGRESS'
+                AND sr.music_group_status_ = 'NORMAL'
+                ) UNION ALL
+                (
+                SELECT
+                cssp.user_id_
+                FROM
+                course_schedule_student_payment cssp
+                LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
+                WHERE
+                cssp.group_type_ IN ( 'VIP', 'PRACTICE' )
+                AND cs.status_ = 'NOT_START'
+                )) t
+            LEFT JOIN student stu ON t.user_id_=stu.user_id_
             LEFT JOIN sys_user su ON stu.user_id_=su.id_
             LEFT JOIN sys_user tea ON stu.teacher_id_=tea.id_
             LEFT JOIN `subject` sub ON stu.subject_id_list_ = sub.id_
@@ -1073,9 +1093,29 @@
     </select>
     <select id="countCloudStudyStudentData" resultType="int">
         SELECT
-            COUNT(stu.user_id_)
-        FROM student stu
-        LEFT JOIN sys_user su ON stu.user_id_=su.id_
+        COUNT( DISTINCT user_id_ )
+        FROM
+        ((
+        SELECT
+        sr.user_id_
+        FROM
+        student_registration sr
+        LEFT JOIN music_group mg ON sr.music_group_id_ = mg.id_
+        WHERE
+        mg.status_ = 'PROGRESS'
+        AND sr.music_group_status_ = 'NORMAL'
+        ) UNION ALL
+        (
+        SELECT
+        cssp.user_id_
+        FROM
+        course_schedule_student_payment cssp
+        LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
+        WHERE
+        cssp.group_type_ IN ( 'VIP', 'PRACTICE' )
+        AND cs.status_ = 'NOT_START'
+        )) t
+        LEFT JOIN sys_user su ON t.user_id_ = su.id_
         <include refid="queryCloudStudyStudentDataCondition" />
     </select>