|
@@ -6,6 +6,7 @@ import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
import com.ym.mec.biz.dal.dao.ClassGroupDao;
|
|
|
+import com.ym.mec.biz.dal.dao.EmployeeDao;
|
|
|
import com.ym.mec.biz.dal.dao.MusicGroupDao;
|
|
|
import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.service.ImGroupMemberService;
|
|
@@ -32,6 +33,8 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
|
|
|
private ImGroupMemberService imGroupMemberService;
|
|
|
@Autowired
|
|
|
private ImGroupService imGroupService;
|
|
|
+ @Autowired
|
|
|
+ private EmployeeDao employeeDao;
|
|
|
|
|
|
@Override
|
|
|
public BaseDAO<Integer, CooperationOrgan> getDAO() {
|
|
@@ -98,4 +101,59 @@ public class CooperationOrganServiceImpl extends BaseServiceImpl<Integer, Cooper
|
|
|
}
|
|
|
cooperationOrganDao.update(cooperationOrgan);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void updateCooperationEdu() {
|
|
|
+ List<CooperationOrgan> organList = cooperationOrganDao.findAll(new HashMap<>());
|
|
|
+ for (CooperationOrgan cooperationOrgan : organList) {
|
|
|
+ if(cooperationOrgan.getEducationUserId() != null){
|
|
|
+ Employee employee = employeeDao.get(cooperationOrgan.getEducationUserId());
|
|
|
+ if(employee != null){
|
|
|
+ //获取进行中、暂停、筹备中的乐团列表
|
|
|
+ List<MusicGroup> musicGroups = musicGroupDao.findByCooperationIdAndStatus(cooperationOrgan.getId());
|
|
|
+ if(musicGroups.size() > 0){
|
|
|
+ for (MusicGroup musicGroup : musicGroups) {
|
|
|
+ //获取当前乐团所有班级
|
|
|
+ List<ClassGroup> classGroups = classGroupDao.findClassGroups(musicGroup.getId());
|
|
|
+ if (classGroups == null || classGroups.size() == 0) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ Integer educationalTeacherId = musicGroup.getEducationalTeacherId();
|
|
|
+ List<Integer> quitUserIdList = new ArrayList<Integer>();
|
|
|
+ if(educationalTeacherId != null){
|
|
|
+ quitUserIdList.add(educationalTeacherId);
|
|
|
+ }
|
|
|
+ Map<Integer, String> userRoleMap = new HashMap<Integer, String>(1);
|
|
|
+ userRoleMap.put(cooperationOrgan.getEducationUserId(), "乐团主管");
|
|
|
+ classGroups.forEach(e -> {
|
|
|
+ if(educationalTeacherId != null){
|
|
|
+ imGroupMemberService.quit(e.getId().longValue(), quitUserIdList);
|
|
|
+ }
|
|
|
+ imGroupMemberService.join(e.getId().longValue(), userRoleMap);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //更新预报名群信息
|
|
|
+ List<MusicGroup> musicGroupList = musicGroupDao.findByCooperationId(cooperationOrgan.getId());
|
|
|
+ if(musicGroupList.size() > 0){
|
|
|
+ for (MusicGroup musicGroup : musicGroupList) {
|
|
|
+ //不是导入的乐团
|
|
|
+ if(musicGroup.getId().length() > 10){
|
|
|
+ //是否有预报名的群聊
|
|
|
+ ImGroup imGroup = imGroupService.get(Long.parseLong(musicGroup.getId()));
|
|
|
+ if(imGroup != null){
|
|
|
+ imGroupMemberService.quit(Long.parseLong(musicGroup.getId()),musicGroup.getEducationalTeacherId());
|
|
|
+ imGroupMemberService.join(Long.parseLong(musicGroup.getId()),cooperationOrgan.getEducationUserId(),"乐团主管",false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //修改乐团主管
|
|
|
+ musicGroupDao.batchUpdateEdu(cooperationOrgan.getId(),cooperationOrgan.getEducationUserId());
|
|
|
+ System.out.println(cooperationOrgan.getName() + " OK");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|