| 
					
				 | 
			
			
				@@ -506,6 +506,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		<result column="remind_time_" property="remindDate"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		<result column="operator_name_" property="operatorName"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		<result column="job_nature_" property="jobNature" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<result column="expect_exercises_num_" property="expectExercisesNum" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<result column="actual_exercises_num_" property="actualExercisesNum" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<result column="exercises_reply_num_" property="exercisesReplyNum" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<result column="exercises_message_num_" property="exercisesMessageNum" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<result column="exercises_message_timely_num_" property="exercisesMessageTimelyNum" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	</resultMap> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	<sql id="queryTeacherServeInfoCondition"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -548,6 +553,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			sees.teacher_id_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			su.real_name_ teacher_name_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		    tea.job_nature_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			SUM(expect_exercises_num_) expect_exercises_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			SUM(actual_exercises_num_) actual_exercises_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			SUM(exercises_reply_num_) exercises_reply_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			SUM(exercises_message_num_) exercises_message_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			SUM(exercises_message_timely_num_) exercises_message_timely_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			SUM(CASE sees.serve_type_ WHEN 'HOMEWORK' THEN sees.expect_exercises_num_ ELSE 0 END) homework_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			SUM(CASE sees.serve_type_ WHEN 'EXERCISE' THEN 1 ELSE 0 END) exercise_num_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			SUM( sees.expect_exercises_num_-sees.not_over_course_num_ )> SUM( sees.actual_exercises_num_ ) un_done_ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -561,15 +571,40 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			LEFT JOIN sys_user su ON tea.id_=su.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		<include refid="queryTeacherServeInfoCondition" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		GROUP BY sees.monday_,sees.sunday_,sees.teacher_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		<if test="unDone!=null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			HAVING 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			<if test="unDone==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) > SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<trim prefix="HAVING" prefixOverrides="AND"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="unDone!=null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="unDone==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) > SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="unDone==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) <= SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			<if test="unDone==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) <= SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(actual_exercises_num_) < SUM(expect_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(actual_exercises_num_) >= SUM(expect_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_reply_num_) < SUM(actual_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_reply_num_) >= SUM(actual_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_message_num_) < SUM(exercises_reply_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_message_num_) >= SUM(exercises_reply_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_message_timely_num_) < SUM(exercises_message_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				AND SUM(exercises_message_timely_num_) >= SUM(exercises_message_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		</trim> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		ORDER BY sees.monday_,sees.sunday_,sees.teacher_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		<include refid="global.limit"></include> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	</select> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -586,15 +621,40 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			<include refid="queryTeacherServeInfoCondition" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			GROUP BY sees.monday_,sees.sunday_,sees.teacher_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			<if test="unDone!=null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				HAVING 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				<if test="unDone==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) > SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<trim prefix="HAVING" prefixOverrides="AND"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="unDone!=null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<if test="unDone==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						AND SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) > SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<if test="unDone==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						AND SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) <= SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				<if test="unDone==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					SUM( sees.expect_exercises_num_-sees.not_over_course_num_ ) <= SUM( sees.actual_exercises_num_ ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(actual_exercises_num_) < SUM(expect_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(actual_exercises_num_) >= SUM(expect_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_reply_num_) < SUM(actual_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_reply_num_) >= SUM(actual_exercises_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_message_num_) < SUM(exercises_reply_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_message_num_) >= SUM(exercises_reply_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_message_timely_num_) < SUM(exercises_message_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					AND SUM(exercises_message_timely_num_) >= SUM(exercises_message_num_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</trim> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			ORDER BY sees.monday_,sees.sunday_,sees.teacher_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		) e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	</select> 
			 |