|
@@ -38,6 +38,7 @@ import cn.com.qmth.stmms.biz.mark.model.PictureConfigItem;
|
|
|
import cn.com.qmth.stmms.biz.mark.service.MarkService;
|
|
|
import cn.com.qmth.stmms.common.auth.annotation.RoleRequire;
|
|
|
import cn.com.qmth.stmms.common.domain.WebUser;
|
|
|
+import cn.com.qmth.stmms.common.enums.MarkMode;
|
|
|
import cn.com.qmth.stmms.common.enums.Role;
|
|
|
import cn.com.qmth.stmms.common.enums.ScorePolicy;
|
|
|
import cn.com.qmth.stmms.common.utils.PictureUrlBuilder;
|
|
@@ -180,6 +181,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
MarkGroup group = new MarkGroup();
|
|
|
group.setSubjectCode(subjectCode);
|
|
|
model.addAttribute("group", group);
|
|
|
+ model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
return "modules/exam/groupAdd";
|
|
|
}
|
|
@@ -197,6 +199,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
model.addAttribute("questions", questionService.findByExamAndSubjectAndObjectiveAndMainNumber(
|
|
|
group.getExamId(), group.getSubjectCode(), false, group.getNumber()));
|
|
|
model.addAttribute("pictureConfig", pictureConfig);
|
|
|
+ model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
return "modules/exam/groupEditSimple";
|
|
|
} else {
|
|
@@ -218,6 +221,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
questionService.findByExamAndSubjectAndObjectiveAndMainNumber(examId, subjectCode, false, number));
|
|
|
model.addAttribute("group", group);
|
|
|
model.addAttribute("pictureConfig", pictureConfig);
|
|
|
+ model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
return "modules/exam/groupEditFull";
|
|
|
} else {
|
|
@@ -250,7 +254,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
@RequestParam(required = false) String intervalScoreList, @RequestParam(required = false) String scoreList,
|
|
|
@RequestParam(required = false) Double doubleRate,
|
|
|
@RequestParam(required = false) Double arbitrateThreshold,
|
|
|
- @RequestParam(required = false) Integer scorePolicy) {
|
|
|
+ @RequestParam(required = false) Integer scorePolicy, @RequestParam(required = false) String markMode) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
List<ExamQuestion> questionList = questionService.findByExamAndSubjectAndObjectiveAndMainNumber(examId,
|
|
@@ -277,10 +281,13 @@ public class MarkGroupController extends BaseExamController {
|
|
|
groupService.updateTitle(examId, subjectCode, number, title);
|
|
|
}
|
|
|
if (doubleRate != null) {
|
|
|
- groupService.updateDoubleRate(examId, subjectCode, number, doubleRate);
|
|
|
+ groupService.updateDoubleRate(examId, subjectCode, number, doubleRate);
|
|
|
}
|
|
|
if (arbitrateThreshold != null) {
|
|
|
- groupService.updateArbitrateThreshold(examId, subjectCode, number, arbitrateThreshold);
|
|
|
+ groupService.updateArbitrateThreshold(examId, subjectCode, number, arbitrateThreshold);
|
|
|
+ }
|
|
|
+ if (markMode != null) {
|
|
|
+ groupService.updateMarkMode(examId, subjectCode, number, MarkMode.findByName(markMode));
|
|
|
}
|
|
|
// advance update
|
|
|
ScorePolicy policy = scorePolicy != null ? ScorePolicy.findByValue(scorePolicy) : null;
|
|
@@ -308,7 +315,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
@RequestParam(required = false) String title, @RequestParam(required = false) String picList,
|
|
|
@RequestParam(required = false) String scoreList, @RequestParam(required = false) Double doubleRate,
|
|
|
@RequestParam(required = false) Double arbitrateThreshold,
|
|
|
- @RequestParam(required = false) Integer scorePolicy) {
|
|
|
+ @RequestParam(required = false) Integer scorePolicy, @RequestParam(required = false) String markMode) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group != null) {
|
|
@@ -325,7 +332,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
JSONArray array = JSONArray.fromObject(picList);
|
|
|
List<PictureConfigItem> list = JSONArray.toList(array, new PictureConfigItem(), new JsonConfig());
|
|
|
group = new MarkGroup(examId, subjectCode, number, StringUtils.trimToNull(title), list, 0d, doubleRate,
|
|
|
- arbitrateThreshold, scorePolicy);
|
|
|
+ arbitrateThreshold, scorePolicy, markMode);
|
|
|
List<Double> scores = buildDoubleList(scoreList);
|
|
|
if (group.getTitle() != null && group.getPicList() != null && scores.size() > 0) {
|
|
|
// clear and replace exam_question
|