ting.yin 3 years ago
parent
commit
1f7ffcf103

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/model/MarkGroup.java

@@ -170,7 +170,7 @@ public class MarkGroup implements Serializable {
         } else {
             this.scorePolicy = ScorePolicy.AVG;
         }
-        if (markMode != null) {
+        if (StringUtils.isNotBlank(markMode)) {
             this.markMode = MarkMode.findByName(markMode);
         }
         if (trialCount != null && trialCount > 0) {

+ 4 - 2
stmms-web/src/main/java/cn/com/qmth/stmms/api/controller/CoreController.java

@@ -25,6 +25,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
 
 import cn.com.qmth.stmms.admin.thread.MarkGroupDeleteThread;
 import cn.com.qmth.stmms.api.dto.GroupDTO;
+import cn.com.qmth.stmms.api.dto.GroupQuestionDTO;
 import cn.com.qmth.stmms.api.dto.PaperDTO;
 import cn.com.qmth.stmms.api.dto.PaperStructureDTO;
 import cn.com.qmth.stmms.api.dto.QuestionDTO;
@@ -728,7 +729,7 @@ public class CoreController extends BaseApiController {
         for (GroupDTO g : dto.getGroups()) {
             List<ExamQuestion> questionGroup = new ArrayList<ExamQuestion>();
             BigDecimal totalScore = BigDecimal.ZERO;
-            for (QuestionDTO q : g.getQuestions()) {
+            for (GroupQuestionDTO q : g.getQuestions()) {
                 ExamQuestion old = questionService.findByExamAndSubjectAndObjectiveAndMainNumberAndSubNumber(
                         dto.getExamId(), dto.getSubjectCode(), false, q.getMainNumber(), q.getSubNumber());
                 if (old == null) {
@@ -740,7 +741,8 @@ public class CoreController extends BaseApiController {
             }
             MarkGroup group = new MarkGroup(dto.getExamId(), dto.getSubjectCode(), g.getNumber(), g.getPicConfig(),
                     totalScore.doubleValue(), g.getDoubleRate(), g.getArbitrateThreshold(), g.getScorePolicy(),
-                    g.getMarkMode(), dto.getTrialCount(), false, g.getEnableAllZero(), null, false);
+                    g.getMarkMode(), dto.getTrialCount(), false, g.getEnableAllZero() == null ? false
+                            : g.getEnableAllZero(), null, false);
             if (!questionGroup.isEmpty()) {
                 questionService.save(questionGroup);
                 groupService.save(group);

+ 3 - 3
stmms-web/src/main/java/cn/com/qmth/stmms/api/dto/GroupDTO.java

@@ -20,7 +20,7 @@ public class GroupDTO {
 
     private String markMode;
 
-    private List<QuestionDTO> questions;
+    private List<GroupQuestionDTO> questions;
 
     public Integer getNumber() {
         return number;
@@ -78,11 +78,11 @@ public class GroupDTO {
         this.markMode = markMode;
     }
 
-    public List<QuestionDTO> getQuestions() {
+    public List<GroupQuestionDTO> getQuestions() {
         return questions;
     }
 
-    public void setQuestions(List<QuestionDTO> questions) {
+    public void setQuestions(List<GroupQuestionDTO> questions) {
         this.questions = questions;
     }
 

+ 25 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/api/dto/GroupQuestionDTO.java

@@ -0,0 +1,25 @@
+package cn.com.qmth.stmms.api.dto;
+
+public class GroupQuestionDTO {
+
+    private Integer mainNumber;
+
+    private String subNumber;
+
+    public Integer getMainNumber() {
+        return mainNumber;
+    }
+
+    public void setMainNumber(Integer mainNumber) {
+        this.mainNumber = mainNumber;
+    }
+
+    public String getSubNumber() {
+        return subNumber;
+    }
+
+    public void setSubNumber(String subNumber) {
+        this.subNumber = subNumber;
+    }
+
+}