xiaofei 1 an în urmă
părinte
comite
585b2e5d62

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

@@ -1,9 +1,6 @@
 package com.qmth.teachcloud.mark.service.impl;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
@@ -136,6 +133,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 							items.add(item);
 						}
 					}
+					pageDto.setItems(items);
 				}
 				// 卷型空选
 //                if (ConditionType.PAPER_TYPE_BLANK.equals(c)) {
@@ -166,7 +164,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 									student.getPaperNumber(), spe.getPaperIndex(), pageEntity.getPageIndex());
 					if (pageEntity.getQuestion() == null || pageEntity.getQuestion().getResult() == null
 							|| questiongList.isEmpty()) {
-						return null;
+						continue;
 					}
 					int size = pageEntity.getQuestion().getResult().size() > questiongList.size() ? questiongList.size()
 							: pageEntity.getQuestion().getResult().size();
@@ -194,7 +192,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 									student.getPaperNumber(), spe.getPaperIndex(), pageEntity.getPageIndex());
 					if (pageEntity.getQuestion() == null || pageEntity.getQuestion().getResult() == null
 							|| questiongList.isEmpty()) {
-						return null;
+						continue;
 					}
 					int size = pageEntity.getQuestion().getResult().size() > questiongList.size() ? questiongList.size()
 							: pageEntity.getQuestion().getResult().size();
@@ -223,7 +221,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 									student.getPaperNumber(), spe.getPaperIndex(), pageEntity.getPageIndex());
                 	if (pageEntity.getQuestion() == null || pageEntity.getQuestion().getResult() == null
 							|| questiongList.isEmpty()) {
-						return null;
+						continue;
 					}
 					int size = pageEntity.getQuestion().getResult().size() > questiongList.size() ? questiongList.size()
 							: pageEntity.getQuestion().getResult().size();
@@ -238,6 +236,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
                             items.add(item);
                         }
                     }
+					pageDto.setItems(items);
                 }
 			}
 		}
@@ -477,7 +476,7 @@ public class ScanOmrTaskServiceImpl extends ServiceImpl<ScanOmrTaskMapper, ScanO
 			if (studentId == null) {
 				studentId = task.getStudentId();
 			}
-			if (studentId != task.getStudentId()) {
+			if (!Objects.equals(studentId, task.getStudentId())) {
 				throw new ParameterException("任务非同一个学生");
 			}
 			concurrentService.getReadWriteLock(LockType.STUDENT + "-" + task.getStudentId()).writeLock().lock();

+ 2 - 2
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/ClearTimeoutTaskJob.java

@@ -10,7 +10,7 @@ import org.springframework.scheduling.quartz.QuartzJobBean;
 import javax.annotation.Resource;
 
 /**
- * 初始化阅卷数据(课程、考生、卡格式、解析题卡结构)
+ * 清空过期任务
  */
 public class ClearTimeoutTaskJob extends QuartzJobBean {
     private final static Logger log = LoggerFactory.getLogger(ClearTimeoutTaskJob.class);
@@ -21,7 +21,7 @@ public class ClearTimeoutTaskJob extends QuartzJobBean {
     @Override
     protected void executeInternal(JobExecutionContext jobExecutionContext) {
         try {
-            jobService.initMarkData();
+            jobService.clearTimeoutTask();
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);
         }

+ 2 - 2
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/InitMarkDataJob.java

@@ -10,7 +10,7 @@ import org.springframework.scheduling.quartz.QuartzJobBean;
 import javax.annotation.Resource;
 
 /**
- * 清空过期任务
+ * 初始化阅卷数据(课程、考生、卡格式、解析题卡结构)
  */
 public class InitMarkDataJob extends QuartzJobBean {
     private final static Logger log = LoggerFactory.getLogger(InitMarkDataJob.class);
@@ -21,7 +21,7 @@ public class InitMarkDataJob extends QuartzJobBean {
     @Override
     protected void executeInternal(JobExecutionContext jobExecutionContext) {
         try {
-            jobService.clearTimeoutTask();
+            jobService.initMarkData();
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);
         }

+ 1 - 1
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/service/impl/JobServiceImpl.java

@@ -147,7 +147,7 @@ public class JobServiceImpl implements JobService {
     public void initMarkData() {
         log.info("开始同步数据:" + DateDisposeUtils.dateTimeNow(DateDisposeUtils.YYYY_MM_DD_HH_MM_SS));
         // 结束阅卷的课程,不同步,3.3.0版本更新前的历史数据,统一不同步
-        long startTime = DateDisposeUtils.parseDate("2023-10-01 00:00:00").getTime();
+        long startTime = DateDisposeUtils.parseDate("2023-11-17 00:00:00").getTime();
         List<ExamDetailCourseInitMarkDto> examDetailCourseInitMarkDtoList = examDetailService.listPrintFinishExamDetailCourse(ExamDetailStatusEnum.FINISH.name(), startTime, MarkPaperStatus.FINISH.name());
         for (ExamDetailCourseInitMarkDto dto : examDetailCourseInitMarkDtoList) {
             TBSyncTask tbSyncTask = tbSyncTaskService.saveTask(dto.getSchoolId(), dto.getExamId(), dto.getPaperNumber(), dto.getPaperType(), PushTypeEnum.INIT_MARK_DATA, "");

+ 1 - 1
teachcloud-task/src/main/java/com/qmth/teachcloud/task/start/StartRunning.java

@@ -104,7 +104,7 @@ public class StartRunning implements CommandLineRunner {
         quartzService.addJob(BuildMarkTaskJob.class, JobEnum.BUILD_MARK_TASK.name(), JobEnum.BUILD_MARK_TASK_GROUP.name(), "0 */1 * * * ?", buildMarkTaskJobMap);
         log.info("增加评卷任务生成定时任务 end");
 
-        // 每1分钟一次
+        // 每5分钟一次
         log.info("增加初始化阅卷数据定时任务 start");
         Map initMarkDataJobMap = new HashMap();
         initMarkDataJobMap.computeIfAbsent("name", v -> InitMarkDataJob.class.getName());