|
@@ -129,20 +129,26 @@ public class StudentController extends BaseExamController {
|
|
|
if (student.getId() != null) {
|
|
|
ExamStudent previous = studentService.findById(student.getId());
|
|
|
if (previous != null) {
|
|
|
- // String previousSubjectCode = previous.getSubjectCode();
|
|
|
- if (!previous.isUpload()) {
|
|
|
+ // String previousSubjectCode = previous.getSubjectCode();
|
|
|
+ if (!previous.isUpload()) {
|
|
|
+ ExamStudent old = checkExamNumber(student, new HashMap<String, ExamStudent>(), new HashMap<String, ExamStudent>());
|
|
|
+ if(old !=null && !old.getExamNumber().equals(previous.getExamNumber())){
|
|
|
+ addMessage(redirectAttributes, "准考证号" + student.getExamNumber() + "已经存在");
|
|
|
+ return "redirect:/admin/exam/student";
|
|
|
+ }
|
|
|
// 还未扫描上传的考生,才能修改准考证号、学习中心、科目
|
|
|
previous.setCampusName(student.getCampusName());
|
|
|
previous.setSubjectCode(subject.getCode());
|
|
|
previous.setSubjectName(subject.getName());
|
|
|
previous.setExamNumber(student.getExamNumber());
|
|
|
- }
|
|
|
+ }
|
|
|
previous.setStudentCode(student.getStudentCode());
|
|
|
previous.setName(student.getName());
|
|
|
previous.setPackageCode(student.getPackageCode());
|
|
|
- previous = checkExamNumber(previous, new HashMap<String, ExamStudent>(),
|
|
|
- new HashMap<String, ExamStudent>());
|
|
|
- previous = studentService.save(previous);
|
|
|
+ previous.setCollege(student.getCollege());
|
|
|
+ previous.setClassName(student.getClassName());
|
|
|
+ previous.setTeacher(student.getTeacher());
|
|
|
+ previous = studentService.save(previous);
|
|
|
// if
|
|
|
// (!previousSubjectCode.equals(previous.getSubjectCode()))
|
|
|
// {
|
|
@@ -175,9 +181,12 @@ public class StudentController extends BaseExamController {
|
|
|
student.setSheetCount(0);
|
|
|
student.setObjectiveScore(0d);
|
|
|
student.setSubjectiveScore(0d);
|
|
|
-
|
|
|
- student = checkExamNumber(student, new HashMap<String, ExamStudent>(), new HashMap<String, ExamStudent>());
|
|
|
- studentService.save(student);
|
|
|
+ ExamStudent old = checkExamNumber(student, new HashMap<String, ExamStudent>(), new HashMap<String, ExamStudent>());
|
|
|
+ if(old!=null){
|
|
|
+ addMessage(redirectAttributes, "准考证号" + student.getExamNumber() + "已经存在");
|
|
|
+ } else{
|
|
|
+ studentService.save(student);
|
|
|
+ }
|
|
|
addMessage(redirectAttributes, "考生" + student.getName() + "保存成功");
|
|
|
}
|
|
|
}
|
|
@@ -257,8 +266,10 @@ public class StudentController extends BaseExamController {
|
|
|
student.setSheetCount(0);
|
|
|
student.setObjectiveScore(0d);
|
|
|
student.setSubjectiveScore(0d);
|
|
|
-
|
|
|
- student = checkExamNumber(student, current, saveMap);
|
|
|
+ ExamStudent previous = checkExamNumber(student, current, saveMap);
|
|
|
+ if(previous!=null){
|
|
|
+ student = updatePrevious(student, previous);
|
|
|
+ }
|
|
|
saveList.add(student);
|
|
|
saveMap.put(student.getExamNumber(), student);
|
|
|
}
|
|
@@ -321,19 +332,17 @@ public class StudentController extends BaseExamController {
|
|
|
ExamStudent previous = saveMap.get(student.getExamNumber());
|
|
|
|
|
|
if (previous != null) {
|
|
|
- return updatePrevious(student, previous);
|
|
|
+ return previous;
|
|
|
}
|
|
|
if (current != null && !current.isEmpty()) {
|
|
|
previous = current.get(student.getExamNumber());
|
|
|
} else {
|
|
|
previous = studentService.findByExamIdAndExamNumber(student.getExamId(), student.getExamNumber());
|
|
|
}
|
|
|
-
|
|
|
- if (previous == null) {
|
|
|
- return student;
|
|
|
- }else{
|
|
|
- return updatePrevious(student, previous);
|
|
|
+ if (previous != null) {
|
|
|
+ return previous;
|
|
|
}
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
private ExamStudent updatePrevious(ExamStudent student, ExamStudent previous) {
|