Compare commits
5 Commits
5ab030701c
...
081aa5622c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
081aa5622c | ||
|
|
5548f5d6a5 | ||
|
|
705d891c51 | ||
|
|
d41d74dd8e | ||
|
|
796f64f5e3 |
@@ -754,7 +754,7 @@
|
|||||||
CODE_SIGN_ENTITLEMENTS = QXLive/QXLive.entitlements;
|
CODE_SIGN_ENTITLEMENTS = QXLive/QXLive.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 5;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEVELOPMENT_TEAM = 8798G5VMH9;
|
DEVELOPMENT_TEAM = 8798G5VMH9;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
@@ -793,7 +793,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(SDKROOT)/usr/lib/swift",
|
"$(SDKROOT)/usr/lib/swift",
|
||||||
);
|
);
|
||||||
MARKETING_VERSION = 1.1.16;
|
MARKETING_VERSION = 1.1.17;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.qxcm.qxlive;
|
PRODUCT_BUNDLE_IDENTIFIER = com.qxcm.qxlive;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
@@ -820,7 +820,7 @@
|
|||||||
CODE_SIGN_ENTITLEMENTS = QXLive/QXLive.entitlements;
|
CODE_SIGN_ENTITLEMENTS = QXLive/QXLive.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 5;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEVELOPMENT_TEAM = 8798G5VMH9;
|
DEVELOPMENT_TEAM = 8798G5VMH9;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
@@ -859,7 +859,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(SDKROOT)/usr/lib/swift",
|
"$(SDKROOT)/usr/lib/swift",
|
||||||
);
|
);
|
||||||
MARKETING_VERSION = 1.1.16;
|
MARKETING_VERSION = 1.1.17;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.qxcm.qxlive;
|
PRODUCT_BUNDLE_IDENTIFIER = com.qxcm.qxlive;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
去公会群聊
|
去公会群聊
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -65,6 +65,9 @@
|
|||||||
} fail:^(int code, NSString * _Nullable msg) {
|
} fail:^(int code, NSString * _Nullable msg) {
|
||||||
QXLOG(@"腾讯im退出登录失败");
|
QXLOG(@"腾讯im退出登录失败");
|
||||||
}];
|
}];
|
||||||
|
if (self.roomId) {
|
||||||
|
[self quitRoomWithRoomId:self.roomId removeListener:YES];
|
||||||
|
}
|
||||||
self.isLogin = NO;
|
self.isLogin = NO;
|
||||||
[self removeLocalData];
|
[self removeLocalData];
|
||||||
[self removeMemory];
|
[self removeMemory];
|
||||||
@@ -191,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];
|
||||||
@@ -306,7 +320,6 @@
|
|||||||
}
|
}
|
||||||
weakSelf.isClickJoinRoom = YES;
|
weakSelf.isClickJoinRoom = YES;
|
||||||
[QXMineNetwork beforeJoinRoomWithRoomId:roomId successBlock:^(NSDictionary * _Nonnull dict) {
|
[QXMineNetwork beforeJoinRoomWithRoomId:roomId successBlock:^(NSDictionary * _Nonnull dict) {
|
||||||
weakSelf.isClickJoinRoom = NO;
|
|
||||||
if (self != nil) {
|
if (self != nil) {
|
||||||
if (self->_miniView) {
|
if (self->_miniView) {
|
||||||
[self->_miniView removeFromSuperview];
|
[self->_miniView removeFromSuperview];
|
||||||
@@ -315,6 +328,7 @@
|
|||||||
}
|
}
|
||||||
[[QXRoomMessageManager shared] joinGroupWithRoomId:roomId];
|
[[QXRoomMessageManager shared] joinGroupWithRoomId:roomId];
|
||||||
[QXMineNetwork joinRoomWithRoomId:roomId successBlock:^(QXRoomModel * _Nonnull roomModel) {
|
[QXMineNetwork joinRoomWithRoomId:roomId successBlock:^(QXRoomModel * _Nonnull roomModel) {
|
||||||
|
weakSelf.isClickJoinRoom = NO;
|
||||||
if (weakSelf.roomId && ![weakSelf.roomId isEqualToString:roomId]) {
|
if (weakSelf.roomId && ![weakSelf.roomId isEqualToString:roomId]) {
|
||||||
[weakSelf quitRoomWithRoomId:weakSelf.roomId removeListener:NO];
|
[weakSelf quitRoomWithRoomId:weakSelf.roomId removeListener:NO];
|
||||||
}
|
}
|
||||||
@@ -329,10 +343,12 @@
|
|||||||
[navagationController pushViewController:weakSelf.roomVC animated:YES];
|
[navagationController pushViewController:weakSelf.roomVC animated:YES];
|
||||||
weakSelf.roomId = roomId;
|
weakSelf.roomId = roomId;
|
||||||
} roomErrorBlock:^(NSString * _Nonnull roomId, NSString * _Nonnull msg) {
|
} roomErrorBlock:^(NSString * _Nonnull roomId, NSString * _Nonnull msg) {
|
||||||
|
weakSelf.isClickJoinRoom = NO;
|
||||||
[weakSelf showAlertWithMessage:msg roomId:roomId];
|
[weakSelf showAlertWithMessage:msg roomId:roomId];
|
||||||
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
||||||
showToast(msg);
|
showToast(msg);
|
||||||
// hideLoadingInView(KEYWINDOW)
|
// hideLoadingInView(KEYWINDOW)
|
||||||
|
weakSelf.isClickJoinRoom = NO;
|
||||||
}];
|
}];
|
||||||
} roomErrorBlock:^(NSString * _Nonnull roomId, NSString * _Nonnull msg) {
|
} roomErrorBlock:^(NSString * _Nonnull roomId, NSString * _Nonnull msg) {
|
||||||
weakSelf.isClickJoinRoom = NO;
|
weakSelf.isClickJoinRoom = NO;
|
||||||
|
|||||||
@@ -394,7 +394,11 @@
|
|||||||
/// 2为背包
|
/// 2为背包
|
||||||
NSString *userId = [self.pitUserListView.selectedArray componentsJoinedByString:@","];
|
NSString *userId = [self.pitUserListView.selectedArray componentsJoinedByString:@","];
|
||||||
@weakify(self)
|
@weakify(self)
|
||||||
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:userId heart_id:self.heartId type:type pit_number:@"" successBlock:^(NSDictionary * _Nonnull dict) {
|
NSString *giftBag = @"";
|
||||||
|
if (self.giftModel.activities_id.intValue == 4) {
|
||||||
|
giftBag = self.giftModel.gift_bag;
|
||||||
|
}
|
||||||
|
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:userId heart_id:self.heartId type:type pit_number:@"" gift_bag_id:giftBag successBlock:^(NSDictionary * _Nonnull dict) {
|
||||||
@strongify(self)
|
@strongify(self)
|
||||||
if (type.intValue == 1) {
|
if (type.intValue == 1) {
|
||||||
if (self.roomSendSuccessBlock) {
|
if (self.roomSendSuccessBlock) {
|
||||||
@@ -438,7 +442,11 @@
|
|||||||
NSString *userId = [self.pitUserListView.selectedArray componentsJoinedByString:@","];
|
NSString *userId = [self.pitUserListView.selectedArray componentsJoinedByString:@","];
|
||||||
// NSString *type = self.categoryView.selectedIndex==0?@"2":@"1";
|
// NSString *type = self.categoryView.selectedIndex==0?@"2":@"1";
|
||||||
@weakify(self)
|
@weakify(self)
|
||||||
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:userId heart_id:self.heartId type:type pit_number:@"" successBlock:^(NSDictionary * _Nonnull dict) {
|
NSString *giftBag = @"";
|
||||||
|
if (self.giftModel.activities_id.intValue == 4) {
|
||||||
|
giftBag = self.giftModel.gift_bag;
|
||||||
|
}
|
||||||
|
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:userId heart_id:self.heartId type:type pit_number:@"" gift_bag_id:giftBag successBlock:^(NSDictionary * _Nonnull dict) {
|
||||||
@strongify(self)
|
@strongify(self)
|
||||||
if (type.intValue == 1) {
|
if (type.intValue == 1) {
|
||||||
|
|
||||||
@@ -1271,9 +1279,13 @@
|
|||||||
-(void)sendAction{
|
-(void)sendAction{
|
||||||
[self startAnimation];
|
[self startAnimation];
|
||||||
[[QXGlobal shareGlobal] vibrationFeedback];
|
[[QXGlobal shareGlobal] vibrationFeedback];
|
||||||
|
NSString *giftBag = @"";
|
||||||
|
if (self.giftModel.activities_id.intValue == 4) {
|
||||||
|
giftBag = self.giftModel.gift_bag;
|
||||||
|
}
|
||||||
switch (self.sendType) {
|
switch (self.sendType) {
|
||||||
case QXSendGiftViewTypeRoom:
|
case QXSendGiftViewTypeRoom:
|
||||||
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:self.userId heart_id:self.heartId type:@"1" pit_number:@"" successBlock:^(NSDictionary * _Nonnull dict) {
|
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:self.userId heart_id:self.heartId type:@"1" pit_number:@"" gift_bag_id:giftBag successBlock:^(NSDictionary * _Nonnull dict) {
|
||||||
|
|
||||||
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
||||||
showToast(msg)
|
showToast(msg)
|
||||||
@@ -1287,7 +1299,7 @@
|
|||||||
}];
|
}];
|
||||||
break;
|
break;
|
||||||
case QXSendGiftViewTypeFriend:
|
case QXSendGiftViewTypeFriend:
|
||||||
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:self.userId heart_id:self.heartId type:@"1" pit_number:@"" successBlock:^(NSDictionary * _Nonnull dict) {
|
[QXMineNetwork roomSendGiftWithRoomId:self.roomId gift_id:self.giftModel.gift_id gift_num:self.giftCount to_uid:self.userId heart_id:self.heartId type:@"1" pit_number:@"" gift_bag_id:giftBag successBlock:^(NSDictionary * _Nonnull dict) {
|
||||||
|
|
||||||
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
||||||
showToast(msg)
|
showToast(msg)
|
||||||
|
|||||||
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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}"];
|
||||||
@@ -561,7 +561,7 @@
|
|||||||
@"position":[NSNumber numberWithInteger:positionMs],
|
@"position":[NSNumber numberWithInteger:positionMs],
|
||||||
};
|
};
|
||||||
NSString *jsonStr = [dict jsonStringEncoded];
|
NSString *jsonStr = [dict jsonStringEncoded];
|
||||||
[[QXRoomMessageManager shared] sendChatMessage:jsonStr messageType:(QXRoomMessageTypeSongLrc) needInsertMessage:NO];
|
[[QXRoomMessageManager shared] sendChatMessage:jsonStr messageType:(QXRoomMessageTypeSongLrc) needInsertMessage:NO isSuperRoom:NO];
|
||||||
|
|
||||||
|
|
||||||
// if (self.roomInfo.is_xiangqin == 1){
|
// if (self.roomInfo.is_xiangqin == 1){
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
@@ -166,6 +166,15 @@ typedef NS_ENUM(NSInteger) {
|
|||||||
|
|
||||||
/// 爆币推送特效
|
/// 爆币推送特效
|
||||||
QXRoomMessageTypeCoinBoomEffect = 1100,
|
QXRoomMessageTypeCoinBoomEffect = 1100,
|
||||||
|
|
||||||
|
/// 撩人礼物特效
|
||||||
|
QXRoomMessageTypeSeductionEffect = 1200,
|
||||||
|
/// 约她成功
|
||||||
|
QXRoomMessageTypeJoinBarCabinRoom = 1201,
|
||||||
|
/// 收到要被抱上麦
|
||||||
|
QXRoomMessageTypeBarRoomHugPit = 1202,
|
||||||
|
/// 麦上用户设置了自定义礼物
|
||||||
|
QXRoomMessageTypeBarRoomSetCustomGift = 1203,
|
||||||
}QXRoomMessageType;
|
}QXRoomMessageType;
|
||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
@protocol QXRoomMessageManagerDelegate <NSObject>
|
@protocol QXRoomMessageManagerDelegate <NSObject>
|
||||||
@@ -176,7 +185,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
/// 根据用户userid 插入消息
|
/// 根据用户userid 插入消息
|
||||||
-(void)didInsertMessge:(QXRoomChatListModel*)message userId:(NSString*)userId;
|
-(void)didInsertMessge:(QXRoomChatListModel*)message userId:(NSString*)userId;
|
||||||
/// 上下麦
|
/// 上下麦
|
||||||
-(void)didUpDownSeatWithUser:(QXUserHomeModel*)user isUpSeat:(BOOL)isUpSeat pit_number:(NSInteger)pit_number isPK:(BOOL)isPK;
|
-(void)didUpDownSeatWithUser:(QXUserHomeModel*)user isUpSeat:(BOOL)isUpSeat pit_number:(NSInteger)pit_number isPK:(BOOL)isPK end_time:(NSString*)end_time;
|
||||||
/// 上麦模式发生变化 2 自由麦 | 1 排麦
|
/// 上麦模式发生变化 2 自由麦 | 1 排麦
|
||||||
-(void)aplayPitModeDidChanged:(NSString*)upMicType;
|
-(void)aplayPitModeDidChanged:(NSString*)upMicType;
|
||||||
/// 排麦人数发生变化
|
/// 排麦人数发生变化
|
||||||
@@ -323,6 +332,18 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
/// 主持邀请上签约麦
|
/// 主持邀请上签约麦
|
||||||
-(void)signSeatInviteWithUserId:(NSString*)userId content:(NSString*)content;
|
-(void)signSeatInviteWithUserId:(NSString*)userId content:(NSString*)content;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/// 酒吧房
|
||||||
|
/// 收到撩他特效
|
||||||
|
-(void)barRoomSeductionEffectWithModel:(QXRoomChatListModel*)model;
|
||||||
|
/// 需要进入小黑屋
|
||||||
|
-(void)barRoomJoinCabinRoomWithRoomId:(NSString*)room_id user_id:(NSString*)user_id meet_user_id:(NSString*)meet_user_id;
|
||||||
|
/// 收到要被抱上麦了
|
||||||
|
-(void)barRoomHugPitWithUserId:(NSString*)userId pit_number:(NSString*)pit_number;
|
||||||
|
/// 设置了自定义礼物
|
||||||
|
-(void)barRoomSetCustomGiftWithUserId:(NSString*)userId had_custom_gift:(BOOL)had_custom_gift;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
@interface QXRoomMessageManager : NSObject
|
@interface QXRoomMessageManager : NSObject
|
||||||
@property (nonatomic,weak)id<QXRoomMessageManagerDelegate>delegate;
|
@property (nonatomic,weak)id<QXRoomMessageManagerDelegate>delegate;
|
||||||
@@ -334,12 +355,16 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
/// 加入房间群组
|
/// 加入房间群组
|
||||||
-(void)joinGroupWithRoomId:(NSString*)roomId;
|
-(void)joinGroupWithRoomId:(NSString*)roomId;
|
||||||
|
|
||||||
|
-(void)joinExGroupWithRoomId:(NSString*)roomId;
|
||||||
|
/// 退出
|
||||||
|
-(void)quitExGroup;
|
||||||
|
|
||||||
/// 退出房间群组
|
/// 退出房间群组
|
||||||
-(void)quitGroupWithRoomId:(NSString*)roomId removeListener:(BOOL)removeListener;
|
-(void)quitGroupWithRoomId:(NSString*)roomId removeListener:(BOOL)removeListener;
|
||||||
|
/// 发送消息
|
||||||
-(void)sendChatMessage:(NSString *)message messageType:(QXRoomMessageType)messageType needInsertMessage:(BOOL)needInsertMessage;
|
-(void)sendChatMessage:(NSString *)message messageType:(QXRoomMessageType)messageType needInsertMessage:(BOOL)needInsertMessage isSuperRoom:(BOOL)isSuperRoom;
|
||||||
/// 发送表情
|
/// 发送表情
|
||||||
-(void)sendChatEmoji:(QXEmojiModel *)emoji;
|
-(void)sendChatEmoji:(QXEmojiModel *)emoji isSuperRoom:(BOOL)isSuperRoom;
|
||||||
|
|
||||||
-(void)sendC2CMessage:(NSString *)message messageType:(QXRoomMessageType)messageType userId:(NSString*)userId;
|
-(void)sendC2CMessage:(NSString *)message messageType:(QXRoomMessageType)messageType userId:(NSString*)userId;
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
@interface QXRoomMessageManager() <V2TIMGroupListener,V2TIMSimpleMsgListener,V2TIMAdvancedMsgListener>
|
@interface QXRoomMessageManager() <V2TIMGroupListener,V2TIMSimpleMsgListener,V2TIMAdvancedMsgListener>
|
||||||
@property (nonatomic,strong)NSString *groupId;
|
@property (nonatomic,strong)NSString *groupId;
|
||||||
@property (nonatomic,strong)NSString *roomId;
|
@property (nonatomic,strong)NSString *roomId;
|
||||||
|
@property (nonatomic,strong)NSString *exRoomId;
|
||||||
|
@property (nonatomic,strong)NSString *exGroupId;
|
||||||
@end
|
@end
|
||||||
@implementation QXRoomMessageManager
|
@implementation QXRoomMessageManager
|
||||||
+ (instancetype)shared {
|
+ (instancetype)shared {
|
||||||
@@ -60,6 +62,24 @@
|
|||||||
[QXLogger infoWithTag:@"房间日志" format:@"腾讯IM加入聊天室失败-code%d-原因%@",code,desc];
|
[QXLogger infoWithTag:@"房间日志" format:@"腾讯IM加入聊天室失败-code%d-原因%@",code,desc];
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
-(void)joinExGroupWithRoomId:(NSString *)roomId{
|
||||||
|
[[V2TIMManager sharedInstance] addGroupListener:self];
|
||||||
|
[[V2TIMManager sharedInstance] addAdvancedMsgListener:self];
|
||||||
|
NSString *exGroupId = [NSString stringWithFormat:@"room%@",roomId];
|
||||||
|
self.exGroupId = exGroupId;
|
||||||
|
self.exRoomId = roomId;
|
||||||
|
[[V2TIMManager sharedInstance] joinGroup:exGroupId msg:@"大家好,我来啦" succ:^{
|
||||||
|
QXLOG(@"腾讯IM小黑屋加入聊天室成功");
|
||||||
|
// weakSelf.groupId = groupId;
|
||||||
|
// weakSelf.roomId = roomId;
|
||||||
|
[QXLogger infoWithTag:@"房间日志" format:@"腾讯IM小黑屋加入聊天室成功房间id=%@",roomId];
|
||||||
|
} fail:^(int code, NSString *desc) {
|
||||||
|
// 加入群组失败
|
||||||
|
QXLOG(@"腾讯IM小黑屋加入聊天室失败-code%d-原因%@",code,desc);
|
||||||
|
[QXLogger infoWithTag:@"房间日志" format:@"腾讯IM小黑屋加入聊天室失败-code%d-原因%@",code,desc];
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
-(void)quitGroupWithRoomId:(NSString *)roomId removeListener:(BOOL)removeListener{
|
-(void)quitGroupWithRoomId:(NSString *)roomId removeListener:(BOOL)removeListener{
|
||||||
if (removeListener) {
|
if (removeListener) {
|
||||||
self.groupId = nil;
|
self.groupId = nil;
|
||||||
@@ -75,6 +95,10 @@
|
|||||||
|
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
-(void)quitExGroup{
|
||||||
|
self.exGroupId = nil;
|
||||||
|
self.exRoomId = nil;
|
||||||
|
}
|
||||||
// 新成员加入
|
// 新成员加入
|
||||||
-(void)onMemberEnter:(NSString *)groupID memberList:(NSArray<V2TIMGroupMemberInfo *> *)memberList{
|
-(void)onMemberEnter:(NSString *)groupID memberList:(NSArray<V2TIMGroupMemberInfo *> *)memberList{
|
||||||
|
|
||||||
@@ -103,7 +127,8 @@
|
|||||||
QXRoomMessage *msg = [QXRoomMessage yy_modelWithJSON:jsonStr];
|
QXRoomMessage *msg = [QXRoomMessage yy_modelWithJSON:jsonStr];
|
||||||
NSString *groupId = [NSString stringWithFormat:@"room%@",msg.RoomId];
|
NSString *groupId = [NSString stringWithFormat:@"room%@",msg.RoomId];
|
||||||
[QXLogger infoWithTag:@"推送日志" format:@"房间id=%@收到系统推送%@",msg.RoomId,jsonStr];
|
[QXLogger infoWithTag:@"推送日志" format:@"房间id=%@收到系统推送%@",msg.RoomId,jsonStr];
|
||||||
if ([groupId isEqualToString:self.groupId]) {
|
if ([groupId isEqualToString:self.groupId] || [groupId isEqualToString:self.exGroupId]) {
|
||||||
|
BOOL isSuperRoom = [self.exGroupId isEqualToString:groupId];
|
||||||
// 处理逻辑
|
// 处理逻辑
|
||||||
NSInteger meesageType = msg.MsgType.integerValue;
|
NSInteger meesageType = msg.MsgType.integerValue;
|
||||||
switch (meesageType) {
|
switch (meesageType) {
|
||||||
@@ -116,15 +141,17 @@
|
|||||||
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
model.messageType = QXRoomChatMessageTypeSystem;
|
model.messageType = QXRoomChatMessageTypeSystem;
|
||||||
NSString *jia_jia = [NSString stringWithFormat:@"%@",msg.Text[@"jia_jia"]];
|
NSString *jia_jia = [NSString stringWithFormat:@"%@",msg.Text[@"jia_jia"]];
|
||||||
if (([jia_jia hasPrefix:@"http"] || [jia_jia hasPrefix:@"https"]) && ([jia_jia hasSuffix:@"svga"] || [jia_jia hasSuffix:@"mp4"])) {
|
if (!isSuperRoom) {
|
||||||
// QXGiftModel *md = [[QXGiftModel alloc] init];
|
/// 酒吧房小黑屋不管大房间的特效
|
||||||
// md.play_image = jia_jia;
|
if (([jia_jia hasPrefix:@"http"] || [jia_jia hasPrefix:@"https"]) && ([jia_jia hasSuffix:@"svga"] || [jia_jia hasSuffix:@"mp4"])) {
|
||||||
[[QXGiftPlayerManager shareManager] displayChatEffectView:jia_jia];
|
[[QXGiftPlayerManager shareManager] displayChatEffectView:jia_jia];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ([model.FromUserInfo.enter_image isExist]) {
|
if ([model.FromUserInfo.enter_image isExist]) {
|
||||||
[[QXDrifNobilityJoinRoomView shareView] addNobilityUserModel:model];
|
[[QXDrifNobilityJoinRoomView shareView] addNobilityUserModel:model];
|
||||||
}
|
}
|
||||||
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];
|
||||||
}
|
}
|
||||||
if ([model.FromUserInfo.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) {
|
if ([model.FromUserInfo.user_id isEqualToString:QXGlobal.shareGlobal.loginModel.user_id]) {
|
||||||
@@ -146,11 +173,14 @@
|
|||||||
/// 收到礼物
|
/// 收到礼物
|
||||||
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
model.messageType = QXRoomChatMessageTypeGift;
|
model.messageType = QXRoomChatMessageTypeGift;
|
||||||
if ([model.GiftInfo.play_image isExist]) {
|
if (!isSuperRoom) {
|
||||||
NSArray *arr = [model.GiftInfo.play_image componentsSeparatedByString:@","];
|
/// 酒吧房小黑屋不管大房间的特效
|
||||||
[[QXGiftPlayerManager shareManager] displayFullEffectViewWithMorePlayImages:arr];
|
if ([model.GiftInfo.play_image isExist]) {
|
||||||
|
NSArray *arr = [model.GiftInfo.play_image componentsSeparatedByString:@","];
|
||||||
|
[[QXGiftPlayerManager shareManager] displayFullEffectViewWithMorePlayImages:arr];
|
||||||
|
}
|
||||||
|
[[QXGiftDisplayManager sharedManager] receiveGift:model];
|
||||||
}
|
}
|
||||||
[[QXGiftDisplayManager sharedManager] receiveGift:model];
|
|
||||||
if (model.ToUserInfos.count>0) {
|
if (model.ToUserInfos.count>0) {
|
||||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didRecieveGiftWithWithUserInfos:)]) {
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didRecieveGiftWithWithUserInfos:)]) {
|
||||||
[self.delegate didRecieveGiftWithWithUserInfos:model.ToUserInfos];
|
[self.delegate didRecieveGiftWithWithUserInfos:model.ToUserInfos];
|
||||||
@@ -164,6 +194,7 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -184,12 +215,13 @@
|
|||||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
||||||
if (!model.is_pk) {
|
if (!model.is_pk) {
|
||||||
// 非pk房间的消息插入公屏
|
// 非pk房间的消息插入公屏
|
||||||
|
model.isSuperRoom = isSuperRoom;
|
||||||
[self.delegate didInsertMessge:model];
|
[self.delegate didInsertMessge:model];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didUpDownSeatWithUser:isUpSeat:pit_number:isPK:)]) {
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didUpDownSeatWithUser:isUpSeat:pit_number:isPK:end_time:)]) {
|
||||||
NSString *pit_number = [NSString stringWithFormat:@"%@",msg.Text[@"pit_number"]];
|
NSString *pit_number = [NSString stringWithFormat:@"%@",msg.Text[@"pit_number"]];
|
||||||
[self.delegate didUpDownSeatWithUser:model.FromUserInfo isUpSeat:YES pit_number:pit_number.integerValue isPK:model.is_pk];
|
[self.delegate didUpDownSeatWithUser:model.FromUserInfo isUpSeat:YES pit_number:pit_number.integerValue isPK:model.is_pk end_time:model.end_time];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -200,12 +232,13 @@
|
|||||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
||||||
if (!model.is_pk) {
|
if (!model.is_pk) {
|
||||||
// 非pk房间的消息插入公屏
|
// 非pk房间的消息插入公屏
|
||||||
|
model.isSuperRoom = isSuperRoom;
|
||||||
[self.delegate didInsertMessge:model];
|
[self.delegate didInsertMessge:model];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didUpDownSeatWithUser:isUpSeat:pit_number:isPK:)]) {
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didUpDownSeatWithUser:isUpSeat:pit_number:isPK:end_time:)]) {
|
||||||
NSString *pit_number = [NSString stringWithFormat:@"%@",msg.Text[@"pit_number"]];
|
NSString *pit_number = [NSString stringWithFormat:@"%@",msg.Text[@"pit_number"]];
|
||||||
[self.delegate didUpDownSeatWithUser:model.FromUserInfo isUpSeat:NO pit_number:pit_number.integerValue isPK:model.is_pk];
|
[self.delegate didUpDownSeatWithUser:model.FromUserInfo isUpSeat:NO pit_number:pit_number.integerValue isPK:model.is_pk end_time:model.end_time];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -290,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -302,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -314,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -326,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -368,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -383,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -395,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -415,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -461,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -530,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -551,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -622,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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -688,8 +733,10 @@
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case QXRoomMessageTypeCpJoinRoom:{
|
case QXRoomMessageTypeCpJoinRoom:{
|
||||||
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
if (!isSuperRoom) {
|
||||||
[[QXGiftPlayerManager shareManager] displayCpEffectView:model];
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
|
[[QXGiftPlayerManager shareManager] displayCpEffectView:model];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case QXRoomMessageTypeStartSign:{
|
case QXRoomMessageTypeStartSign:{
|
||||||
@@ -744,10 +791,54 @@
|
|||||||
NSString *jia_jia = [NSString stringWithFormat:@"%@",msg.Text[@"play_image"]];
|
NSString *jia_jia = [NSString stringWithFormat:@"%@",msg.Text[@"play_image"]];
|
||||||
[[QXGiftPlayerManager shareManager] displayChatEffectView:jia_jia];
|
[[QXGiftPlayerManager shareManager] displayChatEffectView:jia_jia];
|
||||||
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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case QXRoomMessageTypeSeductionEffect:{
|
||||||
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
||||||
|
model.isSuperRoom = isSuperRoom;
|
||||||
|
[self.delegate didInsertMessge:model];
|
||||||
|
}
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(barRoomSeductionEffectWithModel:)]) {
|
||||||
|
[self.delegate barRoomSeductionEffectWithModel:model];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case QXRoomMessageTypeJoinBarCabinRoom:{
|
||||||
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didInsertMessge:)]) {
|
||||||
|
model.isSuperRoom = isSuperRoom;
|
||||||
|
[self.delegate didInsertMessge:model];
|
||||||
|
}
|
||||||
|
NSString *cabinRoomId = [NSString stringWithFormat:@"%@",msg.Text[@"room_id"]];
|
||||||
|
NSString *user_id = [NSString stringWithFormat:@"%@",msg.Text[@"user_id"]];
|
||||||
|
NSString *meet_user_id = [NSString stringWithFormat:@"%@",msg.Text[@"meet_user_id"]];
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(barRoomJoinCabinRoomWithRoomId:user_id:meet_user_id:)]) {
|
||||||
|
[self.delegate barRoomJoinCabinRoomWithRoomId:cabinRoomId user_id:user_id meet_user_id:meet_user_id];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case QXRoomMessageTypeBarRoomHugPit:{
|
||||||
|
NSString *user_id = [NSString stringWithFormat:@"%@",msg.Text[@"user_id"]];
|
||||||
|
NSString *pit_number = [NSString stringWithFormat:@"%@",msg.Text[@"pit_number"]];
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(barRoomHugPitWithUserId:pit_number:)]) {
|
||||||
|
[self.delegate barRoomHugPitWithUserId:user_id pit_number:pit_number];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case QXRoomMessageTypeBarRoomSetCustomGift:{
|
||||||
|
NSString *user_id = [NSString stringWithFormat:@"%@",msg.Text[@"user_id"]];
|
||||||
|
NSString *type = [NSString stringWithFormat:@"%@",msg.Text[@"type"]];
|
||||||
|
if (self.delegate && [self.delegate respondsToSelector:@selector(barRoomSetCustomGiftWithUserId:had_custom_gift:)]) {
|
||||||
|
[self.delegate barRoomSetCustomGiftWithUserId:user_id had_custom_gift:type.intValue==1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -871,12 +962,16 @@
|
|||||||
-(void)onRecvGroupCustomMessage:(NSString *)msgID groupID:(NSString *)groupID sender:(V2TIMGroupMemberInfo *)info customData:(NSData *)data{
|
-(void)onRecvGroupCustomMessage:(NSString *)msgID groupID:(NSString *)groupID sender:(V2TIMGroupMemberInfo *)info customData:(NSData *)data{
|
||||||
NSString *jsonStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
|
NSString *jsonStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
|
||||||
QXRoomMessage *msg = [QXRoomMessage yy_modelWithJSON:jsonStr];
|
QXRoomMessage *msg = [QXRoomMessage yy_modelWithJSON:jsonStr];
|
||||||
if ([groupID isEqualToString:self.groupId]) {
|
NSString *groupId = [NSString stringWithFormat:@"room%@",msg.RoomId];
|
||||||
|
[QXLogger infoWithTag:@"推送日志" format:@"房间id=%@收到系统推送%@",msg.RoomId,jsonStr];
|
||||||
|
if ([groupId isEqualToString:self.groupId] || [groupId isEqualToString:self.exGroupId]) {
|
||||||
|
BOOL isSuperRoom = [self.exGroupId isEqualToString:groupId];
|
||||||
NSInteger meesageType = msg.MsgType.integerValue;
|
NSInteger meesageType = msg.MsgType.integerValue;
|
||||||
if (meesageType == QXRoomMessageTypeText) {
|
if (meesageType == QXRoomMessageTypeText) {
|
||||||
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
model.messageType = QXRoomChatMessageTypeChat;
|
model.messageType = QXRoomChatMessageTypeChat;
|
||||||
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];
|
||||||
}
|
}
|
||||||
}else if (meesageType == QXRoomMessageTypeClearMessage) {
|
}else if (meesageType == QXRoomMessageTypeClearMessage) {
|
||||||
@@ -907,6 +1002,7 @@
|
|||||||
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
QXRoomChatListModel *model = [QXRoomChatListModel yy_modelWithJSON:msg.Text];
|
||||||
model.messageType = QXRoomChatMessageTypeEmoji;
|
model.messageType = QXRoomChatMessageTypeEmoji;
|
||||||
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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -914,9 +1010,9 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)sendChatMessage:(NSString *)message messageType:(QXRoomMessageType)messageType needInsertMessage:(BOOL)needInsertMessage{
|
-(void)sendChatMessage:(NSString *)message messageType:(QXRoomMessageType)messageType needInsertMessage:(BOOL)needInsertMessage isSuperRoom:(BOOL)isSuperRoom{
|
||||||
NSDictionary *dict = @{
|
NSDictionary *dict = @{
|
||||||
@"RoomId":self.roomId?self.roomId:@"",
|
@"RoomId":isSuperRoom?self.exRoomId?:@"":self.roomId?:@"",
|
||||||
@"MsgType":[NSNumber numberWithInteger:messageType],
|
@"MsgType":[NSNumber numberWithInteger:messageType],
|
||||||
@"Text":@{
|
@"Text":@{
|
||||||
@"FromUserInfo":@{
|
@"FromUserInfo":@{
|
||||||
@@ -945,22 +1041,23 @@
|
|||||||
model.FromUserInfo = userInfo;
|
model.FromUserInfo = userInfo;
|
||||||
model.messageType = QXRoomChatMessageTypeChat;
|
model.messageType = QXRoomChatMessageTypeChat;
|
||||||
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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NSString *jsonStr = [dict jsonStringEncoded];
|
NSString *jsonStr = [dict jsonStringEncoded];
|
||||||
NSData *data =[jsonStr dataUsingEncoding:NSUTF8StringEncoding];
|
NSData *data =[jsonStr dataUsingEncoding:NSUTF8StringEncoding];
|
||||||
[[V2TIMManager sharedInstance] sendGroupCustomMessage:data to:self.groupId priority:V2TIM_PRIORITY_NORMAL succ:^{
|
[[V2TIMManager sharedInstance] sendGroupCustomMessage:data to:isSuperRoom?self.exGroupId?:@"":self.groupId?:@"" priority:V2TIM_PRIORITY_NORMAL succ:^{
|
||||||
QXLOG(@"发送自定义消息成功");
|
QXLOG(@"发送自定义消息成功");
|
||||||
} fail:^(int code, NSString * _Nullable desc) {
|
} fail:^(int code, NSString * _Nullable desc) {
|
||||||
QXLOG(@"发送自定义消息失败");
|
QXLOG(@"发送自定义消息失败");
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
-(void)sendChatEmoji:(QXEmojiModel *)emoji{
|
|
||||||
|
|
||||||
|
-(void)sendChatEmoji:(QXEmojiModel *)emoji isSuperRoom:(BOOL)isSuperRoom{
|
||||||
NSDictionary *dict = @{
|
NSDictionary *dict = @{
|
||||||
@"RoomId":self.roomId?self.roomId:@"",
|
@"RoomId":isSuperRoom?self.exRoomId?:@"":self.roomId?:@"",
|
||||||
@"MsgType":[NSNumber numberWithInteger:QXRoomMessageTypeEmoji],
|
@"MsgType":[NSNumber numberWithInteger:QXRoomMessageTypeEmoji],
|
||||||
@"Text":@{
|
@"Text":@{
|
||||||
@"FromUserInfo":@{
|
@"FromUserInfo":@{
|
||||||
@@ -993,11 +1090,12 @@
|
|||||||
model.messageType = QXRoomChatMessageTypeEmoji;
|
model.messageType = QXRoomChatMessageTypeEmoji;
|
||||||
model.emoji = emoji;
|
model.emoji = emoji;
|
||||||
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];
|
||||||
}
|
}
|
||||||
NSString *jsonStr = [dict jsonStringEncoded];
|
NSString *jsonStr = [dict jsonStringEncoded];
|
||||||
NSData *data =[jsonStr dataUsingEncoding:NSUTF8StringEncoding];
|
NSData *data =[jsonStr dataUsingEncoding:NSUTF8StringEncoding];
|
||||||
[[V2TIMManager sharedInstance] sendGroupCustomMessage:data to:self.groupId priority:V2TIM_PRIORITY_NORMAL succ:^{
|
[[V2TIMManager sharedInstance] sendGroupCustomMessage:data to:isSuperRoom?self.exGroupId?:@"":self.groupId?:@"" priority:V2TIM_PRIORITY_NORMAL succ:^{
|
||||||
QXLOG(@"发送自定义消息成功");
|
QXLOG(@"发送自定义消息成功");
|
||||||
} fail:^(int code, NSString * _Nullable desc) {
|
} fail:^(int code, NSString * _Nullable desc) {
|
||||||
QXLOG(@"发送自定义消息失败");
|
QXLOG(@"发送自定义消息失败");
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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];
|
||||||
|
|||||||
@@ -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];
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
@@ -169,7 +169,7 @@
|
|||||||
UILabel *waterLabel = [[UILabel alloc] initWithFrame:CGRectMake(SCREEN_WIDTH-16-130, 0, SCREEN_WIDTH-130-32, 25)];
|
UILabel *waterLabel = [[UILabel alloc] initWithFrame:CGRectMake(SCREEN_WIDTH-16-130, 0, SCREEN_WIDTH-130-32, 25)];
|
||||||
waterLabel.font = [UIFont systemFontOfSize:13];
|
waterLabel.font = [UIFont systemFontOfSize:13];
|
||||||
waterLabel.textColor = [UIColor colorWithHexString:@"#333333"];
|
waterLabel.textColor = [UIColor colorWithHexString:@"#333333"];
|
||||||
NSString *total_earning = [NSString stringWithFormat:@"%.2f",model.total_earning];
|
NSString *total_earning = [NSString stringWithFormat:@"%.4f",model.total_earning];
|
||||||
NSString *total_price = [NSString stringWithFormat:@"%.2f",model.total_price];
|
NSString *total_price = [NSString stringWithFormat:@"%.2f",model.total_price];
|
||||||
NSString *s = [NSString stringWithFormat:@"收益 %@ 流水 %@",total_earning,total_price];
|
NSString *s = [NSString stringWithFormat:@"收益 %@ 流水 %@",total_earning,total_price];
|
||||||
NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:s];
|
NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:s];
|
||||||
@@ -181,6 +181,11 @@
|
|||||||
[waterLabel sizeToFit];
|
[waterLabel sizeToFit];
|
||||||
waterLabel.frame = CGRectMake(SCREEN_WIDTH-16-waterLabel.size.width, 0, waterLabel.size.width, 25);
|
waterLabel.frame = CGRectMake(SCREEN_WIDTH-16-waterLabel.size.width, 0, waterLabel.size.width, 25);
|
||||||
[header addSubview:waterLabel];
|
[header addSubview:waterLabel];
|
||||||
|
if (self.type == 1) {
|
||||||
|
waterLabel.hidden = YES;
|
||||||
|
}else{
|
||||||
|
waterLabel.hidden = NO;
|
||||||
|
}
|
||||||
return header;
|
return header;
|
||||||
}
|
}
|
||||||
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
|
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
@property (nonatomic,strong)NSString* startTime;
|
@property (nonatomic,strong)NSString* startTime;
|
||||||
@property (nonatomic,strong)NSString* endTime;
|
@property (nonatomic,strong)NSString* endTime;
|
||||||
|
@property (nonatomic,strong)NSString* last_id;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation QXCornRecordSubViewController
|
@implementation QXCornRecordSubViewController
|
||||||
@@ -32,7 +33,7 @@
|
|||||||
[dateBg addSubview:self.dateView];
|
[dateBg addSubview:self.dateView];
|
||||||
[self.view addSubview:dateBg];
|
[self.view addSubview:dateBg];
|
||||||
[self.view addSubview:self.tableView];
|
[self.view addSubview:self.tableView];
|
||||||
self.page = 1;
|
self.last_id = @"";
|
||||||
}
|
}
|
||||||
-(void)getData{
|
-(void)getData{
|
||||||
// [self.dataArray addObject:@""];
|
// [self.dataArray addObject:@""];
|
||||||
@@ -41,15 +42,17 @@
|
|||||||
// [self.tableView reloadData];
|
// [self.tableView reloadData];
|
||||||
//
|
//
|
||||||
__weak typeof(self) weakSelf = self;
|
__weak typeof(self) weakSelf = self;
|
||||||
[QXMineNetwork roomCoinOrDiamondDetailWithPage:self.page in_out_type:[NSString stringWithFormat:@"%ld",self.type+1] start_time:self.startTime end_time:self.endTime gift_type:[NSString stringWithFormat:@"%ld",self.waterType+1] successBlock:^(NSArray<QXCoinDetailModel *> * _Nonnull list) {
|
[QXMineNetwork roomCoinOrDiamondDetailWithLastId:self.last_id in_out_type:[NSString stringWithFormat:@"%ld",self.type+1] start_time:self.startTime end_time:self.endTime gift_type:[NSString stringWithFormat:@"%ld",self.waterType+1] successBlock:^(NSArray<QXCoinDetailModel *> * _Nonnull list) {
|
||||||
__strong typeof(weakSelf) strongSelf = weakSelf;
|
__strong typeof(weakSelf) strongSelf = weakSelf;
|
||||||
if (!strongSelf) {
|
if (!strongSelf) {
|
||||||
NSLog(@"⚠️ self has been deallocated, skipping hide operation");
|
NSLog(@"⚠️ self has been deallocated, skipping hide operation");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (strongSelf.page == 1) {
|
if (strongSelf.last_id.length == 0) {
|
||||||
[strongSelf.dataArray removeAllObjects];
|
[strongSelf.dataArray removeAllObjects];
|
||||||
}
|
}
|
||||||
|
QXCoinDetailModel *lastModel = list.lastObject;
|
||||||
|
weakSelf.last_id = lastModel.id;
|
||||||
[strongSelf.dataArray addObjectsFromArray:list];
|
[strongSelf.dataArray addObjectsFromArray:list];
|
||||||
[strongSelf.tableView reloadData];
|
[strongSelf.tableView reloadData];
|
||||||
if (list.count == 0) {
|
if (list.count == 0) {
|
||||||
@@ -83,7 +86,7 @@
|
|||||||
QXLOG(@"开始时间-%@ 结束时间-%@",startDateString,endDateString);
|
QXLOG(@"开始时间-%@ 结束时间-%@",startDateString,endDateString);
|
||||||
self.startTime = startDateString;
|
self.startTime = startDateString;
|
||||||
self.endTime = endDateString;
|
self.endTime = endDateString;
|
||||||
self.page = 1;
|
self.last_id = @"";
|
||||||
[self getData];
|
[self getData];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -106,11 +109,10 @@
|
|||||||
_tableView.rowHeight = UITableViewAutomaticDimension;
|
_tableView.rowHeight = UITableViewAutomaticDimension;
|
||||||
MJWeakSelf
|
MJWeakSelf
|
||||||
_tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
|
_tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
|
||||||
weakSelf.page = 1;
|
weakSelf.last_id = @"";
|
||||||
[weakSelf getData];
|
[weakSelf getData];
|
||||||
}];
|
}];
|
||||||
_tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingBlock:^{
|
_tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingBlock:^{
|
||||||
weakSelf.page++;
|
|
||||||
[weakSelf getData];
|
[weakSelf getData];
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,6 +22,8 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic,strong)NSString *remarks;
|
@property (nonatomic,strong)NSString *remarks;
|
||||||
/// 时间
|
/// 时间
|
||||||
@property (nonatomic,strong)NSString *createtime;
|
@property (nonatomic,strong)NSString *createtime;
|
||||||
|
/// 最后一个id
|
||||||
|
@property (nonatomic,strong)NSString *id;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,9 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic,strong)NSString *num;
|
@property (nonatomic,strong)NSString *num;
|
||||||
/// 礼物名称
|
/// 礼物名称
|
||||||
@property (nonatomic,strong)NSString *gift_name;
|
@property (nonatomic,strong)NSString *gift_name;
|
||||||
/// 礼物图片
|
/// 设置自定义礼物名称
|
||||||
|
@property (nonatomic,strong)NSString *gift_remark_name;
|
||||||
|
/// 礼物图片as
|
||||||
@property (nonatomic,strong)NSString *base_image;
|
@property (nonatomic,strong)NSString *base_image;
|
||||||
/// 礼物特效
|
/// 礼物特效
|
||||||
@property (nonatomic,strong)NSString *play_image;
|
@property (nonatomic,strong)NSString *play_image;
|
||||||
@@ -41,6 +43,9 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
/// 是否为师徒标签
|
/// 是否为师徒标签
|
||||||
@property (nonatomic,strong)NSString *is_teacher;
|
@property (nonatomic,strong)NSString *is_teacher;
|
||||||
|
|
||||||
|
/// 当前钱包余额
|
||||||
|
@property (nonatomic,strong)NSString *user_wallet_coin;
|
||||||
|
|
||||||
@property (nonatomic,assign)BOOL isSelected;
|
@property (nonatomic,assign)BOOL isSelected;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic,strong)NSString *room_cover;
|
@property (nonatomic,strong)NSString *room_cover;
|
||||||
/// 房间公告
|
/// 房间公告
|
||||||
@property (nonatomic,strong)NSString *room_intro;
|
@property (nonatomic,strong)NSString *room_intro;
|
||||||
/// 房间类型 type_id 1 点唱 2 拍卖 3男神 4女神 6小黑屋 7 交友房
|
/// 房间类型 type_id 1k歌+普通 2 拍卖 3男神 4女神 6小黑屋 7 交友房 9点唱 10签约房 11 酒吧房
|
||||||
@property (nonatomic,strong)NSString *type_id;
|
@property (nonatomic,strong)NSString *type_id;
|
||||||
/// 房间子类型 label_id 1聊天 2 k歌 拍卖时 1真爱 2亲密
|
/// 房间子类型 label_id 1聊天 2 k歌 拍卖时 1真爱 2亲密
|
||||||
@property (nonatomic,strong)NSString *label_id;
|
@property (nonatomic,strong)NSString *label_id;
|
||||||
@@ -82,6 +82,8 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic,strong)NSString *last_pk_room_id;
|
@property (nonatomic,strong)NSString *last_pk_room_id;
|
||||||
/// 排麦人数
|
/// 排麦人数
|
||||||
@property (nonatomic,strong)NSString *queue_number;
|
@property (nonatomic,strong)NSString *queue_number;
|
||||||
|
/// 酒吧房撩人所需金币数
|
||||||
|
@property (nonatomic,strong)NSString *sexy_coin;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
@@ -128,6 +130,11 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic,strong)NSString *nickname_color;
|
@property (nonatomic,strong)NSString *nickname_color;
|
||||||
|
|
||||||
@property (nonatomic,strong)NSString *is_online;
|
@property (nonatomic,strong)NSString *is_online;
|
||||||
|
/// 酒吧房
|
||||||
|
/// 酒吧房麦位时长
|
||||||
|
@property (nonatomic,strong)NSString *end_time;
|
||||||
|
/// 是否有设置自定义礼物 0 没设置 1已设置
|
||||||
|
@property (nonatomic,assign)NSInteger had_custom_gift;
|
||||||
|
|
||||||
@property (nonatomic,assign)BOOL isSelected;
|
@property (nonatomic,assign)BOOL isSelected;
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -140,6 +140,8 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
|
|
||||||
@property (nonatomic,strong)QXUserHomeModel *master;
|
@property (nonatomic,strong)QXUserHomeModel *master;
|
||||||
|
|
||||||
|
@property (nonatomic,assign)NSInteger had_custom_gift;
|
||||||
|
|
||||||
-(instancetype)copyModel;
|
-(instancetype)copyModel;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|||||||
21
QXLive/Mine(音域)/Model/酒吧房/QXRoomSeatTimeModel.h
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
//
|
||||||
|
// QXRoomSeatTimeModel.h
|
||||||
|
// QXLive
|
||||||
|
//
|
||||||
|
// Created by 启星 on 2026/1/6.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface QXRoomSeatTimeModel : NSObject
|
||||||
|
/// 时间
|
||||||
|
@property (nonatomic,strong)NSString *time;
|
||||||
|
/// 时间字符串
|
||||||
|
@property (nonatomic,strong)NSString *time_str;
|
||||||
|
|
||||||
|
@property (nonatomic,assign)BOOL isSelected;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
||||||
12
QXLive/Mine(音域)/Model/酒吧房/QXRoomSeatTimeModel.m
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
//
|
||||||
|
// QXRoomSeatTimeModel.m
|
||||||
|
// QXLive
|
||||||
|
//
|
||||||
|
// Created by 启星 on 2026/1/6.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "QXRoomSeatTimeModel.h"
|
||||||
|
|
||||||
|
@implementation QXRoomSeatTimeModel
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
#import "QXFamilyModel.h"
|
#import "QXFamilyModel.h"
|
||||||
#import "QXRoomActivityStatusModel.h"
|
#import "QXRoomActivityStatusModel.h"
|
||||||
#import "QXConfig.h"
|
#import "QXConfig.h"
|
||||||
|
#import "QXRoomSeatTimeModel.h"
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@@ -354,6 +355,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
heart_id:(NSString*)heart_id
|
heart_id:(NSString*)heart_id
|
||||||
type:(NSString*)type
|
type:(NSString*)type
|
||||||
pit_number:(NSString*)pit_number
|
pit_number:(NSString*)pit_number
|
||||||
|
gift_bag_id:(NSString*)gift_bag_id
|
||||||
successBlock:(void (^)(NSDictionary* dict))successBlock
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
@@ -378,6 +380,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
*/
|
*/
|
||||||
+(void)roomUpSeatWithRoomId:(NSString*)room_id
|
+(void)roomUpSeatWithRoomId:(NSString*)room_id
|
||||||
pit_number:(NSString*)pit_number
|
pit_number:(NSString*)pit_number
|
||||||
|
gift_id:(NSString*)gift_id
|
||||||
isUpSeat:(BOOL)isUpSeat
|
isUpSeat:(BOOL)isUpSeat
|
||||||
successBlock:(void (^)(NSDictionary* dict))successBlock
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
@@ -542,9 +545,19 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
已点歌曲列表
|
已点歌曲列表
|
||||||
*/
|
*/
|
||||||
+(void)roomSongListWithRoomId:(NSString*)room_id
|
+(void)roomSongListWithRoomId:(NSString*)room_id
|
||||||
|
search_user:(NSString*)search_user
|
||||||
successBlock:(void (^)(NSArray<QXSongListModel*>*list))successBlock
|
successBlock:(void (^)(NSArray<QXSongListModel*>*list))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
删除已点歌曲
|
||||||
|
*/
|
||||||
|
+(void)deleteRoomSongListWithRoomId:(NSString*)room_id
|
||||||
|
did:(NSString*)did
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
k歌房间 魅力排行
|
k歌房间 魅力排行
|
||||||
*/
|
*/
|
||||||
@@ -831,7 +844,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
gift_type 1金币,2收益(钻石)
|
gift_type 1金币,2收益(钻石)
|
||||||
in_out_type 1收入2支出
|
in_out_type 1收入2支出
|
||||||
*/
|
*/
|
||||||
+(void)roomCoinOrDiamondDetailWithPage:(NSInteger)page
|
+(void)roomCoinOrDiamondDetailWithLastId:(NSString*)last_id
|
||||||
in_out_type:(NSString*)in_out_type
|
in_out_type:(NSString*)in_out_type
|
||||||
start_time:(NSString*)start_time
|
start_time:(NSString*)start_time
|
||||||
end_time:(NSString*)end_time
|
end_time:(NSString*)end_time
|
||||||
@@ -1493,6 +1506,88 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
num:(NSString*)num
|
num:(NSString*)num
|
||||||
successBlock:(void (^)(NSDictionary* dict))successBlock
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#pragma mark - 酒吧房
|
||||||
|
/**
|
||||||
|
label 礼物标签(类型)不传返回所有礼物,拍卖 传99 酒吧房自定义礼物 14 酒吧房普通礼物15 酒吧房小黑屋礼物 16 酒吧房撩TA礼物17
|
||||||
|
type 类型位置:1-房间送礼礼物,2-排麦设置插麦礼物,3-拍卖位选择拍卖礼物,4-歌手添加歌单礼物,5-动态打赏礼物 6酒吧房
|
||||||
|
新礼物列表
|
||||||
|
*/
|
||||||
|
+(void)getRoomNewGiftListWithLabel:(NSString*)label
|
||||||
|
type:(NSString*)type
|
||||||
|
successBlock:(void (^)(NSArray<QXGiftModel*>* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
获取自定义礼物列表
|
||||||
|
*/
|
||||||
|
+(void)getRoomCustomGiftWithUserId:(NSString*)userId
|
||||||
|
successBlock:(void (^)(NSArray<QXGiftModel*>* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
设置自定义礼物
|
||||||
|
*/
|
||||||
|
+(void)setRoomCustomGiftWithGiftId:(NSString*)gift_id
|
||||||
|
roomId:(NSString*)roomId
|
||||||
|
newGiftName:(NSString*)new_gift_name
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
获取酒吧房麦位时间列表
|
||||||
|
*/
|
||||||
|
+(void)getRoomSeatTimeListSuccessBlock:(void (^)(NSArray<QXRoomSeatTimeModel*>* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
房间麦位时长设置
|
||||||
|
*/
|
||||||
|
+(void)setRoomSeatTimeWithRoomId:(NSString*)roomId
|
||||||
|
time:(NSString*)time
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
约Ta礼物详情
|
||||||
|
*/
|
||||||
|
+(void)roomAskUserGiftWithRoomId:(NSString*)roomId
|
||||||
|
toUserId:(NSString*)toUserId
|
||||||
|
successBlock:(void (^)(QXGiftModel* model))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
撩他
|
||||||
|
*/
|
||||||
|
+(void)roomSeductionWithRoomId:(NSString*)roomId
|
||||||
|
to_user_id:(NSString*)to_user_id
|
||||||
|
type:(NSString*)type
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
约他
|
||||||
|
*/
|
||||||
|
+(void)roomBarAskWithRoomId:(NSString*)roomId
|
||||||
|
user_id:(NSString*)user_id
|
||||||
|
gift_id:(NSString*)gift_id
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
/**
|
||||||
|
小黑屋列表
|
||||||
|
*/
|
||||||
|
+(void)roomBarCabinRoomListWithRoomId:(NSString*)roomId
|
||||||
|
successBlock:(void (^)(NSArray* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock;
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -617,7 +617,7 @@
|
|||||||
|
|
||||||
+(void)joinRoomWithRoomId:(NSString *)room_id successBlock:(nonnull void (^)(QXRoomModel * _Nonnull))successBlock roomErrorBlock:(nonnull void (^)(NSString * _Nonnull, NSString * _Nonnull))roomErrorBlock failBlock:(nonnull void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
+(void)joinRoomWithRoomId:(NSString *)room_id successBlock:(nonnull void (^)(QXRoomModel * _Nonnull))successBlock roomErrorBlock:(nonnull void (^)(NSString * _Nonnull, NSString * _Nonnull))roomErrorBlock failBlock:(nonnull void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@"room_id":room_id
|
@"room_id":room_id?:@""
|
||||||
};
|
};
|
||||||
[[QXRequset shareInstance] postWithUrl:QXJoinRoom parameters:parameters needCache:NO success:^(id responseObject) {
|
[[QXRequset shareInstance] postWithUrl:QXJoinRoom parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
int code = [responseObject[@"code"] intValue];
|
int code = [responseObject[@"code"] intValue];
|
||||||
@@ -719,6 +719,7 @@
|
|||||||
heart_id:(NSString*)heart_id
|
heart_id:(NSString*)heart_id
|
||||||
type:(NSString*)type
|
type:(NSString*)type
|
||||||
pit_number:(NSString*)pit_number
|
pit_number:(NSString*)pit_number
|
||||||
|
gift_bag_id:(NSString*)gift_bag_id
|
||||||
successBlock:(void (^)(NSDictionary* dict))successBlock
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@@ -728,7 +729,8 @@
|
|||||||
@"to_uid":to_uid?to_uid:@"",
|
@"to_uid":to_uid?to_uid:@"",
|
||||||
@"type":type?type:@"",
|
@"type":type?type:@"",
|
||||||
@"pit_number":pit_number?pit_number:@"",
|
@"pit_number":pit_number?pit_number:@"",
|
||||||
@"heart_id":heart_id?heart_id:@""
|
@"heart_id":heart_id?heart_id:@"",
|
||||||
|
@"gift_bag_id":gift_bag_id?:@"",
|
||||||
};
|
};
|
||||||
__block NSString *userId = to_uid;
|
__block NSString *userId = to_uid;
|
||||||
[[QXRequset shareInstance] postWithUrl:QXSendGift parameters:parameters needCache:NO success:^(id responseObject) {
|
[[QXRequset shareInstance] postWithUrl:QXSendGift parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
@@ -795,12 +797,14 @@
|
|||||||
|
|
||||||
+(void)roomUpSeatWithRoomId:(NSString*)room_id
|
+(void)roomUpSeatWithRoomId:(NSString*)room_id
|
||||||
pit_number:(NSString*)pit_number
|
pit_number:(NSString*)pit_number
|
||||||
|
gift_id:(NSString*)gift_id
|
||||||
isUpSeat:(BOOL)isUpSeat
|
isUpSeat:(BOOL)isUpSeat
|
||||||
successBlock:(void (^)(NSDictionary* dict))successBlock
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@"room_id":room_id,
|
@"room_id":room_id,
|
||||||
@"pit_number":pit_number?pit_number:@""
|
@"pit_number":pit_number?pit_number:@"",
|
||||||
|
@"gift_id":gift_id?:@""
|
||||||
};
|
};
|
||||||
[[QXRequset shareInstance] postWithUrl:isUpSeat?QXRoomUpSeat:QXRoomDownSeat parameters:parameters needCache:NO success:^(id responseObject) {
|
[[QXRequset shareInstance] postWithUrl:isUpSeat?QXRoomUpSeat:QXRoomDownSeat parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
if (successBlock) {
|
if (successBlock) {
|
||||||
@@ -1105,11 +1109,16 @@
|
|||||||
failBlock(error,msg);
|
failBlock(error,msg);
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
+(void)roomSongListWithRoomId:(NSString *)room_id successBlock:(void (^)(NSArray<QXSongListModel *> * _Nonnull))successBlock failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
+(void)roomSongListWithRoomId:(NSString *)room_id search_user:(NSString*)search_user successBlock:(void (^)(NSArray<QXSongListModel *> * _Nonnull))successBlock failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@"room_id":room_id,
|
@"room_id":room_id,
|
||||||
|
@"search_user":search_user?search_user:@""
|
||||||
};
|
};
|
||||||
[[QXRequset shareInstance] postWithUrl:QXRoomSongList parameters:parameters needCache:NO success:^(id responseObject) {
|
NSString *url = QXRoomSongList;
|
||||||
|
if (search_user.length>0) {
|
||||||
|
url = QXRoomSongListSearch;
|
||||||
|
}
|
||||||
|
[[QXRequset shareInstance] postWithUrl:url parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
if (successBlock) {
|
if (successBlock) {
|
||||||
NSArray *list = [NSArray yy_modelArrayWithClass:[QXSongListModel class] json:responseObject[@"data"]];
|
NSArray *list = [NSArray yy_modelArrayWithClass:[QXSongListModel class] json:responseObject[@"data"]];
|
||||||
successBlock(list);
|
successBlock(list);
|
||||||
@@ -1118,6 +1127,27 @@
|
|||||||
failBlock(error,msg);
|
failBlock(error,msg);
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
删除已点歌曲
|
||||||
|
*/
|
||||||
|
+(void)deleteRoomSongListWithRoomId:(NSString*)room_id
|
||||||
|
did:(NSString*)did
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":room_id,
|
||||||
|
@"did":did?did:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomSongListDelete parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
successBlock(responseObject[@"data"]);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
+(void)roomCharmRankListWithRoomId:(NSString *)room_id successBlock:(void (^)(NSArray<QXRoomPitModel *> * _Nonnull))successBlock failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
+(void)roomCharmRankListWithRoomId:(NSString *)room_id successBlock:(void (^)(NSArray<QXRoomPitModel *> * _Nonnull))successBlock failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@"room_id":room_id,
|
@"room_id":room_id,
|
||||||
@@ -1642,7 +1672,7 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
+(void)roomCoinOrDiamondDetailWithPage:(NSInteger)page
|
+(void)roomCoinOrDiamondDetailWithLastId:(NSString*)last_id
|
||||||
in_out_type:(NSString *)in_out_type
|
in_out_type:(NSString *)in_out_type
|
||||||
start_time:(NSString *)start_time
|
start_time:(NSString *)start_time
|
||||||
end_time:(NSString *)end_time
|
end_time:(NSString *)end_time
|
||||||
@@ -1650,11 +1680,11 @@
|
|||||||
successBlock:(void (^)(NSArray<QXCoinDetailModel *> * _Nonnull))successBlock
|
successBlock:(void (^)(NSArray<QXCoinDetailModel *> * _Nonnull))successBlock
|
||||||
failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
NSDictionary *parameters =@{
|
NSDictionary *parameters =@{
|
||||||
@"page":[NSNumber numberWithInteger:page],
|
@"last_id":last_id?:@"",
|
||||||
@"gift_type":gift_type?gift_type:@"",
|
@"gift_type":gift_type?gift_type:@"",
|
||||||
@"start_time":start_time?start_time:@"",
|
@"start_time":start_time?start_time:@"",
|
||||||
@"end_time":end_time?end_time:@"",
|
@"end_time":end_time?end_time:@"",
|
||||||
@"in_out_type":in_out_type?in_out_type:@""
|
@"in_out_type":in_out_type?in_out_type:@"",
|
||||||
};
|
};
|
||||||
[[QXRequset shareInstance] postWithUrl:QXRoomCoinDetail parameters:parameters needCache:NO success:^(id responseObject) {
|
[[QXRequset shareInstance] postWithUrl:QXRoomCoinDetail parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
if (successBlock) {
|
if (successBlock) {
|
||||||
@@ -3035,4 +3065,186 @@
|
|||||||
failBlock(error,msg);
|
failBlock(error,msg);
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark - 酒吧房
|
||||||
|
+(void)getRoomNewGiftListWithLabel:(NSString*)label
|
||||||
|
type:(NSString*)type
|
||||||
|
successBlock:(void (^)(NSArray<QXGiftModel *> * _Nonnull))successBlock
|
||||||
|
failBlock:(void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
|
[[QXRequset shareInstance] getWithUrl:QXRoomNewGiftList parameters:@{@"label":label?:@"",@"type":type?:@""} needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
NSArray*list = [NSArray yy_modelArrayWithClass:[QXGiftModel class] json:responseObject[@"data"]];
|
||||||
|
successBlock(list);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
获取自定义礼物列表
|
||||||
|
*/
|
||||||
|
+(void)getRoomCustomGiftWithUserId:(NSString*)userId
|
||||||
|
successBlock:(void (^)(NSArray<QXGiftModel*>* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"user_id":userId?:@"",
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] getWithUrl:QXRoomCustomGiftList parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
NSArray*list = [NSArray yy_modelArrayWithClass:[QXGiftModel class] json:responseObject[@"data"]];
|
||||||
|
successBlock(list);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
设置自定义礼物
|
||||||
|
*/
|
||||||
|
+(void)setRoomCustomGiftWithGiftId:(NSString*)gift_id
|
||||||
|
roomId:(NSString*)roomId
|
||||||
|
newGiftName:(NSString*)new_gift_name
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"gift_id":gift_id?:@"",
|
||||||
|
@"gift_remark_name":new_gift_name?:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomSetCustom parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
successBlock(responseObject[@"data"]);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
获取酒吧房麦位时间列表
|
||||||
|
*/
|
||||||
|
+(void)getRoomSeatTimeListSuccessBlock:(void (^)(NSArray<QXRoomSeatTimeModel*>* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
[[QXRequset shareInstance] getWithUrl:QXRoomSeatTimeList parameters:@{} needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
NSArray*list = [NSArray yy_modelArrayWithClass:[QXRoomSeatTimeModel class] json:responseObject[@"data"]];
|
||||||
|
successBlock(list);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
房间麦位时长设置
|
||||||
|
*/
|
||||||
|
+(void)setRoomSeatTimeWithRoomId:(NSString*)roomId
|
||||||
|
time:(NSString*)time
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":roomId?:@"",
|
||||||
|
@"time":time?:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomSetSeatTime parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
successBlock(responseObject[@"data"]);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
约Ta礼物详情
|
||||||
|
*/
|
||||||
|
+(void)roomAskUserGiftWithRoomId:(NSString*)roomId
|
||||||
|
toUserId:(NSString*)toUserId
|
||||||
|
successBlock:(void (^)(QXGiftModel* model))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":roomId?:@"",
|
||||||
|
@"to_user_id":toUserId?:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] getWithUrl:QXRoomGetSeatGift parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
QXGiftModel *model = [QXGiftModel yy_modelWithJSON:responseObject[@"data"]];
|
||||||
|
successBlock(model);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
撩他
|
||||||
|
*/
|
||||||
|
+(void)roomSeductionWithRoomId:(NSString*)roomId
|
||||||
|
to_user_id:(NSString*)to_user_id
|
||||||
|
type:(NSString*)type
|
||||||
|
successBlock:(void (^)(NSDictionary* dict))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":roomId?:@"",
|
||||||
|
@"to_user_id":to_user_id?:@"",
|
||||||
|
@"type":type?:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomBarSeduction parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
successBlock(responseObject[@"data"]);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
约她
|
||||||
|
*/
|
||||||
|
+(void)roomBarAskWithRoomId:(NSString *)roomId
|
||||||
|
user_id:(nonnull NSString *)user_id
|
||||||
|
gift_id:(nonnull NSString *)gift_id
|
||||||
|
successBlock:(nonnull void (^)(NSDictionary * _Nonnull))successBlock
|
||||||
|
failBlock:(nonnull void (^)(NSError * _Nonnull, NSString * _Nonnull))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":roomId?:@"",
|
||||||
|
@"user_id":user_id?:@"",
|
||||||
|
@"gift_id":gift_id?:@""
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomBarAsk parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
successBlock(responseObject[@"data"]);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
小黑屋列表
|
||||||
|
*/
|
||||||
|
+(void)roomBarCabinRoomListWithRoomId:(NSString*)roomId
|
||||||
|
successBlock:(void (^)(NSArray* list))successBlock
|
||||||
|
failBlock:(void (^)(NSError * error, NSString * msg))failBlock{
|
||||||
|
NSDictionary *parameters =@{
|
||||||
|
@"room_id":roomId?:@"",
|
||||||
|
};
|
||||||
|
[[QXRequset shareInstance] postWithUrl:QXRoomBarCabinRoomList parameters:parameters needCache:NO success:^(id responseObject) {
|
||||||
|
if (successBlock) {
|
||||||
|
id object = responseObject[@"data"];
|
||||||
|
NSArray *array = [NSArray array];
|
||||||
|
if ([object isKindOfClass:[NSArray class]]) {
|
||||||
|
array = (NSArray*)object;
|
||||||
|
}
|
||||||
|
successBlock(array);
|
||||||
|
}
|
||||||
|
} fail:^(NSError *error, NSString *msg, NSURLSessionDataTask *task) {
|
||||||
|
failBlock(error,msg);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -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]) {
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -125,7 +125,7 @@
|
|||||||
-(void)setModel:(QXRoomDetailModel *)model{
|
-(void)setModel:(QXRoomDetailModel *)model{
|
||||||
_model = model;
|
_model = model;
|
||||||
self.allWaterLabel.text = [NSString stringWithFormat:@"%.2f",model.total_amount];;
|
self.allWaterLabel.text = [NSString stringWithFormat:@"%.2f",model.total_amount];;
|
||||||
self.allPriceLabel.text = [NSString stringWithFormat:@"%.2f",model.total_earning];
|
self.allPriceLabel.text = [NSString stringWithFormat:@"%.4f",model.total_earning];
|
||||||
}
|
}
|
||||||
|
|
||||||
-(UIImageView *)bgImageView{
|
-(UIImageView *)bgImageView{
|
||||||
|
|||||||
@@ -57,6 +57,7 @@
|
|||||||
#import "QXHomePageNetwork.h"
|
#import "QXHomePageNetwork.h"
|
||||||
#import "QXRoomNavigationController.h"
|
#import "QXRoomNavigationController.h"
|
||||||
#import "QXInvitePopView.h"
|
#import "QXInvitePopView.h"
|
||||||
|
#import "QGVAPLogger.h"
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
#import <LLDebugTool.h>
|
#import <LLDebugTool.h>
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 1010 B After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 9.0 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 354 KiB After Width: | Height: | Size: 511 KiB |
22
QXLive/Other/Assets.xcassets/room/bar_room_cabin_heart.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_cabin_heart@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_cabin_heart@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/bar_room_cabin_heart.imageset/bar_room_cabin_heart@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
QXLive/Other/Assets.xcassets/room/bar_room_cabin_heart.imageset/bar_room_cabin_heart@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 157 KiB |
22
QXLive/Other/Assets.xcassets/room/room_set_room_type_bar.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_set_room_type_bar@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_set_room_type_bar@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/room_set_room_type_bar.imageset/room_set_room_type_bar@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
QXLive/Other/Assets.xcassets/room/room_set_room_type_bar.imageset/room_set_room_type_bar@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 14 KiB |
6
QXLive/Other/Assets.xcassets/room/酒吧房/Contents.json
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
21
QXLive/Other/Assets.xcassets/room/酒吧房/bar_cabin_room_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_cabin_room_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_cabin_room_bg.imageset/bar_cabin_room_bg@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_ask_ta.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_ask_ta@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_ask_ta@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_ask_ta.imageset/bar_room_ask_ta@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_ask_ta.imageset/bar_room_ask_ta@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_cabin_gift_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_cabin_gift_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_cabin_gift_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_cabin_gift_bg.imageset/bar_room_cabin_gift_bg@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_cabin_gift_bg.imageset/bar_room_cabin_gift_bg@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 73 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_close_privite.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_close_privite@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_close_privite@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_close_privite.imageset/bar_room_close_privite@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_close_privite.imageset/bar_room_close_privite@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_custom_gift.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_custom_gift@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_custom_gift@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_custom_gift.imageset/bar_room_custom_gift@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_custom_gift.imageset/bar_room_custom_gift@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_open_privite.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_open_privite@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_open_privite@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_open_privite.imageset/bar_room_open_privite@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_open_privite.imageset/bar_room_open_privite@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_sea_king.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_sea_king@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_sea_king@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_sea_king.imageset/bar_room_sea_king@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_sea_king.imageset/bar_room_sea_king@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 68 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_all.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_seduction_all@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_seduction_all@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_all.imageset/bar_room_seduction_all@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_all.imageset/bar_room_seduction_all@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 68 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_ta.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_seduction_ta@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_seduction_ta@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_ta.imageset/bar_room_seduction_ta@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_seduction_ta.imageset/bar_room_seduction_ta@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_set_custom_gift.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_set_custom_gift@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_set_custom_gift@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 25 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_set_seat_time.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_set_seat_time@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_set_seat_time@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_set_seat_time.imageset/bar_room_set_seat_time@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_set_seat_time.imageset/bar_room_set_seat_time@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 30 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_time_icon.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_time_icon@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_time_icon@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_time_icon.imageset/bar_room_time_icon@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 493 B |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_time_icon.imageset/bar_room_time_icon@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 854 B |
22
QXLive/Other/Assets.xcassets/room/酒吧房/bar_room_title_cabin_room.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_title_cabin_room@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "bar_room_title_cabin_room@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/room_bar_ask_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_bar_ask_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_bar_ask_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/room_bar_ask_bg.imageset/room_bar_ask_bg@2x.png
vendored
Normal file
|
After Width: | Height: | Size: 246 KiB |
BIN
QXLive/Other/Assets.xcassets/room/酒吧房/room_bar_ask_bg.imageset/room_bar_ask_bg@3x.png
vendored
Normal file
|
After Width: | Height: | Size: 541 KiB |
22
QXLive/Other/Assets.xcassets/room/酒吧房/room_bar_cabin_cover.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_bar_cabin_cover@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_bar_cabin_cover@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||