|
@@ -6,7 +6,6 @@ import com.qmth.teachcloud.common.bean.marking.MarkConfigItem;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
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.mark.MarkMode;
|
|
|
|
import com.qmth.teachcloud.common.enums.mark.MarkProblemStatus;
|
|
import com.qmth.teachcloud.common.enums.mark.MarkProblemStatus;
|
|
import com.qmth.teachcloud.common.service.SysUserService;
|
|
import com.qmth.teachcloud.common.service.SysUserService;
|
|
import com.qmth.teachcloud.common.service.TeachcloudCommonService;
|
|
import com.qmth.teachcloud.common.service.TeachcloudCommonService;
|
|
@@ -222,7 +221,7 @@ public class TaskServiceImpl implements TaskService {
|
|
task.setStudentCode(student.getStudentCode());
|
|
task.setStudentCode(student.getStudentCode());
|
|
task.setPaperType(student.getPaperType());
|
|
task.setPaperType(student.getPaperType());
|
|
task.setSheetUrls(teachcloudCommonService.fileMarkPreview(student.getSheetPathList()));
|
|
task.setSheetUrls(teachcloudCommonService.fileMarkPreview(student.getSheetPathList()));
|
|
- task.setSliceConfig(buildPic(markTaskList));
|
|
|
|
|
|
+ task.setSliceConfig(buildPic(student.getExamId(), student.getPaperNumber(), markTaskList));
|
|
MarkPaper markPaper = markPaperService.getByExamIdAndPaperNumber(student.getExamId(), student.getPaperNumber());
|
|
MarkPaper markPaper = markPaperService.getByExamIdAndPaperNumber(student.getExamId(), student.getPaperNumber());
|
|
task.setObjectiveScore(markPaper.getShowObjectScore() ? student.getObjectiveScore() : null);
|
|
task.setObjectiveScore(markPaper.getShowObjectScore() ? student.getObjectiveScore() : null);
|
|
// 题目数据
|
|
// 题目数据
|
|
@@ -241,12 +240,13 @@ public class TaskServiceImpl implements TaskService {
|
|
return questionList.stream().filter(m -> m.getMarkerScore() != null && MarkTaskStatus.MARKED.equals(m.getStatus())).mapToDouble(m -> m.getMarkerScore()).sum();
|
|
return questionList.stream().filter(m -> m.getMarkerScore() != null && MarkTaskStatus.MARKED.equals(m.getStatus())).mapToDouble(m -> m.getMarkerScore()).sum();
|
|
}
|
|
}
|
|
|
|
|
|
- private List<MarkConfigItem> buildPic(List<MarkTask> markTaskList) {
|
|
|
|
|
|
+ private List<MarkConfigItem> buildPic(Long examId, String paperNumber, List<MarkTask> markTaskList) {
|
|
|
|
+ MarkPaper markPaper = markPaperService.getByExamIdAndPaperNumber(examId, paperNumber);
|
|
List<MarkConfigItem> markConfigItems = new ArrayList<>();
|
|
List<MarkConfigItem> markConfigItems = new ArrayList<>();
|
|
Integer mainNumber = null;
|
|
Integer mainNumber = null;
|
|
for (MarkTask t : markTaskList) {
|
|
for (MarkTask t : markTaskList) {
|
|
MarkQuestion markQuestion = markQuestionService.getById(t.getQuestionId());
|
|
MarkQuestion markQuestion = markQuestionService.getById(t.getQuestionId());
|
|
- if (markQuestion.getQuestionType() == 4) {
|
|
|
|
|
|
+ if (markQuestion.getQuestionType() == 4 && markPaper.getMergeMarker()) {
|
|
// 填空题,只显示一次
|
|
// 填空题,只显示一次
|
|
if (mainNumber == null || !markQuestion.getMainNumber().equals(mainNumber)) {
|
|
if (mainNumber == null || !markQuestion.getMainNumber().equals(mainNumber)) {
|
|
markConfigItems.addAll(markQuestion.getPictureConfigList());
|
|
markConfigItems.addAll(markQuestion.getPictureConfigList());
|