群主设置管理员
This commit is contained in:
@@ -251,6 +251,10 @@ public class GroupServiceImpl implements IGroupService {
|
||||
|
||||
/**
|
||||
* 设置管理员
|
||||
* <p>
|
||||
* 本地更新群成员角色后,调用 OpenIM 接口同步角色(roleLevel=60=管理员)。
|
||||
* OpenIM 调用失败会抛异常回滚本地事务,保证本地与 IM 角色一致。
|
||||
* </p>
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
@@ -274,6 +278,10 @@ public class GroupServiceImpl implements IGroupService {
|
||||
member.setUpdateTime(LocalDateTime.now());
|
||||
groupMemberMapper.updateById(member);
|
||||
|
||||
// OpenIM 同步:roleLevel=60 表示管理员
|
||||
openIMApiClient.setGroupMemberRole(
|
||||
String.valueOf(groupId), String.valueOf(targetUserId), 60);
|
||||
|
||||
// 审计日志
|
||||
auditService.log(groupId, null, operatorId, "SET_ADMIN",
|
||||
String.format("{\"targetUserId\":%d}", targetUserId));
|
||||
@@ -281,6 +289,10 @@ public class GroupServiceImpl implements IGroupService {
|
||||
|
||||
/**
|
||||
* 取消管理员
|
||||
* <p>
|
||||
* 本地更新群成员角色后,调用 OpenIM 接口同步角色(roleLevel=20=普通成员)。
|
||||
* OpenIM 调用失败会抛异常回滚本地事务,保证本地与 IM 角色一致。
|
||||
* </p>
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
@@ -303,6 +315,10 @@ public class GroupServiceImpl implements IGroupService {
|
||||
member.setUpdateTime(LocalDateTime.now());
|
||||
groupMemberMapper.updateById(member);
|
||||
|
||||
// OpenIM 同步:roleLevel=20 表示普通成员
|
||||
openIMApiClient.setGroupMemberRole(
|
||||
String.valueOf(groupId), String.valueOf(targetUserId), 20);
|
||||
|
||||
// 审计日志
|
||||
auditService.log(groupId, null, operatorId, "REMOVE_ADMIN",
|
||||
String.format("{\"targetUserId\":%d}", targetUserId));
|
||||
|
||||
Reference in New Issue
Block a user