|
@@ -582,21 +582,25 @@
|
|
|
</if>
|
|
|
</select>
|
|
|
<select id="getAttendanceError" resultType="int">
|
|
|
- SELECT COUNT(csts.id_) FROM course_schedule_teacher_salary csts
|
|
|
- LEFT JOIN course_schedule cs ON csts.course_schedule_id_ = cs.id_
|
|
|
- LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = csts.course_schedule_id_ AND ta.teacher_id_ = csts.user_id_
|
|
|
- WHERE (ta.sign_in_status_ = 0 OR ta.sign_out_status_ = 0) AND cs.status_ = 'OVER' AND cs.del_flag_ = 0 AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
|
|
|
- AND (ta.sign_in_time_ IS NOT NULL OR ta.sign_out_time_ IS NOT NULL) AND ta.dispose_content_ IS NULL AND cs.class_date_ >= #{startTime}
|
|
|
+ SELECT COUNT(DISTINCT c.id_) FROM (SELECT cs.id_ FROM course_schedule cs
|
|
|
+ LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cs.id_
|
|
|
+ WHERE ta.teacher_id_ = cs.actual_teacher_id_
|
|
|
+ AND cs.status_ = 'OVER' AND cs.del_flag_ = 0 AND cs.class_date_ >= #{startTime}
|
|
|
+ AND (ta.sign_in_status_ != 1 OR ta.sign_out_status_ != 1 OR sa.status_ != 'NORMAL') AND ta.dispose_content_ IS NULL
|
|
|
+ AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
|
|
|
+ GROUP BY cs.id_) c
|
|
|
<if test="organIds != null and organIds != ''">
|
|
|
AND FIND_IN_SET(cs.organ_id_,#{organIds})
|
|
|
</if>
|
|
|
</select>
|
|
|
<select id="getNoAttendance" resultType="int">
|
|
|
- SELECT COUNT(csts.id_) FROM course_schedule_teacher_salary csts
|
|
|
- LEFT JOIN course_schedule cs ON csts.course_schedule_id_ = cs.id_
|
|
|
- LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = csts.course_schedule_id_ AND ta.teacher_id_ = csts.user_id_
|
|
|
- WHERE ta.sign_in_time_ IS NULL AND cs.status_ = 'OVER' AND ta.sign_out_time_ IS NULL AND ta.dispose_content_ IS NULL
|
|
|
- AND cs.del_flag_ = 0 AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_) AND cs.class_date_ >= #{startTime}
|
|
|
+ SELECT COUNT(DISTINCT cs.id_) FROM course_schedule cs
|
|
|
+ LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
|
|
|
+ WHERE ta.teacher_id_ = cs.actual_teacher_id_
|
|
|
+ AND cs.status_ = 'OVER' AND cs.del_flag_ = 0 AND cs.class_date_ >= #{startTime}
|
|
|
+ AND ta.sign_in_time_ IS NULL AND ta.sign_out_time_ IS NULL AND ta.dispose_content_ IS NULL
|
|
|
+ AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_)
|
|
|
<if test="organIds != null and organIds != ''">
|
|
|
AND FIND_IN_SET(cs.organ_id_,#{organIds})
|
|
|
</if>
|
|
@@ -621,7 +625,9 @@
|
|
|
</select>
|
|
|
<select id="queryInspectionItem" resultType="int">
|
|
|
SELECT COUNT(DISTINCT ii.id_) FROM inspection_item ii
|
|
|
+ LEFT JOIN inspection i ON ii.inspection_id_ = i.id_
|
|
|
WHERE ii.times_ > planned_times_ AND ii.item_ = 'INSPECT' AND ii.memo_ =''
|
|
|
+ AND DATE_FORMAT(i.month_,'%Y-%m-%d') >= #{startTime}
|
|
|
<if test="organIdsStr != null and organIdsStr != ''">
|
|
|
AND FIND_IN_SET(ii.organ_id_,#{organIdsStr})
|
|
|
</if>
|
|
@@ -629,15 +635,18 @@
|
|
|
<select id="queryInspectionItemPlan" resultType="int">
|
|
|
SELECT COUNT(DISTINCT iip.id_) FROM inspection_item_plan iip
|
|
|
WHERE iip.status_ = 0 AND iip.memo_ = '' AND DATE_FORMAT(iip.plan_start_,'%Y-%m-%d') < DATE_FORMAT(NOW(),'%Y-%m-%d')
|
|
|
+ AND DATE_FORMAT(iip.plan_start_,'%Y-%m-%d') >= #{startTime}
|
|
|
<if test="organIdsStr != null and organIdsStr != ''">
|
|
|
AND FIND_IN_SET(iip.organ_id_,#{organIdsStr})
|
|
|
</if>
|
|
|
</select>
|
|
|
<select id="queryStudentVisit" resultType="int">
|
|
|
SELECT COUNT(DISTINCT ii.id_) FROM inspection_item ii
|
|
|
+ LEFT JOIN inspection i ON ii.inspection_id_ = i.id_
|
|
|
WHERE ii.item_ = 'VISIT' AND ii.memo_ =''
|
|
|
AND ii.times_ > (SELECT COUNT(DISTINCT sv.id_) FROM student_visit sv
|
|
|
WHERE sv.teacher_id_ = ii.user_id_ AND DATE_FORMAT(ii.create_time_,'%Y-%m') = DATE_FORMAT(sv.visit_time_,'%Y-%m'))
|
|
|
+ AND DATE_FORMAT(i.month_,'%Y-%m-%d') >= #{startTime}
|
|
|
<if test="organIdsStr != null and organIdsStr != ''">
|
|
|
AND FIND_IN_SET(ii.organ_id_,#{organIdsStr})
|
|
|
</if>
|