|
@@ -517,6 +517,14 @@ public class MarkGroupController extends BaseExamController {
|
|
if (selectives.size() > 0 && mainNumbers.size() > 1) {
|
|
if (selectives.size() > 0 && mainNumbers.size() > 1) {
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
+ // 一个选做题大题内的小题必须在一个分组
|
|
|
|
+ for (Integer mainNumber : mainNumbers) {
|
|
|
|
+ Long count = questionService.countByExamAndSubjectAndObjectiveAndMainNumber(examId, subjectCode, true,
|
|
|
|
+ mainNumber);
|
|
|
|
+ if (count != selectives.size()) {
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
if (questionIds.length == selectives.size()) {
|
|
if (questionIds.length == selectives.size()) {
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
@@ -551,7 +559,7 @@ public class MarkGroupController extends BaseExamController {
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
return "redirect:/admin/exam/group/add";
|
|
return "redirect:/admin/exam/group/add";
|
|
} else if (!checkSelective(examId, subjectCode, questionIds)) {
|
|
} else if (!checkSelective(examId, subjectCode, questionIds)) {
|
|
- addMessage(redirectAttributes, "选做题和非选做题不能在一组,并且选做题大题必须单独一组");
|
|
|
|
|
|
+ addMessage(redirectAttributes, "选做题和非选做题不能在一组,并且选做题大题必须单独一组,同一大题不能被分开");
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
return "redirect:/admin/exam/group/add";
|
|
return "redirect:/admin/exam/group/add";
|
|
} else {
|
|
} else {
|
|
@@ -702,7 +710,7 @@ public class MarkGroupController extends BaseExamController {
|
|
int examId = getSessionExamId(request);
|
|
int examId = getSessionExamId(request);
|
|
ExamSubject subject = subjectService.find(examId, subjectCode);
|
|
ExamSubject subject = subjectService.find(examId, subjectCode);
|
|
JSONObject obj = new JSONObject();
|
|
JSONObject obj = new JSONObject();
|
|
- if(subject == null ){
|
|
|
|
|
|
+ if (subject == null) {
|
|
obj.accumulate("success", false);
|
|
obj.accumulate("success", false);
|
|
obj.accumulate("message", "科目不能为空");
|
|
obj.accumulate("message", "科目不能为空");
|
|
return obj;
|
|
return obj;
|