|
@@ -1,15 +1,46 @@
|
|
package com.qmth.teachcloud.mark.service.impl;
|
|
package com.qmth.teachcloud.mark.service.impl;
|
|
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Arrays;
|
|
|
|
+import java.util.Collections;
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
+
|
|
|
|
+import javax.annotation.Resource;
|
|
|
|
+
|
|
|
|
+import org.apache.commons.collections4.CollectionUtils;
|
|
|
|
+import org.slf4j.Logger;
|
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
+
|
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.qmth.teachcloud.common.entity.MarkQuestion;
|
|
import com.qmth.teachcloud.common.entity.MarkQuestion;
|
|
import com.qmth.teachcloud.common.entity.SysUser;
|
|
import com.qmth.teachcloud.common.entity.SysUser;
|
|
import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
-import com.qmth.teachcloud.common.enums.mark.*;
|
|
|
|
|
|
+import com.qmth.teachcloud.common.enums.mark.MarkArbitrateStatus;
|
|
|
|
+import com.qmth.teachcloud.common.enums.mark.MarkPaperStatus;
|
|
|
|
+import com.qmth.teachcloud.common.enums.mark.MarkProblemStatus;
|
|
|
|
+import com.qmth.teachcloud.common.enums.mark.MarkProblemType;
|
|
|
|
+import com.qmth.teachcloud.common.enums.mark.SubjectiveStatus;
|
|
import com.qmth.teachcloud.mark.dto.mark.ScoreItem;
|
|
import com.qmth.teachcloud.mark.dto.mark.ScoreItem;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkGroupDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkGroupDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkSettingDto;
|
|
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.MarkStatusDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkTaskDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkTaskDto;
|
|
-import com.qmth.teachcloud.mark.entity.*;
|
|
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkArbitrateHistory;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkGroup;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkGroupStudent;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkHeaderTrack;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkStudent;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkSubjectiveScore;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkTask;
|
|
|
|
+import com.qmth.teachcloud.mark.entity.MarkUserGroup;
|
|
import com.qmth.teachcloud.mark.enums.ExamType;
|
|
import com.qmth.teachcloud.mark.enums.ExamType;
|
|
import com.qmth.teachcloud.mark.enums.LockType;
|
|
import com.qmth.teachcloud.mark.enums.LockType;
|
|
import com.qmth.teachcloud.mark.enums.MarkTaskStatus;
|
|
import com.qmth.teachcloud.mark.enums.MarkTaskStatus;
|
|
@@ -17,20 +48,24 @@ import com.qmth.teachcloud.mark.enums.ScorePolicy;
|
|
import com.qmth.teachcloud.mark.lock.LockService;
|
|
import com.qmth.teachcloud.mark.lock.LockService;
|
|
import com.qmth.teachcloud.mark.params.MarkHeaderGroupResult;
|
|
import com.qmth.teachcloud.mark.params.MarkHeaderGroupResult;
|
|
import com.qmth.teachcloud.mark.params.MarkResult;
|
|
import com.qmth.teachcloud.mark.params.MarkResult;
|
|
-import com.qmth.teachcloud.mark.service.*;
|
|
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkArbitrateHistoryService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkGroupService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkGroupStudentService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkHeaderTrackService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkPaperService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkProblemHistoryService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkQuestionService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkStudentService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkSubjectiveScoreService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkTaskService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkTrackService;
|
|
|
|
+import com.qmth.teachcloud.mark.service.MarkUserGroupService;
|
|
import com.qmth.teachcloud.mark.utils.BigDecimalUtils;
|
|
import com.qmth.teachcloud.mark.utils.BigDecimalUtils;
|
|
import com.qmth.teachcloud.mark.utils.TaskLock;
|
|
import com.qmth.teachcloud.mark.utils.TaskLock;
|
|
import com.qmth.teachcloud.mark.utils.TaskLockUtil;
|
|
import com.qmth.teachcloud.mark.utils.TaskLockUtil;
|
|
-import org.apache.commons.collections4.CollectionUtils;
|
|
|
|
-import org.slf4j.Logger;
|
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
-import javax.annotation.Resource;
|
|
|
|
-import java.math.BigDecimal;
|
|
|
|
-import java.util.*;
|
|
|
|
-import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
|
|
+import io.lettuce.core.GeoArgs.Sort;
|
|
|
|
|
|
@Service
|
|
@Service
|
|
public class MarkServiceImpl implements MarkService {
|
|
public class MarkServiceImpl implements MarkService {
|
|
@@ -694,15 +729,10 @@ public class MarkServiceImpl implements MarkService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public List<MarkTaskDto> getHistory(Long userId) {
|
|
|
|
- // TODO Auto-generated method stub
|
|
|
|
- return null;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Override
|
|
|
|
- public void clear(Long userId) {
|
|
|
|
- // TODO Auto-generated method stub
|
|
|
|
-
|
|
|
|
|
|
+ public void clear(Long userId, Long examId, String paperNumber,Integer groupNumber) {
|
|
|
|
+ MarkUserGroup markUserGroup = markUserGroupService.getByExamIdAndPaperNumberAndGroupNumberAndUserId(userId, null, null, userId);
|
|
|
|
+ TaskLock taskLock = TaskLockUtil.getFormalTask(getGroupKey(markUserGroup));
|
|
|
|
+ taskLock.clear(markUserGroup.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -795,4 +825,17 @@ public class MarkServiceImpl implements MarkService {
|
|
private String getKey(MarkStudent student) {
|
|
private String getKey(MarkStudent student) {
|
|
return student.getExamId() + "_" + student.getPaperNumber();
|
|
return student.getExamId() + "_" + student.getPaperNumber();
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public IPage<MarkTaskDto> getHistory(Long userId, int pageNumber, int pageSize, Sort sort, Long examId,
|
|
|
|
+ String paperNumber, Integer groupNumber, String secretNumber, Double markerScore) {
|
|
|
|
+ IPage<MarkTaskDto> list = markTaskService.listPageHistory(new Page<>(pageNumber,pageSize),sort,userId,examId,paperNumber,groupNumber,secretNumber,markerScore);
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public String saveTask(Long userId, MarkResult markResult) {
|
|
|
|
+ // TODO Auto-generated method stub
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
}
|
|
}
|