Prechádzať zdrojové kódy

Merge branch 'cooperation_education' of http://git.dayaedu.com/yonge/mec

zouxuan 4 rokov pred
rodič
commit
2a83521c6f

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CooperationOrganServiceImpl.java

@@ -54,7 +54,7 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
 		CooperationOrgan cooperationOrgan1 = cooperationOrganDao.get(cooperationOrgan.getId());
 		//修改了乐团主管后,修改关联乐团的乐团主管
 		if(!cooperationOrgan.getEducationUserId().equals(cooperationOrgan1.getEducationUserId())){
-			//获取进行中和暂停的乐团列表
+			//获取进行中、暂停、筹备中的乐团列表
 			List<MusicGroup> musicGroups = musicGroupDao.findByCooperationIdAndStatus(cooperationOrgan.getId());
 			if(musicGroups.size() > 0){
 				for (MusicGroup musicGroup : musicGroups) {

+ 27 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -2564,7 +2564,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     private void updateTeamTeacher(MusicGroup oldMusicGroup, MusicGroup newMusicGroup) {
         //获取当前乐团所有班级
         List<ClassGroup> classGroups = classGroupDao.findClassGroups(newMusicGroup.getId());
-        if (classGroups != null || classGroups.size() == 0) {
+        if (classGroups == null || classGroups.size() == 0) {
             return;
         }
         Integer teamTeacherId = newMusicGroup.getTeamTeacherId();
@@ -2627,16 +2627,33 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         if (group.getStatus() == MusicGroupStatusEnum.PROGRESS) {
             updateTeamTeacher(group, musicGroup);
         }
-        //乐团主管有变更
-        if(!cooperationOrgan.getEducationUserId().equals(group.getEducationalTeacherId())){
-            //不是导入的乐团
-            if(musicGroupId.length() > 10){
-                //是否有预报名的群聊
-                ImGroup imGroup = imGroupService.get(Long.parseLong(musicGroupId));
-                if(imGroup != null){
-                    imGroupMemberService.quit(Long.parseLong(musicGroupId),group.getEducationalTeacherId());
-                    imGroupMemberService.join(Long.parseLong(musicGroupId),cooperationOrgan.getEducationUserId(),"乐团主管",false);
+        //不是导入的乐团
+        if(musicGroupId.length() > 10){
+            //是否有预报名的群聊
+            ImGroup imGroup = imGroupService.get(Long.parseLong(musicGroupId));
+            if(imGroup != null){
+                List<Integer> quitUserIdList = new ArrayList<>();
+                if(group.getTeamTeacherId() != null){
+                    quitUserIdList.add(group.getTeamTeacherId());
                 }
+                if(group.getEducationalTeacherId() != null){
+                    quitUserIdList.add(group.getEducationalTeacherId());
+                }
+                if(group.getDirectorUserId() != null){
+                    quitUserIdList.add(group.getDirectorUserId());
+                }
+                Map<Integer, String> userRoleMap = new HashMap<>(3);
+                if(musicGroup.getTeamTeacherId() != null){
+                    userRoleMap.put(musicGroup.getTeamTeacherId(), "运营主管");
+                }
+                if(musicGroup.getEducationalTeacherId() != null){
+                    userRoleMap.put(musicGroup.getEducationalTeacherId(), "乐团主管");
+                }
+                if(musicGroup.getDirectorUserId() != null){
+                    userRoleMap.put(musicGroup.getDirectorUserId(), "乐队指导");
+                }
+                imGroupMemberService.quit(Long.parseLong(musicGroupId),quitUserIdList);
+                imGroupMemberService.join(Long.parseLong(musicGroupId),userRoleMap);
             }
         }
 

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -746,6 +746,6 @@
         SELECT * FROM music_group WHERE cooperation_organ_id_ = #{cooperationOrganId}
     </select>
     <select id="findByCooperationIdAndStatus" resultMap="MusicGroup">
-        SELECT * FROM music_group WHERE cooperation_organ_id_ = #{cooperationOrganId} AND status_ IN ('PROGRESS','PAUSE')
+        SELECT * FROM music_group WHERE cooperation_organ_id_ = #{cooperationOrganId} AND status_ IN ('PROGRESS','PAUSE','PREPARE')
     </select>
 </mapper>