فهرست منبع

feat:服务指标搜索优化

Joburgess 4 سال پیش
والد
کامیت
b93bd54b92

+ 18 - 32
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -280,9 +280,6 @@
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
 			AND actual_exercises_num_ &gt;= expect_exercises_num_
 		</if>
-		<if test="serviceIsError!=null and serviceIsError">
-			AND 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_
@@ -293,14 +290,12 @@
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
 				AND exercises_message_num_ &lt; exercises_reply_num_
 			</if>
-			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-				AND exercises_message_num_ &gt;= exercises_reply_num_
-			</if>
-
 			<if test="serviceIsError!=null and serviceIsError">
+				AND (actual_exercises_num_ &lt; expect_exercises_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_
 			</if>
-
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
 				AND exercises_message_timely_num_ &lt; exercises_message_num_
 			</if>
@@ -318,10 +313,10 @@
 			<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_
 			</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_
-			</if>
 			<if test="serviceIsError!=null and serviceIsError">
+				AND (actual_exercises_num_ &lt; expect_exercises_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_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
@@ -379,9 +374,6 @@
 		<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
 			AND actual_exercises_num_ &gt;= expect_exercises_num_
 		</if>
-		<if test="serviceIsError!=null and serviceIsError">
-			AND 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_
@@ -392,10 +384,10 @@
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
 				AND exercises_message_num_ &lt; exercises_reply_num_
 			</if>
-			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-				AND exercises_message_num_ &gt;= exercises_reply_num_
-			</if>
 			<if test="serviceIsError!=null and serviceIsError">
+				AND (actual_exercises_num_ &lt; expect_exercises_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_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
@@ -415,10 +407,10 @@
 			<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_
 			</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_
-			</if>
 			<if test="serviceIsError!=null and serviceIsError">
+				AND (actual_exercises_num_ &lt; expect_exercises_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_
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
@@ -603,9 +595,6 @@
 			<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
 				AND SUM(actual_exercises_num_) &gt;= SUM(expect_exercises_num_)
 			</if>
-			<if test="serviceIsError!=null and serviceIsError">
-				AND SUM(actual_exercises_num_) &gt;= SUM(expect_exercises_num_)
-			</if>
 			<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
 				AND SUM(exercises_reply_num_) &lt; SUM(actual_exercises_num_)
 			</if>
@@ -615,10 +604,10 @@
 			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
 				AND SUM(exercises_message_num_) &lt; SUM(exercises_reply_num_)
 			</if>
-			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-				AND SUM(exercises_message_num_) &gt;= SUM(exercises_reply_num_)
-			</if>
 			<if test="serviceIsError!=null and serviceIsError">
+				AND (SUM(actual_exercises_num_) &lt; SUM(expect_exercises_num_) OR SUM(exercises_message_num_) &lt; SUM(exercises_reply_num_))
+			</if>
+			<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
 				AND SUM(exercises_message_num_) &gt;= SUM(exercises_reply_num_)
 			</if>
 			<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">
@@ -656,9 +645,6 @@
 				<if test="actualExercisesNumIsAchieve!=null and actualExercisesNumIsAchieve==1">
 					AND SUM(actual_exercises_num_) &gt;= SUM(expect_exercises_num_)
 				</if>
-				<if test="serviceIsError!=null and serviceIsError">
-					AND SUM(actual_exercises_num_) &gt;= SUM(expect_exercises_num_)
-				</if>
 				<if test="exercisesReplyNumIsAchieve!=null and exercisesReplyNumIsAchieve==0">
 					AND SUM(exercises_reply_num_) &lt; SUM(actual_exercises_num_)
 				</if>
@@ -668,10 +654,10 @@
 				<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==0">
 					AND SUM(exercises_message_num_) &lt; SUM(exercises_reply_num_)
 				</if>
-				<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
-					AND SUM(exercises_message_num_) &gt;= SUM(exercises_reply_num_)
-				</if>
 				<if test="serviceIsError!=null and serviceIsError">
+					AND (SUM(actual_exercises_num_) &lt; SUM(expect_exercises_num_) OR SUM(exercises_message_num_) &lt; SUM(exercises_reply_num_))
+				</if>
+				<if test="exercisesMessageNumIsAchieve!=null and exercisesMessageNumIsAchieve==1">
 					AND SUM(exercises_message_num_) &gt;= SUM(exercises_reply_num_)
 				</if>
 				<if test="exercisesMessageTimelyNumIsAchieve!=null and exercisesMessageTimelyNumIsAchieve==0">

+ 6 - 2
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -2530,8 +2530,12 @@ public class ExportController extends BaseController {
         }
 
         try {
-            String[] header = {"分部", "老师编号", "老师姓名", "服务周期", "课后作业(节)", "课外作业(人)", "是否异常", "提醒时间", "操作人"};
-            String[] body = {"organName", "teacherId", "teacherName", "dateRange", "homeworkNum", "exerciseNum", "unDone==0?'否':'是'", "remindDate", "operatorName"};
+            String[] header = {"分部", "老师编号", "老师姓名", "服务周期", "课后作业(节)", "课外作业(人)",
+                    "作业布置", "作业点评", "作业提交率",
+                    "提醒时间", "操作人"};
+            String[] body = {"organName", "teacherId", "teacherName", "dateRange", "homeworkNum", "exerciseNum",
+                    "expectExercisesNum>actualExercisesNum?'异常':'正常'", "exercisesReplyNum>exercisesMessageNum?'异常':'正常'", "exercisesReplyNum",
+                    "remindDate", "operatorName"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, result.getRows());
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=teacherDefaultSalary-" + DateUtil.getDate(new Date()) + ".xls");