yonge пре 5 година
родитељ
комит
dedbedd364

+ 21 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -1132,14 +1132,32 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 		//更新学员在班级的状态
 		classGroupStudentMapperDao.deleteStudentByMusicGroupId(musicGroupId, userId);
 		
-		//更新班级人数
 		List<Integer> classGroupIdList = classGroupStudentMapperDao.queryClassGroupIdList(musicGroupId, userId, GroupType.MUSIC);
 		if (classGroupIdList != null && classGroupIdList.size() > 0) {
+			//更新班级人数
 			classGroupDao.batchUpdateStudentNumMinusOne(classGroupIdList);
+
+			//删除融云群
+			List<ImGroupModel> imGroupModels = new ArrayList<ImGroupModel>();
+			for (Integer classGroupId : classGroupIdList) {
+				imGroupModels.add(new ImGroupModel(classGroupId + ""));
+			}
+			imFeignService.groupBatchDismiss(imGroupModels);
+		}
+		
+		List<CourseSchedule> musicGroupCourseSchedules = courseScheduleDao.findMusicGroupCourseSchedulesWithStudent(musicGroupId,GroupType.MUSIC.getCode(), CourseStatusEnum.NOT_START.getCode(),userId);
+		if(!CollectionUtils.isEmpty(musicGroupCourseSchedules)){
+			List<Long> courseScheduleIds = musicGroupCourseSchedules.stream().map(courseSchedule -> courseSchedule.getId()).collect(Collectors.toList());
+
+			// 删除未上课
+            courseScheduleDao.deleteMusicGroupCourseSchedulesWithStudent(courseScheduleIds,userId);
+			
+			//删除学生缴费表
+            courseScheduleStudentPaymentDao.deleteByCourseSchedule(courseScheduleIds);
 		}
 		
-		// 删除未上课
-		courseScheduleService.batchDeleteMusicGroupCourseWithStudent(musicGroupId, userId, GroupType.MUSIC);
+		//删除续费周期
+		musicGroupStudentFeeDao.deleteByUserIdAndMusicGroupId(userId, musicGroupId);
 		
 		// 退团
 		studentRegistration.setMusicGroupStatus(ClassGroupStudentStatusEnum.QUIT);