|
@@ -1,100 +1,100 @@
|
|
|
-package com.qmth.teachcloud.mark.service;
|
|
|
-
|
|
|
-import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
-import com.qmth.teachcloud.common.entity.MarkQuestion;
|
|
|
-import com.qmth.teachcloud.common.entity.SysUser;
|
|
|
-import com.qmth.teachcloud.mark.dto.mark.manage.Task;
|
|
|
-import com.qmth.teachcloud.mark.dto.mark.mark.MarkSettingDto;
|
|
|
-import com.qmth.teachcloud.mark.dto.mark.mark.MarkStatusDto;
|
|
|
-import com.qmth.teachcloud.mark.dto.mark.mark.SubmitResult;
|
|
|
-import com.qmth.teachcloud.mark.entity.*;
|
|
|
-import com.qmth.teachcloud.mark.enums.QuestionModel;
|
|
|
-import com.qmth.teachcloud.mark.params.MarkHeaderGroupResult;
|
|
|
-import com.qmth.teachcloud.mark.params.MarkResult;
|
|
|
-import io.lettuce.core.GeoArgs.Sort;
|
|
|
-
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-/**
|
|
|
- * <p>
|
|
|
- * 评卷相关 服务类
|
|
|
- */
|
|
|
-public interface MarkService {
|
|
|
-
|
|
|
- /**
|
|
|
- * 释放某个评卷员已完成的评卷任务
|
|
|
- *
|
|
|
- * @param submitResult 评卷结果
|
|
|
- */
|
|
|
- void releaseTask(SubmitResult submitResult, Long userId);
|
|
|
-
|
|
|
- int applyCurrentCount(MarkQuestion markQuestion);
|
|
|
-
|
|
|
- void releaseByMarkUserGroup(MarkUserQuestion markUserGroup);
|
|
|
-
|
|
|
- int applyCurrentCount(MarkQuestion markQuestion, Long markUserGroupId);
|
|
|
-
|
|
|
- void resetMarker(MarkUserQuestion markUserGroup);
|
|
|
-
|
|
|
- void updateMarkedCount(Long examId, String paperNumber, Long questionId);
|
|
|
-
|
|
|
- boolean rejectMarkTask(MarkProblemHistory markProblemHistory, MarkTask markTask, Long userId);
|
|
|
-
|
|
|
- String getGroupKey(MarkQuestion markQuestion);
|
|
|
-
|
|
|
- void updateQuality(MarkUserQuestion markUserGroup);
|
|
|
-
|
|
|
- boolean needUpdateQuality(MarkUserQuestion marker, int expireMinutes);
|
|
|
-
|
|
|
- void processArbitrate(MarkHeaderGroupResult markResult, Long userId);
|
|
|
-
|
|
|
- void checkStudentSubjective(Long studentId, Long unGroupQuestionCount, String paperNumber);
|
|
|
-
|
|
|
- void buildMarkTask(MarkPaper markPaper);
|
|
|
-
|
|
|
- void deleteMarkTaskByStudent(MarkStudent student);
|
|
|
-
|
|
|
- void updateGroupAllCount(Long examId, String paperNumber);
|
|
|
-
|
|
|
- MarkSettingDto getSetting(SysUser user, Long examId, String paperNumber);
|
|
|
-
|
|
|
- MarkStatusDto getStatus(Long userId, Long examId, String paperNumber);
|
|
|
-
|
|
|
- Task getTask(Long userId, Long examId, String paperNumber, QuestionModel questionModel);
|
|
|
-
|
|
|
- /**
|
|
|
- * /** 释放某个大题的锁定任务
|
|
|
- */
|
|
|
-// void releaseByMarkGroup(MarkGroup markGroup);
|
|
|
-
|
|
|
- void releaseByStudent(MarkStudent student);
|
|
|
-
|
|
|
- /**
|
|
|
- * 申请领取某个任务
|
|
|
- */
|
|
|
- boolean applyStudent(MarkStudent student, Long userId);
|
|
|
-
|
|
|
- void submitHeaderTask(List<MarkHeaderGroupResult> markResult, MarkStudent markUserGroup);
|
|
|
-
|
|
|
- IPage<Task> getHistory(Long userId, int pageNumber, int pageSize, Sort sort, String order, Long examId, String paperNumber, String secretNumber, Double markerScore);
|
|
|
-
|
|
|
- SubmitResult saveTask(Long examId, String paperNumber, Long userId, MarkResult markResult);
|
|
|
-
|
|
|
- void clear(Long userId, Long examId, String paperNumber);
|
|
|
-
|
|
|
- boolean applyTask(MarkTask t, Long userId);
|
|
|
-
|
|
|
- boolean applyTask(Long examId, String paperNumber, Long studentId, Integer taskNumber, Long userId);
|
|
|
-
|
|
|
- boolean hasApplied(MarkTask t, Long userId);
|
|
|
-
|
|
|
- void deleteInitMarkData(Long examId, String paperNumber);
|
|
|
-
|
|
|
- void calcObjectiveScore(MarkPaper markPaper);
|
|
|
-
|
|
|
- void updateMarkGroupStatus(Long examId, String paperNumber);
|
|
|
-
|
|
|
- void checkStudentSubjectiveScore(Long examId, String coursePaperId, long unGroupQuestionCount);
|
|
|
-
|
|
|
- boolean rejectMarkTask(MarkTask markTask, Long userId, String reason);
|
|
|
-}
|
|
|
+package com.qmth.teachcloud.mark.service;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.qmth.teachcloud.common.entity.MarkQuestion;
|
|
|
+import com.qmth.teachcloud.common.entity.SysUser;
|
|
|
+import com.qmth.teachcloud.mark.dto.mark.manage.Task;
|
|
|
+import com.qmth.teachcloud.mark.dto.mark.mark.MarkSettingDto;
|
|
|
+import com.qmth.teachcloud.mark.dto.mark.mark.MarkStatusDto;
|
|
|
+import com.qmth.teachcloud.mark.dto.mark.mark.SubmitResult;
|
|
|
+import com.qmth.teachcloud.mark.entity.*;
|
|
|
+import com.qmth.teachcloud.mark.enums.QuestionModel;
|
|
|
+import com.qmth.teachcloud.mark.params.MarkHeaderGroupResult;
|
|
|
+import com.qmth.teachcloud.mark.params.MarkResult;
|
|
|
+import io.lettuce.core.GeoArgs.Sort;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 评卷相关 服务类
|
|
|
+ */
|
|
|
+public interface MarkService {
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 释放某个评卷员已完成的评卷任务
|
|
|
+ *
|
|
|
+ * @param submitResult 评卷结果
|
|
|
+ */
|
|
|
+ void releaseTask(SubmitResult submitResult, Long userId);
|
|
|
+
|
|
|
+ int applyCurrentCount(MarkQuestion markQuestion);
|
|
|
+
|
|
|
+ void releaseByMarkUserGroup(MarkUserQuestion markUserGroup);
|
|
|
+
|
|
|
+ int applyCurrentCount(MarkQuestion markQuestion, Long markUserGroupId);
|
|
|
+
|
|
|
+ void resetMarker(MarkUserQuestion markUserGroup);
|
|
|
+
|
|
|
+ void updateMarkedCount(Long examId, String paperNumber, Long questionId);
|
|
|
+
|
|
|
+ boolean rejectMarkTask(MarkProblemHistory markProblemHistory, MarkTask markTask, Long userId);
|
|
|
+
|
|
|
+ String getGroupKey(MarkQuestion markQuestion);
|
|
|
+
|
|
|
+ void updateQuality(MarkUserQuestion markUserGroup);
|
|
|
+
|
|
|
+ boolean needUpdateQuality(MarkUserQuestion marker, int expireMinutes);
|
|
|
+
|
|
|
+ void processArbitrate(MarkHeaderGroupResult markResult, Long userId);
|
|
|
+
|
|
|
+ void checkStudentSubjective(Long studentId, Long examId, String paperNumber, Integer version);
|
|
|
+
|
|
|
+ void buildMarkTask(MarkPaper markPaper);
|
|
|
+
|
|
|
+ void deleteMarkTaskByStudent(MarkStudent student);
|
|
|
+
|
|
|
+ void updateGroupAllCount(Long examId, String paperNumber);
|
|
|
+
|
|
|
+ MarkSettingDto getSetting(SysUser user, Long examId, String paperNumber);
|
|
|
+
|
|
|
+ MarkStatusDto getStatus(Long userId, Long examId, String paperNumber);
|
|
|
+
|
|
|
+ Task getTask(Long userId, Long examId, String paperNumber, QuestionModel questionModel);
|
|
|
+
|
|
|
+ /**
|
|
|
+ * /** 释放某个大题的锁定任务
|
|
|
+ */
|
|
|
+// void releaseByMarkGroup(MarkGroup markGroup);
|
|
|
+
|
|
|
+ void releaseByStudent(MarkStudent student);
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 申请领取某个任务
|
|
|
+ */
|
|
|
+ boolean applyStudent(MarkStudent student, Long userId);
|
|
|
+
|
|
|
+ void submitHeaderTask(List<MarkHeaderGroupResult> markResult, MarkStudent markUserGroup);
|
|
|
+
|
|
|
+ IPage<Task> getHistory(Long userId, int pageNumber, int pageSize, Sort sort, String order, Long examId, String paperNumber, String secretNumber, Double markerScore);
|
|
|
+
|
|
|
+ SubmitResult saveTask(Long examId, String paperNumber, Long userId, MarkResult markResult);
|
|
|
+
|
|
|
+ void clear(Long userId, Long examId, String paperNumber);
|
|
|
+
|
|
|
+ boolean applyTask(MarkTask t, Long userId);
|
|
|
+
|
|
|
+ boolean applyTask(Long examId, String paperNumber, Long studentId, Integer taskNumber, Long userId);
|
|
|
+
|
|
|
+ boolean hasApplied(MarkTask t, Long userId);
|
|
|
+
|
|
|
+ void deleteInitMarkData(Long examId, String paperNumber);
|
|
|
+
|
|
|
+ void calcObjectiveScore(MarkPaper markPaper);
|
|
|
+
|
|
|
+ void updateMarkGroupStatus(Long examId, String paperNumber);
|
|
|
+
|
|
|
+ void checkStudentSubjectiveScore(Long examId, String coursePaperId, long unGroupQuestionCount);
|
|
|
+
|
|
|
+ boolean rejectMarkTask(MarkTask markTask, Long userId, String reason);
|
|
|
+}
|