|
@@ -94,21 +94,20 @@ public class MarkerController extends BaseExamController {
|
|
query.orderById();
|
|
query.orderById();
|
|
if (StringUtils.isNotBlank(query.getLoginName())) {
|
|
if (StringUtils.isNotBlank(query.getLoginName())) {
|
|
User user = userService.findByLoginName(query.getLoginName());
|
|
User user = userService.findByLoginName(query.getLoginName());
|
|
- query.setUserId(
|
|
|
|
- user != null && user.getSchoolId().equals(wu.getUser().getSchoolId()) ? user.getId() : null);
|
|
|
|
|
|
+ query.setUserId(user != null && user.getSchoolId().equals(wu.getUser().getSchoolId()) ? user.getId() : null);
|
|
}
|
|
}
|
|
query = markerService.findByQuery(query);
|
|
query = markerService.findByQuery(query);
|
|
for (Marker marker : query.getResult()) {
|
|
for (Marker marker : query.getResult()) {
|
|
marker.setSubject(subjectService.find(marker.getExamId(), marker.getSubjectCode()));
|
|
marker.setSubject(subjectService.find(marker.getExamId(), marker.getSubjectCode()));
|
|
MarkGroup group = groupService.findOne(examId, marker.getSubjectCode(), marker.getGroupNumber());
|
|
MarkGroup group = groupService.findOne(examId, marker.getSubjectCode(), marker.getGroupNumber());
|
|
- group.setQuestionList(questionService
|
|
|
|
- .findByExamAndSubjectAndObjectiveAndGroupNumber(examId, marker.getSubjectCode(), false,
|
|
|
|
- group.getNumber()));
|
|
|
|
|
|
+ group.setQuestionList(questionService.findByExamAndSubjectAndObjectiveAndGroupNumber(examId,
|
|
|
|
+ marker.getSubjectCode(), false, group.getNumber()));
|
|
marker.setGroup(group);
|
|
marker.setGroup(group);
|
|
marker.setMarkedCount(markService.markedCount(marker));
|
|
marker.setMarkedCount(markService.markedCount(marker));
|
|
marker.setCurrentCount(markService.applyCount(marker));
|
|
marker.setCurrentCount(markService.applyCount(marker));
|
|
marker.setUser(userService.findById(marker.getUserId()));
|
|
marker.setUser(userService.findById(marker.getUserId()));
|
|
marker.setReseting(lockService.isLocked(LockType.MARKER_RESET, marker.getId()));
|
|
marker.setReseting(lockService.isLocked(LockType.MARKER_RESET, marker.getId()));
|
|
|
|
+ marker.setClassCount(classService.countByUserIdAndExamId(marker.getUserId(), examId));
|
|
}
|
|
}
|
|
model.addAttribute("query", query);
|
|
model.addAttribute("query", query);
|
|
model.addAttribute("subjectList", getExamSubject(examId, wu));
|
|
model.addAttribute("subjectList", getExamSubject(examId, wu));
|
|
@@ -214,24 +213,28 @@ public class MarkerController extends BaseExamController {
|
|
obj.accumulate("message", "评卷员正在重置");
|
|
obj.accumulate("message", "评卷员正在重置");
|
|
}
|
|
}
|
|
|
|
|
|
- // try {
|
|
|
|
- // lockService.waitlock(LockType.EXAM_SUBJECT, marker.getExamId(), marker.getSubjectCode());
|
|
|
|
- // lockService
|
|
|
|
- // .waitlock(LockType.GROUP, marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
|
- // lockService.waitlock(LockType.MARKER, marker.getId());
|
|
|
|
|
|
+ // try {
|
|
|
|
+ // lockService.waitlock(LockType.EXAM_SUBJECT, marker.getExamId(),
|
|
|
|
+ // marker.getSubjectCode());
|
|
|
|
+ // lockService
|
|
|
|
+ // .waitlock(LockType.GROUP, marker.getExamId(),
|
|
|
|
+ // marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
|
+ // lockService.waitlock(LockType.MARKER, marker.getId());
|
|
//
|
|
//
|
|
- // markService.resetMarker(marker);
|
|
|
|
- // obj.accumulate("success", true);
|
|
|
|
- // } catch (Exception e) {
|
|
|
|
- // log.error("reset marker error", e);
|
|
|
|
- // obj.accumulate("success", false);
|
|
|
|
- // obj.accumulate("message", "重置评卷员失败");
|
|
|
|
- // } finally {
|
|
|
|
- // lockService.unlock(LockType.MARKER, marker.getId());
|
|
|
|
- // lockService
|
|
|
|
- // .unlock(LockType.GROUP, marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
|
- // lockService.unlock(LockType.EXAM_SUBJECT, marker.getExamId(), marker.getSubjectCode());
|
|
|
|
- // }
|
|
|
|
|
|
+ // markService.resetMarker(marker);
|
|
|
|
+ // obj.accumulate("success", true);
|
|
|
|
+ // } catch (Exception e) {
|
|
|
|
+ // log.error("reset marker error", e);
|
|
|
|
+ // obj.accumulate("success", false);
|
|
|
|
+ // obj.accumulate("message", "重置评卷员失败");
|
|
|
|
+ // } finally {
|
|
|
|
+ // lockService.unlock(LockType.MARKER, marker.getId());
|
|
|
|
+ // lockService
|
|
|
|
+ // .unlock(LockType.GROUP, marker.getExamId(),
|
|
|
|
+ // marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
|
+ // lockService.unlock(LockType.EXAM_SUBJECT, marker.getExamId(),
|
|
|
|
+ // marker.getSubjectCode());
|
|
|
|
+ // }
|
|
} else {
|
|
} else {
|
|
obj.accumulate("success", false);
|
|
obj.accumulate("success", false);
|
|
obj.accumulate("message", "该评卷员不存在");
|
|
obj.accumulate("message", "该评卷员不存在");
|
|
@@ -511,14 +514,12 @@ public class MarkerController extends BaseExamController {
|
|
}
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/class/{markerId}", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/class/{markerId}", method = RequestMethod.GET)
|
|
- public String classAdd(@PathVariable Integer markerId, Model model, RedirectAttributes redirectAttributes) {
|
|
|
|
|
|
+ public String classList(@PathVariable Integer markerId, Model model, RedirectAttributes redirectAttributes) {
|
|
Marker marker = markerService.findById(markerId);
|
|
Marker marker = markerService.findById(markerId);
|
|
if (marker != null) {
|
|
if (marker != null) {
|
|
|
|
+ marker.setUser(userService.findById(marker.getUserId()));
|
|
model.addAttribute("marker", marker);
|
|
model.addAttribute("marker", marker);
|
|
- List<String> classList = studentService.findDistinctClassName(marker.getExamId(), marker.getSubjectCode());
|
|
|
|
Set<String> classes = classService.findClassNameByUserIdAndExamId(marker.getUserId(), marker.getExamId());
|
|
Set<String> classes = classService.findClassNameByUserIdAndExamId(marker.getUserId(), marker.getExamId());
|
|
- classList.removeAll(classes);
|
|
|
|
- model.addAttribute("classList", classList);
|
|
|
|
model.addAttribute("classes", classes);
|
|
model.addAttribute("classes", classes);
|
|
return "modules/exam/markerClass";
|
|
return "modules/exam/markerClass";
|
|
}
|
|
}
|
|
@@ -532,10 +533,24 @@ public class MarkerController extends BaseExamController {
|
|
Model model, RedirectAttributes redirectAttributes) {
|
|
Model model, RedirectAttributes redirectAttributes) {
|
|
Marker marker = markerService.findById(markerId);
|
|
Marker marker = markerService.findById(markerId);
|
|
if (marker != null) {
|
|
if (marker != null) {
|
|
- classService.save(marker, classes);
|
|
|
|
|
|
+ classService.save(marker.getUserId(), marker.getExamId(), classes);
|
|
addMessage(redirectAttributes, "保存成功");
|
|
addMessage(redirectAttributes, "保存成功");
|
|
- return "redirect:" + "/admin/exam/marker?subjectCode=" + marker.getSubjectCode() + "&groupNumber=" + marker
|
|
|
|
- .getGroupNumber();
|
|
|
|
|
|
+ return "redirect:" + "/admin/exam/marker?subjectCode=" + marker.getSubjectCode() + "&groupNumber="
|
|
|
|
+ + marker.getGroupNumber();
|
|
|
|
+ }
|
|
|
|
+ addMessage(redirectAttributes, "评卷员不存在");
|
|
|
|
+ return "redirect:/admin/exam/marker";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Logging(menu = "评卷员班级清空", type = LogType.DELETE)
|
|
|
|
+ @RequestMapping(value = "/class/delete", method = RequestMethod.GET)
|
|
|
|
+ public String classDelete(@RequestParam Integer markerId, Model model, RedirectAttributes redirectAttributes) {
|
|
|
|
+ Marker marker = markerService.findById(markerId);
|
|
|
|
+ if (marker != null) {
|
|
|
|
+ classService.deleteByUserIdAndExamId(marker.getUserId(), marker.getExamId());
|
|
|
|
+ addMessage(redirectAttributes, "清空成功");
|
|
|
|
+ return "redirect:" + "/admin/exam/marker?subjectCode=" + marker.getSubjectCode() + "&groupNumber="
|
|
|
|
+ + marker.getGroupNumber();
|
|
}
|
|
}
|
|
addMessage(redirectAttributes, "评卷员不存在");
|
|
addMessage(redirectAttributes, "评卷员不存在");
|
|
return "redirect:/admin/exam/marker";
|
|
return "redirect:/admin/exam/marker";
|