|
@@ -30,12 +30,14 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|
|
import cn.com.qmth.stmms.admin.dto.ExamQuestionDTO;
|
|
|
import cn.com.qmth.stmms.biz.campus.model.Campus;
|
|
|
import cn.com.qmth.stmms.biz.campus.service.CampusService;
|
|
|
+import cn.com.qmth.stmms.biz.exam.model.Exam;
|
|
|
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.query.ExamStudentSearchQuery;
|
|
|
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;
|
|
@@ -45,6 +47,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.annotation.RoleRequire;
|
|
|
import cn.com.qmth.stmms.common.domain.WebUser;
|
|
|
+import cn.com.qmth.stmms.common.enums.ExamType;
|
|
|
import cn.com.qmth.stmms.common.enums.LockType;
|
|
|
import cn.com.qmth.stmms.common.enums.MarkMode;
|
|
|
import cn.com.qmth.stmms.common.enums.MarkStatus;
|
|
@@ -87,6 +90,9 @@ public class MarkGroupController extends BaseExamController {
|
|
|
@Autowired
|
|
|
private LockService lockService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ExamService examService;
|
|
|
+
|
|
|
@Value("${slice.image.server}")
|
|
|
private String imageServer;
|
|
|
|
|
@@ -103,33 +109,35 @@ public class MarkGroupController extends BaseExamController {
|
|
|
}
|
|
|
List<MarkGroup> list = groupService.findByExamAndSubject(examId, subjectCode);
|
|
|
for (MarkGroup group : list) {
|
|
|
- group.setQuestionList(
|
|
|
- questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, group.getNumber()));
|
|
|
+ group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode,
|
|
|
+ false, group.getNumber()));
|
|
|
group.setMarkerCount(markerService.countByExamAndSubjectAndGroup(examId, subjectCode, group.getNumber()));
|
|
|
group.setCurrentCount(markService.applyCount(group));
|
|
|
- int percent = group.getLibraryCount() > 0 ? (int) (group.getMarkedCount() * 100.00 / group.getLibraryCount()) : 0;
|
|
|
+ int percent = group.getLibraryCount() > 0 ? (int) (group.getMarkedCount() * 100.00 / group
|
|
|
+ .getLibraryCount()) : 0;
|
|
|
group.setPercent(percent);
|
|
|
}
|
|
|
model.addAttribute("resultList", list);
|
|
|
model.addAttribute("subject", subject);
|
|
|
model.addAttribute("subjectList", getExamSubject(examId, wu));
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
+ model.addAttribute("examType", exam.getType());
|
|
|
return "modules/exam/groupList";
|
|
|
}
|
|
|
|
|
|
@RequestMapping("/query")
|
|
|
@ResponseBody
|
|
|
- public JSONArray query(HttpServletRequest request, @RequestParam String subjectCode, @RequestParam(required = false) Boolean withDouble,
|
|
|
- @RequestParam(required = false) MarkStatus status) {
|
|
|
+ public JSONArray query(HttpServletRequest request, @RequestParam String subjectCode,
|
|
|
+ @RequestParam(required = false) Boolean withDouble, @RequestParam(required = false) MarkStatus status) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
JSONArray array = new JSONArray();
|
|
|
- List<MarkGroup> list = withDouble != null && withDouble ?
|
|
|
- groupService.findByExamAndSubjectWithDouble(examId, subjectCode) :
|
|
|
- (status != null ?
|
|
|
- groupService.findByExamAndSubjectAndStatus(examId, subjectCode, status) :
|
|
|
- groupService.findByExamAndSubject(examId, subjectCode));
|
|
|
+ List<MarkGroup> list = withDouble != null && withDouble ? groupService.findByExamAndSubjectWithDouble(examId,
|
|
|
+ subjectCode) : (status != null ? groupService
|
|
|
+ .findByExamAndSubjectAndStatus(examId, subjectCode, status) : groupService.findByExamAndSubject(examId,
|
|
|
+ subjectCode));
|
|
|
for (MarkGroup group : list) {
|
|
|
- group.setQuestionList(
|
|
|
- questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, group.getNumber()));
|
|
|
+ group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode,
|
|
|
+ false, group.getNumber()));
|
|
|
JSONObject obj = new JSONObject();
|
|
|
obj.accumulate("number", group.getNumber());
|
|
|
obj.accumulate("title", group.getTitle());
|
|
@@ -156,8 +164,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping("/release")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String release(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number) {
|
|
|
+ public String release(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group == null) {
|
|
@@ -175,8 +183,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping("/reset")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String reset(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number) {
|
|
|
+ public String reset(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group == null) {
|
|
@@ -210,13 +218,15 @@ public class MarkGroupController extends BaseExamController {
|
|
|
boolean allow = false;
|
|
|
if (group.getStatus() == MarkStatus.TRIAL && status == MarkStatus.FORMAL) {
|
|
|
allow = true;
|
|
|
- } else if (group.getStatus() == MarkStatus.FORMAL && status == MarkStatus.FINISH && group.getLeftCount() == 0) {
|
|
|
+ } else if (group.getStatus() == MarkStatus.FORMAL && status == MarkStatus.FINISH
|
|
|
+ && group.getLeftCount() == 0) {
|
|
|
allow = true;
|
|
|
} else if (group.getStatus() == MarkStatus.FINISH && status == MarkStatus.FORMAL) {
|
|
|
allow = true;
|
|
|
}
|
|
|
if (allow) {
|
|
|
- if (groupService.updateStatus(examId, subjectCode, number, status, group.getStatus()) && status == MarkStatus.FORMAL) {
|
|
|
+ if (groupService.updateStatus(examId, subjectCode, number, status, group.getStatus())
|
|
|
+ && status == MarkStatus.FORMAL) {
|
|
|
// 切换到正评成功后刷新任务数量
|
|
|
group.setStatus(status);
|
|
|
markService.updateLibraryCount(group);
|
|
@@ -246,6 +256,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
model.addAttribute("thirdPolicyList", ThirdPolicy.values());
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
+ model.addAttribute("examType", exam.getType());
|
|
|
return "modules/exam/groupAdd";
|
|
|
}
|
|
|
|
|
@@ -258,15 +270,19 @@ public class MarkGroupController extends BaseExamController {
|
|
|
if (group != null) {
|
|
|
String pictureConfig = buildPictureConfig(group);
|
|
|
group.setPicList(pictureConfig);
|
|
|
- group.setQuestionList(
|
|
|
- questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, group.getNumber()));
|
|
|
+ group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode,
|
|
|
+ false, group.getNumber()));
|
|
|
model.addAttribute("group", group);
|
|
|
- model.addAttribute("questions", questionService
|
|
|
- .findByExamAndSubjectAndObjectiveAndGroupNumber(group.getExamId(), group.getSubjectCode(), false, group.getNumber()));
|
|
|
+ model.addAttribute(
|
|
|
+ "questions",
|
|
|
+ questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(group.getExamId(),
|
|
|
+ group.getSubjectCode(), false, group.getNumber()));
|
|
|
model.addAttribute("pictureConfig", pictureConfig);
|
|
|
model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
model.addAttribute("thirdPolicyList", ThirdPolicy.values());
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
+ model.addAttribute("examType", exam.getType());
|
|
|
return "modules/exam/groupEditSimple";
|
|
|
} else {
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
@@ -276,19 +292,20 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping("/edit-full")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String editFull(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number) {
|
|
|
+ public String editFull(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group != null) {
|
|
|
String pictureConfig = buildPictureConfig(group);
|
|
|
group.setPicList(pictureConfig);
|
|
|
- group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, number));
|
|
|
+ group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode,
|
|
|
+ false, number));
|
|
|
List<MarkGroup> questionList = new ArrayList<MarkGroup>();
|
|
|
String[] mainNumbers = group.getMainNumber().split(",");
|
|
|
for (String mainNumber : mainNumbers) {
|
|
|
- List<ExamQuestion> list = questionService
|
|
|
- .findByExamAndSubjectAndObjectiveAndMainNumber(examId, subjectCode, false, Integer.parseInt(mainNumber));
|
|
|
+ List<ExamQuestion> list = questionService.findByExamAndSubjectAndObjectiveAndMainNumber(examId,
|
|
|
+ subjectCode, false, Integer.parseInt(mainNumber));
|
|
|
StringBuilder score = new StringBuilder();
|
|
|
DecimalFormat format = new DecimalFormat("###.#");
|
|
|
String title = "";
|
|
@@ -311,6 +328,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
model.addAttribute("markModeList", MarkMode.values());
|
|
|
model.addAttribute("scorePolicyList", ScorePolicy.values());
|
|
|
model.addAttribute("thirdPolicyList", ThirdPolicy.values());
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
+ model.addAttribute("examType", exam.getType());
|
|
|
return "modules/exam/groupEditFull";
|
|
|
} else {
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
@@ -320,8 +339,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping("/delete")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String delete(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number) {
|
|
|
+ public String delete(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group == null) {
|
|
@@ -347,9 +366,10 @@ public class MarkGroupController extends BaseExamController {
|
|
|
@RequestMapping("/save")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
@Transactional
|
|
|
- public String save(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number, @RequestParam Boolean reset, @RequestParam(required = false) String picList,
|
|
|
- @RequestParam(required = false) Double doubleRate, @RequestParam(required = false) Double arbitrateThreshold,
|
|
|
+ public String save(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number, @RequestParam Boolean reset,
|
|
|
+ @RequestParam(required = false) String picList, @RequestParam(required = false) Double doubleRate,
|
|
|
+ @RequestParam(required = false) Double arbitrateThreshold,
|
|
|
@RequestParam(required = false) Integer thirdPolicy, @RequestParam(required = false) Integer scorePolicy,
|
|
|
@RequestParam(required = false) MarkMode markMode, @RequestParam(required = false) Integer trialCount,
|
|
|
@RequestParam(required = false) boolean sheetView, @RequestParam(required = false) String questionDetail,
|
|
@@ -363,9 +383,10 @@ public class MarkGroupController extends BaseExamController {
|
|
|
questionDetail = StringEscapeUtils.unescapeHtml(questionDetail);
|
|
|
JSONArray array = JSONArray.fromObject(questionDetail);
|
|
|
List<ExamQuestionDTO> detailList = JSONArray.toList(array, new ExamQuestionDTO(), new JsonConfig());
|
|
|
- List<ExamQuestion> all = questionService.findByExamAndSubjectAndObjective(examId, subjectCode, false);
|
|
|
- List<ExamQuestion> old = questionService
|
|
|
- .findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, number);
|
|
|
+ List<ExamQuestion> all = questionService.findByExamAndSubjectAndObjective(examId, subjectCode,
|
|
|
+ false);
|
|
|
+ List<ExamQuestion> old = questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId,
|
|
|
+ subjectCode, false, number);
|
|
|
Set<Integer> mainNumbers = new HashSet<Integer>();
|
|
|
for (ExamQuestion examQuestion : all) {
|
|
|
mainNumbers.add(examQuestion.getMainNumber());
|
|
@@ -390,22 +411,25 @@ public class MarkGroupController extends BaseExamController {
|
|
|
}
|
|
|
if (detailList != null && detailList.size() > 0) {
|
|
|
ScorePolicy policy = scorePolicy != null ? ScorePolicy.findByValue(scorePolicy) : null;
|
|
|
- ThirdPolicy third = thirdPolicy != null ? ThirdPolicy.findByValue(thirdPolicy) : ThirdPolicy.DISABLE;
|
|
|
+ ThirdPolicy third = thirdPolicy != null ? ThirdPolicy.findByValue(thirdPolicy)
|
|
|
+ : ThirdPolicy.DISABLE;
|
|
|
try {
|
|
|
- lockService.waitlock(LockType.GROUP, true, group.getExamId(), group.getSubjectCode(), group.getNumber());
|
|
|
+ lockService.waitlock(LockType.GROUP, true, group.getExamId(), group.getSubjectCode(),
|
|
|
+ group.getNumber());
|
|
|
markService.updateGroup(group, buildQuestionList(group, detailList), policy, third);
|
|
|
} catch (Exception e) {
|
|
|
log.error("update group error", e);
|
|
|
throw new RuntimeException("重置更新大题失败", e);
|
|
|
} finally {
|
|
|
- lockService.unlock(LockType.GROUP, true, group.getExamId(), group.getSubjectCode(), group.getNumber());
|
|
|
+ lockService.unlock(LockType.GROUP, true, group.getExamId(), group.getSubjectCode(),
|
|
|
+ group.getNumber());
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
// simple update
|
|
|
List<Double> intervalScores = buildDoubleList(intervalScoreList);
|
|
|
- List<ExamQuestion> questionList = questionService
|
|
|
- .findByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, number);
|
|
|
+ List<ExamQuestion> questionList = questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(
|
|
|
+ examId, subjectCode, false, number);
|
|
|
if (intervalScores.size() == questionList.size()) {
|
|
|
for (int i = 0; i < questionList.size(); i++) {
|
|
|
ExamQuestion q = questionList.get(i);
|
|
@@ -455,13 +479,15 @@ public class MarkGroupController extends BaseExamController {
|
|
|
@RequestMapping("/insert")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
@Transactional
|
|
|
- public String insert(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number, @RequestParam String questionDetail, @RequestParam String picList,
|
|
|
- @RequestParam(required = false) Double doubleRate, @RequestParam(required = false) Double arbitrateThreshold,
|
|
|
+ public String insert(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number, @RequestParam String questionDetail,
|
|
|
+ @RequestParam String picList, @RequestParam(required = false) Double doubleRate,
|
|
|
+ @RequestParam(required = false) Double arbitrateThreshold,
|
|
|
@RequestParam(required = false) Integer thirdPolicy, @RequestParam(required = false) Integer scorePolicy,
|
|
|
@RequestParam(required = false) String markMode, @RequestParam(required = false) Integer trialCount,
|
|
|
@RequestParam(required = false) boolean sheetView) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
MarkGroup group = groupService.findOne(examId, subjectCode, number);
|
|
|
if (group != null) {
|
|
|
addMessage(redirectAttributes, "评卷分组序号不能重复");
|
|
@@ -471,7 +497,7 @@ public class MarkGroupController extends BaseExamController {
|
|
|
addMessage(redirectAttributes, "大题详情必须设置");
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
|
return "redirect:/admin/exam/group/add";
|
|
|
- } else if (StringUtils.isBlank(picList)) {
|
|
|
+ } else if (StringUtils.isBlank(picList) && !exam.getType().equals(ExamType.MULTI_MEDIA)) {
|
|
|
addMessage(redirectAttributes, "图片范围必须设置");
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
|
return "redirect:/admin/exam/group/add";
|
|
@@ -479,12 +505,15 @@ public class MarkGroupController extends BaseExamController {
|
|
|
try {
|
|
|
// create group
|
|
|
// build picList
|
|
|
- picList = StringEscapeUtils.unescapeHtml(picList);
|
|
|
- JSONArray array = JSONArray.fromObject(picList);
|
|
|
- List<PictureConfigItem> picConfigList = JSONArray.toList(array, new PictureConfigItem(), new JsonConfig());
|
|
|
+ List<PictureConfigItem> picConfigList = null;
|
|
|
+ if (!exam.getType().equals(ExamType.MULTI_MEDIA)) {
|
|
|
+ picList = StringEscapeUtils.unescapeHtml(picList);
|
|
|
+ JSONArray array = JSONArray.fromObject(picList);
|
|
|
+ picConfigList = JSONArray.toList(array, new PictureConfigItem(), new JsonConfig());
|
|
|
+ }
|
|
|
// build questionDetail
|
|
|
questionDetail = StringEscapeUtils.unescapeHtml(questionDetail);
|
|
|
- array = JSONArray.fromObject(questionDetail);
|
|
|
+ JSONArray array = JSONArray.fromObject(questionDetail);
|
|
|
List<ExamQuestionDTO> detailList = JSONArray.toList(array, new ExamQuestionDTO(), new JsonConfig());
|
|
|
for (int i = 0; i < detailList.size(); i++) {
|
|
|
ExamQuestionDTO dto = detailList.get(i);
|
|
@@ -495,23 +524,25 @@ public class MarkGroupController extends BaseExamController {
|
|
|
}
|
|
|
dto.setScoreList(scoreList);
|
|
|
}
|
|
|
- if (picConfigList != null && detailList != null && picConfigList.size() > 0 && detailList.size() > 0) {
|
|
|
+ if (detailList != null && detailList.size() > 0) {
|
|
|
for (ExamQuestionDTO detail : detailList) {
|
|
|
- if (questionService
|
|
|
- .countByExamAndSubjectAndObjectiveAndMainNumber(examId, subjectCode, false, detail.getMainNumber()) > 0) {
|
|
|
+ if (questionService.countByExamAndSubjectAndObjectiveAndMainNumber(examId, subjectCode, false,
|
|
|
+ detail.getMainNumber()) > 0) {
|
|
|
addMessage(redirectAttributes, "大题号不能重复");
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
|
return "redirect:/admin/exam/group/add";
|
|
|
}
|
|
|
}
|
|
|
- group = new MarkGroup(examId, subjectCode, number, picConfigList, 0d, doubleRate, arbitrateThreshold, scorePolicy,
|
|
|
- markMode, trialCount, sheetView, thirdPolicy);
|
|
|
+ group = new MarkGroup(examId, subjectCode, number, picConfigList, 0d, doubleRate,
|
|
|
+ arbitrateThreshold, scorePolicy, markMode, trialCount, sheetView, thirdPolicy);
|
|
|
// clear and replace exam_question
|
|
|
- questionService.deleteByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, number);
|
|
|
+ questionService
|
|
|
+ .deleteByExamAndSubjectAndObjectiveAndGroupNumber(examId, subjectCode, false, number);
|
|
|
List<ExamQuestion> list = buildQuestionList(group, detailList);
|
|
|
questionService.save(list);
|
|
|
groupService.save(group);
|
|
|
- subjectService.updateScore(examId, subjectCode, false, groupService.sumTotalScore(examId, subjectCode));
|
|
|
+ subjectService.updateScore(examId, subjectCode, false,
|
|
|
+ groupService.sumTotalScore(examId, subjectCode));
|
|
|
redirectAttributes.addAttribute("subjectCode", subjectCode);
|
|
|
return "redirect:/admin/exam/group";
|
|
|
} else {
|
|
@@ -530,8 +561,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping("/getPictureConfig")
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String get(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes, @RequestParam String subjectCode,
|
|
|
- @RequestParam Integer number) {
|
|
|
+ public String get(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
+ @RequestParam String subjectCode, @RequestParam Integer number) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
ExamStudentSearchQuery query = new ExamStudentSearchQuery();
|
|
|
query.setExamId(examId);
|
|
@@ -569,9 +600,8 @@ public class MarkGroupController extends BaseExamController {
|
|
|
|
|
|
private List<String> buildPicUrl(ExamStudent examStudent) {
|
|
|
Campus campus = campusService.findBySchoolAndName(examStudent.getSchoolId(), examStudent.getCampusName());
|
|
|
- List<String> picUrls = PictureUrlBuilder
|
|
|
- .getSliceUrls(examStudent.getExamId(), campus.getId(), examStudent.getSubjectCode(), examStudent.getExamNumber(),
|
|
|
- examStudent.getSliceCount());
|
|
|
+ List<String> picUrls = PictureUrlBuilder.getSliceUrls(examStudent.getExamId(), campus.getId(),
|
|
|
+ examStudent.getSubjectCode(), examStudent.getExamNumber(), examStudent.getSliceCount());
|
|
|
return picUrls;
|
|
|
}
|
|
|
|