ソースを参照

feat:服务指标列表搜索调整

Joburgess 4 年 前
コミット
618b007d03

+ 45 - 29
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -274,52 +274,60 @@
 		<if test="expectExercisesNum!=null">
 			AND expect_exercises_num_ = #{expectExercisesNum}
 		</if>
+		AND (1=1
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
-			AND actual_exercises_num_ &lt; expect_exercises_num_
+			OR actual_exercises_num_ &lt; expect_exercises_num_
 		</if>
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
-			AND actual_exercises_num_ &gt;= expect_exercises_num_
+			OR actual_exercises_num_ &gt;= expect_exercises_num_
 		</if>
 		<if test="submitStartDate==null or submitEndDate==null">
 			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
-				AND exercises_reply_num_ &lt; actual_exercises_num_
+				OR exercises_reply_num_ &lt; actual_exercises_num_
 			</if>
 			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
-				AND exercises_reply_num_ &gt;= actual_exercises_num_
+				OR exercises_reply_num_ &gt;= actual_exercises_num_
 			</if>
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
-				AND exercises_message_num_ &lt; exercises_reply_num_
+				OR exercises_message_num_ &lt; exercises_reply_num_
 			</if>
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-				AND exercises_message_num_ &gt;= exercises_reply_num_
+				OR exercises_message_num_ &gt;= exercises_reply_num_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
-				AND exercises_message_timely_num_ &lt; exercises_message_num_
+				OR exercises_message_timely_num_ &lt; exercises_message_num_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
-				AND exercises_message_timely_num_ &gt;= exercises_message_num_
+				OR exercises_message_timely_num_ &gt;= 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) &lt; actual_exercises_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_reply_num_,0) &lt; 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) &gt;= actual_exercises_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_reply_num_,0) &gt;= 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) &lt; exercises_reply_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_num_,0) &lt; 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) &gt;= exercises_reply_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_num_,0) &gt;= 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) &lt; exercises_message_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_timely_num_,0) &lt; 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) &gt;= exercises_message_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_timely_num_,0) &gt;= exercises_message_num_)
 			</if>
 		</if>
+		)
 		ORDER BY student_id_
 		<include refid="global.limit"/>
 	</select>
@@ -359,55 +367,63 @@
 			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>
 
+		AND (1=1
 		<if test="expectExercisesNum!=null">
-			AND expect_exercises_num_ = #{expectExercisesNum}
+			OR expect_exercises_num_ = #{expectExercisesNum}
 		</if>
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==0">
-			AND actual_exercises_num_ &lt; expect_exercises_num_
+			OR actual_exercises_num_ &lt; expect_exercises_num_
 		</if>
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
-			AND actual_exercises_num_ &gt;= expect_exercises_num_
+			OR actual_exercises_num_ &gt;= expect_exercises_num_
 		</if>
 		<if test="submitStartDate==null or submitEndDate==null">
 			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
-				AND exercises_reply_num_ &lt; actual_exercises_num_
+				OR exercises_reply_num_ &lt; actual_exercises_num_
 			</if>
 			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==1">
-				AND exercises_reply_num_ &gt;= actual_exercises_num_
+				OR exercises_reply_num_ &gt;= actual_exercises_num_
 			</if>
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
-				AND exercises_message_num_ &lt; exercises_reply_num_
+				OR exercises_message_num_ &lt; exercises_reply_num_
 			</if>
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-				AND exercises_message_num_ &gt;= exercises_reply_num_
+				OR exercises_message_num_ &gt;= exercises_reply_num_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
-				AND exercises_message_timely_num_ &lt; exercises_message_num_
+				OR exercises_message_timely_num_ &lt; exercises_message_num_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==1">
-				AND exercises_message_timely_num_ &gt;= exercises_message_num_
+				OR exercises_message_timely_num_ &gt;= 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) &lt; actual_exercises_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_reply_num_,0) &lt; 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) &gt;= actual_exercises_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_reply_num_,0) &gt;= 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) &lt; exercises_reply_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_num_,0) &lt; 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) &gt;= exercises_reply_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_num_,0) &gt;= 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) &lt; exercises_message_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_timely_num_,0) &lt; 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) &gt;= exercises_message_num_
+				OR (IF(DATE_FORMAT(last_submit_time_, '%Y-%m-%d') BETWEEN #{submitStartDate} AND
+				#{submitEndDate},exercises_message_timely_num_,0) &gt;= exercises_message_num_)
 			</if>
 		</if>
+		)
 		) tmp
 	</select>