|
@@ -532,12 +532,26 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
errInfo.append("安排的课程存在冲突,");
|
|
|
errInfo.append("冲突课程为:");
|
|
|
if(Objects.nonNull(preCourseSchedule.getId())&&existCourseScheduleIds.contains(preCourseSchedule.getId())){
|
|
|
+ MusicGroup musicGroup = musicGroupDao.get(preCourseSchedule.getMusicGroupId());
|
|
|
+ if(Objects.nonNull(musicGroup)){
|
|
|
+ errInfo.append(musicGroup.getName());
|
|
|
+ errInfo.append("(");
|
|
|
+ errInfo.append(musicGroup.getId());
|
|
|
+ errInfo.append(")-");
|
|
|
+ }
|
|
|
errInfo.append(preCourseSchedule.getName());
|
|
|
errInfo.append("(");
|
|
|
errInfo.append(preCourseSchedule.getId());
|
|
|
errInfo.append(")");
|
|
|
}
|
|
|
if(Objects.nonNull(backCourseSchedule.getId())&&existCourseScheduleIds.contains(backCourseSchedule.getId())){
|
|
|
+ MusicGroup musicGroup = musicGroupDao.get(backCourseSchedule.getMusicGroupId());
|
|
|
+ if(Objects.nonNull(musicGroup)){
|
|
|
+ errInfo.append(musicGroup.getName());
|
|
|
+ errInfo.append("(");
|
|
|
+ errInfo.append(musicGroup.getId());
|
|
|
+ errInfo.append(")-");
|
|
|
+ }
|
|
|
errInfo.append(backCourseSchedule.getName());
|
|
|
errInfo.append("(");
|
|
|
errInfo.append(backCourseSchedule.getId());
|
|
@@ -689,10 +703,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
List<Long> newCourseScheduleIds = newCourseSchedules.stream().map(CourseSchedule::getId).collect(Collectors.toList());
|
|
|
//获取对应未修改的课程列表
|
|
|
List<CourseSchedule> oldCourseScheduleList = courseScheduleDao.findByCourseScheduleIds(newCourseScheduleIds);
|
|
|
- if(oldCourseScheduleList.size()!=newCourseSchedules.size()){
|
|
|
+// if(oldCourseScheduleList.size()!=newCourseSchedules.size()){
|
|
|
+ if(oldCourseScheduleList.size()<newCourseSchedules.size()){
|
|
|
throw new BizException("课程信息错误");
|
|
|
}
|
|
|
- Integer courseScheduleId = null;
|
|
|
|
|
|
Date now=new Date();
|
|
|
//明天日期
|
|
@@ -705,14 +719,19 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
List<CourseScheduleTeacherSalary> teachingTeacherSalarys = courseScheduleDao.findTeachingTeachers(newCourseScheduleIds);
|
|
|
Map<Long,List<CourseScheduleTeacherSalary>> courseTeachingTeacherMaps = teachingTeacherSalarys.stream().collect(Collectors.groupingBy(CourseScheduleTeacherSalary::getCourseScheduleId));
|
|
|
|
|
|
- Map<Long, CourseSchedule> oldCourseSchedules = oldCourseScheduleList.stream().collect(Collectors.toMap(CourseSchedule::getId,courseSchedule -> courseSchedule));
|
|
|
+ Map<Long, List<CourseSchedule>> oldCourseScheduleMap = oldCourseScheduleList.stream().collect(Collectors.groupingBy(CourseSchedule::getId));
|
|
|
+
|
|
|
+ Map<Long, CourseSchedule> oldCourseSchedules = new HashMap<>();
|
|
|
+
|
|
|
newCourseSchedules.forEach(newCourseSchedule -> {
|
|
|
|
|
|
if(newCourseSchedule.getStartClassTime().before(tomorrow)&&sysUser.getUserType().equals(SysUserType.TEACHER)){
|
|
|
throw new BizException("调整时间必须为明天及以后");
|
|
|
}
|
|
|
|
|
|
- CourseSchedule oldCourseSchedule = oldCourseSchedules.get(newCourseSchedule.getId());
|
|
|
+ CourseSchedule oldCourseSchedule = oldCourseScheduleMap.get(newCourseSchedule.getId()).get(0);
|
|
|
+
|
|
|
+ oldCourseSchedules.put(newCourseSchedule.getId(),oldCourseSchedule);
|
|
|
|
|
|
if(oldCourseSchedule.getStartClassTime().before(now)&&sysUser.getUserType().equals(SysUserType.TEACHER)){
|
|
|
throw new BizException("不能调整今天及以前的课程");
|
|
@@ -818,9 +837,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
oldCourseSchedule.setSchoolId(newCourseSchedule.getSchoolId());
|
|
|
}
|
|
|
courseScheduleDao.update(oldCourseSchedule);
|
|
|
- //将被修改的教师预计薪水置零
|
|
|
+ //删除被修改的教师课酬记录
|
|
|
if(!CollectionUtils.isEmpty(beReplaceTeacherIds)){
|
|
|
- courseScheduleTeacherSalaryDao.batchUpdateTeacherExpectSalary(newCourseSchedule.getId().intValue(),beReplaceTeacherIds);
|
|
|
+// courseScheduleTeacherSalaryDao.batchUpdateTeacherExpectSalary(newCourseSchedule.getId().intValue(),beReplaceTeacherIds);
|
|
|
+ courseScheduleTeacherSalaryDao.batchDeleteByCourseAndTeacher(newCourseSchedule.getId(),beReplaceTeacherIds);
|
|
|
+
|
|
|
}
|
|
|
});
|
|
|
//生成修改后的教师课酬
|