|
@@ -433,6 +433,13 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
userAccountService.save(userAccount);
|
|
|
}
|
|
|
} else {
|
|
|
+ if (!teacher.getTenantId().equals(teacherSubmitReq.getTenantId())) {
|
|
|
+ TeacherWrapper.UpdateTenant updateTenant = new TeacherWrapper.UpdateTenant();
|
|
|
+ updateTenant.setTeacherId(teacher.getUserId());
|
|
|
+ updateTenant.setTenantId(teacherSubmitReq.getTenantId());
|
|
|
+ updateTenant(updateTenant);
|
|
|
+ }
|
|
|
+
|
|
|
teacher.setUpdateTime(new Date());
|
|
|
teacher = getTeacherDetil(teacher, teacherSubmitReq);
|
|
|
if (null == teacher.getEntryAuthDate() || null == teacher.getMusicianDate()) {
|
|
@@ -443,27 +450,6 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- // 机构解绑
|
|
|
- if (teacher.getTenantId() != -1L && Boolean.FALSE.equals(teacherSubmitReq.getBindTenant())) {
|
|
|
- // 老师建立的班级群解散,并解除好友关系
|
|
|
- List<ImGroupMember> groupMembers = imGroupMemberService.lambdaQuery()
|
|
|
- .eq(ImGroupMember::getIsAdmin, true)
|
|
|
- .eq(ImGroupMember::getUserId, teacher.getUserId()).list();
|
|
|
- if (!groupMembers.isEmpty()) {
|
|
|
- List<String> groupIdList = groupMembers.stream().map(ImGroupMember::getGroupId).distinct()
|
|
|
- .collect(Collectors.toList());
|
|
|
- groupIdList.forEach(next -> {
|
|
|
- try {
|
|
|
- imGroupService.dismiss(next);
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("解散群聊失败,", e);
|
|
|
- }
|
|
|
- });
|
|
|
- imUserFriendService.delFriendByTenantId(teacher.getTenantId(), teacher.getUserId());
|
|
|
- }
|
|
|
- // 机构解绑后,归属为平台老师
|
|
|
- teacher.setTenantId(-1L);
|
|
|
- }
|
|
|
baseMapper.updateById(teacher);
|
|
|
}
|
|
|
|
|
@@ -909,6 +895,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
return wrapper;
|
|
|
}
|
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void updateTenant(TeacherWrapper.UpdateTenant updateTenant) {
|
|
|
Teacher teacher = this.getById(updateTenant.getTeacherId());
|
|
@@ -928,6 +915,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
log.error("老师修改机构,解散机构群失败:{}", e.getMessage());
|
|
|
}
|
|
|
});
|
|
|
+ imUserFriendService.delFriendByTenantId(teacher.getTenantId(), teacher.getUserId());
|
|
|
}
|
|
|
|
|
|
teacher.setTenantId(updateTenant.getTenantId());
|