Ver Fonte

修复复核校验和实时审核考生的审核次数记录

yin há 8 meses atrás
pai
commit
b31f38a858

+ 3 - 0
src/main/java/cn/com/qmth/scancentral/service/impl/AnswerCardServiceImpl.java

@@ -71,6 +71,9 @@ public class AnswerCardServiceImpl extends MppServiceImpl<AnswerCardDao, AnswerC
     @Override
     public PageResult<CardInfo> pageQuery(CardQuery query) {
         IPage<CardInfo> iPage = baseMapper.pageQuery(new Page<>(query.getPageNumber(), query.getPageSize()), query);
+        for (CardInfo info: iPage.getRecords()) {
+            info.setUrl(info.getUrl()+"?"+info.getMd5());
+        }
         return PageUtil.of(iPage);
     }
 

+ 6 - 2
src/main/java/cn/com/qmth/scancentral/service/impl/BatchServiceImpl.java

@@ -430,8 +430,12 @@ public class BatchServiceImpl extends ServiceImpl<BatchDao, BatchEntity> impleme
             concurrentService.getReadWriteLock(LockType.STUDENT + "-" + entry.getKey()).writeLock().lock();
             try {
                 studentService.updateStudentAndPaper(user, entry.getKey(), entry.getValue());
-                assignedCheckHistoryService.save(user.getId(), entry.getKey(), examId);
-                studentService.updateAssignedCheckCount(entry.getKey(), false);
+                StudentEntity student = studentService.getById(entry.getKey());
+                if(student.getAssigned()){
+                    assignedCheckHistoryService.deleteByStudentIdAndUserRole(user.getId(),Role.AUDITOR);
+                    assignedCheckHistoryService.save(user.getId(), entry.getKey(), examId);
+                    studentService.updateAssignedCheckCount(entry.getKey(), false);
+                }
             } finally {
                 concurrentService.getReadWriteLock(LockType.STUDENT + "-" + entry.getKey()).writeLock().unlock();
             }

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

@@ -1984,6 +1984,7 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
         }
         concurrentService.getReadWriteLock(LockType.STUDENT + "-" + student.getId()).writeLock().lock();
         try {
+            assignedCheckHistoryService.deleteByStudentIdAndUserRole(student.getId(),user.getRole());
             assignedCheckHistoryService.save(user.getId(), student.getId(), student.getExamId());
             // for (AssignedTaskResultPaper paper : result.getPapers()) {
             // paperService.updatePaperAssignedSuspect(student.getId(),

+ 10 - 0
src/main/java/cn/com/qmth/scancentral/vo/card/CardInfo.java

@@ -31,6 +31,9 @@ public class CardInfo {
     @ApiModelProperty(value = "文件地址")
     private String url;
 
+    @ApiModelProperty(value = "文件MD5")
+    private String md5;
+
     public Long getExamId() {
         return examId;
     }
@@ -103,4 +106,11 @@ public class CardInfo {
         this.url = url;
     }
 
+    public String getMd5() {
+        return md5;
+    }
+
+    public void setMd5(String md5) {
+        this.md5 = md5;
+    }
 }

+ 1 - 0
src/main/resources/mapper/AnswerCardMapper.xml

@@ -11,6 +11,7 @@
         t.paper_count,
         t.remark,
         t.path as url,
+        t.md5,
         t.update_time
         from sc_answer_card t
         left join sc_answer_card_subject s on s.exam_id = t.exam_id and s.card_number = t.number