|
@@ -1,19 +1,26 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
+import com.ym.mec.biz.dal.dao.*;
|
|
|
+import com.ym.mec.biz.dal.dto.ClassGroupStudentInfoDto;
|
|
|
+import com.ym.mec.biz.dal.entity.*;
|
|
|
+import com.ym.mec.biz.dal.enums.GroupType;
|
|
|
import com.ym.mec.biz.service.TeacherService;
|
|
|
+import com.ym.mec.util.collection.MapUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
-import com.ym.mec.biz.dal.dao.ImUserFriendDao;
|
|
|
import com.ym.mec.biz.dal.dto.ImUserFriendDto;
|
|
|
-import com.ym.mec.biz.dal.entity.ImUserFriend;
|
|
|
import com.ym.mec.biz.service.ImUserFriendService;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
+import static com.ym.mec.biz.dal.enums.GroupType.MUSIC;
|
|
|
+import static com.ym.mec.biz.dal.enums.GroupType.VIP;
|
|
|
|
|
|
@Service
|
|
|
public class ImUserFriendServiceImpl extends BaseServiceImpl<Long, ImUserFriend> implements ImUserFriendService {
|
|
@@ -22,6 +29,26 @@ public class ImUserFriendServiceImpl extends BaseServiceImpl<Long, ImUserFriend>
|
|
|
private ImUserFriendDao imUserFriendDao;
|
|
|
@Autowired
|
|
|
private TeacherService teacherService;
|
|
|
+ @Autowired
|
|
|
+ private ClassGroupTeacherMapperDao classGroupTeacherMapperDao;
|
|
|
+ @Autowired
|
|
|
+ private ClassGroupStudentMapperDao classGroupStudentMapperDao;
|
|
|
+ @Autowired
|
|
|
+ private MusicGroupDao musicGroupDao;
|
|
|
+ @Autowired
|
|
|
+ private VipGroupDao vipGroupDao;
|
|
|
+ @Autowired
|
|
|
+ private TeacherDao teacherDao;
|
|
|
+ @Autowired
|
|
|
+ private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
|
|
|
+ @Autowired
|
|
|
+ private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
|
|
|
+ @Autowired
|
|
|
+ private CourseScheduleDao courseScheduleDao;
|
|
|
+ @Autowired
|
|
|
+ private StudentRegistrationDao studentRegistrationDao;
|
|
|
+ @Autowired
|
|
|
+ private ClassGroupDao classGroupDao;
|
|
|
|
|
|
@Override
|
|
|
public BaseDAO<Long, ImUserFriend> getDAO() {
|
|
@@ -88,4 +115,322 @@ public class ImUserFriendServiceImpl extends BaseServiceImpl<Long, ImUserFriend>
|
|
|
return imUserFriendDao.queryFriendDetail(userId, friendUserId);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void batchInsert(List<ImUserFriend> imUserFriends) {
|
|
|
+ for (ImUserFriend imUserFriend : imUserFriends) {
|
|
|
+ if(imUserFriend.getUserId() == imUserFriend.getFriendId()){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ // 检查是否已经是好友
|
|
|
+ ImUserFriend userFriend = imUserFriendDao.query(imUserFriend.getUserId(), imUserFriend.getFriendId());
|
|
|
+ if (userFriend != null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ imUserFriendDao.insert(imUserFriend);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void classGroupAddStudent(Integer classGroupId, Integer studentId) {
|
|
|
+ Set<Integer> teacherIds = new HashSet<>();
|
|
|
+ Set<Integer> educations = new HashSet<>();
|
|
|
+ ClassGroup classGroup = classGroupDao.get(classGroupId);
|
|
|
+ List<ImUserFriend> imUserFriends = new ArrayList<>();
|
|
|
+ //获取班级关联的老师
|
|
|
+ List<ClassGroupTeacherMapper> classGroupTeacherMappers = classGroupTeacherMapperDao.findByClassGroup(classGroupId);
|
|
|
+ teacherIds.addAll(classGroupTeacherMappers.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+ //学员关联的课程上的主教老师
|
|
|
+ teacherIds.add(courseScheduleTeacherSalaryDao.queryTeacherByBishop(classGroupId));
|
|
|
+ teacherIds.add(studentId);
|
|
|
+
|
|
|
+ MusicGroup musicGroup = new MusicGroup();
|
|
|
+ String subjectName = "";
|
|
|
+
|
|
|
+ GroupType groupType = classGroup.getGroupType();
|
|
|
+ if(groupType == MUSIC){
|
|
|
+ //学员关联乐团管理人员通讯录
|
|
|
+ musicGroup = musicGroupDao.get(classGroup.getMusicGroupId());
|
|
|
+ teacherIds.add(musicGroup.getDirectorUserId());
|
|
|
+ teacherIds.add(musicGroup.getEducationalTeacherId());
|
|
|
+ teacherIds.add(musicGroup.getTeamTeacherId());
|
|
|
+ educations.add(musicGroup.getDirectorUserId());
|
|
|
+ educations.add(musicGroup.getEducationalTeacherId());
|
|
|
+ educations.add(musicGroup.getTeamTeacherId());
|
|
|
+ //获取当前学员声部
|
|
|
+ subjectName = studentRegistrationDao.getStudentSubjectName(musicGroup.getId(),studentId);
|
|
|
+ }else if(groupType == VIP){
|
|
|
+ VipGroup vipGroup = vipGroupDao.get(Long.parseLong(classGroup.getMusicGroupId()));
|
|
|
+ teacherIds.add(vipGroup.getEducationalTeacherId());
|
|
|
+ educations.add(vipGroup.getEducationalTeacherId());
|
|
|
+ }
|
|
|
+ educations.removeAll(Collections.singleton(null));
|
|
|
+ teacherIds.removeAll(Collections.singleton(null));
|
|
|
+ //获取通讯录昵称
|
|
|
+ Map<Integer, String>nameIdMap = MapUtil.convertIntegerMap(teacherDao.queryNameByIdList(new ArrayList<>(teacherIds)));
|
|
|
+ //获取老师声部
|
|
|
+ Map<Integer, String> teacherSubjectNameMap = MapUtil.convertIntegerMap(teacherDao.querySubjectNameByIdList(new ArrayList<>(teacherIds)));
|
|
|
+ for (Integer teacherId : teacherIds) {
|
|
|
+ if(teacherId == studentId){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //学员、教务关联的老师
|
|
|
+ ImUserFriend imUserFriend = new ImUserFriend();
|
|
|
+ imUserFriend.setUserId(studentId);
|
|
|
+ imUserFriend.setFriendId(teacherId);
|
|
|
+ imUserFriend.setFriendNickname(nameIdMap.get(teacherId));
|
|
|
+ imUserFriend.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend.setTags(teacherSubjectNameMap.get(teacherId));
|
|
|
+ imUserFriends.add(imUserFriend);
|
|
|
+ //老师关联的学生、教务
|
|
|
+ ImUserFriend imUserFriend1 = new ImUserFriend();
|
|
|
+ imUserFriend1.setUserId(teacherId);
|
|
|
+ imUserFriend1.setFriendId(studentId);
|
|
|
+ imUserFriend1.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend1.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend1.setTags(subjectName);
|
|
|
+ imUserFriends.add(imUserFriend1);
|
|
|
+ }
|
|
|
+ for (Integer education : educations) {
|
|
|
+ if(education == studentId){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //学员关联教务
|
|
|
+ ImUserFriend imUserFriend = new ImUserFriend();
|
|
|
+ imUserFriend.setUserId(studentId);
|
|
|
+ imUserFriend.setFriendId(education);
|
|
|
+ imUserFriend.setFriendNickname(nameIdMap.get(education));
|
|
|
+ imUserFriend.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend.setTags(teacherSubjectNameMap.get(education));
|
|
|
+ imUserFriends.add(imUserFriend);
|
|
|
+ //教务关联学员
|
|
|
+ ImUserFriend imUserFriend1 = new ImUserFriend();
|
|
|
+ imUserFriend1.setUserId(education);
|
|
|
+ imUserFriend1.setFriendId(studentId);
|
|
|
+ imUserFriend1.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend1.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend1.setTags(subjectName);
|
|
|
+ imUserFriends.add(imUserFriend1);
|
|
|
+ }
|
|
|
+ if(imUserFriends.size() > 0){
|
|
|
+ batchInsert(imUserFriends);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void classGroupChangeTeacher(Integer classGroupId, Integer teacherId) {
|
|
|
+ Set<Integer> studentIds = new HashSet<>();
|
|
|
+ Set<Integer> educations = new HashSet<>();
|
|
|
+
|
|
|
+ ClassGroup classGroup = classGroupDao.get(classGroupId);
|
|
|
+ List<ImUserFriend> imUserFriends = new ArrayList<>();
|
|
|
+ //获取班级关联的学员
|
|
|
+ List<ClassGroupStudentMapper> studentMappers = classGroupStudentMapperDao.findAllByClassGroup(classGroupId.longValue());
|
|
|
+ studentIds.addAll(studentMappers.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+
|
|
|
+ MusicGroup musicGroup = new MusicGroup();
|
|
|
+ Map<Integer,String> studentSubjectName = new HashMap<>();
|
|
|
+ studentIds.add(teacherId);
|
|
|
+ //获取老师声部
|
|
|
+ Map<Integer, String> teacherSubjectNameMap = MapUtil.convertIntegerMap(teacherDao.querySubjectNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+
|
|
|
+ GroupType groupType = classGroup.getGroupType();
|
|
|
+ if(groupType == MUSIC){
|
|
|
+ //获取当前学员声部
|
|
|
+ studentSubjectName = MapUtil.convertMybatisMap(studentRegistrationDao.getStudentSubjectNameByStuIds(musicGroup.getId(),studentIds));
|
|
|
+ //关联乐团管理人员通讯录
|
|
|
+ musicGroup = musicGroupDao.get(classGroup.getMusicGroupId());
|
|
|
+ studentIds.add(musicGroup.getDirectorUserId());
|
|
|
+ studentIds.add(musicGroup.getEducationalTeacherId());
|
|
|
+ studentIds.add(musicGroup.getTeamTeacherId());
|
|
|
+ educations.add(musicGroup.getDirectorUserId());
|
|
|
+ educations.add(musicGroup.getEducationalTeacherId());
|
|
|
+ educations.add(musicGroup.getTeamTeacherId());
|
|
|
+ }else if(groupType == VIP){
|
|
|
+ VipGroup vipGroup = vipGroupDao.get(Long.parseLong(classGroup.getMusicGroupId()));
|
|
|
+ studentIds.add(vipGroup.getEducationalTeacherId());
|
|
|
+ educations.add(vipGroup.getEducationalTeacherId());
|
|
|
+ }
|
|
|
+ educations.removeAll(Collections.singleton(null));
|
|
|
+ studentIds.removeAll(Collections.singleton(null));
|
|
|
+ //获取通讯录昵称
|
|
|
+ Map<Integer, String> nameIdMap = MapUtil.convertIntegerMap(teacherDao.queryNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+ for (Integer studentId : studentIds) {
|
|
|
+ if(teacherId == studentId){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //老师关联的学员、教务
|
|
|
+ ImUserFriend imUserFriend = new ImUserFriend();
|
|
|
+ imUserFriend.setUserId(teacherId);
|
|
|
+ imUserFriend.setFriendId(studentId);
|
|
|
+ imUserFriend.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend.setTags(teacherSubjectNameMap.get(studentId));
|
|
|
+ imUserFriends.add(imUserFriend);
|
|
|
+ //学员、教务关联的老师
|
|
|
+ ImUserFriend imUserFriend1 = new ImUserFriend();
|
|
|
+ imUserFriend1.setUserId(studentId);
|
|
|
+ imUserFriend1.setFriendId(teacherId);
|
|
|
+ imUserFriend1.setFriendNickname(nameIdMap.get(teacherId));
|
|
|
+ imUserFriend1.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend1.setTags(studentSubjectName.get(teacherId));
|
|
|
+ imUserFriends.add(imUserFriend1);
|
|
|
+
|
|
|
+ for (Integer education : educations) {
|
|
|
+ if(studentId == education){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //教务关联的学员
|
|
|
+ ImUserFriend imUserFriend2 = new ImUserFriend();
|
|
|
+ imUserFriend2.setUserId(education);
|
|
|
+ imUserFriend2.setFriendId(studentId);
|
|
|
+ imUserFriend2.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend2.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend2.setTags(studentSubjectName.get(studentId));
|
|
|
+ imUserFriends.add(imUserFriend2);
|
|
|
+ //学员关联的教务
|
|
|
+ ImUserFriend imUserFriend3 = new ImUserFriend();
|
|
|
+ imUserFriend3.setUserId(studentId);
|
|
|
+ imUserFriend3.setFriendId(education);
|
|
|
+ imUserFriend3.setFriendNickname(nameIdMap.get(education));
|
|
|
+ imUserFriend3.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend3.setTags(teacherSubjectNameMap.get(education));
|
|
|
+ imUserFriends.add(imUserFriend3);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(imUserFriends.size() > 0){
|
|
|
+ batchInsert(imUserFriends);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void groupChangeEducation(String groupId, Integer educationId, GroupType groupType) {
|
|
|
+ Set<Integer> studentIds = new HashSet<>();
|
|
|
+ List<ImUserFriend> imUserFriends = new ArrayList<>();
|
|
|
+ //获取班级关联的学员
|
|
|
+ List<ClassGroupStudentInfoDto> studentMappers = classGroupStudentMapperDao.findByGroupOrClassGroup(groupId, groupType, null);
|
|
|
+ studentIds.addAll(studentMappers.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+ //获取班级关联的老师
|
|
|
+ List<ClassGroupTeacherMapper> classGroupTeacherMappers = classGroupTeacherMapperDao.findAllByMusicGroup(groupId,groupType,null);
|
|
|
+ studentIds.addAll(classGroupTeacherMappers.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+ //获取课程关联的老师
|
|
|
+ List<CourseScheduleTeacherSalary> teacherSalaries = courseScheduleTeacherSalaryDao.findByGroup(groupId, groupType.getCode());
|
|
|
+ studentIds.addAll(teacherSalaries.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+ studentIds.add(educationId);
|
|
|
+
|
|
|
+ //获取通讯录昵称
|
|
|
+ Map<Integer, String> nameIdMap = MapUtil.convertIntegerMap(teacherDao.queryNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+ //获取老师声部
|
|
|
+ Map<Integer, String> teacherSubjectNameMap = MapUtil.convertIntegerMap(teacherDao.querySubjectNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+ for (Integer studentId : studentIds) {
|
|
|
+ if(educationId == studentId){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //教务关联的老师、学员
|
|
|
+ ImUserFriend imUserFriend = new ImUserFriend();
|
|
|
+ imUserFriend.setUserId(educationId);
|
|
|
+ imUserFriend.setFriendId(studentId);
|
|
|
+ imUserFriend.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend.setTags(teacherSubjectNameMap.get(studentId));
|
|
|
+ imUserFriends.add(imUserFriend);
|
|
|
+ //学员老师关联教务
|
|
|
+ ImUserFriend imUserFriend1 = new ImUserFriend();
|
|
|
+ imUserFriend1.setUserId(studentId);
|
|
|
+ imUserFriend1.setFriendId(educationId);
|
|
|
+ imUserFriend1.setFriendNickname(nameIdMap.get(educationId));
|
|
|
+ imUserFriends.add(imUserFriend1);
|
|
|
+ }
|
|
|
+ if(imUserFriends.size() > 0){
|
|
|
+ batchInsert(imUserFriends);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void courseScheduleChangeTeacher(Long courseScheduleId, Integer teacherId) {
|
|
|
+ Set<Integer> studentIds = new HashSet<>();
|
|
|
+ Set<Integer> educations = new HashSet<>();
|
|
|
+ List<ImUserFriend> imUserFriends = new ArrayList<>();
|
|
|
+ CourseSchedule courseSchedule = courseScheduleDao.get(courseScheduleId);
|
|
|
+ //获取课程上关联的学员
|
|
|
+ List<CourseScheduleStudentPayment> studentPayments = courseScheduleStudentPaymentDao.findByCourseSchedule(courseScheduleId);
|
|
|
+ studentIds.addAll(studentPayments.stream().map(e->e.getUserId()).collect(Collectors.toSet()));
|
|
|
+ studentIds.add(teacherId);
|
|
|
+ //学员声部列表
|
|
|
+ Map<Integer,String> studentSubjectName = new HashMap<>();
|
|
|
+ MusicGroup musicGroup = new MusicGroup();
|
|
|
+ GroupType groupType = courseSchedule.getGroupType();
|
|
|
+ if(groupType == MUSIC){
|
|
|
+ musicGroupDao.get(courseSchedule.getMusicGroupId());
|
|
|
+ //获取学员声部列表
|
|
|
+ studentSubjectName = MapUtil.convertMybatisMap(studentRegistrationDao.getStudentSubjectNameByStuIds(musicGroup.getId(),studentIds));
|
|
|
+ //关联乐团管理人员通讯录
|
|
|
+ musicGroup = musicGroupDao.get(courseSchedule.getMusicGroupId());
|
|
|
+ studentIds.add(musicGroup.getDirectorUserId());
|
|
|
+ studentIds.add(musicGroup.getEducationalTeacherId());
|
|
|
+ studentIds.add(musicGroup.getTeamTeacherId());
|
|
|
+ educations.add(musicGroup.getDirectorUserId());
|
|
|
+ educations.add(musicGroup.getEducationalTeacherId());
|
|
|
+ educations.add(musicGroup.getTeamTeacherId());
|
|
|
+ }else if(groupType == VIP){
|
|
|
+ VipGroup vipGroup = vipGroupDao.get(Long.parseLong(courseSchedule.getMusicGroupId()));
|
|
|
+ educations.add(vipGroup.getEducationalTeacherId());
|
|
|
+ studentIds.add(vipGroup.getEducationalTeacherId());
|
|
|
+ }
|
|
|
+ educations.removeAll(Collections.singleton(null));
|
|
|
+ studentIds.removeAll(Collections.singleton(null));
|
|
|
+ //获取通讯录昵称
|
|
|
+ Map<Integer, String> nameIdMap = MapUtil.convertIntegerMap(teacherDao.queryNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+ //获取老师声部
|
|
|
+ Map<Integer, String> teacherSubjectNameMap = MapUtil.convertIntegerMap(teacherDao.querySubjectNameByIdList(new ArrayList<>(studentIds)));
|
|
|
+ for (Integer studentId : studentIds) {
|
|
|
+ if(teacherId == studentId){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //老师关联的学员和教务
|
|
|
+ ImUserFriend imUserFriend = new ImUserFriend();
|
|
|
+ imUserFriend.setUserId(teacherId);
|
|
|
+ imUserFriend.setFriendId(studentId);
|
|
|
+ imUserFriend.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend.setTags(studentSubjectName.get(studentId));
|
|
|
+ imUserFriends.add(imUserFriend);
|
|
|
+ //学员关联的老师、教务关联老师
|
|
|
+ ImUserFriend imUserFriend1 = new ImUserFriend();
|
|
|
+ imUserFriend1.setUserId(studentId);
|
|
|
+ imUserFriend1.setFriendId(teacherId);
|
|
|
+ imUserFriend1.setFriendNickname(nameIdMap.get(teacherId));
|
|
|
+ imUserFriend1.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend1.setTags(teacherSubjectNameMap.get(teacherId));
|
|
|
+ imUserFriends.add(imUserFriend1);
|
|
|
+ for (Integer education : educations) {
|
|
|
+ if(studentId == education){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //学员关联教务
|
|
|
+ ImUserFriend imUserFriend2 = new ImUserFriend();
|
|
|
+ imUserFriend2.setUserId(studentId);
|
|
|
+ imUserFriend2.setFriendId(education);
|
|
|
+ imUserFriend2.setFriendNickname(nameIdMap.get(education));
|
|
|
+ imUserFriend2.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend2.setTags(teacherSubjectNameMap.get(education));
|
|
|
+ imUserFriends.add(imUserFriend2);
|
|
|
+ //教务关联学员
|
|
|
+ ImUserFriend imUserFriend3 = new ImUserFriend();
|
|
|
+ imUserFriend3.setUserId(education);
|
|
|
+ imUserFriend3.setFriendId(studentId);
|
|
|
+ imUserFriend3.setFriendNickname(nameIdMap.get(studentId));
|
|
|
+ imUserFriend3.setMemo(musicGroup.getName());
|
|
|
+ imUserFriend3.setTags(studentSubjectName.get(studentId));
|
|
|
+ imUserFriends.add(imUserFriend3);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(imUserFriends.size() > 0){
|
|
|
+ batchInsert(imUserFriends);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|