|
@@ -1,5 +1,18 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.auth.api.enums.YesOrNoEnum;
|
|
@@ -10,7 +23,6 @@ import com.ym.mec.biz.dal.dao.TeacherDao;
|
|
|
import com.ym.mec.biz.dal.dto.EmployeeDto;
|
|
|
import com.ym.mec.biz.dal.dto.EmployeeLevelDto;
|
|
|
import com.ym.mec.biz.dal.dto.SimpleUserDto;
|
|
|
-import com.ym.mec.biz.dal.entity.ClassGroup;
|
|
|
import com.ym.mec.biz.dal.entity.Employee;
|
|
|
import com.ym.mec.biz.dal.entity.SysUserCashAccount;
|
|
|
import com.ym.mec.biz.dal.enums.EmployeeOperateEnum;
|
|
@@ -29,15 +41,6 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
import com.ym.mec.im.ImFeignService;
|
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
|
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-
|
|
|
-import java.util.*;
|
|
|
-import java.util.stream.Collectors;
|
|
|
-
|
|
|
@Service
|
|
|
public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> implements EmployeeService {
|
|
|
|
|
@@ -224,7 +227,9 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void level(List<EmployeeLevelDto> employeeLevelDtos) {
|
|
|
Integer levelUserId = employeeLevelDtos.get(0).getLevelUserId();
|
|
|
- List<ImGroupModel> imGroupModels = new ArrayList<>();
|
|
|
+ List<ImGroupModel> educationGroupModels = new ArrayList<>();
|
|
|
+ List<ImGroupModel> teamGroupModels = new ArrayList<>();
|
|
|
+ List<ImGroupModel> directorGroupModels = new ArrayList<>();
|
|
|
//获取用户需要加入的群组列表
|
|
|
Map<String, List<EmployeeLevelDto>> collect = employeeLevelDtos.stream().collect(Collectors.groupingBy(e -> e.getRoleName()));
|
|
|
Set<String> roleNames = collect.keySet();
|
|
@@ -241,28 +246,52 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
|
switch (roleName){
|
|
|
case "education":
|
|
|
//教务老师所需加入的群组
|
|
|
- imGroupModels.addAll(classGroupDao.queryEducationGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
+ educationGroupModels.addAll(classGroupDao.queryEducationGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
break;
|
|
|
case "teamTeacher":
|
|
|
//运营主管所需加入的群组
|
|
|
- imGroupModels.addAll(classGroupDao.queryTeamTeacherGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
+ teamGroupModels.addAll(classGroupDao.queryTeamTeacherGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
break;
|
|
|
case "director":
|
|
|
//乐队指导所需加入的群组
|
|
|
- imGroupModels.addAll(classGroupDao.queryDirectorGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
+ directorGroupModels.addAll(classGroupDao.queryDirectorGroups(employeeLevelDto.getTransferUserId(),levelUserId,organId));
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if(imGroupModels.size() > 0){
|
|
|
+ if(educationGroupModels.size() > 0){
|
|
|
+ //❤️用户加群
|
|
|
+ for (ImGroupModel imGroupModel : educationGroupModels) {
|
|
|
+ Map<Integer,String> userRoleMap = new HashMap<Integer, String>();
|
|
|
+
|
|
|
+ List<ImGroupMember> memberList = imGroupModel.getMemberList();
|
|
|
+ for(ImGroupMember member : memberList){
|
|
|
+ userRoleMap.put(Integer.parseInt(member.getId()), "乐团主管");
|
|
|
+ }
|
|
|
+ imGroupMemberService.join(Long.parseLong(imGroupModel.getId()), userRoleMap);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(teamGroupModels.size() > 0){
|
|
|
+ //❤️用户加群
|
|
|
+ for (ImGroupModel imGroupModel : teamGroupModels) {
|
|
|
+ Map<Integer,String> userRoleMap = new HashMap<Integer, String>();
|
|
|
+
|
|
|
+ List<ImGroupMember> memberList = imGroupModel.getMemberList();
|
|
|
+ for(ImGroupMember member : memberList){
|
|
|
+ userRoleMap.put(Integer.parseInt(member.getId()), "运营主管");
|
|
|
+ }
|
|
|
+ imGroupMemberService.join(Long.parseLong(imGroupModel.getId()), userRoleMap);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(directorGroupModels.size() > 0){
|
|
|
//❤️用户加群
|
|
|
- for (ImGroupModel imGroupModel : imGroupModels) {
|
|
|
+ for (ImGroupModel imGroupModel : directorGroupModels) {
|
|
|
Map<Integer,String> userRoleMap = new HashMap<Integer, String>();
|
|
|
|
|
|
List<ImGroupMember> memberList = imGroupModel.getMemberList();
|
|
|
for(ImGroupMember member : memberList){
|
|
|
- userRoleMap.put(Integer.parseInt(member.getId()), "");
|
|
|
+ userRoleMap.put(Integer.parseInt(member.getId()), "乐队指导");
|
|
|
}
|
|
|
imGroupMemberService.join(Long.parseLong(imGroupModel.getId()), userRoleMap);
|
|
|
}
|