diff --git a/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.h b/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.h index 387906ae..4fe74744 100644 --- a/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.h +++ b/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.h @@ -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; ///超管列表 diff --git a/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.m b/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.m index e99891db..895250c7 100644 --- a/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.m +++ b/xplan-ios/Main/Room/View/Setting/View/XPRoomRoleViewController.m @@ -14,6 +14,8 @@ #import "XPRoomRoleEmptyTableViewCell.h" #import "GuildSuperAdminInfoModel.h" #import "NSArray+Safe.h" +#import "AccountInfoStorage.h" +#import "Api+UserCard.h" @interface XPRoomRoleViewController () ///总的数据 @@ -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]; + } + }]; + } } } diff --git a/xplan-ios/Main/Room/View/Setting/View/XPRoomSettingViewController.m b/xplan-ios/Main/Room/View/Setting/View/XPRoomSettingViewController.m index f175cdd5..4eb1f1fc 100644 --- a/xplan-ios/Main/Room/View/Setting/View/XPRoomSettingViewController.m +++ b/xplan-ios/Main/Room/View/Setting/View/XPRoomSettingViewController.m @@ -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]; }