From 6ed407b05a0311cbc286a34547f215d0ee8d6935 Mon Sep 17 00:00:00 2001 From: liyuhua <15626451870@163.com> Date: Thu, 26 Oct 2023 15:20:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BA=A2=E5=8C=85=E6=8E=A5=E5=8F=A3=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../XPRoomMenuContainerView.h | 2 +- .../XPRoomMenuContainerView.m | 5 +- .../XPRoomMessageContainerView.h | 1 + .../XPRoomMessageContainerView.m | 4 +- .../View/RoomHeaderView/RoomHeaderView.h | 2 +- .../SendRedPacket/Model/XPRedPacketModel.h | 16 +++ .../SendRedPacket/XPReceiveRedPacketView.h | 9 +- .../SendRedPacket/XPReceiveRedPacketView.m | 100 +++++++++--------- .../YMRoom/View/XPRoomViewController.m | 67 +++++++++--- .../YMTabbar/View/TabbarViewController.m | 18 ++-- 10 files changed, 139 insertions(+), 85 deletions(-) diff --git a/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.h b/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.h index 6c9097f6..dbd727b9 100644 --- a/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.h +++ b/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.h @@ -15,7 +15,7 @@ NS_ASSUME_NONNULL_BEGIN @interface XPRoomMenuContainerView : UIView @property (nonatomic,strong) XPFreeGiftModel *freeModel; - (instancetype)initWithDelegate:(id)delegate; - +-(void)showInputView:(NSString *)text; - (void)menuResignFirstResponder; @end diff --git a/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.m b/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.m index f81474ea..ba2c1f9c 100644 --- a/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.m +++ b/YuMi/Modules/YMRoom/View/MenuContainerView/XPRoomMenuContainerView.m @@ -79,7 +79,10 @@ - (void)menuResignFirstResponder { [self.inputTextView.editTextFiled resignFirstResponder]; } - +-(void)showInputView:(NSString *)text{ + [self menuButtonAction:self.inputButton]; + self.inputTextView.editTextFiled.text = text; +} #pragma mark - Response - (void)menuButtonAction:(UIButton *)sender { XPRoomMenuItemType type = sender.tag; diff --git a/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.h b/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.h index 77e9d26a..e7d34bc6 100644 --- a/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.h +++ b/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.h @@ -11,6 +11,7 @@ NS_ASSUME_NONNULL_BEGIN @interface XPRoomMessageContainerView : UIView +- (void)showUserCard:(NSInteger)uid; - (instancetype)initWithDelegate:(id)delegate; @end diff --git a/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.m b/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.m index d6847aa7..47dd19d7 100644 --- a/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.m +++ b/YuMi/Modules/YMRoom/View/MessageContainerView/XPRoomMessageContainerView.m @@ -92,7 +92,9 @@ NSString * const kRoomShowTopicKey = @"kRoomShowTopicKey"; } return self; } - +- (void)showUserCard:(NSInteger)uid{ + [self.messageParser showUserCard:uid]; +} #pragma mark - Response - (void)messageTipsBtnAction:(UIButton *)sender { self.isPending = NO; diff --git a/YuMi/Modules/YMRoom/View/RoomHeaderView/RoomHeaderView.h b/YuMi/Modules/YMRoom/View/RoomHeaderView/RoomHeaderView.h index 432ab8fa..09ef8bd0 100644 --- a/YuMi/Modules/YMRoom/View/RoomHeaderView/RoomHeaderView.h +++ b/YuMi/Modules/YMRoom/View/RoomHeaderView/RoomHeaderView.h @@ -12,7 +12,7 @@ NS_ASSUME_NONNULL_BEGIN @interface RoomHeaderView : UIView - +- (void)showSharePanel; - (instancetype)initWithDelegate:(id)delegate; @end diff --git a/YuMi/Modules/YMRoom/View/SendRedPacket/Model/XPRedPacketModel.h b/YuMi/Modules/YMRoom/View/SendRedPacket/Model/XPRedPacketModel.h index ef026533..5b535fde 100644 --- a/YuMi/Modules/YMRoom/View/SendRedPacket/Model/XPRedPacketModel.h +++ b/YuMi/Modules/YMRoom/View/SendRedPacket/Model/XPRedPacketModel.h @@ -53,6 +53,22 @@ typedef enum : NSUInteger { @property(nonatomic,assign) long beginTime; ///0,未完成,1,完成 @property(nonatomic,assign) int finish; + +///发送者头像 +@property (nonatomic, copy) NSString *sendUserAvatar; +///发送者昵称 +@property (nonatomic, copy) NSString *sendUserNick; +///房间UID +@property (nonatomic, copy) NSString *roomUid; +///红包类型 +@property (nonatomic, assign) NSInteger redEnvelopeType; +///房间标题 +@property (nonatomic, copy) NSString *roomTitle; +///红包祝福语 +@property (nonatomic, copy) NSString *redEnvelopeMessage; +////红包数量 +@property(nonatomic,copy) NSString *redEnvelopeNum; + @end NS_ASSUME_NONNULL_END diff --git a/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.h b/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.h index fd67d82d..2b3d243d 100644 --- a/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.h +++ b/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.h @@ -7,11 +7,7 @@ #import #import "XPRedPacketModel.h" -@protocol XPReceiveRedPacketViewDelegate --(void)openRedPacketWithType:(RedPacketConditionsType)type uid:(NSString *_Nonnull)uid roomUid:(NSString *_Nonnull)roomUid; - -@end NS_ASSUME_NONNULL_BEGIN @@ -20,13 +16,12 @@ NS_ASSUME_NONNULL_BEGIN ///是否在全服红包的房间内 @property (nonatomic, assign) BOOL inAllPacketRoom; -///红包信息 -@property (nonatomic, strong) XPReceiveRedPacketModel *redPacketModel; + @property (nonatomic, strong) XPRedPacketModel *receiveModel; @property (nonatomic, strong) UIView *alphaView; -@property(nonatomic,weak) iddelegate; + @end diff --git a/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.m b/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.m index 6aa485df..e1ad55a0 100644 --- a/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.m +++ b/YuMi/Modules/YMRoom/View/SendRedPacket/XPReceiveRedPacketView.m @@ -162,49 +162,53 @@ _inAllPacketRoom = inAllPacketRoom; } -- (void)setRedPacketModel:(XPReceiveRedPacketModel *)redPacketModel { - _redPacketModel = redPacketModel; - self.sendAvatar.imageUrl = redPacketModel.sendUserAvatar; - self.sendWishLabel.text = redPacketModel.redEnvelopeMessage; - if (redPacketModel.redEnvelopeType == 1) { - self.sendNickLabel.text = redPacketModel.sendUserNick; - } else { - if (self.inAllPacketRoom) { - self.sendNickLabel.text = redPacketModel.sendUserNick; - } else { - NSString *nick = redPacketModel.sendUserNick; - - NSString *roomTitle = redPacketModel.roomTitle; - if (redPacketModel.roomTitle.length > 6) { - roomTitle = [NSString stringWithFormat:@"%@...", [redPacketModel.roomTitle substringToIndex:6]]; - } - self.sendNickLabel.text = nick; -// NSMutableAttributedString *attribute = [[NSMutableAttributedString alloc] init]; -// NSMutableAttributedString *roomAttr = [[NSMutableAttributedString alloc] initWithString:roomTitle attributes:@{NSForegroundColorAttributeName : UIColorFromRGB(0xFDCD00)}]; -// NSMutableAttributedString *redPacketStr = [[NSMutableAttributedString alloc] initWithString:YMLocalizedString(@"XPReceiveRedPacketView0") attributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}]; -// NSMutableAttributedString *nickAttr = [[NSMutableAttributedString alloc] initWithString:nick attributes:@{NSForegroundColorAttributeName : UIColorFromRGB(0xFDCD00)}]; -// [attribute appendAttributedString:roomAttr]; -// [attribute appendAttributedString:redPacketStr]; -// [attribute appendAttributedString:nickAttr]; -// self.sendNickLabel.attributedText = attribute; - - - } - } -} +//- (void)setRedPacketModel:(XPReceiveRedPacketModel *)redPacketModel { +// _redPacketModel = redPacketModel; +// self.sendAvatar.imageUrl = redPacketModel.sendUserAvatar; +// self.sendWishLabel.text = redPacketModel.redEnvelopeMessage; +// if (redPacketModel.redEnvelopeType == 1) { +// self.sendNickLabel.text = redPacketModel.sendUserNick; +// } else { +// if (self.inAllPacketRoom) { +// self.sendNickLabel.text = redPacketModel.sendUserNick; +// } else { +// NSString *nick = redPacketModel.sendUserNick; +// +// NSString *roomTitle = redPacketModel.roomTitle; +// if (redPacketModel.roomTitle.length > 6) { +// roomTitle = [NSString stringWithFormat:@"%@...", [redPacketModel.roomTitle substringToIndex:6]]; +// } +// self.sendNickLabel.text = nick; +//// NSMutableAttributedString *attribute = [[NSMutableAttributedString alloc] init]; +//// NSMutableAttributedString *roomAttr = [[NSMutableAttributedString alloc] initWithString:roomTitle attributes:@{NSForegroundColorAttributeName : UIColorFromRGB(0xFDCD00)}]; +//// NSMutableAttributedString *redPacketStr = [[NSMutableAttributedString alloc] initWithString:YMLocalizedString(@"XPReceiveRedPacketView0") attributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}]; +//// NSMutableAttributedString *nickAttr = [[NSMutableAttributedString alloc] initWithString:nick attributes:@{NSForegroundColorAttributeName : UIColorFromRGB(0xFDCD00)}]; +//// [attribute appendAttributedString:roomAttr]; +//// [attribute appendAttributedString:redPacketStr]; +//// [attribute appendAttributedString:nickAttr]; +//// self.sendNickLabel.attributedText = attribute; +// +// +// } +// } +//} + - (void)setReceiveModel:(XPRedPacketModel *)receiveModel { _receiveModel = receiveModel; - self.sendAvatar.imageUrl = receiveModel.userVO.avatar; - - self.sendNickLabel.text = [NSString stringWithFormat:@"%@%@",receiveModel.userVO.nick,YMLocalizedString(@"XPReceiveRedPacketView8")] ; + self.sendAvatar.imageUrl = _receiveModel.sendUserAvatar.length > 0 ? receiveModel.sendUserAvatar : receiveModel.userVO.avatar; + NSString *nick = _receiveModel.sendUserNick.length > 0 ? _receiveModel.sendUserNick : receiveModel.userVO.nick; + if (nick.length > 6) { + nick = [NSString stringWithFormat:@"%@...", [nick substringToIndex:6]]; + } + self.sendNickLabel.text = [NSString stringWithFormat:@"%@%@",nick,YMLocalizedString(@"XPReceiveRedPacketView8")] ; self.robView.hidden = YES; self.robIcon.hidden = YES; self.countDownView.hidden = YES; self.countDownTitleView.hidden = YES; if(_receiveModel.kind == RedPacketConditionsType_NO){ - self.sendWishLabel.text = YMLocalizedString(@"XPReceiveRedPacketView9"); + self.sendWishLabel.text = _receiveModel.redEnvelopeMessage.length > 0 ? _receiveModel.redEnvelopeMessage :YMLocalizedString(@"XPReceiveRedPacketView9"); if(_receiveModel.validityType == 1){ NSInteger time = [self getTimeDifferenceWithTimestamp:_receiveModel.timestamp / 1000 beginTime:_receiveModel.beginTime / 1000]; if(time > 0){ @@ -325,9 +329,7 @@ }else if(self.receiveModel.kind == RedPacketConditionsType_Followd){ if(self.isCountDownEnd == NO && self.receiveModel.finish == 0){ [self removeFromSuperview]; - if(self.delegate && [self.delegate respondsToSelector:@selector(openRedPacketWithType:uid:roomUid:)]){ - [self.delegate openRedPacketWithType:RedPacketConditionsType_Followd uid:self.receiveModel.userId roomUid:self.receiveModel.roomUId]; - } + [[NSNotificationCenter defaultCenter]postNotificationName:@"kOpenRedPacketNotification" object:nil userInfo:@{@"type":@(RedPacketConditionsType_Followd),@"uid":self.receiveModel.userId ?: @"",@"roomUid":self.receiveModel.roomUId ?: @""}]; return; }else if(self.isCountDownEnd == YES && self.receiveModel.finish == 0){ [self removeFromSuperview]; @@ -340,9 +342,8 @@ }else if(self.receiveModel.kind == RedPacketConditionsType_Share){ if(self.isCountDownEnd == NO && self.receiveModel.finish == 0){ [self removeFromSuperview]; - if(self.delegate && [self.delegate respondsToSelector:@selector(openRedPacketWithType:uid:roomUid:)]){ - [self.delegate openRedPacketWithType:RedPacketConditionsType_Share uid:self.receiveModel.userId roomUid:self.receiveModel.roomUId]; - } + + [[NSNotificationCenter defaultCenter]postNotificationName:@"kOpenRedPacketNotification" object:nil userInfo:@{@"type":@(RedPacketConditionsType_Share),@"uid":self.receiveModel.userId ?: @"",@"roomUid":self.receiveModel.roomUId ?: @""}]; return; }else if(self.isCountDownEnd == YES && self.receiveModel.finish == 0){ [self removeFromSuperview]; @@ -354,9 +355,7 @@ }else if(self.receiveModel.kind == RedPacketConditionsType_Share){ if(self.isCountDownEnd == NO && self.receiveModel.finish == 0){ [self removeFromSuperview]; - if(self.delegate && [self.delegate respondsToSelector:@selector(openRedPacketWithType:uid:roomUid:)]){ - [self.delegate openRedPacketWithType:RedPacketConditionsType_Scrolling uid:self.receiveModel.userId roomUid:self.receiveModel.roomUId]; - } + [[NSNotificationCenter defaultCenter]postNotificationName:@"kOpenRedPacketNotification" object:nil userInfo:@{@"type":@(RedPacketConditionsType_Scrolling),@"uid":self.receiveModel.userId ?: @"",@"roomUid":self.receiveModel.roomUId ?: @"",@"scrolling":self.receiveModel.message ?: @""}]; return; }else if(self.isCountDownEnd == YES && self.receiveModel.finish == 0){ [self removeFromSuperview]; @@ -366,24 +365,25 @@ return; } } - if (!self.redPacketModel) { + + if (self.receiveModel.userVO != nil) { [self openRoomRedPacket:sender redEnvelopeId:self.receiveModel.redEnvelopeId]; } else { //判断是否为房内红包 - if (self.redPacketModel.redEnvelopeType == 1) { + if (self.receiveModel.redEnvelopeType == 1) { //1、房内红包 - [self openRoomRedPacket:sender redEnvelopeId:self.redPacketModel.redEnvelopeId]; + [self openRoomRedPacket:sender redEnvelopeId:self.receiveModel.redEnvelopeId]; } else { //2、全服红包 if (self.inAllPacketRoom) {//在全服红包的房间内,直接打开 - [self openRoomRedPacket:sender redEnvelopeId:self.redPacketModel.redEnvelopeId]; + [self openRoomRedPacket:sender redEnvelopeId:self.receiveModel.redEnvelopeId]; } else {//不在房内,进入发红包的房间 if ([XPRoomMiniManager shareManager].getRoomInfo) { RoomInfoModel *roomInfo = [XPRoomMiniManager shareManager].getRoomInfo; - if (roomInfo.uid == self.redPacketModel.roomUid.integerValue) { + if (roomInfo.uid == self.receiveModel.roomUid.integerValue) { [XPRoomViewController openMiniRoom:[NSString stringWithFormat:@"%ld", roomInfo.uid] viewController:[[XCCurrentVCStackManager shareManager] getCurrentVC]]; } else { - [XPRoomViewController openRoom:self.redPacketModel.roomUid viewController:[[XCCurrentVCStackManager shareManager] getCurrentVC]]; + [XPRoomViewController openRoom:self.receiveModel.roomUid viewController:[[XCCurrentVCStackManager shareManager] getCurrentVC]]; } } else { [[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController.viewControllers enumerateObjectsUsingBlock:^(__kindof UIViewController * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { @@ -395,7 +395,7 @@ } }]; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ - [XPRoomViewController openRoom:self.redPacketModel.roomUid viewController:[XCCurrentVCStackManager shareManager].getCurrentVC]; + [XPRoomViewController openRoom:self.receiveModel.roomUid viewController:[XCCurrentVCStackManager shareManager].getCurrentVC]; }); } [self removeFromSuperview]; diff --git a/YuMi/Modules/YMRoom/View/XPRoomViewController.m b/YuMi/Modules/YMRoom/View/XPRoomViewController.m index afff1b32..0402ec51 100644 --- a/YuMi/Modules/YMRoom/View/XPRoomViewController.m +++ b/YuMi/Modules/YMRoom/View/XPRoomViewController.m @@ -38,6 +38,7 @@ #import "XPRedPacketModel.h" #import "FirstChargeRoomWindowModel.h" #import "XPFreeGiftModel.h" +#import "XPUserCardInfoModel.h" ///View #import "BaseNavigationController.h" #import "XPRoomActivityContainerView.h" @@ -73,6 +74,7 @@ #import "LittleGameStageView.h" #import "LittleGameScrollStageView.h" #import "XPRoomLittleGameContainerView.h" +#import "XPUserCardViewController.h" UIKIT_EXTERN NSString * const kShieldingNotification; @@ -271,6 +273,23 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myGiftEffectUpdate:) name:kRoomGiftEffectUpdateNotificationKey object:nil]; [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(showRoomFirstChargeWindowFormNot:) name:kShowFirstRechargeView object:nil]; [XPSkillCardPlayerManager shareInstance].isInRoom = YES; + [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(openRedPacketNotification:) name:@"kOpenRedPacketNotification" object:nil]; +} +///打开红包通知 +-(void)openRedPacketNotification:(NSNotification *)not{ + NSDictionary *redPacketDic = not.userInfo; + NSInteger type = [redPacketDic[@"type"] integerValue]; + NSInteger userId = [redPacketDic[@"uid"] integerValue]; +// NSString *roomUid = redPacketDic[@"roomUId"]; + if(type == 2){ + [self.messageContainerView showUserCard:userId]; + }else if (type == 3){ + [self.roomHeaderView showSharePanel]; + }else if (type == 4){ + NSString *scrolling = redPacketDic[@"scrolling"]; + [self.menuContainerView showInputView:scrolling]; + } + } - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { @@ -326,6 +345,7 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出 self.activityContainerView.openRedPacketHandle = ^(XPRedPacketModel * _Nullable redModel) { @kStrongify(self); XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; + view.receiveModel = redModel; for (UIView *subView in self.view.subviews) { if([subView isKindOfClass:[XPReceiveRedPacketView class]]) { @@ -1207,16 +1227,19 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出 return; } for (XPRedPacketModel *data in list) { - XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; - view.receiveModel = data; - for (UIView *subView in self.view.subviews) { - if([subView isKindOfClass:[XPReceiveRedPacketView class]]) { - view.alphaView.backgroundColor = [UIColor clearColor]; - break; - } - } - [self.view addSubview:view]; - [self.view bringSubviewToFront:view]; + if((data.validityType == 0 && data.type == RedPacketType_RoomDiamond)|| data.type == RedPacketType_AllDiamond){ + XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; + view.receiveModel = data; + for (UIView *subView in self.view.subviews) { + if([subView isKindOfClass:[XPReceiveRedPacketView class]]) { + view.alphaView.backgroundColor = [UIColor clearColor]; + break; + } + } + [self.view addSubview:view]; + [self.view bringSubviewToFront:view]; + } + } if(list.count > 0){ self.activityContainerView.redPacketModel = list.lastObject; @@ -1477,8 +1500,10 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出 } else if (attachment.first == CustomMessageType_RedPacket) { if (attachment.second == Custom_Message_Sub_RoomDiamandRedPacket) { XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; - XPReceiveRedPacketModel *data = [XPReceiveRedPacketModel modelWithJSON:attachment.data]; - view.redPacketModel = data; + XPRedPacketModel *data = [XPRedPacketModel modelWithJSON:attachment.data]; + data.validityType = 0; + data.kind = 1; + view.receiveModel = data; for (UIView *subView in self.view.subviews) { if([subView isKindOfClass:[XPReceiveRedPacketView class]]) { view.alphaView.backgroundColor = [UIColor clearColor]; @@ -1487,7 +1512,23 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出 } [self.view addSubview:view]; [self.view bringSubviewToFront:view]; - } + }else if(attachment.second == Custom_Message_Sub_NewRoomDiamandRedPacket){ + XPRedPacketModel *data = [XPRedPacketModel modelWithJSON:attachment.data]; + if(data.validityType == 0){ + XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; + view.receiveModel = data; + for (UIView *subView in self.view.subviews) { + if([subView isKindOfClass:[XPReceiveRedPacketView class]]) { + view.alphaView.backgroundColor = [UIColor clearColor]; + break; + } + } + [self.view addSubview:view]; + [self.view bringSubviewToFront:view]; + } + self.activityContainerView.redPacketModel = data; + self.activityContainerView.pi_redNum = data.redEnvelopeNum; + } }else if(attachment.first == CustomMessageType_Free_Gift_Star_Reset_Time){ if(attachment.second == Custom_Message_Sub_Free_Gift_Star_Reset_Time){ [self.presenter getFreeGiftData]; diff --git a/YuMi/Modules/YMTabbar/View/TabbarViewController.m b/YuMi/Modules/YMTabbar/View/TabbarViewController.m index 664ebcd8..a608b8f7 100644 --- a/YuMi/Modules/YMTabbar/View/TabbarViewController.m +++ b/YuMi/Modules/YMTabbar/View/TabbarViewController.m @@ -45,7 +45,7 @@ #import "XPTabAnchorCardModel.h" #import "FirstRechargeModel.h" #import "MonentsUnReadModel.h" -#import "XPReceiveRedPacketModel.h" +#import "XPRedPacketModel.h" #import "GiftReceiveInfoModel.h" #import "XPVersionUpdateModel.h" ///VC @@ -637,12 +637,10 @@ UIKIT_EXTERN NSString *kTabShowAnchorCardKey; } ///收到红包,处理数据 -(void)receiveRedPacketDealWithData:(AttachmentModel *)attachment{ - XPReceiveRedPacketModel *data = [XPReceiveRedPacketModel modelWithDictionary:attachment.data]; - if(attachment.second == Custom_Message_Sub_AllDiamandRedPacket ){ - data.validityType = 0; - data.kind = 1; - } - + if(attachment.second != Custom_Message_Sub_AllDiamandRedPacket)return; + XPRedPacketModel *data = [XPRedPacketModel modelWithDictionary:attachment.data]; + data.validityType = 0; + data.kind = 1; //判断是否在房间 __block BOOL isInRoom; [[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController.viewControllers enumerateObjectsUsingBlock:^(__kindof UIViewController * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { @@ -655,8 +653,7 @@ UIKIT_EXTERN NSString *kTabShowAnchorCardKey; } else { view.inAllPacketRoom = NO; } - XPReceiveRedPacketModel *data = [XPReceiveRedPacketModel modelWithJSON:attachment.data]; - view.redPacketModel = data; + view.receiveModel = data; [roomVC.view addSubview:view]; [roomVC.view bringSubviewToFront:view]; *stop = YES; @@ -667,8 +664,7 @@ UIKIT_EXTERN NSString *kTabShowAnchorCardKey; UIViewController *currentVc = [[XCCurrentVCStackManager shareManager] getCurrentVC]; XPReceiveRedPacketView *view = [[XPReceiveRedPacketView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)]; view.inAllPacketRoom = NO; - XPReceiveRedPacketModel *data = [XPReceiveRedPacketModel modelWithJSON:attachment.data]; - view.redPacketModel = data; + view.receiveModel = data; [currentVc.view addSubview:view]; [currentVc.view bringSubviewToFront:view]; }