|
@@ -767,28 +767,34 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
|
|
|
|
|
|
// 校验任课老师工号和姓名
|
|
|
if (StringUtils.isNoneBlank(tSyncDataStudent.getTeacherCode(), tSyncDataStudent.getTeacherName())) {
|
|
|
- SysUser sysUser = sysUserService.getByLoginName(schoolId, tSyncDataStudent.getTeacherCode());
|
|
|
- if (sysUser == null) {
|
|
|
- throw ExceptionResultEnum.ERROR.exception("任课老师工号[" + tSyncDataStudent.getTeacherCode() + "]用户不存在");
|
|
|
- } else {
|
|
|
- if (!sysUser.getEnable()) {
|
|
|
- throw ExceptionResultEnum.ERROR.exception("任课老师工号[" + tSyncDataStudent.getTeacherCode() + "]用户已禁用");
|
|
|
- } else if (!sysUser.getRealName().equals(tSyncDataStudent.getTeacherName())) {
|
|
|
- throw ExceptionResultEnum.ERROR.exception("任课老师[" + tSyncDataStudent.getTeacherName() + "]与用户管理中姓名[" + sysUser.getRealName() + "]不一致");
|
|
|
+ String[] teacherCodes = tSyncDataStudent.getTeacherCode().split(SystemConstant.COMMA);
|
|
|
+ String[] teacherNames = tSyncDataStudent.getTeacherName().split(SystemConstant.COMMA);
|
|
|
+ if (teacherCodes.length > 0 && teacherNames.length > 0) {
|
|
|
+ String teacherCode = teacherCodes[0];
|
|
|
+ String teacherName = teacherNames[0];
|
|
|
+ SysUser sysUser = sysUserService.getByLoginName(schoolId, teacherCode);
|
|
|
+ if (sysUser == null) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("任课老师工号[" + teacherCode + "]用户不存在");
|
|
|
} else {
|
|
|
- basicExamStudent.setTeacherId(sysUser.getId());
|
|
|
+ if (!sysUser.getEnable()) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("任课老师工号[" + teacherCode + "]用户已禁用");
|
|
|
+ } else if (!sysUser.getRealName().equals(teacherName)) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("任课老师[" + teacherName + "]与用户管理中姓名[" + sysUser.getRealName() + "]不一致");
|
|
|
+ } else {
|
|
|
+ basicExamStudent.setTeacherId(sysUser.getId());
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- // 校验同课程下,同一教学班只能有一个任课老师
|
|
|
- String courseTeachClassTeacherKey = basicExamStudent.getCourseId() + tSyncDataStudent.getTeachClassName();
|
|
|
- if (courseTeachClassTeacherMap.containsKey(courseTeachClassTeacherKey)) {
|
|
|
- Long teacherId = courseTeachClassTeacherMap.get(courseTeachClassTeacherKey);
|
|
|
- if ((teacherId == null && basicExamStudent.getTeacherId() != null) || (teacherId != null && basicExamStudent.getTeacherId() == null) || (teacherId != null && !teacherId.equals(basicExamStudent.getTeacherId()))) {
|
|
|
- throw ExceptionResultEnum.ERROR.exception("同课程同教学班,只允许设置一个任课老师");
|
|
|
+ // 校验同课程下,同一教学班只能有一个任课老师
|
|
|
+ String courseTeachClassTeacherKey = basicExamStudent.getCourseId() + tSyncDataStudent.getTeachClassName();
|
|
|
+ if (courseTeachClassTeacherMap.containsKey(courseTeachClassTeacherKey)) {
|
|
|
+ Long teacherId = courseTeachClassTeacherMap.get(courseTeachClassTeacherKey);
|
|
|
+ if ((teacherId == null && basicExamStudent.getTeacherId() != null) || (teacherId != null && basicExamStudent.getTeacherId() == null) || (teacherId != null && !teacherId.equals(basicExamStudent.getTeacherId()))) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("同课程同教学班,只允许设置一个任课老师");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ courseTeachClassTeacherMap.put(courseTeachClassTeacherKey, basicExamStudent.getTeacherId());
|
|
|
}
|
|
|
- } else {
|
|
|
- courseTeachClassTeacherMap.put(courseTeachClassTeacherKey, basicExamStudent.getTeacherId());
|
|
|
}
|
|
|
}
|
|
|
parserRequiredField(basicExamStudent, basicExamRule);
|