|
@@ -1,12 +1,35 @@
|
|
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.LinkedList;
|
|
|
|
+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.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
|
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
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.common.service.TeachcloudCommonService;
|
|
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;
|
|
@@ -15,7 +38,17 @@ import com.qmth.teachcloud.mark.dto.mark.mark.MarkStepDTO;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkTaskDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.MarkTaskDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.SubmitResult;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.SubmitResult;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.TrackDTO;
|
|
import com.qmth.teachcloud.mark.dto.mark.mark.TrackDTO;
|
|
-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.MarkProblemHistory;
|
|
|
|
+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.MarkTrack;
|
|
|
|
+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;
|
|
@@ -23,21 +56,26 @@ 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.MarkHeaderTagService;
|
|
|
|
+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.MarkSpecialTagService;
|
|
|
|
+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 io.lettuce.core.GeoArgs.Sort;
|
|
|
|
-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 {
|
|
@@ -78,6 +116,8 @@ public class MarkServiceImpl implements MarkService {
|
|
private MarkHeaderTagService markHeaderTagService;
|
|
private MarkHeaderTagService markHeaderTagService;
|
|
@Resource
|
|
@Resource
|
|
LockService lockService;
|
|
LockService lockService;
|
|
|
|
+ @Resource
|
|
|
|
+ TeachcloudCommonService teachcloudCommonService;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 某个评卷分组已申请的评卷任务数量
|
|
* 某个评卷分组已申请的评卷任务数量
|
|
@@ -693,8 +733,8 @@ public class MarkServiceImpl implements MarkService {
|
|
dto.setEnableAllZore(false);
|
|
dto.setEnableAllZore(false);
|
|
dto.setFileServer(null);
|
|
dto.setFileServer(null);
|
|
dto.setUserName(user.getRealName());
|
|
dto.setUserName(user.getRealName());
|
|
- dto.getSubject().setAnswerUrl(markPaper.getAnswerFilePath());
|
|
|
|
- dto.getSubject().setPaperUrl(markPaper.getPaperFilePath());
|
|
|
|
|
|
+ dto.getSubject().setAnswerUrl(teachcloudCommonService.filePreview(markPaper.getAnswerFilePath()));
|
|
|
|
+ dto.getSubject().setPaperUrl(teachcloudCommonService.filePreview(markPaper.getPaperFilePath()));
|
|
dto.getSubject().setCode(markPaper.getPaperNumber());
|
|
dto.getSubject().setCode(markPaper.getPaperNumber());
|
|
dto.getSubject().setName(markPaper.getCourseName());
|
|
dto.getSubject().setName(markPaper.getCourseName());
|
|
dto.setForceSpecialTag(true);
|
|
dto.setForceSpecialTag(true);
|