交友房初步完成
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
#import "QXRankCPListCell.h"
|
||||
#import "QXRankCPTopThreeView.h"
|
||||
#import "QXHomePageNetwork.h"
|
||||
#import "QXUserHomePageViewController.h"
|
||||
|
||||
@interface QXRankHomeSubVC ()<UITableViewDelegate,UITableViewDataSource>
|
||||
@property (nonatomic,strong)QXRankTypeView *rankTypeView;
|
||||
@@ -189,6 +190,19 @@
|
||||
}
|
||||
}
|
||||
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
|
||||
QXMyRankModel *model = self.dataArray[indexPath.row];
|
||||
// if (self.rankType == 0) {
|
||||
// if ([model.room_id isExist]) {
|
||||
// [[QXGlobal shareGlobal] joinRoomWithRoomId:model.room_id isRejoin:NO navagationController:self.navigationController];
|
||||
// }
|
||||
// return;
|
||||
// }
|
||||
if (self.rankType == 1 || self.rankType == 2) {
|
||||
QXUserHomePageViewController *vc = [[QXUserHomePageViewController alloc] init];
|
||||
vc.user_id = model.user_id;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
return;
|
||||
}
|
||||
// if (self.rankType != 4) {//CP
|
||||
// QXHomeRoomListModel *model = self.dataArray[indexPath.row];
|
||||
// SRPersonalViewController *pvc = [[SRPersonalViewController alloc] initWithUserId:[model.user_id longLongValue]];
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
//
|
||||
// QXRoomViewController+Friend.h
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/8/20.
|
||||
//
|
||||
|
||||
#import "QXRoomViewController.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomViewController (Friend)
|
||||
/// 重置麦位视图
|
||||
-(void)resetFriendViews;
|
||||
|
||||
/// 交友房阶段发生变化 step 阶段 1等待 2心动 3牵手 friend_id 场次id
|
||||
//-(void)friendPartDidChangedWithType:(NSString*)step friend_id:(NSString*)friend_id;
|
||||
///// 交友房时间发生延时 end_time 截止时间
|
||||
//-(void)friendTimeDelayWithTime:(NSString*)end_time;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
@@ -0,0 +1,87 @@
|
||||
//
|
||||
// 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<QXRoomPitModel *> *)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<QXRoomFriendHeartListModel *> *)heartArray{
|
||||
[self.seatContentView friendHeartNumberDidChanged:heartArray];
|
||||
}
|
||||
/// 关系创建完成
|
||||
-(void)friendRelationIsCreatedWithrelationModel:(QXRoomFriendRelationModel*)relationModel{
|
||||
[self.seatContentView friendRelationIsCreatedWithrelationModel:relationModel];
|
||||
}
|
||||
/// 有人退出交友房私密小屋
|
||||
-(void)friendCabinRoomIsQuit{
|
||||
[[QXGlobal shareGlobal] quitRoomWithRoomId:self.roomId];
|
||||
[self.navigationController popViewControllerAnimated:YES];
|
||||
}
|
||||
/// 私密小屋时间发生延时
|
||||
-(void)friendCabinRoomTimeDelayWithTime:(NSString*)end_time{
|
||||
[self.seatContentView friendCabinRoomTimeDelayWithTime:end_time];
|
||||
}
|
||||
@end
|
||||
@@ -6,13 +6,33 @@
|
||||
//
|
||||
|
||||
#import "QXBaseViewController.h"
|
||||
|
||||
#import "QXGlobal.h"
|
||||
#import "QXRoomSeatView.h"
|
||||
#import "QXRoomChatListView.h"
|
||||
#import "QXRoomTitleView.h"
|
||||
#import "QXRoomBottomView.h"
|
||||
#import "QXRoomMessageManager.h"
|
||||
#import "QXSendGiftView.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomViewController : QXBaseViewController
|
||||
@interface QXRoomViewController : QXBaseViewController<QXRoomMessageManagerDelegate,QXRoomSeatDelegate>
|
||||
@property (nonatomic,strong)NSString *roomId;
|
||||
/// 是否为最小化房间进来
|
||||
@property (nonatomic,assign)BOOL isReJoin;
|
||||
|
||||
|
||||
/// 麦位视图
|
||||
@property (nonatomic,strong)QXRoomSeatView *seatContentView;
|
||||
/// 聊天列表
|
||||
@property (nonatomic,strong)QXRoomChatListView *chatListView;
|
||||
/// 顶部房间信息
|
||||
@property (nonatomic,strong)QXRoomTitleView *titleView;
|
||||
/// 底部工具栏
|
||||
@property (nonatomic,strong)QXRoomBottomView *bottomView;
|
||||
/// 发送礼物
|
||||
@property (nonatomic,strong)QXSendGiftView *sendGiftView;
|
||||
|
||||
-(void)configBottomTools;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
||||
@@ -6,16 +6,10 @@
|
||||
//
|
||||
|
||||
#import "QXRoomViewController.h"
|
||||
#import "QXRoomTitleView.h"
|
||||
#import "QXRoomSeatView.h"
|
||||
#import "QXRoomBottomView.h"
|
||||
#import "QXRoomChatListView.h"
|
||||
#import "QXRoomSongListView.h"
|
||||
#import "QXSendGiftView.h"
|
||||
#import "QXSoundListView.h"
|
||||
#import "QXUpSeatView.h"
|
||||
#import "QXMineNetwork.h"
|
||||
#import "QXRoomMessageManager.h"
|
||||
#import "QXGiftPlayerManager.h"
|
||||
#import "QXAgoraEngine.h"
|
||||
#import "QXRoomSettingView.h"
|
||||
@@ -34,29 +28,18 @@
|
||||
#import "QXReportViewController.h"
|
||||
#import "QXMessageViewController.h"
|
||||
#import "QXRoomSubsidyViewController.h"
|
||||
#import "QXRoomViewController+Friend.h"
|
||||
|
||||
@interface QXRoomViewController ()<
|
||||
QXRoomBottomViewDelegate,
|
||||
QXRoomMessageManagerDelegate,
|
||||
QXRoomSettingViewDelegate,
|
||||
QXAgoraEngineMediaPlayerDelegate,
|
||||
QXRoomSeatDelegate,
|
||||
QXRoomUserInfoViewDelegate
|
||||
>
|
||||
@property (nonatomic,strong)UIImageView *roomBgImageView;
|
||||
@property (nonatomic,strong)UIView *roomBgCoverView;
|
||||
/// 顶部房间信息
|
||||
@property (nonatomic,strong)QXRoomTitleView *titleView;
|
||||
/// 麦位视图
|
||||
@property (nonatomic,strong)QXRoomSeatView *seatContentView;
|
||||
/// 底部工具栏
|
||||
@property (nonatomic,strong)QXRoomBottomView *bottomView;
|
||||
/// 聊天列表
|
||||
@property (nonatomic,strong)QXRoomChatListView *chatListView;
|
||||
/// 点唱view
|
||||
@property (nonatomic,strong)QXRoomSongListView *songListView;
|
||||
/// 发送礼物
|
||||
@property (nonatomic,strong)QXSendGiftView *sendGiftView;
|
||||
/// 声音特效
|
||||
@property (nonatomic,strong)QXSoundListView *soundListView;
|
||||
/// 申请上麦
|
||||
@@ -388,6 +371,9 @@ QXRoomUserInfoViewDelegate
|
||||
make.width.mas_equalTo(ScaleWidth(280));
|
||||
}];
|
||||
[self.view insertSubview:self.movieView atIndex:0];
|
||||
}else if (self.roomModel.room_info.type_id.intValue == 7) {
|
||||
/// 交友房
|
||||
[self resetFriendViews];
|
||||
}
|
||||
|
||||
if (self.roomModel.room_info.last_pk_room_id.isExist) {
|
||||
@@ -542,9 +528,9 @@ QXRoomUserInfoViewDelegate
|
||||
if ((self.roomModel.room_info.type_id.intValue == 1 || self.roomModel.room_info.type_id.intValue == 3 || self.roomModel.room_info.type_id.intValue == 4) && self.roomModel.room_info.label_id.intValue == 1) {
|
||||
hasPK = YES;
|
||||
}
|
||||
BOOL hasSong = YES;
|
||||
if (self.roomModel.room_info.type_id.intValue == 2){
|
||||
hasSong = NO;
|
||||
BOOL hasSong = NO;
|
||||
if (self.roomModel.room_info.type_id.intValue == 1 || self.roomModel.room_info.type_id.intValue == 3 || self.roomModel.room_info.type_id.intValue == 4){
|
||||
hasSong = YES;
|
||||
}
|
||||
/// 普通麦位
|
||||
if (self.seatContentView.myPitNumber <= 0) {
|
||||
@@ -1597,14 +1583,28 @@ QXRoomUserInfoViewDelegate
|
||||
_sendGiftView.roomId = self.roomId;
|
||||
// [_sendGiftView reloadData];
|
||||
MJWeakSelf
|
||||
_sendGiftView.roomSendSuccessBlock = ^(BOOL isAuction, QXGiftModel * _Nonnull giftModel, NSString * _Nonnull userId, NSString * _Nonnull auctionId) {
|
||||
_sendGiftView.roomSendSuccessBlock = ^(QXSendGiftViewType sendType, QXGiftModel * _Nonnull giftModel, NSString * _Nonnull userId, NSString * _Nonnull optionId) {
|
||||
if (self->_continuousView == nil) {
|
||||
[weakSelf.view addSubview:weakSelf.continuousView];
|
||||
}
|
||||
weakSelf.continuousView.giftModel = giftModel;
|
||||
weakSelf.continuousView.isAuction = isAuction;
|
||||
weakSelf.continuousView.sendType = sendType;
|
||||
weakSelf.continuousView.userId = userId;
|
||||
weakSelf.continuousView.auctionId = auctionId;
|
||||
switch (sendType) {
|
||||
case QXSendGiftViewTypeFriend:{
|
||||
weakSelf.continuousView.heartId = optionId;
|
||||
weakSelf.continuousView.auctionId = @"";
|
||||
}
|
||||
break;
|
||||
case QXSendGiftViewTypeAuction:{
|
||||
weakSelf.continuousView.auctionId = optionId;
|
||||
weakSelf.continuousView.heartId = @"";
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
return _sendGiftView;
|
||||
|
||||
Reference in New Issue
Block a user