|
@@ -7,6 +7,7 @@ import static com.ym.mec.biz.dal.enums.GroupType.COMM;
|
|
|
import static com.ym.mec.biz.dal.enums.GroupType.MUSIC;
|
|
|
import static com.ym.mec.biz.dal.enums.GroupType.PRACTICE;
|
|
|
import static com.ym.mec.biz.dal.enums.GroupType.VIP;
|
|
|
+import static com.ym.mec.biz.dal.enums.MusicGroupStatusEnum.PROGRESS;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.time.Duration;
|
|
@@ -2201,23 +2202,25 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
|
|
|
List<ClassGroupTeacherMapper> byClassGroup = classGroupTeacherMapperDao.findByClassGroup(classGroupId);
|
|
|
- if (byClassGroup != null && byClassGroup.size() > 0) {
|
|
|
- ClassGroupTeacherMapper groupTeacherMapper = byClassGroup.stream().filter(classGroupTeacherMapper -> classGroupTeacherMapper.getTeacherRole() == TeachTypeEnum.BISHOP).findFirst().get();
|
|
|
- if (groupTeacherMapper != null) {
|
|
|
- imGroupMemberService.quit(classGroupId.longValue(), groupTeacherMapper.getUserId());
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
List<ClassGroupTeacherMapper> newTeacherMapperList = classGroup4MixDtos.get(0).getClassGroupTeacherMapperList();
|
|
|
- if (newTeacherMapperList.size() > 0) {
|
|
|
- //获取之前的班级老师
|
|
|
- Set<Integer> groupTeacher = classGroupDao.findGroupTeacher(classGroupId);
|
|
|
- groupTeacher.forEach(e -> {
|
|
|
- imGroupMemberService.quit(classGroupId.longValue(), e);
|
|
|
- });
|
|
|
- newTeacherMapperList.forEach(e -> {
|
|
|
- imGroupMemberService.join(classGroupId.longValue(), e.getUserId(), "指导老师", false);
|
|
|
- });
|
|
|
+ MusicGroup musicGroup = musicGroupDao.get(classGroup.getMusicGroupId());
|
|
|
+ if(musicGroup.getStatus() == PROGRESS){
|
|
|
+ if (byClassGroup != null && byClassGroup.size() > 0) {
|
|
|
+ ClassGroupTeacherMapper groupTeacherMapper = byClassGroup.stream().filter(classGroupTeacherMapper -> classGroupTeacherMapper.getTeacherRole() == TeachTypeEnum.BISHOP).findFirst().get();
|
|
|
+ if (groupTeacherMapper != null) {
|
|
|
+ imGroupMemberService.quit(classGroupId.longValue(), groupTeacherMapper.getUserId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (newTeacherMapperList.size() > 0) {
|
|
|
+ //获取之前的班级老师
|
|
|
+ Set<Integer> groupTeacher = classGroupDao.findGroupTeacher(classGroupId);
|
|
|
+ groupTeacher.forEach(e -> {
|
|
|
+ imGroupMemberService.quit(classGroupId.longValue(), e);
|
|
|
+ });
|
|
|
+ newTeacherMapperList.forEach(e -> {
|
|
|
+ imGroupMemberService.join(classGroupId.longValue(), e.getUserId(), "指导老师", false);
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
if (Objects.nonNull(classGroup4MixDtos.get(0).getCourseAddType()) && classGroup4MixDtos.get(0).getCourseAddType().equals("onlyUpdateTeacher")) {
|
|
|
List<Integer> classGroupIds = new ArrayList<>();
|
|
@@ -2241,8 +2244,6 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
|
|
|
classGroupService.updateTotalClassTimes(classGroup.getId(), courseTimes);
|
|
|
|
|
|
- MusicGroup musicGroup = musicGroupDao.get(classGroup.getMusicGroupId());
|
|
|
-
|
|
|
Integer schoolId = teachMode.equals(TeachModeEnum.ONLINE) ? null : musicGroup.getSchoolId();
|
|
|
|
|
|
List<Subject> subjectList = subjectService.findBySubjectByIdList(classGroup.getSubjectIdList());
|
|
@@ -2271,11 +2272,6 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
.map(ClassGroupTeacherMapper::getUserId)
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
- //所有教师列表
|
|
|
- List<Teacher> teachers = teacherDao.findByTeacherIds(allTeacherIds);
|
|
|
- Map<Integer, Teacher> teacherMap = teachers.stream()
|
|
|
- .collect(Collectors.toMap(Teacher::getId, teacher -> teacher));
|
|
|
-
|
|
|
Set<String> newTeacher = newClassGroupTeacherMapperList.stream().map(
|
|
|
classGroupTeacherMapper -> classGroupTeacherMapper.getTeacherRole().getCode() + classGroupTeacherMapper.getUserId()
|
|
|
).collect(Collectors.toSet());
|
|
@@ -2312,7 +2308,6 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
Integer totalMinutes = courseTypeMinutesMap.get(classGroup4MixDto.getCourseType().getCode());
|
|
|
long totalCourseDuration = 0;
|
|
|
-// classGroup4MixDto.setCourseTimes(totalMinutes/(int)courseDuration);
|
|
|
|
|
|
if (classGroup4MixDto.getCourseTimes() <= 0) {
|
|
|
throw new BizException("{}课程类型剩余课程时长不足", classGroup4MixDto.getCourseType().getMsg());
|
|
@@ -2398,12 +2393,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //排课处理
|
|
|
-// if (classGroup.getType().equals(ClassGroupTypeEnum.SNAP)) {
|
|
|
-// courseScheduleService.checkSnapCourseShchedules(courseScheduleList);
|
|
|
-// } else {
|
|
|
courseScheduleService.checkNewCourseSchedules(courseScheduleList, false, false);
|
|
|
-// }
|
|
|
|
|
|
//老师结算表
|
|
|
if (courseScheduleTeacherSalaryList.size() > 0) {
|
|
@@ -2416,7 +2406,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
//学生结算表
|
|
|
courseScheduleStudentPaymentService.createForMusicGroup(musicGroupId, courseScheduleList, studentIds);
|
|
|
}
|
|
|
- imUserFriendService.refreshClassImUserFriend(classGroupId);
|
|
|
+ if(musicGroup.getStatus() == PROGRESS){
|
|
|
+ imUserFriendService.refreshClassImUserFriend(classGroupId);
|
|
|
+ }
|
|
|
return classGroup;
|
|
|
}
|
|
|
|