Sfoglia il codice sorgente

优化识别对照sql

yin 1 anno fa
parent
commit
31aadb2ce7

+ 3 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/mapper/ScanOmrTaskMapper.java

@@ -2,10 +2,10 @@ package com.qmth.teachcloud.mark.mapper;
 
 import java.util.List;
 
-import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import org.apache.ibatis.annotations.Param;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import com.qmth.teachcloud.mark.dto.ScanStudentDto;
 import com.qmth.teachcloud.mark.entity.ScanOmrTask;
 import com.qmth.teachcloud.mark.enums.OmrTaskStatus;
@@ -24,12 +24,13 @@ public interface ScanOmrTaskMapper extends BaseMapper<ScanOmrTask> {
 			@Param(value = "pageSize") int pageSize, @Param(value = "status") OmrTaskStatus status);
 
 	List<ScanStudentDto> listByExamIdAndStatusAndUserId(@Param(value = "examId") Long examId,
+														@Param(value = "scanStatus") String scanStatus,
 														@Param("courseCode") String courseCode,
 														@Param("coursePaperId") String coursePaperId,
 														@Param(value = "status") OmrTaskStatus status,
 														@Param("markPaperStatus") String markPaperStatus, @Param("dpr") DataPermissionRule dpr);
 
-	int getStudentCountByExamAndStatusAndUserId(@Param(value = "examId") Long examId,
+	int getStudentCountByExamAndStatusAndUserId(@Param(value = "examId") Long examId,@Param(value = "scanStatus") String scanStatus,
 												@Param("courseCode") String courseCode, @Param("coursePaperId") String coursePaperId, @Param(value = "status") String status, @Param("markPaperStatus") String markPaperStatus, @Param("dpr") DataPermissionRule dpr);
 
     int countOmrTask(@Param("scanOmrTask") ScanOmrTask scanOmrTask, @Param("dpr") DataPermissionRule dpr);

+ 2 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanOmrTaskServiceImpl.java

@@ -613,7 +613,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
     @Override
     public int getFinishStudentCountByExamAndUserId(Long examId, String courseCode, String coursePaperId, String status,
             DataPermissionRule dpr) {
-        return this.baseMapper.getStudentCountByExamAndStatusAndUserId(examId, courseCode, coursePaperId, status,
+        return this.baseMapper.getStudentCountByExamAndStatusAndUserId(examId,ScanStatus.SCANNED.getName(), courseCode, coursePaperId, status,
                 MarkPaperStatus.FORMAL.name(), dpr);
     }
 
@@ -654,7 +654,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(),
                 sysUser.getId(), ServletUtil.getRequest().getServletPath());
-        return this.baseMapper.listByExamIdAndStatusAndUserId(examId, courseCode, coursePaperId, status,
+        return this.baseMapper.listByExamIdAndStatusAndUserId(examId,ScanStatus.SCANNED.getName(), courseCode, coursePaperId, status,
                 MarkPaperStatus.FORMAL.name(), dpr);
     }
 

+ 7 - 1
teachcloud-mark/src/main/resources/mapper/ScanOmrTaskMapper.xml

@@ -33,7 +33,7 @@
 	</select>
 	
 	<select id="listByExamIdAndStatusAndUserId" resultType="com.qmth.teachcloud.mark.dto.ScanStudentDto">
-		select 
+		select
 			s.id studentId,
 			s.student_name,
 			s.student_code
@@ -42,6 +42,9 @@
 				<if test="examId != null">
 					and s.exam_id = #{examId}
 				</if>
+				<if test="scanStatus != null">
+					and s.scan_status = #{scanStatus}
+				</if>
 				<if test="courseCode != null and courseCode != ''">
 					and s.course_code = #{courseCode}
 				</if>
@@ -77,6 +80,9 @@
 			<if test="examId != null">
 				and s.exam_id = #{examId}
 			</if>
+			<if test="scanStatus != null">
+				and s.scan_status = #{scanStatus}
+			</if>
 			<if test="courseCode != null and courseCode != ''">
 				and s.course_code = #{courseCode}
 			</if>