|
@@ -140,8 +140,8 @@ public class StudentController extends BaseExamController {
|
|
previous.setStudentCode(student.getStudentCode());
|
|
previous.setStudentCode(student.getStudentCode());
|
|
previous.setName(student.getName());
|
|
previous.setName(student.getName());
|
|
previous.setPackageCode(student.getPackageCode());
|
|
previous.setPackageCode(student.getPackageCode());
|
|
- if (checkExamNumber(previous, new HashMap<String, ExamStudent>(),
|
|
|
|
- new HashMap<String, ExamStudent>())) {
|
|
|
|
|
|
+ previous = checkExamNumber(previous, new HashMap<String, ExamStudent>(),
|
|
|
|
+ new HashMap<String, ExamStudent>());
|
|
previous = studentService.save(previous);
|
|
previous = studentService.save(previous);
|
|
// if
|
|
// if
|
|
// (!previousSubjectCode.equals(previous.getSubjectCode()))
|
|
// (!previousSubjectCode.equals(previous.getSubjectCode()))
|
|
@@ -161,11 +161,6 @@ public class StudentController extends BaseExamController {
|
|
// previous.getSubjectCode());
|
|
// previous.getSubjectCode());
|
|
// }
|
|
// }
|
|
addMessage(redirectAttributes, "考生" + previous.getName() + "保存成功");
|
|
addMessage(redirectAttributes, "考生" + previous.getName() + "保存成功");
|
|
- } else {
|
|
|
|
- addMessage(redirectAttributes, "准考证号" + previous.getExamNumber() + "已存在");
|
|
|
|
- redirectAttributes.addAttribute("id", student.getId());
|
|
|
|
- return "redirect:/admin/exam/student/update";
|
|
|
|
- }
|
|
|
|
} else {
|
|
} else {
|
|
addMessage(redirectAttributes, "考生不存在");
|
|
addMessage(redirectAttributes, "考生不存在");
|
|
}
|
|
}
|
|
@@ -180,13 +175,10 @@ public class StudentController extends BaseExamController {
|
|
student.setSheetCount(0);
|
|
student.setSheetCount(0);
|
|
student.setObjectiveScore(0d);
|
|
student.setObjectiveScore(0d);
|
|
student.setSubjectiveScore(0d);
|
|
student.setSubjectiveScore(0d);
|
|
- if (checkExamNumber(student, new HashMap<String, ExamStudent>(), new HashMap<String, ExamStudent>())) {
|
|
|
|
- studentService.save(student);
|
|
|
|
- addMessage(redirectAttributes, "考生" + student.getName() + "保存成功");
|
|
|
|
- } else {
|
|
|
|
- addMessage(redirectAttributes, "准考证号" + student.getExamNumber() + "已存在");
|
|
|
|
- return "redirect:/admin/exam/student/add";
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ student = checkExamNumber(student, new HashMap<String, ExamStudent>(), new HashMap<String, ExamStudent>());
|
|
|
|
+ studentService.save(student);
|
|
|
|
+ addMessage(redirectAttributes, "考生" + student.getName() + "保存成功");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return "redirect:/admin/exam/student";
|
|
return "redirect:/admin/exam/student";
|
|
@@ -249,7 +241,10 @@ public class StudentController extends BaseExamController {
|
|
if (StringUtils.isBlank(student.getStudentCode()) || StringUtils.isBlank(student.getName())
|
|
if (StringUtils.isBlank(student.getStudentCode()) || StringUtils.isBlank(student.getName())
|
|
|| StringUtils.isBlank(student.getSubjectCode())
|
|
|| StringUtils.isBlank(student.getSubjectCode())
|
|
|| StringUtils.isBlank(student.getSubjectName())
|
|
|| StringUtils.isBlank(student.getSubjectName())
|
|
- || StringUtils.isBlank(student.getCampusName())) {
|
|
|
|
|
|
+ || StringUtils.isBlank(student.getCampusName())
|
|
|
|
+ || StringUtils.isBlank(student.getCollege())
|
|
|
|
+ || StringUtils.isBlank(student.getClassName())
|
|
|
|
+ || StringUtils.isBlank(student.getTeacher())) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -263,13 +258,9 @@ public class StudentController extends BaseExamController {
|
|
student.setObjectiveScore(0d);
|
|
student.setObjectiveScore(0d);
|
|
student.setSubjectiveScore(0d);
|
|
student.setSubjectiveScore(0d);
|
|
|
|
|
|
- if (checkExamNumber(student, current, saveMap)) {
|
|
|
|
- saveList.add(student);
|
|
|
|
- saveMap.put(student.getExamNumber(), student);
|
|
|
|
- } else {
|
|
|
|
- failureMsg.append("<br/>准考证号 " + student.getExamNumber() + " 已存在; ");
|
|
|
|
- failureNum++;
|
|
|
|
- }
|
|
|
|
|
|
+ student = checkExamNumber(student, current, saveMap);
|
|
|
|
+ saveList.add(student);
|
|
|
|
+ saveMap.put(student.getExamNumber(), student);
|
|
}
|
|
}
|
|
|
|
|
|
successNum = studentService.batchSave(saveList);
|
|
successNum = studentService.batchSave(saveList);
|
|
@@ -325,14 +316,13 @@ public class StudentController extends BaseExamController {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean checkExamNumber(ExamStudent student, Map<String, ExamStudent> current,
|
|
|
|
|
|
+ private ExamStudent checkExamNumber(ExamStudent student, Map<String, ExamStudent> current,
|
|
Map<String, ExamStudent> saveMap) {
|
|
Map<String, ExamStudent> saveMap) {
|
|
ExamStudent previous = saveMap.get(student.getExamNumber());
|
|
ExamStudent previous = saveMap.get(student.getExamNumber());
|
|
|
|
|
|
if (previous != null) {
|
|
if (previous != null) {
|
|
- return false;
|
|
|
|
|
|
+ return updatePrevious(student, previous);
|
|
}
|
|
}
|
|
-
|
|
|
|
if (current != null) {
|
|
if (current != null) {
|
|
previous = current.get(student.getExamNumber());
|
|
previous = current.get(student.getExamNumber());
|
|
} else {
|
|
} else {
|
|
@@ -340,14 +330,27 @@ public class StudentController extends BaseExamController {
|
|
}
|
|
}
|
|
|
|
|
|
if (previous == null) {
|
|
if (previous == null) {
|
|
- return true;
|
|
|
|
|
|
+ return student;
|
|
}
|
|
}
|
|
if (student.getId() != null && student.getId().intValue() == previous.getId().intValue()) {
|
|
if (student.getId() != null && student.getId().intValue() == previous.getId().intValue()) {
|
|
- return true;
|
|
|
|
|
|
+ return updatePrevious(student, previous);
|
|
}
|
|
}
|
|
- return false;
|
|
|
|
|
|
+ return null;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private ExamStudent updatePrevious(ExamStudent student, ExamStudent previous) {
|
|
|
|
+ previous.setCollege(student.getCollege());
|
|
|
|
+ previous.setClassName(student.getClassName());
|
|
|
|
+ previous.setTeacher(student.getTeacher());
|
|
|
|
+ previous.setExamRoom(student.getExamRoom());
|
|
|
|
+ previous.setExamSite(student.getExamSite());
|
|
|
|
+ previous.setRemark(student.getRemark());
|
|
|
|
+ previous.setSubjectLevel(student.getSubjectLevel());
|
|
|
|
+ previous.setSubjectCategory(student.getSubjectCategory());
|
|
|
|
+ previous.setSubjectRemark(student.getSubjectCategory());
|
|
|
|
+ return previous;
|
|
|
|
+ }
|
|
|
|
+
|
|
private void buildSheetUrl(ExamStudent student) {
|
|
private void buildSheetUrl(ExamStudent student) {
|
|
Campus campus = campusService.findBySchoolAndName(student.getSchoolId(), student.getCampusName());
|
|
Campus campus = campusService.findBySchoolAndName(student.getSchoolId(), student.getCampusName());
|
|
student.setSheetUrls(PictureUrlBuilder.getSheetUrls(student.getExamId(), campus.getId(),
|
|
student.setSheetUrls(PictureUrlBuilder.getSheetUrls(student.getExamId(), campus.getId(),
|