瀏覽代碼

复核任务接口新增选做题分组号显示;修复导出 图片张数/2

ting.yin 2 年之前
父節點
當前提交
8deb7b4e7e

+ 10 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/model/MarkStepDTO.java

@@ -28,6 +28,8 @@ public class MarkStepDTO implements Serializable {
 
     private boolean uncalculate;
 
+    private Integer selectiveIndex;
+
     private List<TrackDTO> trackList = new ArrayList<TrackDTO>();
 
     public int getMainNumber() {
@@ -122,4 +124,12 @@ public class MarkStepDTO implements Serializable {
         this.uncalculate = uncalculate;
     }
 
+    public Integer getSelectiveIndex() {
+        return selectiveIndex;
+    }
+
+    public void setSelectiveIndex(Integer selectiveIndex) {
+        this.selectiveIndex = selectiveIndex;
+    }
+
 }

+ 17 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/TaskServiceImpl.java

@@ -1,8 +1,10 @@
 package cn.com.qmth.stmms.biz.mark.service.Impl;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
 import org.apache.commons.lang.StringUtils;
@@ -16,12 +18,14 @@ import cn.com.qmth.stmms.biz.exam.model.ExamQuestion;
 import cn.com.qmth.stmms.biz.exam.model.ExamStudent;
 import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
 import cn.com.qmth.stmms.biz.exam.model.MarkGroup;
+import cn.com.qmth.stmms.biz.exam.model.SelectiveGroup;
 import cn.com.qmth.stmms.biz.exam.service.ExamQuestionService;
 import cn.com.qmth.stmms.biz.exam.service.ExamService;
 import cn.com.qmth.stmms.biz.exam.service.ExamStudentService;
 import cn.com.qmth.stmms.biz.exam.service.ExamSubjectService;
 import cn.com.qmth.stmms.biz.exam.service.MarkGroupService;
 import cn.com.qmth.stmms.biz.exam.service.MarkerService;
+import cn.com.qmth.stmms.biz.exam.service.SelectiveGroupService;
 import cn.com.qmth.stmms.biz.exam.service.SubjectiveScoreService;
 import cn.com.qmth.stmms.biz.file.service.FileService;
 import cn.com.qmth.stmms.biz.mark.model.ArbitrateHistory;
@@ -99,6 +103,9 @@ public class TaskServiceImpl implements TaskService {
     @Autowired
     private SubjectiveScoreService scoreService;
 
+    @Autowired
+    private SelectiveGroupService selectiveGroupService;
+
     @Override
     public List<Task> findByQuery(MarkLibrarySearchQuery query) {
         List<Task> list = new LinkedList<Task>();
@@ -320,6 +327,7 @@ public class TaskServiceImpl implements TaskService {
         step.setMinScore(0d);
         step.setIntervalScore(question.getIntervalScore());
         step.setUncalculate(false);
+        step.setSelectiveIndex(question.getSelectiveIndex());
         return step;
     }
 
@@ -417,9 +425,18 @@ public class TaskServiceImpl implements TaskService {
         List<ExamQuestion> sList = questionService.findByExamAndSubjectAndObjective(student.getExamId(),
                 student.getSubjectCode(), false);
         Set<Integer> mainList = scoreService.findMainNumberByStudentIdAndUncalculate(student.getId(), true);
+        List<SelectiveGroup> selectiveGroups = selectiveGroupService.findByExamIdAndSubjectCode(student.getExamId(),
+                student.getSubjectCode());
+        Map<Integer, SelectiveGroup> map = new HashMap<Integer, SelectiveGroup>();
+        for (SelectiveGroup selectiveGroup : selectiveGroups) {
+            map.put(selectiveGroup.getMainNumber(), selectiveGroup);
+        }
         List<ScoreItem> sItems = student.getScoreList(false);
         for (int i = 0; i < sList.size(); i++) {
             ExamQuestion question = sList.get(i);
+            if (map.containsKey(question.getMainNumber())) {
+                question.setSelectiveIndex(map.get(question.getMainNumber()).getSelectiveIndex());
+            }
             MarkStepDTO step = buildStep(question);
             if (!sItems.isEmpty() && sItems.size() == sList.size()) {
                 step.setScore(sItems.get(i).getScore());

+ 1 - 1
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/ScanController.java

@@ -177,7 +177,7 @@ public class ScanController extends BaseExamController {
                             : ""));
             vo.setTotalCount(studentService.countByExamIdAndSubjectCode(examId, subject.getCode()));
             vo.setScanCount(studentService.countByExamIdAndSubjectCode(examId, subject.getCode(), true));
-            vo.setScanSheetCount(studentService.countSheetCountByExamIdAndSubjectCode(examId, subject.getCode()));
+            vo.setScanSheetCount(studentService.countSheetCountByExamIdAndSubjectCode(examId, subject.getCode()) / 2);
             list.add(vo);
         }
         try {

+ 3 - 3
stmms-web/src/main/java/cn/com/qmth/stmms/admin/vo/ScanInfoVO.java

@@ -10,12 +10,12 @@ public class ScanInfoVO {
     @ExcelField(title = "考生人数", align = 2, sort = 20)
     private long totalCount;
 
-    @ExcelField(title = "已扫人数", align = 2, sort = 40)
-    private long scanCount;
-
     @ExcelField(title = "已扫张数", align = 2, sort = 30)
     private long scanSheetCount;
 
+    @ExcelField(title = "已扫人数", align = 2, sort = 40)
+    private long scanCount;
+
     public String getName() {
         return name;
     }