Browse Source

乐团班级调整,老师调整群聊问题修改

zouxuan 5 years ago
parent
commit
d97ed45208

+ 17 - 15
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1458,13 +1458,26 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (classGroup == null) {
             throw new BizException("班级不存在");
         }
+        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){
+                ImGroupMember[] imGroupMembers = {new ImGroupMember(groupTeacherMapper.getUserId().toString())};
+                imFeignService.groupQuit(new ImGroupModel(classGroupId.toString(), imGroupMembers, classGroup.getName()));
+            }
+        }
+        List<ClassGroupTeacherMapper> newTeacherMapperList = classGroup4MixDto.getClassGroupTeacherMapperList();
+        newTeacherMapperList.forEach(e->{
+            if(e.getTeacherRole() == TeachTypeEnum.BISHOP){
+                ImGroupMember[] imGroupMembers = {new ImGroupMember(e.getUserId().toString())};
+                imFeignService.groupJoin(new ImGroupModel(classGroupId.toString(), imGroupMembers, classGroup.getName()));
+            }
+        });
         if (classGroup4MixDto.getCourseAddType().equals("onlyUpdateTeacher")) {
 			List<Integer> classGroupIds = new ArrayList<Integer>();
 			classGroupIds.add(classGroupId);
 			// 删除历史记录
-			classGroupTeacherMapperDao.delClassGroupTeacherMapper(classGroupIds);
-
-			List<ClassGroupTeacherMapper> newTeacherMapperList = classGroup4MixDto.getClassGroupTeacherMapperList();
+            classGroupTeacherMapperDao.delClassGroupTeacherMapper(classGroupIds);
 			for (ClassGroupTeacherMapper tm : newTeacherMapperList) {
 				tm.setClassGroupId(classGroupId);
 				tm.setCreateTime(date);
@@ -1512,18 +1525,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             groupTeacherMapper.setClassGroupId(classGroup.getId());
             groupTeacherMapper.setMusicGroupId(classGroup4MixDto.getMusicGroupId());
             if (groupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP)) {
-                try {
-                    List<ClassGroupTeacherMapper> byClassGroup = classGroupTeacherMapperDao.findByClassGroup(classGroupId);
-                    byClassGroup.forEach(e->{
-                        ImGroupMember[] imGroupMembers = {new ImGroupMember(e.getUserId().toString())};
-                        imFeignService.groupQuit(new ImGroupModel(classGroupId.toString(), imGroupMembers, classGroup.getName()));
-                    });
-                    teacherId = groupTeacherMapper.getUserId();
-                    ImGroupMember[] imGroupMembers = {new ImGroupMember(teacherId.toString())};
-                    imFeignService.groupJoin(new ImGroupModel(classGroupId.toString(), imGroupMembers, classGroup.getName()));
-                }catch (Exception e){
-                    e.printStackTrace();
-                }
+                teacherId = groupTeacherMapper.getUserId();
             }
         }