Prechádzať zdrojové kódy

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

zouxuan 4 rokov pred
rodič
commit
226635189a

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

@@ -7,15 +7,13 @@ import java.util.Map;
 
 import com.ym.mec.biz.dal.dao.ClassGroupDao;
 import com.ym.mec.biz.dal.dao.MusicGroupDao;
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.service.ImGroupMemberService;
+import com.ym.mec.biz.service.ImGroupService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.ym.mec.biz.dal.dao.CooperationOrganDao;
-import com.ym.mec.biz.dal.entity.CooperationOrgan;
 import com.ym.mec.biz.service.CooperationOrganService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
@@ -32,6 +30,8 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
 	private ClassGroupDao classGroupDao;
 	@Autowired
 	private ImGroupMemberService imGroupMemberService;
+	@Autowired
+	private ImGroupService imGroupService;
 
 	@Override
 	public BaseDAO<Integer, CooperationOrgan> getDAO() {
@@ -58,6 +58,18 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
 			List<MusicGroup> musicGroups = musicGroupDao.findByCooperationId(cooperationOrgan.getId());
 			if(musicGroups.size() > 0){
 				for (MusicGroup musicGroup : musicGroups) {
+					//乐团主管有变更
+					if(!cooperationOrgan.getEducationUserId().equals(musicGroup.getEducationalTeacherId())){
+						//不是导入的乐团
+						if(musicGroup.getId().length() > 10){
+							//是否有预报名的群聊
+							ImGroup imGroup = imGroupService.get(Long.parseLong(musicGroup.getId()));
+							if(imGroup != null){
+								imGroupMemberService.quit(Long.parseLong(musicGroup.getId()),cooperationOrgan.getEducationUserId());
+								imGroupMemberService.join(Long.parseLong(musicGroup.getId()),cooperationOrgan.getEducationUserId(),"乐团主管",false);
+							}
+						}
+					}
 					//获取当前乐团所有班级
 					List<ClassGroup> classGroups = classGroupDao.findClassGroups(musicGroup.getId());
 					if (classGroups == null || classGroups.size() == 0) {

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

@@ -241,6 +241,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             throw new BizException("乐团初始状态错误");
         }
         musicGroup.setDelFlag(false);
+        CooperationOrgan cooperationOrgan = cooperationOrganDao.get(musicGroup.getCooperationOrganId());
+        if(cooperationOrgan.getEducationUserId() == null){
+            throw new BizException("操作失败:请先配置合作单位: {} 关联的乐团主管",cooperationOrgan.getName());
+        }
+        musicGroup.setEducationalTeacherId(cooperationOrgan.getEducationUserId());
         // 保存乐团基本信息
         musicGroupDao.insert(musicGroup);
 
@@ -2559,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();
@@ -2622,6 +2627,18 @@ 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),cooperationOrgan.getEducationUserId());
+                    imGroupMemberService.join(Long.parseLong(musicGroupId),cooperationOrgan.getEducationUserId(),"乐团主管",false);
+                }
+            }
+        }
 
         Date date = new Date();
         //缴费方式不同