|
@@ -22,6 +22,7 @@
|
|
|
<result column="update_time_" property="updateTime" />
|
|
|
<result column="last_submit_time_" property="lastSubmitTime"/>
|
|
|
<result column="serve_type_" property="serveType"/>
|
|
|
+ <result column="course_ids_" property="courseIds"/>
|
|
|
</resultMap>
|
|
|
|
|
|
<resultMap id="StudentExercisesSituationDto" type="com.ym.mec.biz.dal.dto.StudentExercisesSituationDto" extends="StudentExtracurricularExercisesSituation">
|
|
@@ -48,15 +49,24 @@
|
|
|
SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL
|
|
|
</selectKey>
|
|
|
-->
|
|
|
- INSERT INTO student_extracurricular_exercises_situation_ (id_,student_id_,week_of_year_,monday_,sunday_,teacher_id_,expect_exercises_num_,actual_exercises_num_,exercises_reply_num_,exercises_message_num_,exercises_message_timely_num_,create_time_,update_time_,last_submit_time_,serve_type_)
|
|
|
- VALUES(#{id},#{studentId},#{weekOfYear},#{monday},#{sunday},#{teacherId},#{expectExercisesNum},#{actualExercisesNum},#{exercisesReplyNum},#{exercisesMessageNum},#{exercisesMessageTimelyNum},NOW(),NOW(),#{lastSubmitTime},#{serveType})
|
|
|
+ INSERT INTO student_extracurricular_exercises_situation_ (id_,student_id_,week_of_year_,monday_,sunday_,teacher_id_,expect_exercises_num_,
|
|
|
+ actual_exercises_num_,exercises_reply_num_,exercises_message_num_,
|
|
|
+ exercises_message_timely_num_,create_time_,update_time_,last_submit_time_,
|
|
|
+ serve_type_,course_ids_)
|
|
|
+ VALUES(#{id},#{studentId},#{weekOfYear},#{monday},#{sunday},#{teacherId},#{expectExercisesNum},#{actualExercisesNum},#{exercisesReplyNum},
|
|
|
+ #{exercisesMessageNum},#{exercisesMessageTimelyNum},NOW(),NOW(),#{lastSubmitTime},#{serveType},#{courseIds})
|
|
|
</insert>
|
|
|
|
|
|
<insert id="batchInsert" parameterType="com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
|
|
|
- INSERT INTO student_extracurricular_exercises_situation_ (student_id_,week_of_year_,monday_,sunday_,teacher_id_,expect_exercises_num_,actual_exercises_num_,exercises_reply_num_,exercises_message_num_,exercises_message_timely_num_,create_time_,update_time_,last_submit_time_,serve_type_)
|
|
|
+ INSERT INTO student_extracurricular_exercises_situation_ (student_id_,week_of_year_,monday_,sunday_,teacher_id_,expect_exercises_num_,
|
|
|
+ actual_exercises_num_,exercises_reply_num_,exercises_message_num_,
|
|
|
+ exercises_message_timely_num_,create_time_,update_time_,last_submit_time_,
|
|
|
+ serve_type_,course_ids_)
|
|
|
VALUES
|
|
|
<foreach collection="situations" item="situation" separator=",">
|
|
|
- (#{situation.studentId},#{situation.weekOfYear},#{situation.monday},#{situation.sunday},#{situation.teacherId},#{situation.expectExercisesNum},#{situation.actualExercisesNum},#{situation.exercisesReplyNum},#{situation.exercisesMessageNum},#{situation.exercisesMessageTimelyNum},NOW(),NOW(),#{situation.lastSubmitTime},#{situation.serveType})
|
|
|
+ (#{situation.studentId},#{situation.weekOfYear},#{situation.monday},#{situation.sunday},#{situation.teacherId},#{situation.expectExercisesNum},
|
|
|
+ #{situation.actualExercisesNum},#{situation.exercisesReplyNum},#{situation.exercisesMessageNum},#{situation.exercisesMessageTimelyNum},
|
|
|
+ NOW(),NOW(),#{situation.lastSubmitTime},#{situation.serveType},#{situation.courseIds})
|
|
|
</foreach>
|
|
|
</insert>
|
|
|
|
|
@@ -106,10 +116,61 @@
|
|
|
<if test="serveType!=null">
|
|
|
serve_type_=#{serveType},
|
|
|
</if>
|
|
|
+ <if test="courseIds!=null and courseIds!=''">
|
|
|
+ course_ids_=#{courseIds},
|
|
|
+ </if>
|
|
|
update_time_ = #{updateTime}
|
|
|
</set> WHERE id_ = #{id}
|
|
|
</update>
|
|
|
|
|
|
+ <update id="batchUpdate" parameterType="com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation">
|
|
|
+ <foreach collection="situations" item="situation" separator=";">
|
|
|
+ UPDATE student_extracurricular_exercises_situation_
|
|
|
+ <set>
|
|
|
+ <if test="situation.exercisesReplyNum != null">
|
|
|
+ exercises_reply_num_ = #{situation.exercisesReplyNum},
|
|
|
+ </if>
|
|
|
+ <if test="situation.monday != null">
|
|
|
+ monday_ = #{situation.monday},
|
|
|
+ </if>
|
|
|
+ <if test="situation.weekOfYear != null">
|
|
|
+ week_of_year_ = #{situation.weekOfYear},
|
|
|
+ </if>
|
|
|
+ <if test="situation.exercisesMessageNum != null">
|
|
|
+ exercises_message_num_ = #{situation.exercisesMessageNum},
|
|
|
+ </if>
|
|
|
+ <if test="situation.teacherId != null">
|
|
|
+ teacher_id_ = #{situation.teacherId},
|
|
|
+ </if>
|
|
|
+ <if test="situation.actualExercisesNum != null">
|
|
|
+ actual_exercises_num_ = #{situation.actualExercisesNum},
|
|
|
+ </if>
|
|
|
+ <if test="situation.exercisesMessageTimelyNum != null">
|
|
|
+ exercises_message_timely_num_ = #{situation.exercisesMessageTimelyNum},
|
|
|
+ </if>
|
|
|
+ <if test="situation.studentId != null">
|
|
|
+ student_id_ = #{situation.studentId},
|
|
|
+ </if>
|
|
|
+ <if test="situation.expectExercisesNum != null">
|
|
|
+ expect_exercises_num_ = #{situation.expectExercisesNum},
|
|
|
+ </if>
|
|
|
+ <if test="situation.sunday != null">
|
|
|
+ sunday_ = #{situation.sunday},
|
|
|
+ </if>
|
|
|
+ <if test="situation.lastSubmitTime!=null">
|
|
|
+ last_submit_time_=#{situation.lastSubmitTime},
|
|
|
+ </if>
|
|
|
+ <if test="situation.serveType!=null">
|
|
|
+ serve_type_=#{situation.serveType},
|
|
|
+ </if>
|
|
|
+ <if test="situation.courseIds!=null and situation.courseIds!=''">
|
|
|
+ course_ids_=#{situation.courseIds},
|
|
|
+ </if>
|
|
|
+ update_time_ = NOW()
|
|
|
+ </set> WHERE id_ = #{situation.id}
|
|
|
+ </foreach>
|
|
|
+ </update>
|
|
|
+
|
|
|
<!-- 根据主键删除一条记录 -->
|
|
|
<delete id="delete" >
|
|
|
DELETE FROM student_extracurricular_exercises_situation_ WHERE id_ = #{id}
|
|
@@ -133,31 +194,31 @@
|
|
|
|
|
|
<select id="findExercisesSituations" resultMap="StudentExercisesSituationDto">
|
|
|
SELECT
|
|
|
- MAX(sees.id_) id_,
|
|
|
+ sees.id_ id_,
|
|
|
student_id_,
|
|
|
stu.username_ student_name_,
|
|
|
- GROUP_CONCAT(DISTINCT tea.real_name_ ORDER BY tea.id_) teacher_name_,
|
|
|
+ tea.real_name_ teacher_name_,
|
|
|
o.name_ organ_name_,
|
|
|
- SUM( expect_exercises_num_ ) expect_exercises_num_,
|
|
|
- SUM( actual_exercises_num_ ) actual_exercises_num_,
|
|
|
+ expect_exercises_num_ expect_exercises_num_,
|
|
|
+ actual_exercises_num_ actual_exercises_num_,
|
|
|
<if test="submitStartDate==null or submitEndDate==null">
|
|
|
- SUM( exercises_reply_num_ ) exercises_reply_num_,
|
|
|
- SUM( exercises_message_num_ ) exercises_message_num_,
|
|
|
- SUM( exercises_message_timely_num_ ) exercises_message_timely_num_,
|
|
|
- MAX(last_submit_time_) last_submit_time_
|
|
|
+ exercises_reply_num_ exercises_reply_num_,
|
|
|
+ exercises_message_num_ exercises_message_num_,
|
|
|
+ exercises_message_timely_num_ exercises_message_timely_num_,
|
|
|
+ last_submit_time_ last_submit_time_
|
|
|
</if>
|
|
|
<if test="submitStartDate!=null and submitEndDate!=null">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0)) exercises_reply_num_,
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0)) exercises_message_num_,
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0)) exercises_message_timely_num_,
|
|
|
- MAX(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},last_submit_time_, NULL)) last_submit_time_
|
|
|
+ IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0) exercises_reply_num_,
|
|
|
+ IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0) exercises_message_num_,
|
|
|
+ IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0) exercises_message_timely_num_,
|
|
|
+ IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},last_submit_time_, NULL) last_submit_time_
|
|
|
</if>
|
|
|
FROM
|
|
|
- student_extracurricular_exercises_situation_ sees
|
|
|
- LEFT JOIN sys_user stu ON stu.id_=sees.student_id_
|
|
|
- LEFT JOIN teacher t ON t.id_=sees.teacher_id_
|
|
|
- LEFT JOIN sys_user tea ON tea.id_=sees.teacher_id_
|
|
|
- LEFT JOIN organization o ON stu.organ_id_=o.id_
|
|
|
+ student_extracurricular_exercises_situation_ sees
|
|
|
+ LEFT JOIN sys_user stu ON stu.id_=sees.student_id_
|
|
|
+ LEFT JOIN teacher t ON t.id_=sees.teacher_id_
|
|
|
+ LEFT JOIN sys_user tea ON tea.id_=sees.teacher_id_
|
|
|
+ LEFT JOIN organization o ON stu.organ_id_=o.id_
|
|
|
WHERE
|
|
|
sees.monday_ >= #{monday}
|
|
|
AND sees.sunday_ <= #{sunday}
|
|
@@ -182,57 +243,56 @@
|
|
|
<if test="existPracticeCourse!=null and existPracticeCourse==0">
|
|
|
AND NOT EXISTS (SELECT cssp.id_ FROM course_schedule_student_payment cssp LEFT JOIN course_schedule cs ON cs.id_=cssp.course_schedule_id_ LEFT JOIN practice_group pg ON pg.id_=cssp.music_group_id_ WHERE cssp.user_id_=sees.student_id_ AND cssp.group_type_='PRACTICE' AND pg.type_='CHARGE' AND class_date_ BETWEEN #{monday} AND #{sunday})
|
|
|
</if>
|
|
|
- GROUP BY
|
|
|
- student_id_
|
|
|
- <trim prefix="HAVING" suffixOverrides="and">
|
|
|
- <if test="expectExercisesNum!=null"> SUM( expect_exercises_num_ ) = #{expectExercisesNum}</if>
|
|
|
- <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
|
|
|
- SUM( actual_exercises_num_ )<SUM( expect_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
|
|
|
- SUM( actual_exercises_num_ )>=SUM( expect_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="submitStartDate==null or submitEndDate==null">
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
- SUM( exercises_reply_num_ ) < SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
- SUM( exercises_reply_num_ ) >= SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
- SUM( exercises_message_num_ ) < SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
- SUM( exercises_message_num_ ) >= SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
- SUM( exercises_message_timely_num_ ) < SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
- SUM( exercises_message_timely_num_ ) >= SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
+
|
|
|
+ <if test="expectExercisesNum!=null">
|
|
|
+ AND expect_exercises_num_ = #{expectExercisesNum}
|
|
|
+ </if>
|
|
|
+ <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
|
|
|
+ AND actual_exercises_num_ < expect_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
|
|
|
+ AND actual_exercises_num_ >= expect_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="submitStartDate==null or submitEndDate==null">
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
+ AND exercises_reply_num_ < SUM( actual_exercises_num_ )
|
|
|
</if>
|
|
|
- <if test="submitStartDate!=null and submitEndDate!=null">
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0)) < SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0)) >= SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0)) < SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0)) >= SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0)) < SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0)) >= SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
+ AND exercises_reply_num_ >= actual_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
+ AND exercises_message_num_ < exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
+ AND exercises_message_num_ >= exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
+ AND exercises_message_timely_num_ < exercises_message_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
+ AND exercises_message_timely_num_ >= exercises_message_num_
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="submitStartDate!=null and submitEndDate!=null">
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0) < actual_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0) >= actual_exercises_num_
|
|
|
</if>
|
|
|
- </trim>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0) < exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0) >= exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0) < exercises_message_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0) >= exercises_message_num_
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
ORDER BY student_id_
|
|
|
<include refid="global.limit"/>
|
|
|
</select>
|
|
@@ -271,65 +331,66 @@
|
|
|
<if test="existPracticeCourse!=null and existPracticeCourse==0">
|
|
|
AND NOT EXISTS (SELECT cssp.id_ FROM course_schedule_student_payment cssp LEFT JOIN course_schedule cs ON cs.id_=cssp.course_schedule_id_ LEFT JOIN practice_group pg ON pg.id_=cssp.music_group_id_ WHERE cssp.user_id_=sees.student_id_ AND cssp.group_type_='PRACTICE' AND pg.type_='CHARGE' AND class_date_ BETWEEN #{monday} AND #{sunday})
|
|
|
</if>
|
|
|
- GROUP BY
|
|
|
- student_id_
|
|
|
- <trim prefix="HAVING" suffixOverrides="and">
|
|
|
- <if test="expectExercisesNum!=null"> SUM( expect_exercises_num_ ) = #{expectExercisesNum}</if>
|
|
|
- <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
|
|
|
- SUM( actual_exercises_num_ )<SUM( expect_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
|
|
|
- SUM( actual_exercises_num_ )>=SUM( expect_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="submitStartDate==null or submitEndDate==null">
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
- SUM( exercises_reply_num_ ) < SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
- SUM( exercises_reply_num_ ) >= SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
- SUM( exercises_message_num_ ) < SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
- SUM( exercises_message_num_ ) >= SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
- SUM( exercises_message_timely_num_ ) < SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
- SUM( exercises_message_timely_num_ ) >= SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
+
|
|
|
+ <if test="expectExercisesNum!=null">
|
|
|
+ AND expect_exercises_num_ = #{expectExercisesNum}
|
|
|
+ </if>
|
|
|
+ <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
|
|
|
+ AND actual_exercises_num_ < expect_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
|
|
|
+ AND actual_exercises_num_ >= expect_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="submitStartDate==null or submitEndDate==null">
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
+ AND exercises_reply_num_ < SUM( actual_exercises_num_ )
|
|
|
</if>
|
|
|
- <if test="submitStartDate!=null and submitEndDate!=null">
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0)) < SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0)) >= SUM( actual_exercises_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0)) < SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0)) >= SUM( exercises_reply_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0)) < SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
- <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
- SUM(IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0)) >= SUM( exercises_message_num_ ) and
|
|
|
- </if>
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
+ AND exercises_reply_num_ >= actual_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
+ AND exercises_message_num_ < exercises_reply_num_
|
|
|
</if>
|
|
|
- </trim>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
+ AND exercises_message_num_ >= exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
+ AND exercises_message_timely_num_ < exercises_message_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
+ AND exercises_message_timely_num_ >= exercises_message_num_
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="submitStartDate!=null and submitEndDate!=null">
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0) < actual_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_reply_num_,0) >= actual_exercises_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0) < exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_num_,0) >= exercises_reply_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0) < exercises_message_num_
|
|
|
+ </if>
|
|
|
+ <if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
|
|
|
+ AND IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND #{submitEndDate},exercises_message_timely_num_,0) >= exercises_message_num_
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
) tmp
|
|
|
</select>
|
|
|
+
|
|
|
<select id="findExercisesSituationsById" resultMap="StudentExtracurricularExercisesSituation">
|
|
|
SELECT * FROM student_extracurricular_exercises_situation_ WHERE id_ IN
|
|
|
<foreach collection="ids" item="id" separator="," open="(" close=")">
|
|
|
#{id}
|
|
|
</foreach>
|
|
|
</select>
|
|
|
+
|
|
|
<select id="findTeacherExercisesServiceSituations" resultType="com.ym.mec.biz.dal.dto.TeacherExercisesServiceDto">
|
|
|
SELECT
|
|
|
teacher_id_ teacherId,
|
|
@@ -346,12 +407,15 @@
|
|
|
GROUP BY
|
|
|
teacher_id_;
|
|
|
</select>
|
|
|
+
|
|
|
<select id="findLastWeekTodayUpdateNum" resultType="int">
|
|
|
SELECT COUNT(id_) FROM student_extracurricular_exercises_situation_ WHERE sunday_=#{sunday} AND DATE_FORMAT(update_time_,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d')
|
|
|
</select>
|
|
|
+
|
|
|
<select id="findStudentExercisesSituationsWithMonDay" resultMap="StudentExtracurricularExercisesSituation">
|
|
|
SELECT * FROM student_extracurricular_exercises_situation_ WHERE monday_=#{monday} AND student_id_=#{studentId}
|
|
|
</select>
|
|
|
+
|
|
|
<select id="getNoFinishedServiceTeacher" resultType="java.util.Map">
|
|
|
SELECT
|
|
|
teacher_id_ AS 'key',
|
|
@@ -366,4 +430,18 @@
|
|
|
GROUP BY
|
|
|
teacher_id_
|
|
|
</select>
|
|
|
+
|
|
|
+ <select id="countWeekServiceNum" resultType="int">
|
|
|
+ SELECT COUNT(id_) FROM student_extracurricular_exercises_situation_ WHERE monday_=#{sunday}
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="findWeekServiceWithStudents" resultMap="StudentExtracurricularExercisesSituation">
|
|
|
+ SELECT * FROM student_extracurricular_exercises_situation_ WHERE monday_=#{monday} AND student_id_ IN
|
|
|
+ <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
|
|
|
+ #{studentId}
|
|
|
+ </foreach>
|
|
|
+ </select>
|
|
|
+ <select id="findTeacherNoStartServices" resultMap="StudentExtracurricularExercisesSituation">
|
|
|
+ SELECT * FROM student_extracurricular_exercises_situation_ WHERE teacher_id_=#{teacherId} AND actual_exercises_num_<=0 AND serve_type_='HOMEWORK';
|
|
|
+ </select>
|
|
|
</mapper>
|