// // QXRoomViewController+Friend.m // QXLive // // Created by 启星 on 2025/8/20. // #import "QXRoomViewController+Friend.h" #import "QXAgoraEngine.h" @implementation QXRoomViewController (Friend) -(void)resetFriendViews{ [self.seatContentView setType:QXRoomSeatViewTypeFriend]; [self.seatContentView mas_remakeConstraints:^(MASConstraintMaker *make) { make.left.right.equalTo(self.view); make.top.mas_equalTo(self.titleView.bottom); make.height.mas_equalTo(ScaleWidth(377)); }]; [self.chatListView mas_remakeConstraints:^(MASConstraintMaker *make) { make.bottom.equalTo(self.bottomView.mas_top); make.left.equalTo(self.view); make.top.equalTo(self.seatContentView.mas_bottom); // make.right.equalTo(self.soundBtn.mas_left).offset(-16); make.width.mas_equalTo(ScaleWidth(280)); }]; } -(void)friendPartDidChangedWithType:(NSString*)step friend_id:(NSString*)friend_id end_time:(NSString*)end_time relationModel:(nonnull QXRoomFriendRelationModel *)relationModel{ [self.seatContentView friendPartDidChangedWithType:step friend_id:friend_id end_time:end_time relationModel:relationModel]; } -(void)friendTimeDelayWithTime:(NSString *)end_time{ [self.seatContentView friendTimeDelayWithTime:end_time]; } -(void)friendSeatDidChanged:(NSArray *)pitArray{ BOOL haveMe = NO; if (self.seatContentView.myPitNumber == 9 || self.seatContentView.myPitNumber == 10) { haveMe = YES; } for (QXRoomPitModel*md in pitArray) { if ([md.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) { self.seatContentView.myPitNumber = md.pit_number.integerValue; haveMe = YES; break; } } if (haveMe == NO) { self.bottomView.status = 1; [[QXAgoraEngine sharedEngine] setClientRoleBroadcaster:NO]; }else{ self.bottomView.status = 2; if ([QXAgoraEngine sharedEngine].isOpenMic) { [self.bottomView setMuteAudioStatus:1]; }else{ [self.bottomView setMuteAudioStatus:0]; } } [self.seatContentView friendSeatDidChanged:pitArray]; } -(void)friendPowerSendGiftWithUser:(QXRoomPitModel *)user heartId:(NSString *)heartId{ self.sendGiftView.type = QXSendGiftViewTypeFriend; QXRoomPitModel *model = [[QXRoomPitModel alloc] init]; model.pit_number = user.pit_number; model.user_id = user.user_id; model.nickname = user.nickname; model.avatar = user.avatar; self.sendGiftView.userModel = model; self.sendGiftView.heartId = heartId; self.sendGiftView.roomId = self.roomId; [self.sendGiftView showInView:self.view]; } -(void)friendHeartNumberDidChanged:(NSArray *)heartArray{ [self.seatContentView friendHeartNumberDidChanged:heartArray]; } /// 关系创建完成 -(void)friendRelationIsCreatedWithrelationModel:(QXRoomFriendRelationModel*)relationModel{ [self.seatContentView friendRelationIsCreatedWithrelationModel:relationModel]; } /// 有人退出交友房私密小屋 -(void)friendCabinRoomIsQuit{ [[QXGlobal shareGlobal] quitRoomWithRoomId:self.roomId]; NSMutableArray *viewControllers = [NSMutableArray arrayWithArray:self.navigationController.viewControllers]; for (int i = 0; i < viewControllers.count; i++) { UIViewController *vc = [viewControllers objectAtIndex:i]; if ([vc isEqual:self]) { QXRoomViewController *roomVc = [[QXRoomViewController alloc] init]; roomVc.roomId = QXGlobal.shareGlobal.superRoomId; [viewControllers insertObject:roomVc atIndex:i]; break; } } self.navigationController.viewControllers = viewControllers; [self.navigationController popViewControllerAnimated:YES]; QXGlobal.shareGlobal.superRoomId = @""; // [self.navigationController popViewControllerAnimated:YES]; } /// 私密小屋时间发生延时 -(void)friendCabinRoomTimeDelayWithTime:(NSString*)end_time{ [self.seatContentView friendCabinRoomTimeDelayWithTime:end_time]; } -(void)meetActivityProgressIsUpdate:(NSDictionary *)updateDict{ QXXLHModel *model = [QXXLHModel yy_modelWithJSON:updateDict[@"xlh_data"]]; [self.skyView updateProgress:model]; [self.ageView updateProgress:model]; [self.timeView updateProgress:model]; if (model.status.intValue == 1) { self.acTagView.end_time = model.end_time; [self.view addSubview:self.acTagView]; }else{ [self.acTagView stopTimer]; [self.acTagView removeFromSuperview]; } } -(void)meetActivityGiftInfoIsUpdate:(QXRoomChatListModel *)giftInfo{ // [self.meetView updateUserAndGiftInfoWithModel:giftInfo]; // self.acTagView.end_time = giftInfo.end_time.longLongValue; } @end