修复超管无法移除管理员

This commit is contained in:
chenshuanglin
2023-04-19 18:35:16 +08:00
parent 540c03d99f
commit 91ac09536b
3 changed files with 28 additions and 10 deletions

View File

@@ -18,6 +18,7 @@ typedef NS_ENUM(NSInteger, RoomRoleListType) {
@interface XPRoomRoleViewController : BaseViewController
///房间的id
@property (nonatomic,copy) NSString *roomId;
@property (nonatomic,copy) NSString *roomUid;
///类型
@property (nonatomic,assign) RoomRoleListType type;
///超管列表

View File

@@ -14,6 +14,8 @@
#import "XPRoomRoleEmptyTableViewCell.h"
#import "GuildSuperAdminInfoModel.h"
#import "NSArray+Safe.h"
#import "AccountInfoStorage.h"
#import "Api+UserCard.h"
@interface XPRoomRoleViewController ()<UITableViewDelegate, UITableViewDataSource, XPRoomRoleTableViewCellDelegate>
///
@@ -143,16 +145,30 @@
}
}];
} else if(self.type == RoomRoleListType_Manager) {
NIMChatroomMemberUpdateRequest *request = [[NIMChatroomMemberUpdateRequest alloc]init];
request.roomId = self.roomId;
request.userId = member.userId;
request.enable = NO;
[[NIMSDK sharedSDK].chatroomManager markMemberManager:request completion:^(NSError * _Nullable error) {
if (error == nil) {
[self.datasource removeObject:member];
[self.tableView reloadData];
}
}];
NSString *uid = [AccountInfoStorage instance].getUid;
if ([self isRoomSuperAdmin:uid]) {
[Api superAdminHandleUser:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
[self.datasource removeObject:member];
[self.tableView reloadData];
}else{
[self showErrorToast:msg];
}
} roomUid:self.roomUid targetUid:member.userId opt:@"1" isSet:@(NO)];
}else{
NIMChatroomMemberUpdateRequest *request = [[NIMChatroomMemberUpdateRequest alloc]init];
request.roomId = self.roomUid;
request.userId = member.userId;
request.enable = NO;
[[NIMSDK sharedSDK].chatroomManager markMemberManager:request completion:^(NSError * _Nullable error) {
if (error == nil) {
[self.datasource removeObject:member];
[self.tableView reloadData];
}else{
[self showErrorToast:error.localizedDescription];
}
}];
}
}
}

View File

@@ -257,6 +257,7 @@ XPRoomSettingItemModel * itemModel = [[self.datasource safeObjectAtIndex1:indexP
XPRoomRoleViewController * managerVC = [[XPRoomRoleViewController alloc] init];
managerVC.superAdmminList = self.hostDelegate.getRoomSuperAdminList;
managerVC.roomId = roomId;
managerVC.roomUid = roomUid;
managerVC.type = RoomRoleListType_Manager;
[self.navigationController pushViewController:managerVC animated:YES];
}