|
@@ -41,6 +41,7 @@
|
|
|
<result column="valid_end_time_" property="validEndTime"/>
|
|
|
<result column="valid_start_time_" property="validStartTime"/>
|
|
|
<result column="tenant_id_" property="tenantId"/>
|
|
|
+ <result column="evaluate_flag_" property="evaluateFlag"/>
|
|
|
</resultMap>
|
|
|
|
|
|
<resultMap type="com.ym.mec.biz.dal.dto.Mapper" id="Mapper">
|
|
@@ -169,7 +170,8 @@
|
|
|
cs.valid_end_time_,
|
|
|
cs.valid_start_time_,
|
|
|
cs.pre_course_flag_,
|
|
|
- cs.tenant_id_
|
|
|
+ cs.tenant_id_,
|
|
|
+ cs.evaluate_flag_
|
|
|
</sql>
|
|
|
|
|
|
<!-- 根据主键查询一条记录 -->
|
|
@@ -918,7 +920,7 @@
|
|
|
LEFT JOIN course_schedule cs ON cssp.course_schedule_id_=cs.id_
|
|
|
WHERE
|
|
|
(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
|
|
|
- AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL)
|
|
|
+ AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_)
|
|
|
AND cssp.user_id_ = #{studentId} AND cs.pre_course_flag_ = 0
|
|
|
<if test="month==null">
|
|
|
AND DATE_FORMAT( NOW(), '%Y%m' ) = DATE_FORMAT( cs.class_date_, '%Y%m' )
|
|
@@ -3163,6 +3165,9 @@
|
|
|
#{courseId}
|
|
|
</foreach>
|
|
|
</update>
|
|
|
+ <update id="updateEvaluate">
|
|
|
+ UPDATE course_schedule SET evaluate_flag_ = 1 WHERE id_ = #{courseScheduleId}
|
|
|
+ </update>
|
|
|
|
|
|
<select id="getStudentCourseScheduleNum" resultMap="com.ym.mec.biz.dal.dao.PracticeGroupDao.courseGroupExport">
|
|
|
SELECT COUNT(*) total_class_times_,cssp.user_id_ student_id_
|
|
@@ -3912,4 +3917,91 @@
|
|
|
GROUP BY s.user_id_ HAVING COUNT(CASE WHEN cs.status_ = 'NOT_START' THEN 1 ELSE NULL END) <= 0 OR MAX(cs.id_) IS NULL
|
|
|
</if>
|
|
|
</select>
|
|
|
+ <resultMap id="EvaluateCourseDto" type="com.ym.mec.biz.dal.dto.EvaluateCourseDto">
|
|
|
+ <result property="groupType" column="group_type_"/>
|
|
|
+ <result property="courseType" column="type_"/>
|
|
|
+ <result property="teachMode" column="teach_mode_"/>
|
|
|
+ <result property="classStartTime" column="class_start_time_"/>
|
|
|
+ <result property="classEndTime" column="class_end_time_"/>
|
|
|
+ <result property="courseScheduleId" column="course_schedule_id_"/>
|
|
|
+ <result property="courseName" column="name_"/>
|
|
|
+ <result property="schoolName" column="school_name_"/>
|
|
|
+ <result property="courseScheduleReviewId" column="course_schedule_review_id_"/>
|
|
|
+ </resultMap>
|
|
|
+ <sql id="queryCourseEvaluateSql">
|
|
|
+ <where>
|
|
|
+ cs.status_ = 'OVER' AND ta.sign_in_time_ IS NOT NULL
|
|
|
+ AND cs.del_flag_ = 0 AND (cs.is_lock_ = 0 OR cs.is_lock_ IS NULL) AND cs.pre_course_flag_ = 0
|
|
|
+ AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_) AND sa.id_ IS NOT NULL
|
|
|
+ <if test="teacherId != null">
|
|
|
+ AND ta.teacher_id_ = #{teacherId}
|
|
|
+ </if>
|
|
|
+ <if test="evaluateFlag != null">
|
|
|
+ AND cs.evaluate_flag_ = #{evaluateFlag}
|
|
|
+ </if>
|
|
|
+ </where>
|
|
|
+ </sql>
|
|
|
+ <select id="queryCourseEvaluateList" resultMap="EvaluateCourseDto">
|
|
|
+ SELECT cs.id_ course_schedule_id_,CONCAT(cs.class_date_," ",cs.start_class_time_) class_start_time_,
|
|
|
+ CONCAT(cs.class_date_," ",cs.end_class_time_) class_end_time_,csr.id_ course_schedule_review_id_,
|
|
|
+ cs.name_,cs.group_type_,cs.type_,cs.teach_mode_,CASE WHEN s.name_ IS NULL THEN '网络教室' ELSE s.name_ END school_name_
|
|
|
+ FROM course_schedule cs
|
|
|
+ LEFT JOIN course_schedule_review csr ON csr.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cs.id_ AND sa.status_ = 'NORMAL'
|
|
|
+ LEFT JOIN class_group cg ON cg.id_ = cs.class_group_id_
|
|
|
+ LEFT JOIN school s ON s.id_ = cs.schoole_id_
|
|
|
+ <include refid="queryCourseEvaluateSql"/>
|
|
|
+ GROUP BY cs.id_
|
|
|
+ ORDER BY cs.class_date_ DESC,cs.start_class_time_ DESC
|
|
|
+ <include refid="global.limit"/>
|
|
|
+ </select>
|
|
|
+ <select id="countCourseEvaluateList" resultType="java.lang.Integer">
|
|
|
+ SELECT COUNT(DISTINCT 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_ AND sa.status_ = 'NORMAL'
|
|
|
+ <include refid="queryCourseEvaluateSql"/>
|
|
|
+ </select>
|
|
|
+ <select id="countStudyStandard" resultType="java.lang.Integer">
|
|
|
+ SELECT COUNT(sa.user_id_)
|
|
|
+ FROM student_attendance sa
|
|
|
+ WHERE sa.id_ IS NOT NULL AND sa.course_schedule_id_ = #{courseScheduleId}
|
|
|
+ </select>
|
|
|
+ <resultMap id="StudentStandardDto" type="com.ym.mec.biz.dal.dto.StudentStandardDto">
|
|
|
+ <result property="qualifiedFlag" column="qualified_flag_"/>
|
|
|
+ <result property="userId" column="user_id_"/>
|
|
|
+ <result property="avatar" column="avatar_"/>
|
|
|
+ <result property="subjectName" column="subject_name_"/>
|
|
|
+ <result property="username" column="username_"/>
|
|
|
+ <result property="classDate" column="class_date_"/>
|
|
|
+ </resultMap>
|
|
|
+ <select id="queryStudyStandard" resultMap="StudentStandardDto">
|
|
|
+ SELECT su.avatar_,su.username_,sa.user_id_,sb.name_ subject_name_,sa.qualified_flag_
|
|
|
+ FROM student_attendance sa
|
|
|
+ LEFT JOIN student s ON s.user_id_ = sa.user_id_
|
|
|
+ LEFT JOIN `subject` sb ON sb.id_ = s.subject_id_list_
|
|
|
+ LEFT JOIN sys_user su ON su.id_ = s.user_id_
|
|
|
+ WHERE sa.id_ IS NOT NULL AND sa.course_schedule_id_ = #{courseScheduleId}
|
|
|
+ <include refid="global.limit"/>
|
|
|
+ </select>
|
|
|
+ <select id="countStudyStandardWaitVisit" resultType="java.lang.Integer">
|
|
|
+ SELECT COUNT(sa.user_id_) FROM course_schedule cs
|
|
|
+ LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = csts.course_schedule_id_
|
|
|
+ LEFT JOIN student_visit sv ON sv.object_id_ = sa.id_ AND sv.purpose_ = '教学内容未达标'
|
|
|
+ WHERE csts.user_id_ = #{teacherId} AND cs.evaluate_flag_ = 1 AND sa.qualified_flag_ = 0 AND sv.id_ IS NULL
|
|
|
+ </select>
|
|
|
+ <select id="queryStudyStandardWaitVisit" resultMap="StudentStandardDto">
|
|
|
+ SELECT su.avatar_,s.user_id_,su.username_,cs.class_date_,sb.name_ subject_name_ FROM course_schedule cs
|
|
|
+ LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
|
|
|
+ LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = csts.course_schedule_id_
|
|
|
+ LEFT JOIN student_visit sv ON sv.object_id_ = sa.id_ AND sv.purpose_ = '教学内容未达标'
|
|
|
+ LEFT JOIN student s ON s.user_id_ = sa.user_id_
|
|
|
+ LEFT JOIN `subject` sb ON sb.id_ = s.subject_id_list_
|
|
|
+ LEFT JOIN sys_user su ON su.id_ = s.user_id_
|
|
|
+ WHERE csts.user_id_ = #{teacherId} AND cs.evaluate_flag_ = 1 AND sa.qualified_flag_ = 0 AND sv.id_ IS NULL
|
|
|
+ ORDER BY cs.class_date_ DESC,cs.start_class_time_ DESC
|
|
|
+ <include refid="global.limit"/>
|
|
|
+ </select>
|
|
|
</mapper>
|