Browse Source

导出成绩校验图片检查

xiatian 7 months ago
parent
commit
f24a11110c

+ 4 - 2
src/main/java/cn/com/qmth/scancentral/dao/StudentDao.java

@@ -114,7 +114,9 @@ public interface StudentDao extends BaseMapper<StudentEntity> {
 
 
     StudentAnswerVo getStudentVo(@Param("studentId") Long studentId);
     StudentAnswerVo getStudentVo(@Param("studentId") Long studentId);
 
 
-    Integer getImageCheckFailedCount(@Param("examId")Long examId,  @Param("subjectCode")String subjectCode);
+    Integer getImageCheckFailedCount(@Param("examId") Long examId, @Param("subjectCode") String subjectCode);
 
 
-    Integer getImageCheckDisposedCount(@Param("examId")Long examId, @Param("subjectCode") String subjectCode);
+    Integer getImageCheckDisposedCount(@Param("examId") Long examId, @Param("subjectCode") String subjectCode);
+
+    Long getImageCheckUnFinish(@Param("examId") Long examId, @Param("subjectCode") String subjectCode);
 }
 }

+ 2 - 0
src/main/java/cn/com/qmth/scancentral/service/StudentService.java

@@ -231,6 +231,8 @@ public interface StudentService extends IService<StudentEntity> {
 
 
     Integer getImageCheckDisposedCount(Long examId, String subjectCode);
     Integer getImageCheckDisposedCount(Long examId, String subjectCode);
 
 
+    boolean existImageCheckUnFinish(Long examId, String subjectCode);
+
     // void resetFileAndImageCheckStatus(Long examId, String subjectCode, String
     // void resetFileAndImageCheckStatus(Long examId, String subjectCode, String
     // examNumber);
     // examNumber);
 
 

+ 6 - 0
src/main/java/cn/com/qmth/scancentral/service/impl/StudentServiceImpl.java

@@ -2599,6 +2599,12 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
         return this.getOne(wrapper) != null;
         return this.getOne(wrapper) != null;
     }
     }
 
 
+    @Override
+    public boolean existImageCheckUnFinish(Long examId, String subjectCode) {
+        Long id = this.baseMapper.getImageCheckUnFinish(examId, subjectCode);
+        return id != null;
+    }
+
     @Override
     @Override
     public Integer countByExamIdAndSubjectCode(Long examId, String subjectCode) {
     public Integer countByExamIdAndSubjectCode(Long examId, String subjectCode) {
         LambdaQueryWrapper<StudentEntity> wrapper = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<StudentEntity> wrapper = new LambdaQueryWrapper<>();

+ 8 - 2
src/main/java/cn/com/qmth/scancentral/service/impl/SubjectServiceImpl.java

@@ -305,6 +305,9 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
         if (studentService.existUncheck(examId, subjectCode)) {
         if (studentService.existUncheck(examId, subjectCode)) {
             throw new ParameterException("有缺考待确认考生");
             throw new ParameterException("有缺考待确认考生");
         }
         }
+        if (studentService.existImageCheckUnFinish(examId, subjectCode)) {
+            throw new ParameterException("有未完成的图片检查");
+        }
         if (StringUtils.isBlank(examService.getById(examId).getScanSite())) {
         if (StringUtils.isBlank(examService.getById(examId).getScanSite())) {
             throw new ParameterException("扫描点代码未设置");
             throw new ParameterException("扫描点代码未设置");
         }
         }
@@ -334,6 +337,9 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
         if (studentService.existUncheck(examId, subjectCode)) {
         if (studentService.existUncheck(examId, subjectCode)) {
             throw new ParameterException("有缺考待确认考生");
             throw new ParameterException("有缺考待确认考生");
         }
         }
+        if (studentService.existImageCheckUnFinish(examId, subjectCode)) {
+            throw new ParameterException("有未完成的图片检查");
+        }
         if (StringUtils.isBlank(examService.getById(examId).getScanSite())) {
         if (StringUtils.isBlank(examService.getById(examId).getScanSite())) {
             throw new ParameterException("扫描点代码未设置");
             throw new ParameterException("扫描点代码未设置");
         }
         }
@@ -537,7 +543,7 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
             if (CollectionUtils.isNotEmpty(list)) {
             if (CollectionUtils.isNotEmpty(list)) {
                 for (int i = 1; i < list.size(); i++) {
                 for (int i = 1; i < list.size(); i++) {
                     String[] ss = list.get(i).split(",");
                     String[] ss = list.get(i).split(",");
-                    ret.put(ss[1].trim(), ss[3].trim());
+                    ret.put(ss[0].trim(), ss[2].trim());
                 }
                 }
             }
             }
         }
         }
@@ -552,7 +558,7 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
             if (CollectionUtils.isNotEmpty(list)) {
             if (CollectionUtils.isNotEmpty(list)) {
                 for (int i = 1; i < list.size(); i++) {
                 for (int i = 1; i < list.size(); i++) {
                     String[] ss = list.get(i).split(",");
                     String[] ss = list.get(i).split(",");
-                    ret.put(ss[1].trim(), ss[3].trim());
+                    ret.put(ss[0].trim(), ss[2].trim());
                 }
                 }
             }
             }
         }
         }

+ 13 - 0
src/main/resources/mapper/StudentMapper.xml

@@ -742,4 +742,17 @@
           and ((stu.file_upload_status = 'ERROR')
           and ((stu.file_upload_status = 'ERROR')
                 or (stu.file_upload_status = 'UPLOADED' and stu.image_check_status in('SUCCESS','FAILED')) )
                 or (stu.file_upload_status = 'UPLOADED' and stu.image_check_status in('SUCCESS','FAILED')) )
     </select>
     </select>
+    <select id="getImageCheckUnFinish" resultType="long">
+        select stu.id
+        from sc_student stu
+        where stu.exam_id = #{examId}
+          and stu.subject_code = #{subjectCode}
+          and (
+          	stu.file_upload_status in('WAITING_UPLOAD','ERROR') 
+          	or 
+          	(stu.file_upload_status='UPLOADED' and stu.image_check_status in('WAITING','FAILED') )
+          )
+         limit 1
+    </select>
+    
 </mapper>
 </mapper>