zouxuan 5 år sedan
förälder
incheckning
e3003cf37b

+ 16 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -1883,20 +1883,30 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         }
         Integer teamTeacherId = newMusicGroup.getTeamTeacherId();
         Integer educationalTeacherId = newMusicGroup.getEducationalTeacherId();
-        Integer directorUserId = newMusicGroup.getDirectorUserId();
+
         ImGroupMember[] oldImGroupMembers1 = {new ImGroupMember(oldMusicGroup.getTeamTeacherId().toString())};
         ImGroupMember[] nowImGroupMembers1 = {new ImGroupMember(teamTeacherId.toString())};
         ImGroupMember[] oldImGroupMembers2 = {new ImGroupMember(oldMusicGroup.getEducationalTeacherId().toString())};
         ImGroupMember[] nowImGroupMembers2 = {new ImGroupMember(educationalTeacherId.toString())};
-        ImGroupMember[] oldImGroupMembers3 = {new ImGroupMember(oldMusicGroup.getDirectorUserId().toString())};
+
+        Integer oldDirectorUserId = oldMusicGroup.getDirectorUserId();
+        if(oldDirectorUserId == null){
+            oldDirectorUserId = teamTeacherId;
+        }
+        Integer directorUserId = newMusicGroup.getDirectorUserId();
+        if(directorUserId == null){
+            directorUserId = teamTeacherId;
+        }
+
+        ImGroupMember[] oldImGroupMembers3 = {new ImGroupMember(oldDirectorUserId.toString())};
         ImGroupMember[] nowImGroupMembers3 = {new ImGroupMember(directorUserId.toString())};
         classGroups.forEach(e -> {
-            imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers1, e.getName()));
-            imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers1, e.getName()));
-            imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers2, e.getName()));
-            imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers2, e.getName()));
             imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers3, e.getName()));
             imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers3, e.getName()));
+            imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers2, e.getName()));
+            imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers2, e.getName()));
+            imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers1, e.getName()));
+            imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers1, e.getName()));
         });
     }