This commit is contained in:
启星
2026-01-14 20:36:58 +08:00
parent 705d891c51
commit 5548f5d6a5
64 changed files with 482 additions and 103 deletions

View File

@@ -88,6 +88,16 @@ typedef void (^showFinishBlock)(void);
nickname:(NSString*)nickname nickname:(NSString*)nickname
avatar:(NSString*)avatar avatar:(NSString*)avatar
navagationController:(UINavigationController*)navagationController; navagationController:(UINavigationController*)navagationController;
/**
去找客服
*/
-(void)chatWithServices:(NSString*)serviceId
nickname:(NSString*)nickname
avatar:(NSString*)avatar
navagationController:(UINavigationController*)navagationController;
/** /**
去公会群聊 去公会群聊
*/ */

View File

@@ -194,6 +194,17 @@
[navagationController pushViewController:vc animated:YES]; [navagationController pushViewController:vc animated:YES];
} }
-(void)chatWithServices:(NSString *)serviceId nickname:(NSString *)nickname avatar:(NSString *)avatar navagationController:(UINavigationController *)navagationController{
QXChatViewController *vc = [[QXChatViewController alloc] init];
TUIChatConversationModel *data = [[TUIChatConversationModel alloc] init];
data.userID = [NSString stringWithFormat:@"u%@",serviceId];
data.title = nickname;
data.faceUrl = avatar;
vc.data = data;
vc.isServices = YES;
[navagationController pushViewController:vc animated:YES];
}
-(void)chatWithGroupId:(NSString *)groupId cover:(NSString *)cover name:(NSString *)name navagationController:(UINavigationController *)navagationController{ -(void)chatWithGroupId:(NSString *)groupId cover:(NSString *)cover name:(NSString *)name navagationController:(UINavigationController *)navagationController{
QXChatViewController *vc = [[QXChatViewController alloc] init]; QXChatViewController *vc = [[QXChatViewController alloc] init];
TUIChatConversationModel *data = [[TUIChatConversationModel alloc] init]; TUIChatConversationModel *data = [[TUIChatConversationModel alloc] init];

View File

@@ -274,7 +274,7 @@
- (IBAction)comitUserInfoBtnAction:(id)sender { - (IBAction)comitUserInfoBtnAction:(id)sender {
// //
if (_userNameTF.text.length == 0) { if (![_userNameTF.text isExist]) {
showToastInView(QXText(@"请填写昵称"), self.view); showToastInView(QXText(@"请填写昵称"), self.view);
return; return;
} }

View File

@@ -28,17 +28,17 @@ typedef NS_ENUM(NSInteger) {
/// 登录 /// 登录
GetSmscodeTypeLogin = 0, GetSmscodeTypeLogin = 0,
/// 找回密码 /// 找回密码
GetSmscodeTypeFindPassword, GetSmscodeTypeFindPassword = 3,
/// 更换手机号 /// 更换手机号
GetSmscodeTypeFindChangeMobile, GetSmscodeTypeFindChangeMobile = 1,
/// 绑定手机号 /// 绑定手机号
GetSmscodeTypeFindBindMobile, GetSmscodeTypeFindBindMobile = 2,
/// 设置密码 /// 设置密码
GetSmscodeTypeSetPassword, GetSmscodeTypeSetPassword = 4,
/// 账号注销 /// 账号注销
GetSmscodeTypeAccountCancel, GetSmscodeTypeAccountCancel = 5,
/// 提现 /// 提现
GetSmscodeTypeWithDraw, GetSmscodeTypeWithDraw = 6,
}GetSmscodeType; }GetSmscodeType;
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN

View File

@@ -61,7 +61,7 @@
[self.agoraKit enableAudioVolumeIndication:200 smooth:3 reportVad:NO]; [self.agoraKit enableAudioVolumeIndication:200 smooth:3 reportVad:NO];
[self.agoraKit getCurrentMonotonicTimeInMs]; [self.agoraKit getCurrentMonotonicTimeInMs];
[self.agoraKit setAudioProfile:AgoraAudioProfileMusicHighQualityStereo]; [self.agoraKit setAudioProfile:AgoraAudioProfileMusicHighQualityStereo];
[self.agoraKit setAudioScenario:AgoraAudioScenarioChorus]; [self.agoraKit setAudioScenario:AgoraAudioScenarioGameStreaming];
[self setChannelProfile]; [self setChannelProfile];
self.agoraKit.delegate = self; self.agoraKit.delegate = self;
[self.agoraKit setParameters:@"{\"che.audio.custom_payload_type\":73}"]; [self.agoraKit setParameters:@"{\"che.audio.custom_payload_type\":73}"];

View File

@@ -83,6 +83,7 @@
switch (newState) { switch (newState) {
case MQTTSessionManagerStateConnected: case MQTTSessionManagerStateConnected:
QXLOG(@"eventCode -- 连接成功"); QXLOG(@"eventCode -- 连接成功");
[QXLogger infoWithTag:@"MQTT" format:@"连接成功"];
[self subscribeTopic:qx_room_topic]; [self subscribeTopic:qx_room_topic];
[self subscribeTopic:qx_ac_topic]; [self subscribeTopic:qx_ac_topic];
[self subscribeTopic:qx_hour_ranking]; [self subscribeTopic:qx_hour_ranking];
@@ -92,21 +93,23 @@
break; break;
case MQTTSessionManagerStateConnecting: case MQTTSessionManagerStateConnecting:
QXLOG(@"eventCode -- 连接中"); QXLOG(@"eventCode -- 连接中");
[QXLogger infoWithTag:@"MQTT" format:@"连接中"];
break; break;
case MQTTSessionManagerStateClosed: case MQTTSessionManagerStateClosed:
QXLOG(@"eventCode -- 连接被关闭"); QXLOG(@"eventCode -- 连接被关闭");
[QXLogger infoWithTag:@"MQTT" format:@"连接被关闭"];
break; break;
case MQTTSessionManagerStateError: case MQTTSessionManagerStateError:
QXLOG(@"eventCode -- 连接错误"); QXLOG(@"eventCode -- 连接错误");
[QXLogger infoWithTag:@"MQTT" format:@"连接错误"];
break; break;
case MQTTSessionManagerStateClosing: case MQTTSessionManagerStateClosing:
QXLOG(@"eventCode -- 关闭中"); QXLOG(@"eventCode -- 关闭中");
[QXLogger infoWithTag:@"MQTT" format:@"关闭中"];
break; break;
case MQTTSessionManagerStateStarting: case MQTTSessionManagerStateStarting:
QXLOG(@"eventCode -- 连接开始"); QXLOG(@"eventCode -- 连接开始");
[QXLogger infoWithTag:@"MQTT" format:@"连接开始"];
break; break;
default: default:

View File

@@ -323,6 +323,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id]; [self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id];
} }
} }
@@ -335,6 +336,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id]; [self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id];
} }
} }
@@ -347,6 +349,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id]; [self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id];
} }
} }
@@ -359,6 +362,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id]; [self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id];
} }
} }
@@ -401,6 +405,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id]; [self.delegate didInsertMessge:model userId:model.FromUserInfo.user_id];
} }
} }
@@ -416,6 +421,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -428,6 +434,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -448,6 +455,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -494,6 +502,7 @@
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:userId:)]) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model userId:user_id]; [self.delegate didInsertMessge:model userId:user_id];
} }
} }
@@ -563,6 +572,7 @@
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
model.messageType = QXRoomChatMessageTypeGift; model.messageType = QXRoomChatMessageTypeGift;
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -584,6 +594,7 @@
if (model.step.intValue != 3) { if (model.step.intValue != 3) {
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -655,6 +666,7 @@
if (!model.is_pk) { if (!model.is_pk) {
// pk // pk
model.messageType = QXRoomChatMessageTypeSystem; model.messageType = QXRoomChatMessageTypeSystem;
model.isSuperRoom = isSuperRoom;
[self.delegate didInsertMessge:model]; [self.delegate didInsertMessge:model];
} }
} }
@@ -721,9 +733,11 @@
} }
break; break;
case QXRoomMessageTypeCpJoinRoom:{ case QXRoomMessageTypeCpJoinRoom:{
if (!isSuperRoom) {
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text]; QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
[[QXGiftPlayerManager shareManager] displayCpEffectView:model]; [[QXGiftPlayerManager shareManager] displayCpEffectView:model];
} }
}
break; break;
case QXRoomMessageTypeStartSign:{ case QXRoomMessageTypeStartSign:{
NSString *sign_id = [NSString stringWithFormat:@"%@",msg.Text[@"sign_id"]]; NSString *sign_id = [NSString stringWithFormat:@"%@",msg.Text[@"sign_id"]];

View File

@@ -11,6 +11,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface QXChatViewController : QXBaseViewController @interface QXChatViewController : QXBaseViewController
@property (nonatomic,strong)TUIChatConversationModel *data; @property (nonatomic,strong)TUIChatConversationModel *data;
@property (nonatomic,assign)BOOL isServices;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@@ -118,6 +118,7 @@
}else{ }else{
TUIC2CChatViewController *vc = [[TUIC2CChatViewController alloc] init]; TUIC2CChatViewController *vc = [[TUIC2CChatViewController alloc] init];
vc.isServices = self.isServices;
[vc setConversationData:self.data]; [vc setConversationData:self.data];
// TUIC2CChatViewController ViewController // TUIC2CChatViewController ViewController
vc.view.frame = CGRectMake(0, NavContentHeight, SCREEN_WIDTH, SCREEN_HEIGHT-NavContentHeight); vc.view.frame = CGRectMake(0, NavContentHeight, SCREEN_WIDTH, SCREEN_HEIGHT-NavContentHeight);

View File

@@ -13,11 +13,14 @@
#import "QXSystemTopView.h" #import "QXSystemTopView.h"
#import "QXSystemNoticeViewController.h" #import "QXSystemNoticeViewController.h"
#import "QXMessageServices.h" #import "QXMessageServices.h"
#import "AppDelegate.h"
@interface QXMessageViewController ()<TUIConversationListControllerListener,QXSystemTopViewDelegate> @interface QXMessageViewController ()<TUIConversationListControllerListener,QXSystemTopViewDelegate>
@property (nonatomic,strong)QXSystemTopView *topView; @property (nonatomic,strong)QXSystemTopView *topView;
@property (nonatomic,strong)QXMessageModel *model; @property (nonatomic,strong)QXMessageModel *model;
@property (nonatomic,strong)TUIConversationListController *vc; @property (nonatomic,strong)TUIConversationListController *vc;
@property (nonatomic,strong)NSString *service_user_id;
@property (nonatomic,strong)NSString *service_user_name;
@end @end
@implementation QXMessageViewController @implementation QXMessageViewController
@@ -102,6 +105,11 @@
data.groupID = conversation.groupID; data.groupID = conversation.groupID;
data.title = conversation.title; data.title = conversation.title;
data.faceUrl = conversation.faceUrl; data.faceUrl = conversation.faceUrl;
if ([conversation.userID isEqualToString:[NSString stringWithFormat:@"u%@",self.service_user_id]]) {
vc.isServices = YES;
}else{
vc.isServices = NO;
}
vc.data = data; vc.data = data;
[self.vc.dataProvider markConversationAsRead:conversation]; [self.vc.dataProvider markConversationAsRead:conversation];
[self.navigationController pushViewController:vc animated:YES]; [self.navigationController pushViewController:vc animated:YES];
@@ -117,6 +125,15 @@
[QXMessageServices getHomeMessageSuccessBlock:^(QXMessageModel * _Nonnull model) { [QXMessageServices getHomeMessageSuccessBlock:^(QXMessageModel * _Nonnull model) {
weakSelf.model = model; weakSelf.model = model;
weakSelf.topView.model = model; weakSelf.topView.model = model;
AppDelegate *delegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
delegate.tabbarVC.systemUnreadNumber = model.system_no_read_count.integerValue + model.announcement_read_count.integerValue;
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
}];
[QXMessageServices getSerbviceUserSuccessBlock:^(NSString * _Nonnull user_id, NSString * _Nonnull user_name) {
weakSelf.service_user_id = user_id;
weakSelf.service_user_name = user_name;
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) { } failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
}]; }];
@@ -137,7 +154,7 @@
-(QXSystemTopView *)topView{ -(QXSystemTopView *)topView{
if (!_topView) { if (!_topView) {
_topView = [[QXSystemTopView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74+8)]; _topView = [[QXSystemTopView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74*2+8)];
_topView.delegate = self; _topView.delegate = self;
} }
return _topView; return _topView;

View File

@@ -67,6 +67,12 @@ NS_ASSUME_NONNULL_BEGIN
notice:(NSString*)notice notice:(NSString*)notice
successBlock:(void (^)(NSDictionary* dict))successBlock successBlock:(void (^)(NSDictionary* dict))successBlock
failBlock:(void (^)(NSError * error, NSString * msg))failBlock; failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
/**
获取平台客服
*/
+(void)getSerbviceUserSuccessBlock:(void (^)(NSString * user_id , NSString * user_name))successBlock
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@@ -112,4 +112,18 @@
failBlock(error,msg); failBlock(error,msg);
}]; }];
} }
+(void)getSerbviceUserSuccessBlock:(void (^)(NSString * user_id , NSString * user_name))successBlock failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
[[QXRequset shareInstance] getWithUrl:QXRoomServicesUserId parameters:@{} needCache:NO success:^(id responseObject) {
if (successBlock) {
NSString *user_id = [NSString stringWithFormat:@"%@",responseObject[@"data"][@"user_id"]];
NSString *user_name = [NSString stringWithFormat:@"%@",responseObject[@"data"][@"user_name"]];
successBlock(user_id,user_name);
}
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
failBlock(error,msg);
}];
}
@end @end

View File

@@ -24,27 +24,17 @@
} }
-(void)initSubviews{ -(void)initSubviews{
MJWeakSelf MJWeakSelf
// self.noticeView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74)]; self.noticeView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74)];
// self.noticeView.iconImageView.image = [UIImage imageNamed:@"notice_icon"]; self.noticeView.iconImageView.image = [UIImage imageNamed:@"notice_icon"];
// self.noticeView.titleLabel.text = QXText(@"官方公告"); self.noticeView.titleLabel.text = QXText(@"官方公告");
// [self.noticeView addTapBlock:^(id _Nonnull obj) { [self.noticeView addTapBlock:^(id _Nonnull obj) {
// if (weakSelf.delegate && [weakSelf.delegate respondsToSelector:@selector(didClickNoticeWithType:)]) { if (weakSelf.delegate && [weakSelf.delegate respondsToSelector:@selector(didClickNoticeWithType:)]) {
// [weakSelf.delegate didClickNoticeWithType:0]; [weakSelf.delegate didClickNoticeWithType:0];
// } }
// }]; }];
// [self addSubview:self.noticeView]; [self addSubview:self.noticeView];
// self.systemView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 74, SCREEN_WIDTH, 74)]; self.systemView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 74, SCREEN_WIDTH, 74)];
// self.systemView.iconImageView.image = [UIImage imageNamed:@"system_icon"];
// self.systemView.titleLabel.text = QXText(@"系统消息");
// [self addSubview:self.systemView];
// [self.systemView addTapBlock:^(id _Nonnull obj) {
// if (weakSelf.delegate && [weakSelf.delegate respondsToSelector:@selector(didClickNoticeWithType:)]) {
// [weakSelf.delegate didClickNoticeWithType:1];
// }
// }];
self.systemView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74)];
self.systemView.iconImageView.image = [UIImage imageNamed:@"system_icon"]; self.systemView.iconImageView.image = [UIImage imageNamed:@"system_icon"];
self.systemView.titleLabel.text = QXText(@"系统消息"); self.systemView.titleLabel.text = QXText(@"系统消息");
[self addSubview:self.systemView]; [self addSubview:self.systemView];
@@ -54,6 +44,16 @@
} }
}]; }];
// self.systemView = [[QXSystemTopSubView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 74)];
// self.systemView.iconImageView.image = [UIImage imageNamed:@"system_icon"];
// self.systemView.titleLabel.text = QXText(@"系统消息");
// [self addSubview:self.systemView];
// [self.systemView addTapBlock:^(id _Nonnull obj) {
// if (weakSelf.delegate && [weakSelf.delegate respondsToSelector:@selector(didClickNoticeWithType:)]) {
// [weakSelf.delegate didClickNoticeWithType:1];
// }
// }];
self.bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, self.systemView.bottom, SCREEN_WIDTH, 8)]; self.bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, self.systemView.bottom, SCREEN_WIDTH, 8)];
// self.bottomView.backgroundColor = RGB16(0xececec); // self.bottomView.backgroundColor = RGB16(0xececec);
self.bottomView.backgroundColor = [UIColor clearColor]; self.bottomView.backgroundColor = [UIColor clearColor];

View File

@@ -111,10 +111,17 @@ static void *WKWebBrowserContext = &WKWebBrowserContext;
if([message.name isEqualToString:@"nativeHandler"]){ if([message.name isEqualToString:@"nativeHandler"]){
NSDictionary *dict = message.body; NSDictionary *dict = message.body;
if ([dict[@"action"] isEqualToString:@"customerService"]) { if ([dict[@"action"] isEqualToString:@"customerService"]) {
WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init]; // WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init];
req.corpid = @"ww1de4300858c0b461"; // req.corpid = @"ww1de4300858c0b461";
req.url = @"https://work.weixin.qq.com/kfid/kfcb3d23a59c188a0e7"; // req.url = @"https://work.weixin.qq.com/kfid/kfcb3d23a59c188a0e7";
[WXApi sendReq:req completion:nil]; // [WXApi sendReq:req completion:nil];
id object = dict[@"data"];
if ([object isKindOfClass:[NSDictionary class]]) {
NSDictionary *dataDic = object;
NSString *userId = dataDic[@"user_id"];
NSString *userName = dataDic[@"user_name"];
[[QXGlobal shareGlobal] chatWithServices:userId nickname:userName avatar:@"" navagationController:self.navigationController];
}
}else if ([dict[@"action"] isEqualToString:@"closeWeb"]) { }else if ([dict[@"action"] isEqualToString:@"closeWeb"]) {
if (self.contentWebView.canGoBack) { if (self.contentWebView.canGoBack) {
[self.contentWebView goBack]; [self.contentWebView goBack];

View File

@@ -72,10 +72,14 @@
self.categoryView.titleFont = [UIFont systemFontOfSize:12]; self.categoryView.titleFont = [UIFont systemFontOfSize:12];
self.categoryView.titleSelectedFont = [UIFont boldSystemFontOfSize:16]; self.categoryView.titleSelectedFont = [UIFont boldSystemFontOfSize:16];
self.categoryView.averageCellSpacingEnabled = NO; self.categoryView.averageCellSpacingEnabled = NO;
JXCategoryIndicatorImageView *indicatorView = [[JXCategoryIndicatorImageView alloc] init]; // JXCategoryIndicatorImageView *indicatorView = [[JXCategoryIndicatorImageView alloc] init];
indicatorView.indicatorImageView.image = [UIImage imageNamed:@"home_slider"]; // indicatorView.indicatorImageView.image = [UIImage imageNamed:@"home_slider"];
indicatorView.indicatorImageViewSize = CGSizeMake(58, 8); // indicatorView.indicatorImageViewSize = CGSizeMake(70, 8);
indicatorView.verticalMargin = 11; // indicatorView.verticalMargin = 11;
// self.categoryView.indicators = @[indicatorView];
JXCategoryIndicatorLineView *indicatorView = [[JXCategoryIndicatorLineView alloc] init];
indicatorView.indicatorWidth = 50;
indicatorView.indicatorColor = QXConfig.themeColor;
self.categoryView.indicators = @[indicatorView]; self.categoryView.indicators = @[indicatorView];
self.containerView = [[JXCategoryListContainerView alloc] initWithType:(JXCategoryListContainerType_ScrollView) delegate:self]; self.containerView = [[JXCategoryListContainerView alloc] initWithType:(JXCategoryListContainerType_ScrollView) delegate:self];
self.containerView.frame = CGRectMake(0, self.categoryView.bottom, SCREEN_WIDTH, SCREEN_HEIGHT-self.categoryView.bottom); self.containerView.frame = CGRectMake(0, self.categoryView.bottom, SCREEN_WIDTH, SCREEN_HEIGHT-self.categoryView.bottom);

View File

@@ -97,6 +97,10 @@
} }
} }
-(void)didClickSendCode:(UIButton *)sender{ -(void)didClickSendCode:(UIButton *)sender{
GetSmscodeType type = GetSmscodeTypeFindBindMobile;
if (self.haveMobile) {
GetSmscodeType type = GetSmscodeTypeFindChangeMobile;
}
if (sender == self.codeTextField.codeBtn) { if (sender == self.codeTextField.codeBtn) {
sender.userInteractionEnabled = NO; sender.userInteractionEnabled = NO;
if (self.accountTextField.textField.text.length < 11) { if (self.accountTextField.textField.text.length < 11) {
@@ -107,7 +111,6 @@
showToast(QXText(@"新手机号不能与旧手机号相同")); showToast(QXText(@"新手机号不能与旧手机号相同"));
return; return;
} }
GetSmscodeType type = GetSmscodeTypeFindChangeMobile;
MJWeakSelf MJWeakSelf
self.isNetworking = YES; self.isNetworking = YES;
[QXLoginNetwork getSmscodeWithMobile:self.accountTextField.textField.text [QXLoginNetwork getSmscodeWithMobile:self.accountTextField.textField.text
@@ -121,7 +124,6 @@
sender.userInteractionEnabled = YES; sender.userInteractionEnabled = YES;
}]; }];
}else{ }else{
GetSmscodeType type = GetSmscodeTypeFindChangeMobile;
NSString *oldMobile = [QXGlobal shareGlobal].loginModel.mobile; NSString *oldMobile = [QXGlobal shareGlobal].loginModel.mobile;
MJWeakSelf MJWeakSelf
sender.userInteractionEnabled = NO; sender.userInteractionEnabled = NO;

View File

@@ -1587,6 +1587,7 @@ NS_ASSUME_NONNULL_BEGIN
successBlock:(void (^)(NSArray* list))successBlock successBlock:(void (^)(NSArray* list))successBlock
failBlock:(void (^)(NSError * error, NSString * msg))failBlock; failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
@end @end

View File

@@ -48,6 +48,7 @@
@property (nonatomic,strong) UIButton *followBtn; @property (nonatomic,strong) UIButton *followBtn;
@property (nonatomic,strong) UIButton *playBtn; @property (nonatomic,strong) UIButton *playBtn;
@property (nonatomic,strong) UIButton *toRoomBtn;
@property (nonatomic,strong) QXUserCpDressView *cpDressView; @property (nonatomic,strong) QXUserCpDressView *cpDressView;
@property (nonatomic,strong) QXUserCpCardView *cpCardView; @property (nonatomic,strong) QXUserCpCardView *cpCardView;
@@ -247,9 +248,9 @@
self.guildBgImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"user_home_guild_bg"]]; self.guildBgImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"user_home_guild_bg"]];
[self.whiteBgView addSubview:self.guildBgImageView]; [self.whiteBgView addSubview:self.guildBgImageView];
[self.guildBgImageView mas_makeConstraints:^(MASConstraintMaker *make) { [self.guildBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(-8); make.left.equalTo(self.headerView.mas_right);
make.height.mas_equalTo(31); make.height.mas_equalTo(31);
make.top.mas_equalTo(6); make.bottom.equalTo(self.headerView).offset(-10);
make.width.mas_equalTo(94); make.width.mas_equalTo(94);
}]; }];
@@ -281,18 +282,35 @@
// [self.playBtn setTitle:QXText(@"私信") forState:(UIControlStateNormal)]; // [self.playBtn setTitle:QXText(@"私信") forState:(UIControlStateNormal)];
// [self.playBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateNormal)]; // [self.playBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateNormal)];
// self.playBtn.backgroundColor = RGB16(0x333333); // self.playBtn.backgroundColor = RGB16(0x333333);
self.playBtn.hidden = YES; self.playBtn.hidden = NO;
[self.playBtn setBackgroundImage:[UIImage imageNamed:@"expansion_call"] forState:(UIControlStateNormal)];
self.playBtn.titleLabel.font = [UIFont systemFontOfSize:14]; self.playBtn.titleLabel.font = [UIFont systemFontOfSize:14];
[self.playBtn addRoundedCornersWithRadius:12]; [self.playBtn addRoundedCornersWithRadius:12];
[self.playBtn addTarget:self action:@selector(playAction) forControlEvents:(UIControlEventTouchUpInside)]; [self.playBtn addTarget:self action:@selector(playAction) forControlEvents:(UIControlEventTouchUpInside)];
[self.whiteBgView addSubview:self.playBtn]; [self.whiteBgView addSubview:self.playBtn];
[self.playBtn mas_makeConstraints:^(MASConstraintMaker *make) { [self.playBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.equalTo(self.guildBgImageView.mas_left).offset(-6); make.right.mas_equalTo(-8);
make.width.mas_equalTo(59); make.width.mas_equalTo(59);
make.height.mas_equalTo(24); make.height.mas_equalTo(24);
make.centerY.equalTo(self.guildBgImageView).offset(-2); make.top.equalTo(self.whiteBgView).offset(6);
}]; }];
self.toRoomBtn = [[UIButton alloc] initWithFrame:CGRectMake(self.playBtn.left-6-91, self.whiteBgView.top+10, 91, 24)];
// [self.playBtn setTitle:QXText(@"私信") forState:(UIControlStateNormal)];
// [self.playBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateNormal)];
// self.playBtn.backgroundColor = RGB16(0x333333);
self.toRoomBtn.hidden = YES;
[self.toRoomBtn setBackgroundImage:[UIImage imageNamed:@"room_user_follow"] forState:(UIControlStateNormal)];
self.toRoomBtn.titleLabel.font = [UIFont systemFontOfSize:14];
[self.toRoomBtn addRoundedCornersWithRadius:12];
[self.toRoomBtn addTarget:self action:@selector(roomAction) forControlEvents:(UIControlEventTouchUpInside)];
[self.whiteBgView addSubview:self.toRoomBtn];
[self.toRoomBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.equalTo(self.playBtn.mas_left).offset(-6);
make.width.mas_equalTo(59);
make.height.mas_equalTo(24);
make.centerY.equalTo(self.playBtn);
}];
// self.nameLabel.text = @"张三"; // self.nameLabel.text = @"张三";
// self.idLabel.text = @"313213213"; // self.idLabel.text = @"313213213";
@@ -362,13 +380,15 @@
}]; }];
} }
-(void)playAction{ -(void)playAction{
[[QXGlobal shareGlobal] chatWithUserID:self.model.user_id nickname:self.model.nickname avatar:self.model.avatar navagationController:self.navigationController];
}
-(void)roomAction{
if (self.model.room_id.intValue > 0) { if (self.model.room_id.intValue > 0) {
// //
[[QXGlobal shareGlobal] joinRoomWithRoomId:self.model.room_id isRejoin:NO navagationController:self.navigationController]; [[QXGlobal shareGlobal] joinRoomWithRoomId:self.model.room_id isRejoin:NO navagationController:self.navigationController];
}else{
//
[[QXGlobal shareGlobal] chatWithUserID:self.model.user_id nickname:self.model.nickname avatar:self.model.avatar navagationController:self.navigationController];
} }
} }
-(void)didClickHeaderViewUserId:(NSString*)userId{ -(void)didClickHeaderViewUserId:(NSString*)userId{
if ([userId isEqualToString:self.userId]) { if ([userId isEqualToString:self.userId]) {
@@ -478,16 +498,19 @@
if ([model.user_id isEqualToString:[QXGlobal shareGlobal].loginModel.user_id]) { if ([model.user_id isEqualToString:[QXGlobal shareGlobal].loginModel.user_id]) {
self.followBtn.hidden = YES; self.followBtn.hidden = YES;
self.playBtn.hidden = YES; self.playBtn.hidden = YES;
self.toRoomBtn.hidden = YES;
}else{ }else{
self.followBtn.hidden = NO; self.followBtn.hidden = NO;
self.playBtn.hidden = NO; self.playBtn.hidden = NO;
self.followBtn.selected = model.is_follow==0?NO:YES; self.followBtn.selected = model.is_follow==0?NO:YES;
if (model.room_id.intValue > 0) { if (model.room_id.intValue > 0) {
// [self.playBtn setTitle:QXText(@"跟随") forState:(UIControlStateNormal)]; // [self.playBtn setTitle:QXText(@"跟随") forState:(UIControlStateNormal)];
[self.playBtn setBackgroundImage:[UIImage imageNamed:@"room_user_follow"] forState:(UIControlStateNormal)]; // [self.playBtn setBackgroundImage:[UIImage imageNamed:@"room_user_follow"] forState:(UIControlStateNormal)];
self.toRoomBtn.hidden = NO;
}else{ }else{
// [self.playBtn setTitle:QXText(@"私信") forState:(UIControlStateNormal)]; // [self.playBtn setTitle:QXText(@"私信") forState:(UIControlStateNormal)];
[self.playBtn setBackgroundImage:[UIImage imageNamed:@"expansion_call"] forState:(UIControlStateNormal)]; // [self.playBtn setBackgroundImage:[UIImage imageNamed:@"expansion_call"] forState:(UIControlStateNormal)];
self.toRoomBtn.hidden = YES;
} }
} }
if ([model.guild_name isExist]) { if ([model.guild_name isExist]) {

View File

@@ -26,6 +26,8 @@
@property (nonatomic,strong)UITapGestureRecognizer *tap; @property (nonatomic,strong)UITapGestureRecognizer *tap;
@property (nonatomic,strong)NSMutableArray *rechargeDataArray; @property (nonatomic,strong)NSMutableArray *rechargeDataArray;
@property (nonatomic,strong)NSMutableArray *payTypeArray; @property (nonatomic,strong)NSMutableArray *payTypeArray;
@property (nonatomic,strong)UIButton *selectedBtn;
@property (nonatomic,strong)UIButton *agreementBtn;
@end @end
@implementation QXRechargeView @implementation QXRechargeView
@@ -74,16 +76,54 @@
make.bottom.mas_equalTo(-kSafeAreaBottom); make.bottom.mas_equalTo(-kSafeAreaBottom);
}]; }];
self.agreementBtn = [[UIButton alloc] init];
[self.agreementBtn setTitleColor:RGB16(0x333333) forState:(UIControlStateNormal)];
self.agreementBtn.titleLabel.font = [UIFont systemFontOfSize:12];
NSString *s = @"我已阅读并同意《充值协议》";
NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:s];
[attr yy_setColor:QXConfig.themeColor range:[s rangeOfString:@"《充值协议》"]];
[self.agreementBtn addTarget:self action:@selector(agreementPreview) forControlEvents:(UIControlEventTouchUpInside)];
[self.agreementBtn setAttributedTitle:attr forState:(UIControlStateNormal)];
[self.bgView addSubview:self.agreementBtn];
[self.agreementBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.bgView).offset(15);
make.bottom.equalTo(self.rechargeBtn.mas_top).offset(-10);
make.height.mas_equalTo(20);
}];
self.selectedBtn = [[UIButton alloc] init];
[self.selectedBtn setImage:[UIImage imageNamed:@"login_agreement_nor"] forState:(UIControlStateNormal)];
[self.selectedBtn setImage:[UIImage imageNamed:@"login_agreement_sel"] forState:(UIControlStateSelected)];
self.selectedBtn.selected = YES;
[self.selectedBtn addTarget:self action:@selector(agreeAction) forControlEvents:(UIControlEventTouchUpInside)];
[self.bgView addSubview:self.selectedBtn];
[self.selectedBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.width.mas_equalTo(30);
make.right.equalTo(self.agreementBtn.mas_left).offset(-5);
make.centerY.equalTo(self.agreementBtn);
}];
[self.collectionView mas_makeConstraints:^(MASConstraintMaker *make) { [self.collectionView mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(0); make.right.mas_equalTo(0);
make.left.mas_equalTo(0); make.left.mas_equalTo(0);
make.top.equalTo(self.bgView); make.top.equalTo(self.bgView);
make.bottom.equalTo(self.rechargeBtn.mas_top).offset(-10); make.bottom.equalTo(self.selectedBtn.mas_top).offset(-10);
}]; }];
[self getRechargeList]; [self getRechargeList];
} }
-(void)agreeAction{
self.selectedBtn.selected = !self.selectedBtn.selected;
}
-(void)agreementPreview{
QXBaseWebViewController*vc = [[QXBaseWebViewController alloc] init];
vc.urlStr = [NSString stringWithFormat:@"%@api/Page/page_show?id=37",QXGlobal.shareGlobal.currentServer];
[KEYWINDOW.rootViewController presentViewController:vc animated:YES completion:nil];
}
-(void)getRechargeList{ -(void)getRechargeList{
if (QXGlobal.shareGlobal.isAppStore) { if (QXGlobal.shareGlobal.isAppStore) {
@@ -312,6 +352,10 @@
-(void)rechargeAction:(UIButton*)sender{ -(void)rechargeAction:(UIButton*)sender{
if (self.selectedBtn.selected == NO) {
showToast(@"我已阅读并同意充值协议");
return;
}
if (self.selectedModel == nil) { if (self.selectedModel == nil) {
showToast(@"请选择充值金额"); showToast(@"请选择充值金额");
return; return;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1010 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 354 KiB

After

Width:  |  Height:  |  Size: 511 KiB

View File

@@ -57,11 +57,13 @@ static NSString *const FaceAuthSecret = @"RqNCp7PoY77oJqVu9hFEDM0Ol2DNDQQQ97vy9C
static NSString *const FaceAuthLicense = @"P6N+VYfdu1Op5p+QwUGdI4y64PqOnxMzChX2SWWvrXjKi5gSKTKYnksyPYGpdDoEiZGUuvidfW3fJx0DHobAmD/MMpCxdzRyvyn4Z0d7Ccno6TEO2eigEbAOL4rrM8xZHE6+POuORUrmDjRR7yKwT6yVJoMa96ULUZ54tAHY5TAMBPhZad80QU40PM+28QcOtufSd6QQwyKyjM/vCo8gnR8v9lTewz7y7GWkISVoymwW8BQMIkvWEXiGoi6u3mCuj2gn7cwGcb2HCXvM0EIzSLgKSwMFrIKYVmbEQ0ZIwUqCAk7IJv5V2VyGPUc1VIli0lWWPhwaL+1kVhpPytiK5A=="; static NSString *const FaceAuthLicense = @"P6N+VYfdu1Op5p+QwUGdI4y64PqOnxMzChX2SWWvrXjKi5gSKTKYnksyPYGpdDoEiZGUuvidfW3fJx0DHobAmD/MMpCxdzRyvyn4Z0d7Ccno6TEO2eigEbAOL4rrM8xZHE6+POuORUrmDjRR7yKwT6yVJoMa96ULUZ54tAHY5TAMBPhZad80QU40PM+28QcOtufSd6QQwyKyjM/vCo8gnR8v9lTewz7y7GWkISVoymwW8BQMIkvWEXiGoi6u3mCuj2gn7cwGcb2HCXvM0EIzSLgKSwMFrIKYVmbEQ0ZIwUqCAk7IJv5V2VyGPUc1VIli0lWWPhwaL+1kVhpPytiK5A==";
/// 腾讯IM /// 腾讯IM
static NSInteger const TencentIMID = 1600096860; //static NSInteger const TencentIMID = 1600096860;
static NSInteger const TencentIMID = 1600096890;
static NSString *const TencentIMSecret = @"d9a5b8088ed39113d0c92ae434bc37528c4715c1f1d2eaedb172134eacd06103"; static NSString *const TencentIMSecret = @"d9a5b8088ed39113d0c92ae434bc37528c4715c1f1d2eaedb172134eacd06103";
//static NSString *const AddressOfMQTTServer = @"1.13.20.30"; //static NSString *const AddressOfMQTTServer = @"1.13.20.30";
static NSString *const AddressOfMQTTServer = @"yushengapi.qxyushen.top"; //static NSString *const AddressOfMQTTServer = @"yushengapi.qxyushen.top";
static NSString *const AddressOfMQTTServer = @"vsyusheng.qxhs.xyz";
static NSString *const RAddressOfMQTTServer = @"qixinghuishen.qxhs.xyz"; static NSString *const RAddressOfMQTTServer = @"qixinghuishen.qxhs.xyz";
static NSInteger const AddressOfMQTTPort = 1883; static NSInteger const AddressOfMQTTPort = 1883;

View File

@@ -27,10 +27,10 @@ static NSString* RH5ServerUrl = @"https://test.vespa.qxyushen.top/h5/";
//static NSString* H5ServerUrl = @"https://test.vespa.qxyushen.top/h5/"; //static NSString* H5ServerUrl = @"https://test.vespa.qxyushen.top/h5/";
//static NSString* ServerUrl = @"https://vespa.qxyushen.top/"; //static NSString* ServerUrl = @"https://vespa.qxyushen.top/";
//static NSString* H5ServerUrl = @"https://vespa.qxyushen.top/h5/"; //static NSString* H5ServerUrl = @"https://vespa.qxyushen.top/h5/";
//static NSString* ServerUrl = @"https://vsyusheng.qxhs.xyz/"; static NSString* ServerUrl = @"https://vsyusheng.qxhs.xyz/";
//static NSString* H5ServerUrl = @"https://vsyusheng.qxhs.xyz/h5/"; static NSString* H5ServerUrl = @"https://vsyusheng.qxhs.xyz/h5/";
static NSString* ServerUrl = @"https://yushengapi.qxyushen.top/"; //static NSString* ServerUrl = @"https://yushengapi.qxyushen.top/";
static NSString* H5ServerUrl = @"https://yushengapi.qxyushen.top/h5/"; //static NSString* H5ServerUrl = @"https://yushengapi.qxyushen.top/h5/";
static NSString* RServerUrl = @"https://details.qxhs.xyz/"; static NSString* RServerUrl = @"https://details.qxhs.xyz/";
static NSString* RH5ServerUrl = @"https://details.qxhs.xyz/h5/"; static NSString* RH5ServerUrl = @"https://details.qxhs.xyz/h5/";
#endif #endif
@@ -624,4 +624,6 @@ static NSString * QXRoomBarSeduction = @"api/BarRoom/liao_ta";
static NSString * QXRoomBarAsk = @"api/BarRoom/meeting_ta"; static NSString * QXRoomBarAsk = @"api/BarRoom/meeting_ta";
/// 小黑屋列表 /// 小黑屋列表
static NSString * QXRoomBarCabinRoomList = @"api/BarRoom/black_room_list"; static NSString * QXRoomBarCabinRoomList = @"api/BarRoom/black_room_list";
/// 获取平台客服id
static NSString * QXRoomServicesUserId = @"api/banner/app_customer_service";
#endif /* Api_h */ #endif /* Api_h */

View File

@@ -10,7 +10,7 @@
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@interface QXRoomViewController (Bar) @interface QXRoomViewController (Bar)
-(void)createCoinView;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@@ -6,8 +6,74 @@
// //
#import "QXRoomViewController+Bar.h" #import "QXRoomViewController+Bar.h"
#import "QXRechargeViewcController.h"
#import "QXMineNetwork.h"
@implementation QXRoomViewController (Bar) @implementation QXRoomViewController (Bar)
-(void)createCoinView{
self.coinView = [[UIView alloc] init];
self.coinView.backgroundColor = RGB16A(0x000000, 0.4);
[self.view addSubview:self.coinView];
[self.coinView mas_makeConstraints:^(MASConstraintMaker *make) {
make.bottom.equalTo(self.bottomView.mas_top).offset(-20);
make.right.mas_equalTo(-5);
make.width.mas_equalTo(100);
make.height.mas_equalTo(50);
}];
[self.coinView addRoundedCornersWithRadius:5];
self.coinImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"wallet_corn"]];
[self.coinView addSubview:self.coinImageView];
[self.coinImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(5);
make.height.width.mas_equalTo(25);
make.centerY.equalTo(self.coinView);
}];
self.coinLabel = [[UILabel alloc] init];
self.coinLabel.textColor = RGB16(0xffffff);
self.coinLabel.text = @"0";
self.coinLabel.textAlignment = NSTextAlignmentCenter;
self.coinLabel.font = [UIFont systemFontOfSize:10];
[self.coinView addSubview:self.coinLabel];
[self.coinLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.coinImageView.mas_right).offset(2);
make.right.equalTo(self.coinView.mas_right).offset(-5);
make.top.equalTo(self.coinView).offset(10);
}];
self.rechargeBtn = [[UIButton alloc] init];
[self.rechargeBtn setTitleColor:QXConfig.themeColor forState:(UIControlStateNormal)];
[self.rechargeBtn setTitle:@"充值" forState:(UIControlStateNormal)];
self.rechargeBtn.titleLabel.font = [UIFont systemFontOfSize:12];
[self.coinView addSubview:self.rechargeBtn];
[self.rechargeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.coinLabel);
make.right.equalTo(self.coinView).offset(-5);
make.bottom.equalTo(self.coinView).offset(-5);
make.height.mas_equalTo(20);
}];
UIButton *button = [[UIButton alloc] init];
[button addTarget:self action:@selector(rechargeAction) forControlEvents:(UIControlEventTouchUpInside)];;
[self.coinView addSubview:button];
[button mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.coinView);
}];
MJWeakSelf
[QXMineNetwork getWalletInfoSuccessBlock:^(NSString * _Nonnull coin, NSString * _Nonnull earnings, NSString * _Nonnull title, NSString * _Nonnull url) {
weakSelf.coinLabel.text = coin;
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
}];
}
-(void)rechargeAction{
QXRechargeViewcController *vc = [[QXRechargeViewcController alloc] init];
[self.navigationController pushViewController:vc animated:YES];
}
-(void)barRoomSeductionEffectWithModel:(QXRoomChatListModel*)model{ -(void)barRoomSeductionEffectWithModel:(QXRoomChatListModel*)model{
[self.seatContentView barRoomSeductionEffectWithModel:model]; [self.seatContentView barRoomSeductionEffectWithModel:model];
} }

View File

@@ -63,6 +63,12 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic,strong)QXMeetActivityView *meetView; @property (nonatomic,strong)QXMeetActivityView *meetView;
/// 任务待领取数量 /// 任务待领取数量
@property (nonatomic,strong)NSString *taskWaitDrawNum; @property (nonatomic,strong)NSString *taskWaitDrawNum;
@property (nonatomic,strong)UIView *coinView;
@property (nonatomic,strong)UIImageView *coinImageView;
@property (nonatomic,strong)UILabel *coinLabel;
@property (nonatomic,strong)UIButton *rechargeBtn;
-(void)configBottomTools; -(void)configBottomTools;
-(void)stopHWDMP4; -(void)stopHWDMP4;
-(void)playHWDMP4; -(void)playHWDMP4;

View File

@@ -41,6 +41,7 @@
#import "QXRoomViewController+Singer.h" #import "QXRoomViewController+Singer.h"
#import "QXRoomViewController+Sign.h" #import "QXRoomViewController+Sign.h"
#import "QXDrifNobilityJoinRoomView.h" #import "QXDrifNobilityJoinRoomView.h"
#import "QXRoomViewController+Bar.h"
@interface QXRoomViewController ()< @interface QXRoomViewController ()<
QXRoomBottomViewDelegate, QXRoomBottomViewDelegate,
@@ -479,6 +480,7 @@ QXUpSeatViewDelegate
make.top.equalTo(self.seatContentView.mas_bottom); make.top.equalTo(self.seatContentView.mas_bottom);
make.width.mas_equalTo(ScaleWidth(280)); make.width.mas_equalTo(ScaleWidth(280));
}]; }];
[self createCoinView];
}else{ }else{
self.bottomView.isCabinRoom = YES; self.bottomView.isCabinRoom = YES;
// //

View File

@@ -120,7 +120,7 @@
// [self.eventSwitch setOn:self.isOn animated:YES]; // [self.eventSwitch setOn:self.isOn animated:YES];
// }]; // }];
// //
[QXMineNetwork noAgreePKInvite:isOn?@"1":@"2" room_id:self.roomId successBlock:^(NSString * _Nonnull token) { [QXMineNetwork noAgreePKInvite:isOn?@"2":@"1" room_id:self.roomId successBlock:^(NSString * _Nonnull token) {
if (isOn) { if (isOn) {
[sender setOn:YES animated:YES]; [sender setOn:YES animated:YES];
}else{ }else{

View File

@@ -381,6 +381,7 @@
-(void)cabinAction{ -(void)cabinAction{
QXRoomBarCabinListView *cabinListView = [[QXRoomBarCabinListView alloc] init]; QXRoomBarCabinListView *cabinListView = [[QXRoomBarCabinListView alloc] init];
cabinListView.roomId = self.roomModel.room_info.room_id;
[cabinListView showInView:self.viewController.view]; [cabinListView showInView:self.viewController.view];
} }

View File

@@ -422,7 +422,7 @@
-(void)setTimeModel:(QXRoomRelationModel *)timeModel{ -(void)setTimeModel:(QXRoomRelationModel *)timeModel{
_timeModel = timeModel; _timeModel = timeModel;
[self.selectedBtn setTitleColor:QXConfig.themeColor forState:(UIControlStateSelected)]; [self.selectedBtn setTitleColor:QXConfig.themeColor forState:(UIControlStateSelected)];
[self.selectedBtn setTitleColor:RGB16(0xffffff) forState:(UIControlStateNormal)]; [self.selectedBtn setTitleColor:RGB16(0x333333) forState:(UIControlStateNormal)];
[self.selectedBtn setTitle:timeModel.name forState:(UIControlStateNormal)]; [self.selectedBtn setTitle:timeModel.name forState:(UIControlStateNormal)];
self.selectedBtn.layer.borderColor = RGB16(0xF1F2F3).CGColor; self.selectedBtn.layer.borderColor = RGB16(0xF1F2F3).CGColor;
self.selectedBtn.layer.borderWidth = 1; self.selectedBtn.layer.borderWidth = 1;

View File

@@ -55,7 +55,7 @@
CGFloat viewHeight = 40; CGFloat viewHeight = 40;
CGFloat spacing = 10; CGFloat spacing = 10;
CGFloat topMargin = 400; CGFloat topMargin = 460;
CGFloat width = 290; CGFloat width = 290;
for (int i = 0; i < 3; i++) { for (int i = 0; i < 3; i++) {

View File

@@ -169,7 +169,7 @@
showToast(@"抢头条成功"); showToast(@"抢头条成功");
[weakSelf hide]; [weakSelf hide];
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) { } failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
[weakSelf hide]; // [weakSelf hide];
showToast(msg); showToast(msg);
}]; }];
}else{ }else{

View File

@@ -89,7 +89,9 @@
}]; }];
} }
-(void)setRoomId:(NSString *)roomId{
_roomId = roomId;
}
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{ -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{

View File

@@ -6,15 +6,22 @@
// //
#import <UIKit/UIKit.h> #import <UIKit/UIKit.h>
typedef NS_ENUM(NSInteger) {
/// 撩他
QXSeductionAlertTypeSeduction = 0,
/// 小黑屋送礼物
QXSeductionAlertTypeSendGift = 1,
}QXSeductionAlertType;
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@interface QXSeductionAlertView : UIView @interface QXSeductionAlertView : UIView
@property (nonatomic,copy)void(^commitBlock)(void); @property (nonatomic,copy)void(^commitBlock)(BOOL isNoAlert);
@property (nonatomic,copy)void(^cancelBlock)(void); @property (nonatomic,copy)void(^cancelBlock)(void);
@property (nonatomic,strong)QXRoomPitModel *pitModel; @property (nonatomic,strong)QXRoomPitModel *pitModel;
@property (nonatomic,strong)QXGiftModel *giftModel;
@property (nonatomic,strong)NSString *sexy_coin; @property (nonatomic,strong)NSString *sexy_coin;
@property (nonatomic,strong)NSString *roomId; @property (nonatomic,strong)NSString *roomId;
@property (nonatomic,assign)QXSeductionAlertType alertType;
-(void)showInView:(UIView *)view; -(void)showInView:(UIView *)view;
-(void)hide; -(void)hide;

View File

@@ -123,13 +123,47 @@
[attr yy_setColor:QXConfig.themeColor range:[str rangeOfString:self.sexy_coin]]; [attr yy_setColor:QXConfig.themeColor range:[str rangeOfString:self.sexy_coin]];
self.messageLabel.attributedText = attr; self.messageLabel.attributedText = attr;
} }
- (void)setGiftModel:(QXGiftModel *)giftModel{
_giftModel = giftModel;
NSString *str = [NSString stringWithFormat:@"将送出 %@ 需要消费 %@个 金币。",giftModel.gift_name,giftModel.gift_price];
NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:str];
[attr yy_setColor:QXConfig.themeColor range:[str rangeOfString:giftModel.gift_name]];
[attr yy_setColor:QXConfig.themeColor range:[str rangeOfString:giftModel.gift_price]];
self.messageLabel.attributedText = attr;
}
-(void)noShowAction{ -(void)noShowAction{
self.noShowBtn.selected = !self.noShowBtn.selected; self.noShowBtn.selected = !self.noShowBtn.selected;
switch (self.alertType) {
case QXSeductionAlertTypeSeduction:{
[[NSUserDefaults standardUserDefaults] setBool:self.noShowBtn.isSelected forKey:kIsCloseSeductionAlert]; [[NSUserDefaults standardUserDefaults] setBool:self.noShowBtn.isSelected forKey:kIsCloseSeductionAlert];
[[NSUserDefaults standardUserDefaults] synchronize]; [[NSUserDefaults standardUserDefaults] synchronize];
}
break;
case QXSeductionAlertTypeSendGift:{
}
break;
default:
break;
}
} }
-(void)setAlertType:(QXSeductionAlertType)alertType{
_alertType = alertType;
switch (alertType) {
case QXSeductionAlertTypeSeduction:{
[self.noShowBtn setTitle:@" 以后不再提示" forState:(UIControlStateNormal)];
}
break;
case QXSeductionAlertTypeSendGift:{
[self.noShowBtn setTitle:@" 此交友小屋以后不再提示" forState:(UIControlStateNormal)];
}
break;
default:
break;
}
}
-(void)cancelAction{ -(void)cancelAction{
@@ -140,14 +174,26 @@
} }
-(void)commitAction{ -(void)commitAction{
if (self.commitBlock) { if (self.commitBlock) {
self.commitBlock(); self.commitBlock(self.noShowBtn.selected);
} }
[self hide]; switch (self.alertType) {
case QXSeductionAlertTypeSeduction:{
[QXMineNetwork roomSeductionWithRoomId:self.roomId to_user_id:self.pitModel.user_id type:@"1" successBlock:^(NSDictionary * _Nonnull dict) { [QXMineNetwork roomSeductionWithRoomId:self.roomId to_user_id:self.pitModel.user_id type:@"1" successBlock:^(NSDictionary * _Nonnull dict) {
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) { } failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
showToast(msg); showToast(msg);
}]; }];
}
break;
case QXSeductionAlertTypeSendGift:{
}
break;
default:
break;
}
[self hide];
} }
-(void)showInView:(UIView *)view{ -(void)showInView:(UIView *)view{

View File

@@ -9,6 +9,7 @@
#import "QXMineNetwork.h" #import "QXMineNetwork.h"
#import "UIView+FloatingAnimation.h" #import "UIView+FloatingAnimation.h"
#import "QXAgoraEngine.h" #import "QXAgoraEngine.h"
#import "QXSeductionAlertView.h"
@class QXRoomSeatBarCabinGiftView; @class QXRoomSeatBarCabinGiftView;
@interface QXRoomSeatBarCabinView()<QXRoomSeatBarCabinGiftViewDelegate> @interface QXRoomSeatBarCabinView()<QXRoomSeatBarCabinGiftViewDelegate>
// //
@@ -46,6 +47,8 @@
@property (nonatomic,strong)QXTimer *timer; @property (nonatomic,strong)QXTimer *timer;
@property (nonatomic,assign)long startTime; @property (nonatomic,assign)long startTime;
@property (nonatomic,assign)BOOL isNoAlert;
@end @end
@implementation QXRoomSeatBarCabinView @implementation QXRoomSeatBarCabinView
@@ -58,6 +61,7 @@
return self; return self;
} }
-(void)initSubviews{ -(void)initSubviews{
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(rechargeSuccess) name:noticeAlipayResult object:nil];
self.titleLabel = [[UILabel alloc] init]; self.titleLabel = [[UILabel alloc] init];
self.titleLabel.text = @"房间名称"; self.titleLabel.text = @"房间名称";
self.titleLabel.font = [UIFont systemFontOfSize:14]; self.titleLabel.font = [UIFont systemFontOfSize:14];
@@ -205,6 +209,9 @@
// self.audioBtn.tag = 21; // self.audioBtn.tag = 21;
// [self.audioBtn setImage:[UIImage imageNamed:@"room_event_mute_audio_nor"] forState:(UIControlStateNormal)]; // [self.audioBtn setImage:[UIImage imageNamed:@"room_event_mute_audio_nor"] forState:(UIControlStateNormal)];
// [self.audioBtn setImage:[UIImage imageNamed:@"room_event_mute_audio_sel"] forState:(UIControlStateSelected)]; // [self.audioBtn setImage:[UIImage imageNamed:@"room_event_mute_audio_sel"] forState:(UIControlStateSelected)];
} }
-(void)setRoomModel:(QXRoomModel *)roomModel{ -(void)setRoomModel:(QXRoomModel *)roomModel{
@@ -243,6 +250,10 @@
[self getGiftList]; [self getGiftList];
} }
-(void)rechargeSuccess{
[self getWallet];
}
-(void)getGiftList{ -(void)getGiftList{
MJWeakSelf MJWeakSelf
// [QXMineNetwork giftListWithLabel:@"99" roomId:self.roomModel.room_info.room_id successBlock:^(NSArray<QXGiftModel *> * _Nonnull list) { // [QXMineNetwork giftListWithLabel:@"99" roomId:self.roomModel.room_info.room_id successBlock:^(NSArray<QXGiftModel *> * _Nonnull list) {
@@ -277,14 +288,36 @@
} }
-(void)didSendGiftWithGiftModel:(QXGiftModel *)giftModel giftView:(QXRoomSeatBarCabinGiftView *)giftView{ -(void)didSendGiftWithGiftModel:(QXGiftModel *)giftModel giftView:(QXRoomSeatBarCabinGiftView *)giftView{
if (self.isNoAlert) {
[self sendGiftNetWorkWithGiftModel:giftModel giftView:giftView];
}else{
QXSeductionAlertView *seductionView = [[QXSeductionAlertView alloc] init];
seductionView.alertType = QXSeductionAlertTypeSendGift;
seductionView.roomId = self.roomModel.room_info.room_id;
seductionView.giftModel = giftModel;
[seductionView showInView:self.viewController.view];
__weak typeof(self) weakSelf = self;
seductionView.commitBlock = ^(BOOL isNoAlert) {
__strong typeof(weakSelf) strongSelf = weakSelf;
if (!strongSelf) return;
strongSelf.isNoAlert = isNoAlert;
[strongSelf sendGiftNetWorkWithGiftModel:giftModel giftView:giftView];
};
}
}
-(void)sendGiftNetWorkWithGiftModel:(QXGiftModel*)giftModel giftView:(QXRoomSeatBarCabinGiftView *)giftView{
NSString *to_uid = @""; NSString *to_uid = @"";
if ([self.roomModel.cp_user.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) { if ([self.roomModel.cp_user.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) {
to_uid = self.roomModel.cp_user.user_id1; to_uid = self.roomModel.cp_user.user_id1;
}else{ }else{
to_uid = self.roomModel.cp_user.user_id; to_uid = self.roomModel.cp_user.user_id;
} }
__weak typeof(self) weakSelf = self;
[QXMineNetwork roomSendGiftWithRoomId:self.roomModel.room_info.room_id gift_id:giftModel.gift_id gift_num:@"1" to_uid:to_uid heart_id:@"" type:@"1" pit_number:@"" gift_bag_id:giftModel.gift_bag successBlock:^(NSDictionary * _Nonnull dict) { [QXMineNetwork roomSendGiftWithRoomId:self.roomModel.room_info.room_id gift_id:giftModel.gift_id gift_num:@"1" to_uid:to_uid heart_id:@"" type:@"1" pit_number:@"" gift_bag_id:giftModel.gift_bag successBlock:^(NSDictionary * _Nonnull dict) {
__strong typeof(weakSelf) strongSelf = weakSelf;
if (!strongSelf) return;
[strongSelf getWallet];
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) { } failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
showToast(msg); showToast(msg);
}]; }];
@@ -295,6 +328,17 @@
[self giftViewShow:giftView]; [self giftViewShow:giftView];
}]; }];
} }
-(void)getWallet{
__weak typeof(self) weakSelf = self;
[QXMineNetwork getWalletInfoSuccessBlock:^(NSString * _Nonnull coin, NSString * _Nonnull earnings, NSString * _Nonnull title, NSString * _Nonnull url) {
__strong typeof(weakSelf) strongSelf = weakSelf;
if (!strongSelf) return;
QXRoomViewController *vc = (QXRoomViewController *)strongSelf.viewController;
vc.coinLabel.text = coin;
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
}];
}
-(void)giftViewShow:(QXRoomSeatBarCabinGiftView*)giftView{ -(void)giftViewShow:(QXRoomSeatBarCabinGiftView*)giftView{
QXGiftModel *gift = [self randomResultGift]; QXGiftModel *gift = [self randomResultGift];
@@ -420,6 +464,7 @@
_rightSeatView = nil; _rightSeatView = nil;
} }
[self stopTimer]; [self stopTimer];
[[NSNotificationCenter defaultCenter] removeObserver:self];
} }
-(NSMutableArray *)dataArray{ -(NSMutableArray *)dataArray{
if (!_dataArray) { if (!_dataArray) {

View File

@@ -296,18 +296,17 @@
-(void)everyOneFollowMe{ -(void)everyOneFollowMe{
NSInteger count = 0; NSInteger count = 0;
for (int i = 0 ; i < self.seatArray.count;i++) { for (int i = 0 ; i < 6;i++) {
id object = self.seatArray[i]; id object = self.seatArray[i];
if ([object isKindOfClass:[QXRoomSeatContentView class] ]) { if ([object isKindOfClass:[QXRoomSeatContentView class] ]) {
QXRoomSeatContentView *contentView = (QXRoomSeatContentView*)object; // QXRoomSeatContentView *contentView = (QXRoomSeatContentView*)object;
if (contentView.pitModel.user_id.longLongValue > 0 && ![contentView.pitModel.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) { // if (contentView.pitModel.user_id.longLongValue > 0 && ![contentView.pitModel.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) {
count++; // }
}
continue; continue;
} }
if ([object isKindOfClass:[QXRoomSeatBarSeatView class] ]) { if ([object isKindOfClass:[QXRoomSeatBarSeatView class] ]) {
QXRoomSeatBarSeatView *contentView = (QXRoomSeatBarSeatView*)object; QXRoomSeatBarSeatView *contentView = (QXRoomSeatBarSeatView*)object;
if (contentView.pitModel.user_id.longLongValue > 0 && ![contentView.pitModel.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) { if (contentView.contentView.pitModel.user_id.longLongValue > 0 && ![contentView.contentView.pitModel.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) {
count++; count++;
} }
continue; continue;
@@ -368,6 +367,7 @@
}]; }];
}else{ }else{
QXSeductionAlertView *seductionView = [[QXSeductionAlertView alloc] init]; QXSeductionAlertView *seductionView = [[QXSeductionAlertView alloc] init];
seductionView.alertType = QXSeductionAlertTypeSeduction;
seductionView.roomId = self.roomModel.room_info.room_id; seductionView.roomId = self.roomModel.room_info.room_id;
seductionView.sexy_coin = self.roomModel.room_info.sexy_coin; seductionView.sexy_coin = self.roomModel.room_info.sexy_coin;
seductionView.pitModel = pitModel; seductionView.pitModel = pitModel;
@@ -1042,14 +1042,15 @@
-(void)playSeductionEffectWithPlayImage:(NSString *)playImage isMute:(BOOL)isMute{ -(void)playSeductionEffectWithPlayImage:(NSString *)playImage isMute:(BOOL)isMute{
MJWeakSelf MJWeakSelf
if ([playImage hasPrefix:@"http"] || [playImage hasPrefix:@"https"]) { if ([playImage hasPrefix:@"http"] || [playImage hasPrefix:@"https"]) {
[weakSelf.mp4View stopHWDMP4];
[[QXRequset shareInstance] downloadVideoPlayerWithUrl:playImage completion:^(BOOL result, NSString * _Nonnull fileName) { [[QXRequset shareInstance] downloadVideoPlayerWithUrl:playImage completion:^(BOOL result, NSString * _Nonnull fileName) {
NSString *videoPath = [QXFileManager getGiftVideoPath:playImage.lastPathComponent]; NSString *videoPath = [QXFileManager getGiftVideoPath:playImage.lastPathComponent];
weakSelf.mp4View.hidden = NO; weakSelf.mp4View.hidden = NO;
[weakSelf.mp4View setMute:isMute];
[weakSelf.mp4View playHWDMP4:videoPath repeatCount:1 delegate:self]; [weakSelf.mp4View playHWDMP4:videoPath repeatCount:1 delegate:self];
}]; }];
// self.mp4View.hidden = NO; // self.mp4View.hidden = NO;
// NSString *videoPath = [[NSBundle mainBundle] pathForResource:@"zizi" ofType:@"mp4"]; // NSString *videoPath = [[NSBundle mainBundle] pathForResource:@"zizi" ofType:@"mp4"];
// [self.mp4View setMute:isMute];
// [self.mp4View playHWDMP4:videoPath repeatCount:1 delegate:self]; // [self.mp4View playHWDMP4:videoPath repeatCount:1 delegate:self];
} }

View File

@@ -81,7 +81,7 @@
make.height.equalTo(self.noUserImageView.mas_width); make.height.equalTo(self.noUserImageView.mas_width);
}]; }];
[self insertSubview:self.micSvgaView belowSubview:self.headerView]; [self insertSubview:self.micSvgaView aboveSubview:self.headerView];
[self.micSvgaView mas_remakeConstraints:^(MASConstraintMaker *make) { [self.micSvgaView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.left.top.equalTo(self.headerView).offset(-10); make.left.top.equalTo(self.headerView).offset(-10);
make.right.bottom.equalTo(self.headerView).offset(10); make.right.bottom.equalTo(self.headerView).offset(10);

View File

@@ -643,6 +643,7 @@ QXRoomSeatDelegate
QXRoomPitModel *model = self.dataArray[indexPath.row]; QXRoomPitModel *model = self.dataArray[indexPath.row];
cell.seatContentView.pitModel = model; cell.seatContentView.pitModel = model;
cell.seatContentView.delegate = self; cell.seatContentView.delegate = self;
[cell.seatContentView stopAudioAnimation];
return cell; return cell;
} }
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{ -(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{

View File

@@ -81,6 +81,9 @@
[self giftAction]; [self giftAction];
} }
-(void)addGiftModelList:(NSArray<QXGiftScrollModel *> *)list{ -(void)addGiftModelList:(NSArray<QXGiftScrollModel *> *)list{
if (self.isClose) {
return;
}
[self.dataArray addObjectsFromArray:list]; [self.dataArray addObjectsFromArray:list];
[self giftAction]; [self giftAction];
} }

View File

@@ -94,7 +94,9 @@
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) { } fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
if (complete) {
complete(msg,QXCOSUploadImageFailed);
}
}]; }];
} }
@@ -165,7 +167,9 @@
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) { } fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
if (complete) {
complete(msg,QXCOSUploadImageFailed);
}
}]; }];
} }
@@ -262,7 +266,9 @@
} }
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) { } fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
if (complete) {
complete(msg,QXCOSUploadImageFailed);
}
}]; }];
} }
@@ -347,7 +353,9 @@
} }
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) { } fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
if (complete) {
complete(msg,QXCOSUploadImageFailed);
}
}]; }];
} }
- (NSString *)currentDate { - (NSString *)currentDate {

View File

@@ -454,9 +454,11 @@ static NSInteger toSlowCount = 4;
if (self.isOpenSpecial) { if (self.isOpenSpecial) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
}else{ }else{
NSString *path = [[NSBundle mainBundle] pathForResource:@"no_animate_draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"no_animate_draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
} }
} }
-(void)soundAction:(UIButton*)sender{ -(void)soundAction:(UIButton*)sender{
@@ -465,9 +467,11 @@ static NSInteger toSlowCount = 4;
if (self.isOpenSpecial) { if (self.isOpenSpecial) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
}else{ }else{
NSString *path = [[NSBundle mainBundle] pathForResource:@"no_animate_draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"no_animate_draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
} }
} }
-(void)startAction:(QXSkyDrawBtn*)sender{ -(void)startAction:(QXSkyDrawBtn*)sender{
@@ -542,6 +546,7 @@ static NSInteger toSlowCount = 4;
0.01 * NSEC_PER_SEC); 0.01 * NSEC_PER_SEC);
if (self.isOpenSound) { if (self.isOpenSound) {
[self.player seekToTime:CMTimeMake(0, 1)]; [self.player seekToTime:CMTimeMake(0, 1)];
self.player.volume = 0.2;
[self.player play]; [self.player play];
} }
__weak typeof(self) weakSelf = self; __weak typeof(self) weakSelf = self;
@@ -606,9 +611,9 @@ static NSInteger toSlowCount = 4;
for (NSNumber *index in targetArrayIndex) { for (NSNumber *index in targetArrayIndex) {
if (newCurrentIndex == index.integerValue) { if (newCurrentIndex == index.integerValue) {
QXSkyPraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue]; QXSkyPraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES; // targetGiftView.isSelected = YES;
targetGiftView.resultView.hidden = NO; targetGiftView.resultView.hidden = NO;
[targetGiftView startPulseAnimationWithLayer]; // [targetGiftView startPulseAnimationWithLayer];
// 线 // 线
[strongSelfInMain.targetArrayIndex removeObject:index]; [strongSelfInMain.targetArrayIndex removeObject:index];
@@ -626,6 +631,11 @@ static NSInteger toSlowCount = 4;
strongSelfInMain.isDrawing = NO; strongSelfInMain.isDrawing = NO;
[strongSelfInMain stopFastAnimate]; [strongSelfInMain stopFastAnimate];
[strongSelfInMain animateFinishedSendGift]; [strongSelfInMain animateFinishedSendGift];
for (NSNumber *index in strongSelfInMain.finishTargetArrayIndex) {
QXSkyPraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES;
[targetGiftView startPulseAnimationWithLayer];
}
} }
} else { } else {
// 使访 // 使访
@@ -722,6 +732,7 @@ static NSInteger toSlowCount = 4;
if (!_player) { if (!_player) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
} }
return _player; return _player;
} }
@@ -882,6 +893,7 @@ static NSInteger toSlowCount = 4;
} }
- (void)startPulseAnimationWithLayer { - (void)startPulseAnimationWithLayer {
[self setIsSelected:YES];
CABasicAnimation *pulseAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"]; CABasicAnimation *pulseAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
pulseAnimation.duration = 0.5; pulseAnimation.duration = 0.5;
pulseAnimation.fromValue = @0.9; pulseAnimation.fromValue = @0.9;

View File

@@ -546,6 +546,7 @@ static NSInteger toSlowCount = 4;
0.01 * NSEC_PER_SEC); 0.01 * NSEC_PER_SEC);
if (self.isOpenSound) { if (self.isOpenSound) {
[self.player seekToTime:CMTimeMake(0, 1)]; [self.player seekToTime:CMTimeMake(0, 1)];
_player.volume = 0.2;
[self.player play]; [self.player play];
} }
__weak typeof(self) weakSelf = self; __weak typeof(self) weakSelf = self;
@@ -607,9 +608,9 @@ static NSInteger toSlowCount = 4;
for (NSNumber *index in targetArrayIndex) { for (NSNumber *index in targetArrayIndex) {
if (newCurrentIndex == index.integerValue) { if (newCurrentIndex == index.integerValue) {
QXAgePraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue]; QXAgePraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES; // targetGiftView.isSelected = YES;
targetGiftView.resultView.hidden = NO; targetGiftView.resultView.hidden = NO;
[targetGiftView startPulseAnimationWithLayer]; // [targetGiftView startPulseAnimationWithLayer];
// 线 // 线
[strongSelfInMain.targetArrayIndex removeObject:index]; [strongSelfInMain.targetArrayIndex removeObject:index];
@@ -627,6 +628,11 @@ static NSInteger toSlowCount = 4;
strongSelfInMain.isDrawing = NO; strongSelfInMain.isDrawing = NO;
[strongSelfInMain stopFastAnimate]; [strongSelfInMain stopFastAnimate];
[strongSelfInMain animateFinishedSendGift]; [strongSelfInMain animateFinishedSendGift];
for (NSNumber *index in strongSelfInMain.finishTargetArrayIndex) {
QXSkyPraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES;
[targetGiftView startPulseAnimationWithLayer];
}
} }
} else { } else {
// 使访 // 使访
@@ -711,6 +717,7 @@ static NSInteger toSlowCount = 4;
if (!_player) { if (!_player) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"]; NSString *path = [[NSBundle mainBundle] pathForResource:@"draw_music" ofType:@"mp3"];
_player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]]; _player = [[AVPlayer alloc] initWithURL:[NSURL fileURLWithPath:path]];
_player.volume = 0.2;
} }
return _player; return _player;
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 93 KiB

View File

@@ -553,6 +553,7 @@ static NSInteger toSlowCount = 4;
0.01 * NSEC_PER_SEC); 0.01 * NSEC_PER_SEC);
if (self.isOpenSound) { if (self.isOpenSound) {
[self.player seekToTime:CMTimeMake(0, 1)]; [self.player seekToTime:CMTimeMake(0, 1)];
_player.volume = 0.2;
[self.player play]; [self.player play];
} }
__weak typeof(self) weakSelf = self; __weak typeof(self) weakSelf = self;
@@ -614,9 +615,9 @@ static NSInteger toSlowCount = 4;
for (NSNumber *index in targetArrayIndex) { for (NSNumber *index in targetArrayIndex) {
if (newCurrentIndex == index.integerValue) { if (newCurrentIndex == index.integerValue) {
QXTimePraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue]; QXTimePraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES; // targetGiftView.isSelected = YES;
targetGiftView.resultView.hidden = NO; targetGiftView.resultView.hidden = NO;
[targetGiftView startPulseAnimationWithLayer]; // [targetGiftView startPulseAnimationWithLayer];
// 线 // 线
[strongSelfInMain.targetArrayIndex removeObject:index]; [strongSelfInMain.targetArrayIndex removeObject:index];
@@ -634,6 +635,11 @@ static NSInteger toSlowCount = 4;
strongSelfInMain.isDrawing = NO; strongSelfInMain.isDrawing = NO;
[strongSelfInMain stopFastAnimate]; [strongSelfInMain stopFastAnimate];
[strongSelfInMain animateFinishedSendGift]; [strongSelfInMain animateFinishedSendGift];
for (NSNumber *index in strongSelfInMain.finishTargetArrayIndex) {
QXSkyPraizeSubView *targetGiftView = strongSelfInMain.allViewsArray[index.integerValue];
targetGiftView.isSelected = YES;
[targetGiftView startPulseAnimationWithLayer];
}
} }
} else { } else {
// 使访 // 使访

View File

@@ -11,7 +11,7 @@
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@interface TUIC2CChatViewController : TUIBaseChatViewController @interface TUIC2CChatViewController : TUIBaseChatViewController
@property (nonatomic,assign)BOOL isServices;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@@ -48,12 +48,16 @@
} }
-(void)viewWillAppear:(BOOL)animated{ -(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated]; [super viewWillAppear:animated];
if (self.isServices) {
self.bottomToolBtn.hidden = YES;
}else{
NSInteger isCanChat = [[NSUserDefaults standardUserDefaults] integerForKey:@"kIsCanChat"]; NSInteger isCanChat = [[NSUserDefaults standardUserDefaults] integerForKey:@"kIsCanChat"];
if (isCanChat != 1) { if (isCanChat != 1) {
self.bottomToolBtn.hidden = NO; self.bottomToolBtn.hidden = NO;
}else{ }else{
self.bottomToolBtn.hidden = YES; self.bottomToolBtn.hidden = YES;
} }
}
} }
-(void)viewDidLayoutSubviews{ -(void)viewDidLayoutSubviews{
[super viewDidLayoutSubviews]; [super viewDidLayoutSubviews];