|
@@ -528,12 +528,16 @@
|
|
|
COUNT( DISTINCT cssp.user_id_ )
|
|
|
FROM
|
|
|
course_schedule_student_payment cssp
|
|
|
- LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
|
|
|
- LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cssp.course_schedule_id_ AND sa.user_id_ = cssp.user_id_
|
|
|
- LEFT JOIN student_visit sv ON cssp.id_=sv.object_id_
|
|
|
+ LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cssp.course_schedule_id_ AND sa.user_id_ = cssp.user_id_
|
|
|
+ LEFT JOIN student_visit sv ON cssp.id_=sv.object_id_
|
|
|
WHERE
|
|
|
- ( sa.status_ = 'LEAVE' AND sa.remark_ IS NOT NULL AND sv.id_ IS NULL)
|
|
|
- OR sa.id_ IS NULL
|
|
|
+ <if test="type!=null and type=='LEAVE'">
|
|
|
+ (sa.status_ = 'LEAVE' AND sa.remark_ IS NOT NULL AND sv.id_ IS NULL)
|
|
|
+ </if>
|
|
|
+ <if test="type!=null and type=='TRUANT'">
|
|
|
+ (sa.status_ = 'TRUANT' OR sa.id_ IS NULL)
|
|
|
+ </if>
|
|
|
<if test="organIds!=null and organIds.size()>0">
|
|
|
AND cs.organ_id_ IN
|
|
|
<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
|