Compare commits
5 Commits
8c024c0ec1
...
cff4ddeeba
Author | SHA1 | Date | |
---|---|---|---|
![]() |
cff4ddeeba | ||
![]() |
b657f3856b | ||
![]() |
c41df5caa0 | ||
![]() |
860304ea15 | ||
![]() |
406cf003f5 |
@@ -485,6 +485,14 @@
|
||||
4C0A5B872E02BB1100955219 /* MedalsLevelIndicatorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0A5B862E02BB1100955219 /* MedalsLevelIndicatorView.m */; };
|
||||
4C0A5B8A2E02BC3900955219 /* MedalsDetailView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0A5B892E02BC3900955219 /* MedalsDetailView.m */; };
|
||||
4C0A5B902E03EF4B00955219 /* MedalsWearingViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0A5B8F2E03EF4B00955219 /* MedalsWearingViewController.m */; };
|
||||
4C0B4A3A2E6579C700D67F73 /* XPPKAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A392E6579C700D67F73 /* XPPKAction.m */; };
|
||||
4C0B4A3E2E659A2C00D67F73 /* XPRoomTypeSettingAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A3D2E659A2C00D67F73 /* XPRoomTypeSettingAction.m */; };
|
||||
4C0B4A412E659DC100D67F73 /* XPRoomBackGroundSettingAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A402E659DC100D67F73 /* XPRoomBackGroundSettingAction.m */; };
|
||||
4C0B4A442E65A0D300D67F73 /* XPRoomCleanMessagesAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A432E65A0D300D67F73 /* XPRoomCleanMessagesAction.m */; };
|
||||
4C0B4A472E65A51600D67F73 /* XPRoomRedPacketAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A462E65A51600D67F73 /* XPRoomRedPacketAction.m */; };
|
||||
4C0B4A4A2E65A5D500D67F73 /* XPRoomMusicPanelAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A492E65A5D500D67F73 /* XPRoomMusicPanelAction.m */; };
|
||||
4C0B4A4D2E65A63400D67F73 /* XPRoomRoomPhotoAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A4C2E65A63400D67F73 /* XPRoomRoomPhotoAction.m */; };
|
||||
4C0B4A502E65A68800D67F73 /* XPRoomAppManagerAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C0B4A4F2E65A68800D67F73 /* XPRoomAppManagerAction.m */; };
|
||||
4C1064882E0014CF007E1586 /* NSMutableArray+Safe.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C1064872E0014CF007E1586 /* NSMutableArray+Safe.m */; };
|
||||
4C1119722DD7218300C18416 /* MyEventsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C1119712DD7218300C18416 /* MyEventsViewController.m */; };
|
||||
4C1392932D6D963700A6DFB5 /* SubRechargersViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C1392922D6D963600A6DFB5 /* SubRechargersViewController.m */; };
|
||||
@@ -575,6 +583,12 @@
|
||||
4CD15D922D7EC2AC00D9279F /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 23E56B3B2B03564B00C8DAC9 /* CoreTelephony.framework */; };
|
||||
4CD15D952D7FE9E400D9279F /* LoginTypesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD15D942D7FE9E400D9279F /* LoginTypesViewController.m */; };
|
||||
4CD47BB52E61514900BCDA46 /* StageViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BB42E61514900BCDA46 /* StageViewManager.m */; };
|
||||
4CD47BBE2E619F1700BCDA46 /* XPRoomMoreMenuAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BBB2E619F1700BCDA46 /* XPRoomMoreMenuAction.m */; };
|
||||
4CD47BBF2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BBD2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.m */; };
|
||||
4CD47BC42E61A4E000BCDA46 /* XPGiftEffectAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BC32E61A4E000BCDA46 /* XPGiftEffectAction.m */; };
|
||||
4CD47BC62E61A4FA00BCDA46 /* XPRoomMoreMenuActionFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BC52E61A4FA00BCDA46 /* XPRoomMoreMenuActionFactory.m */; };
|
||||
4CD47BC92E61A78D00BCDA46 /* XPRoomSettingAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BC82E61A78D00BCDA46 /* XPRoomSettingAction.m */; };
|
||||
4CD47BCC2E61ADE400BCDA46 /* XPSocialAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BCB2E61ADE400BCDA46 /* XPSocialAction.m */; };
|
||||
4CD6FF662D673A5C00262AB7 /* AgentMessageModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD6FF652D673A5C00262AB7 /* AgentMessageModel.m */; };
|
||||
4CD6FF692D673F7F00262AB7 /* AgentMessageTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD6FF682D673F7F00262AB7 /* AgentMessageTableViewCell.m */; };
|
||||
4CE3A9462D22754C003F0796 /* RechargeUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE3A9452D22754C003F0796 /* RechargeUserModel.m */; };
|
||||
@@ -1107,7 +1121,6 @@
|
||||
E82325FC274E4735003A3332 /* XPUserCardItemModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E82325FB274E4735003A3332 /* XPUserCardItemModel.m */; };
|
||||
E8232600274E48EA003A3332 /* XPUserCardItemCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E82325FF274E48EA003A3332 /* XPUserCardItemCollectionViewCell.m */; };
|
||||
E8232603274E4AA0003A3332 /* ThemeColor+UserCard.m in Sources */ = {isa = PBXBuildFile; fileRef = E8232602274E4AA0003A3332 /* ThemeColor+UserCard.m */; };
|
||||
E823E38E290BE8BD00EADD86 /* WishGiftInfoUpdateModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E823E38D290BE8BD00EADD86 /* WishGiftInfoUpdateModel.m */; };
|
||||
E824543526F57D6E00BE8163 /* XPLoginVerifBindPhoneViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E824543426F57D6E00BE8163 /* XPLoginVerifBindPhoneViewController.m */; };
|
||||
E824543826F5820A00BE8163 /* XPLoginVerifBindPhonePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E824543726F5820A00BE8163 /* XPLoginVerifBindPhonePresenter.m */; };
|
||||
E824543A26F5880E00BE8163 /* XPLoginVerifBindPhoneProtocol.h in Sources */ = {isa = PBXBuildFile; fileRef = E824543926F5822800BE8163 /* XPLoginVerifBindPhoneProtocol.h */; };
|
||||
@@ -1492,11 +1505,6 @@
|
||||
E89DA66727006443008483C1 /* RechargeStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DA66627006443008483C1 /* RechargeStorage.m */; };
|
||||
E89DA67227008D59008483C1 /* WalletInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DA67127008D59008483C1 /* WalletInfoModel.m */; };
|
||||
E89DA67527009ACD008483C1 /* XPMineRechargeNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DA67427009ACD008483C1 /* XPMineRechargeNavView.m */; };
|
||||
E89DCF5428FFEC67001647EC /* XPWishGiftHistoryTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DCF5328FFEC67001647EC /* XPWishGiftHistoryTableViewCell.m */; };
|
||||
E89DCF5728FFF076001647EC /* XPWishGiftEmptyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DCF5628FFF076001647EC /* XPWishGiftEmptyTableViewCell.m */; };
|
||||
E89DCF5A28FFF1AD001647EC /* XPWishGiftSectionView.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DCF5928FFF1AD001647EC /* XPWishGiftSectionView.m */; };
|
||||
E89DCF5D2900E5EE001647EC /* WishGiftHistoryModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DCF5C2900E5EE001647EC /* WishGiftHistoryModel.m */; };
|
||||
E89DCF602900F4FB001647EC /* XPWishGiftEnterView.m in Sources */ = {isa = PBXBuildFile; fileRef = E89DCF5F2900F4FB001647EC /* XPWishGiftEnterView.m */; };
|
||||
E8A03DFF27635F960098D9EA /* XPRoomCandyGiftView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A03DFE27635F960098D9EA /* XPRoomCandyGiftView.m */; };
|
||||
E8A30BE328534A28003B4873 /* XPSessionFindNewViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A30BE228534A28003B4873 /* XPSessionFindNewViewController.m */; };
|
||||
E8A30BE828534A63003B4873 /* XPSessionFindNewTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A30BE728534A63003B4873 /* XPSessionFindNewTableViewCell.m */; };
|
||||
@@ -1506,17 +1514,6 @@
|
||||
E8A30BF628534B35003B4873 /* FindNewUserInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A30BF528534B35003B4873 /* FindNewUserInfoModel.m */; };
|
||||
E8A30BF928534E48003B4873 /* XPSessionFindNewEmptyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A30BF828534E48003B4873 /* XPSessionFindNewEmptyTableViewCell.m */; };
|
||||
E8A3538528FD67320014A784 /* GiftLuckyBroadcastModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3538428FD67320014A784 /* GiftLuckyBroadcastModel.m */; };
|
||||
E8A3538E28FE5CED0014A784 /* Api+WishGift.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3538D28FE5CED0014A784 /* Api+WishGift.m */; };
|
||||
E8A3539128FE5F0F0014A784 /* WishGiftInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3539028FE5F0F0014A784 /* WishGiftInfoModel.m */; };
|
||||
E8A3539428FE605F0014A784 /* WishGiftUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3539328FE605F0014A784 /* WishGiftUserModel.m */; };
|
||||
E8A3539728FE7C250014A784 /* XPWishGiftPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3539628FE7C250014A784 /* XPWishGiftPresenter.m */; };
|
||||
E8A3539B28FE840A0014A784 /* XPWishGiftViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3539A28FE840A0014A784 /* XPWishGiftViewController.m */; };
|
||||
E8A353A028FE84670014A784 /* XPWishGiftInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3539F28FE84670014A784 /* XPWishGiftInfoView.m */; };
|
||||
E8A353A328FE90F60014A784 /* XPWishGiftCreateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A353A228FE90F60014A784 /* XPWishGiftCreateViewController.m */; };
|
||||
E8A3540128FEAC5E0014A784 /* XPWishGiftTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3540028FEAC5E0014A784 /* XPWishGiftTableViewCell.m */; };
|
||||
E8A3540428FEB7100014A784 /* XPWishGiftHistoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3540328FEB7100014A784 /* XPWishGiftHistoryViewController.m */; };
|
||||
E8A3540728FEBD460014A784 /* XPWishGiftCreateItemViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3540628FEBD460014A784 /* XPWishGiftCreateItemViewController.m */; };
|
||||
E8A3540A28FEC0510014A784 /* XPWishGiftListView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A3540928FEC0510014A784 /* XPWishGiftListView.m */; };
|
||||
E8A73F8728586A6F00FD9CBC /* XPGiftWeekStarCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A73F8628586A6F00FD9CBC /* XPGiftWeekStarCollectionViewCell.m */; };
|
||||
E8A88D2727E8193400CA8837 /* XPRoomPKSelectUserView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A88D2627E8193400CA8837 /* XPRoomPKSelectUserView.m */; };
|
||||
E8A88D2A27E81C8600CA8837 /* XPRoomPKUserCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A88D2927E81C8600CA8837 /* XPRoomPKUserCollectionViewCell.m */; };
|
||||
@@ -2638,6 +2635,22 @@
|
||||
4C0A5B892E02BC3900955219 /* MedalsDetailView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MedalsDetailView.m; sourceTree = "<group>"; };
|
||||
4C0A5B8E2E03EF4B00955219 /* MedalsWearingViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MedalsWearingViewController.h; sourceTree = "<group>"; };
|
||||
4C0A5B8F2E03EF4B00955219 /* MedalsWearingViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MedalsWearingViewController.m; sourceTree = "<group>"; };
|
||||
4C0B4A382E6579C700D67F73 /* XPPKAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPPKAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A392E6579C700D67F73 /* XPPKAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPPKAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A3C2E659A2C00D67F73 /* XPRoomTypeSettingAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomTypeSettingAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A3D2E659A2C00D67F73 /* XPRoomTypeSettingAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomTypeSettingAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A3F2E659DC100D67F73 /* XPRoomBackGroundSettingAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomBackGroundSettingAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A402E659DC100D67F73 /* XPRoomBackGroundSettingAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomBackGroundSettingAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A422E65A0D300D67F73 /* XPRoomCleanMessagesAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomCleanMessagesAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A432E65A0D300D67F73 /* XPRoomCleanMessagesAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomCleanMessagesAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A452E65A51600D67F73 /* XPRoomRedPacketAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomRedPacketAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A462E65A51600D67F73 /* XPRoomRedPacketAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomRedPacketAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A482E65A5D500D67F73 /* XPRoomMusicPanelAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMusicPanelAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A492E65A5D500D67F73 /* XPRoomMusicPanelAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMusicPanelAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A4B2E65A63400D67F73 /* XPRoomRoomPhotoAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomRoomPhotoAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A4C2E65A63400D67F73 /* XPRoomRoomPhotoAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomRoomPhotoAction.m; sourceTree = "<group>"; };
|
||||
4C0B4A4E2E65A68800D67F73 /* XPRoomAppManagerAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomAppManagerAction.h; sourceTree = "<group>"; };
|
||||
4C0B4A4F2E65A68800D67F73 /* XPRoomAppManagerAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomAppManagerAction.m; sourceTree = "<group>"; };
|
||||
4C1064862E0014CF007E1586 /* NSMutableArray+Safe.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray+Safe.h"; sourceTree = "<group>"; };
|
||||
4C1064872E0014CF007E1586 /* NSMutableArray+Safe.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSMutableArray+Safe.m"; sourceTree = "<group>"; };
|
||||
4C1119702DD7218300C18416 /* MyEventsViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MyEventsViewController.h; sourceTree = "<group>"; };
|
||||
@@ -2812,6 +2825,18 @@
|
||||
4CD15D942D7FE9E400D9279F /* LoginTypesViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LoginTypesViewController.m; sourceTree = "<group>"; };
|
||||
4CD47BB32E61514900BCDA46 /* StageViewManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StageViewManager.h; sourceTree = "<group>"; };
|
||||
4CD47BB42E61514900BCDA46 /* StageViewManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StageViewManager.m; sourceTree = "<group>"; };
|
||||
4CD47BB62E619F0B00BCDA46 /* XPGiftEffectAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGiftEffectAction.h; sourceTree = "<group>"; };
|
||||
4CD47BB82E619F0B00BCDA46 /* XPRoomMoreMenuActionFactory.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMoreMenuActionFactory.h; sourceTree = "<group>"; };
|
||||
4CD47BBA2E619F1700BCDA46 /* XPRoomMoreMenuAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMoreMenuAction.h; sourceTree = "<group>"; };
|
||||
4CD47BBB2E619F1700BCDA46 /* XPRoomMoreMenuAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMoreMenuAction.m; sourceTree = "<group>"; };
|
||||
4CD47BBC2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMoreMenuActionContext.h; sourceTree = "<group>"; };
|
||||
4CD47BBD2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMoreMenuActionContext.m; sourceTree = "<group>"; };
|
||||
4CD47BC32E61A4E000BCDA46 /* XPGiftEffectAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGiftEffectAction.m; sourceTree = "<group>"; };
|
||||
4CD47BC52E61A4FA00BCDA46 /* XPRoomMoreMenuActionFactory.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMoreMenuActionFactory.m; sourceTree = "<group>"; };
|
||||
4CD47BC72E61A78D00BCDA46 /* XPRoomSettingAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomSettingAction.h; sourceTree = "<group>"; };
|
||||
4CD47BC82E61A78D00BCDA46 /* XPRoomSettingAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomSettingAction.m; sourceTree = "<group>"; };
|
||||
4CD47BCA2E61ADE400BCDA46 /* XPSocialAction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSocialAction.h; sourceTree = "<group>"; };
|
||||
4CD47BCB2E61ADE400BCDA46 /* XPSocialAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSocialAction.m; sourceTree = "<group>"; };
|
||||
4CD6FF642D673A5C00262AB7 /* AgentMessageModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AgentMessageModel.h; sourceTree = "<group>"; };
|
||||
4CD6FF652D673A5C00262AB7 /* AgentMessageModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AgentMessageModel.m; sourceTree = "<group>"; };
|
||||
4CD6FF672D673F7F00262AB7 /* AgentMessageTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AgentMessageTableViewCell.h; sourceTree = "<group>"; };
|
||||
@@ -3702,8 +3727,6 @@
|
||||
E82325FF274E48EA003A3332 /* XPUserCardItemCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPUserCardItemCollectionViewCell.m; sourceTree = "<group>"; };
|
||||
E8232601274E4AA0003A3332 /* ThemeColor+UserCard.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ThemeColor+UserCard.h"; sourceTree = "<group>"; };
|
||||
E8232602274E4AA0003A3332 /* ThemeColor+UserCard.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "ThemeColor+UserCard.m"; sourceTree = "<group>"; };
|
||||
E823E38C290BE8BD00EADD86 /* WishGiftInfoUpdateModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WishGiftInfoUpdateModel.h; sourceTree = "<group>"; };
|
||||
E823E38D290BE8BD00EADD86 /* WishGiftInfoUpdateModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WishGiftInfoUpdateModel.m; sourceTree = "<group>"; };
|
||||
E824543326F57D6E00BE8163 /* XPLoginVerifBindPhoneViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPLoginVerifBindPhoneViewController.h; sourceTree = "<group>"; };
|
||||
E824543426F57D6E00BE8163 /* XPLoginVerifBindPhoneViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPLoginVerifBindPhoneViewController.m; sourceTree = "<group>"; };
|
||||
E824543626F5820A00BE8163 /* XPLoginVerifBindPhonePresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPLoginVerifBindPhonePresenter.h; sourceTree = "<group>"; };
|
||||
@@ -4505,16 +4528,6 @@
|
||||
E89DA67127008D59008483C1 /* WalletInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WalletInfoModel.m; sourceTree = "<group>"; };
|
||||
E89DA67327009ACD008483C1 /* XPMineRechargeNavView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechargeNavView.h; sourceTree = "<group>"; };
|
||||
E89DA67427009ACD008483C1 /* XPMineRechargeNavView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineRechargeNavView.m; sourceTree = "<group>"; };
|
||||
E89DCF5228FFEC67001647EC /* XPWishGiftHistoryTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftHistoryTableViewCell.h; sourceTree = "<group>"; };
|
||||
E89DCF5328FFEC67001647EC /* XPWishGiftHistoryTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftHistoryTableViewCell.m; sourceTree = "<group>"; };
|
||||
E89DCF5528FFF076001647EC /* XPWishGiftEmptyTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftEmptyTableViewCell.h; sourceTree = "<group>"; };
|
||||
E89DCF5628FFF076001647EC /* XPWishGiftEmptyTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftEmptyTableViewCell.m; sourceTree = "<group>"; };
|
||||
E89DCF5828FFF1AD001647EC /* XPWishGiftSectionView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftSectionView.h; sourceTree = "<group>"; };
|
||||
E89DCF5928FFF1AD001647EC /* XPWishGiftSectionView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftSectionView.m; sourceTree = "<group>"; };
|
||||
E89DCF5B2900E5EE001647EC /* WishGiftHistoryModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WishGiftHistoryModel.h; sourceTree = "<group>"; };
|
||||
E89DCF5C2900E5EE001647EC /* WishGiftHistoryModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WishGiftHistoryModel.m; sourceTree = "<group>"; };
|
||||
E89DCF5E2900F4FB001647EC /* XPWishGiftEnterView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftEnterView.h; sourceTree = "<group>"; };
|
||||
E89DCF5F2900F4FB001647EC /* XPWishGiftEnterView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftEnterView.m; sourceTree = "<group>"; };
|
||||
E8A03DFD27635F960098D9EA /* XPRoomCandyGiftView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomCandyGiftView.h; sourceTree = "<group>"; };
|
||||
E8A03DFE27635F960098D9EA /* XPRoomCandyGiftView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomCandyGiftView.m; sourceTree = "<group>"; };
|
||||
E8A30BE128534A28003B4873 /* XPSessionFindNewViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSessionFindNewViewController.h; sourceTree = "<group>"; };
|
||||
@@ -4534,29 +4547,6 @@
|
||||
E8A30BF828534E48003B4873 /* XPSessionFindNewEmptyTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSessionFindNewEmptyTableViewCell.m; sourceTree = "<group>"; };
|
||||
E8A3538328FD67320014A784 /* GiftLuckyBroadcastModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiftLuckyBroadcastModel.h; sourceTree = "<group>"; };
|
||||
E8A3538428FD67320014A784 /* GiftLuckyBroadcastModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiftLuckyBroadcastModel.m; sourceTree = "<group>"; };
|
||||
E8A3538C28FE5CED0014A784 /* Api+WishGift.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Api+WishGift.h"; sourceTree = "<group>"; };
|
||||
E8A3538D28FE5CED0014A784 /* Api+WishGift.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+WishGift.m"; sourceTree = "<group>"; };
|
||||
E8A3538F28FE5F0F0014A784 /* WishGiftInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WishGiftInfoModel.h; sourceTree = "<group>"; };
|
||||
E8A3539028FE5F0F0014A784 /* WishGiftInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WishGiftInfoModel.m; sourceTree = "<group>"; };
|
||||
E8A3539228FE605F0014A784 /* WishGiftUserModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WishGiftUserModel.h; sourceTree = "<group>"; };
|
||||
E8A3539328FE605F0014A784 /* WishGiftUserModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WishGiftUserModel.m; sourceTree = "<group>"; };
|
||||
E8A3539528FE7C250014A784 /* XPWishGiftPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftPresenter.h; sourceTree = "<group>"; };
|
||||
E8A3539628FE7C250014A784 /* XPWishGiftPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftPresenter.m; sourceTree = "<group>"; };
|
||||
E8A3539828FE7C4F0014A784 /* XPWishGiftProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftProtocol.h; sourceTree = "<group>"; };
|
||||
E8A3539928FE840A0014A784 /* XPWishGiftViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftViewController.h; sourceTree = "<group>"; };
|
||||
E8A3539A28FE840A0014A784 /* XPWishGiftViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftViewController.m; sourceTree = "<group>"; };
|
||||
E8A3539E28FE84670014A784 /* XPWishGiftInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftInfoView.h; sourceTree = "<group>"; };
|
||||
E8A3539F28FE84670014A784 /* XPWishGiftInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftInfoView.m; sourceTree = "<group>"; };
|
||||
E8A353A128FE90F60014A784 /* XPWishGiftCreateViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftCreateViewController.h; sourceTree = "<group>"; };
|
||||
E8A353A228FE90F60014A784 /* XPWishGiftCreateViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftCreateViewController.m; sourceTree = "<group>"; };
|
||||
E8A353FF28FEAC5E0014A784 /* XPWishGiftTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftTableViewCell.h; sourceTree = "<group>"; };
|
||||
E8A3540028FEAC5E0014A784 /* XPWishGiftTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftTableViewCell.m; sourceTree = "<group>"; };
|
||||
E8A3540228FEB7100014A784 /* XPWishGiftHistoryViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftHistoryViewController.h; sourceTree = "<group>"; };
|
||||
E8A3540328FEB7100014A784 /* XPWishGiftHistoryViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftHistoryViewController.m; sourceTree = "<group>"; };
|
||||
E8A3540528FEBD460014A784 /* XPWishGiftCreateItemViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftCreateItemViewController.h; sourceTree = "<group>"; };
|
||||
E8A3540628FEBD460014A784 /* XPWishGiftCreateItemViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftCreateItemViewController.m; sourceTree = "<group>"; };
|
||||
E8A3540828FEC0510014A784 /* XPWishGiftListView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPWishGiftListView.h; sourceTree = "<group>"; };
|
||||
E8A3540928FEC0510014A784 /* XPWishGiftListView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPWishGiftListView.m; sourceTree = "<group>"; };
|
||||
E8A72BBA2A3AFB2F00B2EC07 /* PrefixHeader.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrefixHeader.pch; sourceTree = "<group>"; };
|
||||
E8A73F8528586A6F00FD9CBC /* XPGiftWeekStarCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGiftWeekStarCollectionViewCell.h; sourceTree = "<group>"; };
|
||||
E8A73F8628586A6F00FD9CBC /* XPGiftWeekStarCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGiftWeekStarCollectionViewCell.m; sourceTree = "<group>"; };
|
||||
@@ -6916,6 +6906,44 @@
|
||||
path = Share;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4CD47BB72E619F0B00BCDA46 /* Action */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4C0B4A382E6579C700D67F73 /* XPPKAction.h */,
|
||||
4C0B4A392E6579C700D67F73 /* XPPKAction.m */,
|
||||
4CD47BCA2E61ADE400BCDA46 /* XPSocialAction.h */,
|
||||
4CD47BCB2E61ADE400BCDA46 /* XPSocialAction.m */,
|
||||
4CD47BB62E619F0B00BCDA46 /* XPGiftEffectAction.h */,
|
||||
4CD47BC32E61A4E000BCDA46 /* XPGiftEffectAction.m */,
|
||||
4CD47BC72E61A78D00BCDA46 /* XPRoomSettingAction.h */,
|
||||
4CD47BC82E61A78D00BCDA46 /* XPRoomSettingAction.m */,
|
||||
4C0B4A3C2E659A2C00D67F73 /* XPRoomTypeSettingAction.h */,
|
||||
4C0B4A3D2E659A2C00D67F73 /* XPRoomTypeSettingAction.m */,
|
||||
4C0B4A3F2E659DC100D67F73 /* XPRoomBackGroundSettingAction.h */,
|
||||
4C0B4A402E659DC100D67F73 /* XPRoomBackGroundSettingAction.m */,
|
||||
4C0B4A422E65A0D300D67F73 /* XPRoomCleanMessagesAction.h */,
|
||||
4C0B4A432E65A0D300D67F73 /* XPRoomCleanMessagesAction.m */,
|
||||
4C0B4A452E65A51600D67F73 /* XPRoomRedPacketAction.h */,
|
||||
4C0B4A462E65A51600D67F73 /* XPRoomRedPacketAction.m */,
|
||||
4C0B4A482E65A5D500D67F73 /* XPRoomMusicPanelAction.h */,
|
||||
4C0B4A492E65A5D500D67F73 /* XPRoomMusicPanelAction.m */,
|
||||
4C0B4A4B2E65A63400D67F73 /* XPRoomRoomPhotoAction.h */,
|
||||
4C0B4A4C2E65A63400D67F73 /* XPRoomRoomPhotoAction.m */,
|
||||
4C0B4A4E2E65A68800D67F73 /* XPRoomAppManagerAction.h */,
|
||||
4C0B4A4F2E65A68800D67F73 /* XPRoomAppManagerAction.m */,
|
||||
);
|
||||
path = Action;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4CD47BB92E619F0B00BCDA46 /* Factory */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4CD47BB82E619F0B00BCDA46 /* XPRoomMoreMenuActionFactory.h */,
|
||||
4CD47BC52E61A4FA00BCDA46 /* XPRoomMoreMenuActionFactory.m */,
|
||||
);
|
||||
path = Factory;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4CE746C92D929D500094E496 /* Common */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -10666,104 +10694,6 @@
|
||||
path = Cell;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538628FE5C5B0014A784 /* WishGift */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3538728FE5C9B0014A784 /* Model */,
|
||||
E8A3538B28FE5CC80014A784 /* Api */,
|
||||
E8A3538A28FE5CB90014A784 /* View */,
|
||||
E8A3538928FE5CB00014A784 /* Presenter */,
|
||||
E8A3538828FE5CA70014A784 /* Protocol */,
|
||||
);
|
||||
path = WishGift;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538728FE5C9B0014A784 /* Model */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3538F28FE5F0F0014A784 /* WishGiftInfoModel.h */,
|
||||
E8A3539028FE5F0F0014A784 /* WishGiftInfoModel.m */,
|
||||
E8A3539228FE605F0014A784 /* WishGiftUserModel.h */,
|
||||
E8A3539328FE605F0014A784 /* WishGiftUserModel.m */,
|
||||
E89DCF5B2900E5EE001647EC /* WishGiftHistoryModel.h */,
|
||||
E89DCF5C2900E5EE001647EC /* WishGiftHistoryModel.m */,
|
||||
E823E38C290BE8BD00EADD86 /* WishGiftInfoUpdateModel.h */,
|
||||
E823E38D290BE8BD00EADD86 /* WishGiftInfoUpdateModel.m */,
|
||||
);
|
||||
path = Model;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538828FE5CA70014A784 /* Protocol */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3539828FE7C4F0014A784 /* XPWishGiftProtocol.h */,
|
||||
);
|
||||
path = Protocol;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538928FE5CB00014A784 /* Presenter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3539528FE7C250014A784 /* XPWishGiftPresenter.h */,
|
||||
E8A3539628FE7C250014A784 /* XPWishGiftPresenter.m */,
|
||||
);
|
||||
path = Presenter;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538A28FE5CB90014A784 /* View */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3539D28FE84470014A784 /* Cell */,
|
||||
E8A3539C28FE84400014A784 /* View */,
|
||||
E8A3539928FE840A0014A784 /* XPWishGiftViewController.h */,
|
||||
E8A3539A28FE840A0014A784 /* XPWishGiftViewController.m */,
|
||||
E8A353A128FE90F60014A784 /* XPWishGiftCreateViewController.h */,
|
||||
E8A353A228FE90F60014A784 /* XPWishGiftCreateViewController.m */,
|
||||
E8A3540228FEB7100014A784 /* XPWishGiftHistoryViewController.h */,
|
||||
E8A3540328FEB7100014A784 /* XPWishGiftHistoryViewController.m */,
|
||||
E8A3540528FEBD460014A784 /* XPWishGiftCreateItemViewController.h */,
|
||||
E8A3540628FEBD460014A784 /* XPWishGiftCreateItemViewController.m */,
|
||||
);
|
||||
path = View;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3538B28FE5CC80014A784 /* Api */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3538C28FE5CED0014A784 /* Api+WishGift.h */,
|
||||
E8A3538D28FE5CED0014A784 /* Api+WishGift.m */,
|
||||
);
|
||||
path = Api;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3539C28FE84400014A784 /* View */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A3539E28FE84670014A784 /* XPWishGiftInfoView.h */,
|
||||
E8A3539F28FE84670014A784 /* XPWishGiftInfoView.m */,
|
||||
E8A3540828FEC0510014A784 /* XPWishGiftListView.h */,
|
||||
E8A3540928FEC0510014A784 /* XPWishGiftListView.m */,
|
||||
E89DCF5828FFF1AD001647EC /* XPWishGiftSectionView.h */,
|
||||
E89DCF5928FFF1AD001647EC /* XPWishGiftSectionView.m */,
|
||||
E89DCF5E2900F4FB001647EC /* XPWishGiftEnterView.h */,
|
||||
E89DCF5F2900F4FB001647EC /* XPWishGiftEnterView.m */,
|
||||
);
|
||||
path = View;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8A3539D28FE84470014A784 /* Cell */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8A353FF28FEAC5E0014A784 /* XPWishGiftTableViewCell.h */,
|
||||
E8A3540028FEAC5E0014A784 /* XPWishGiftTableViewCell.m */,
|
||||
E89DCF5228FFEC67001647EC /* XPWishGiftHistoryTableViewCell.h */,
|
||||
E89DCF5328FFEC67001647EC /* XPWishGiftHistoryTableViewCell.m */,
|
||||
E89DCF5528FFF076001647EC /* XPWishGiftEmptyTableViewCell.h */,
|
||||
E89DCF5628FFF076001647EC /* XPWishGiftEmptyTableViewCell.m */,
|
||||
);
|
||||
path = Cell;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8AC720A26F435AF007D6E91 /* UIImageView */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -10843,7 +10773,6 @@
|
||||
180806F92729A354001FD836 /* ThemeColor+Room.h */,
|
||||
180806FA2729A354001FD836 /* ThemeColor+Room.m */,
|
||||
E82325EA274E2D52003A3332 /* UserCard */,
|
||||
E8A3538628FE5C5B0014A784 /* WishGift */,
|
||||
239D0FC82C045F92002977CE /* RoomGame */,
|
||||
E866B6E32759F96F009B002A /* XPMiniRoomView.h */,
|
||||
E866B6E42759F96F009B002A /* XPMiniRoomView.m */,
|
||||
@@ -11239,6 +11168,8 @@
|
||||
E8DEC9962764A51F0078CB70 /* MoreView */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4CD47BB72E619F0B00BCDA46 /* Action */,
|
||||
4CD47BB92E619F0B00BCDA46 /* Factory */,
|
||||
E8DEC99B2764A5620078CB70 /* Model */,
|
||||
E8DEC99A2764A55C0078CB70 /* Api */,
|
||||
E8DEC9992764A54C0078CB70 /* View */,
|
||||
@@ -11291,6 +11222,10 @@
|
||||
E8DEC99B2764A5620078CB70 /* Model */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4CD47BBA2E619F1700BCDA46 /* XPRoomMoreMenuAction.h */,
|
||||
4CD47BBB2E619F1700BCDA46 /* XPRoomMoreMenuAction.m */,
|
||||
4CD47BBC2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.h */,
|
||||
4CD47BBD2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.m */,
|
||||
E8DEC99F2764A5D20078CB70 /* XPRoomMoreItemModel.h */,
|
||||
E8DEC9A02764A5D20078CB70 /* XPRoomMoreItemModel.m */,
|
||||
E8412F9727799249006E1101 /* InviteFansModel.h */,
|
||||
@@ -12121,7 +12056,6 @@
|
||||
4CFBE0CD2DAD0FC400A923AF /* PIGiftBravoGiftBroadcastView.m in Sources */,
|
||||
E890BC07273CF1800007C46B /* XPGiftCountCollectionViewCell.m in Sources */,
|
||||
E88C72A02828FCD40047FB2B /* XPMusicLibraryPlayView.m in Sources */,
|
||||
E823E38E290BE8BD00EADD86 /* WishGiftInfoUpdateModel.m in Sources */,
|
||||
E80EC80A28ACD84000D133C5 /* QEmotionBoardView.m in Sources */,
|
||||
235A451A2B04A352009753F5 /* PIRoomActivityWebView.m in Sources */,
|
||||
4CBDC4242DC0B078005A75B9 /* EventCenterViewController.m in Sources */,
|
||||
@@ -12130,12 +12064,10 @@
|
||||
E87E625D2A3F5622002F68C9 /* XPNewHomeViewController.m in Sources */,
|
||||
E85E7B202A4EB0D300B6D00A /* XPMineGuildIncomeDetailViewController.m in Sources */,
|
||||
E84A2EA82A5288FD00D6AF8A /* XPGoldDetailsChooseRoomCell.m in Sources */,
|
||||
E8A353A328FE90F60014A784 /* XPWishGiftCreateViewController.m in Sources */,
|
||||
2331C1AF2A60F32D00E1D940 /* XPCandyTreeRankView.m in Sources */,
|
||||
180116FC279E8CCE00F2CBC0 /* NVDate.m in Sources */,
|
||||
E801275827E347FD00BAC3F2 /* RoomPKRecordModel.m in Sources */,
|
||||
E8E0DAE0285C20E500566A2F /* MessageContentFindNewGreetView.m in Sources */,
|
||||
E8A3540128FEAC5E0014A784 /* XPWishGiftTableViewCell.m in Sources */,
|
||||
237700E32BC7D7C000D661F1 /* NSMutableAttributedString+MSRTL.m in Sources */,
|
||||
54B9C6EA2C9C2DDC003F1CC5 /* GuildInfo.m in Sources */,
|
||||
234D821E2AEC57CF0022EFEB /* YYTextAsyncLayer+PITextAsyncLayer.m in Sources */,
|
||||
@@ -12218,7 +12150,6 @@
|
||||
E8AC723226F49710007D6E91 /* XPMineNotificationTableViewCell.m in Sources */,
|
||||
E87E62592A3F560B002F68C9 /* XPHomePartyViewController.m in Sources */,
|
||||
E8AC722926F488DA007D6E91 /* XPMineFeedbackProtocol.h in Sources */,
|
||||
E8A3539128FE5F0F0014A784 /* WishGiftInfoModel.m in Sources */,
|
||||
2305EEF62AD67E5500AD403C /* PIRoomPhotoAlbumItemCell.m in Sources */,
|
||||
E85E7B3C2A4EB0D300B6D00A /* XPGuildSuperAdminRoomCollectionViewCell.m in Sources */,
|
||||
237700EC2BC914B400D661F1 /* UISwipeGestureRecognizer+MSRTL.m in Sources */,
|
||||
@@ -12228,7 +12159,6 @@
|
||||
E85E7B2A2A4EB0D300B6D00A /* XPGuildTimeMonthPickerView.m in Sources */,
|
||||
E87E62782A3F5907002F68C9 /* XPNewHomePartyTableViewCell.m in Sources */,
|
||||
238B37B72AC55A2C00BFC9D5 /* XPTreasureFairySendRecordCell.m in Sources */,
|
||||
E8A3539B28FE840A0014A784 /* XPWishGiftViewController.m in Sources */,
|
||||
E8950183282CAC6A007E459A /* XPMomentsPhotoView.m in Sources */,
|
||||
E8AC721E26F472BF007D6E91 /* XPMineSettingProtocol.h in Sources */,
|
||||
E8F63CB4298B563D00B338BA /* Api+SayHello.m in Sources */,
|
||||
@@ -12249,6 +12179,7 @@
|
||||
9BCB99A628F582EC00466D64 /* XPMineCollectRoomEditCell.m in Sources */,
|
||||
E8E70D7E26F2F19D00F03460 /* Api+Mine.m in Sources */,
|
||||
E85E7B3B2A4EB0D300B6D00A /* XPGuildSearchSuperAdminTableViewCell.m in Sources */,
|
||||
4C0B4A4D2E65A63400D67F73 /* XPRoomRoomPhotoAction.m in Sources */,
|
||||
54C3895F2C2189DD00FD47B1 /* XPHomeMinePresenter.m in Sources */,
|
||||
E8751E6E28A64F990056EF44 /* XPSailingEmptyTableViewCell.m in Sources */,
|
||||
E8950189282CFFB1007E459A /* XPMomentsLayoutConfig.m in Sources */,
|
||||
@@ -12295,8 +12226,11 @@
|
||||
23E9EAAE2A84C9B800B792F2 /* XPMineUserInfoTagView.m in Sources */,
|
||||
236B2E4E2AA07D06003967A8 /* Api+LittleGame.m in Sources */,
|
||||
237700E02BC7D78600D661F1 /* MSBaseRTLFlowLayout.m in Sources */,
|
||||
4C0B4A412E659DC100D67F73 /* XPRoomBackGroundSettingAction.m in Sources */,
|
||||
4CEB9EB32D0AFCE200443480 /* NineteenMicStageView.m in Sources */,
|
||||
4C0B4A3E2E659A2C00D67F73 /* XPRoomTypeSettingAction.m in Sources */,
|
||||
2331C1B32A60F32D00E1D940 /* XPCandyTreeMoreRuleCell.m in Sources */,
|
||||
4C0B4A3A2E6579C700D67F73 /* XPPKAction.m in Sources */,
|
||||
14A6034C29A35EE600D2A6A5 /* XPMineItemTableViewCell.m in Sources */,
|
||||
9BAC92F528E6E63000147DD8 /* XPRoomInsideOperationCell.m in Sources */,
|
||||
9BE570BC28F65B7200D491A5 /* XPMineCollectRoomCell.m in Sources */,
|
||||
@@ -12381,6 +12315,7 @@
|
||||
E8A3538528FD67320014A784 /* GiftLuckyBroadcastModel.m in Sources */,
|
||||
9B4C5B86292F81FA00CEA41B /* XPSessionListFansPartyModel.m in Sources */,
|
||||
547080DB2CD0EEB4009879E5 /* CustomRoomBGContentViewController.m in Sources */,
|
||||
4CD47BC42E61A4E000BCDA46 /* XPGiftEffectAction.m in Sources */,
|
||||
237B94BD2A984DA7007853E3 /* XPNobleTrumpetModel.m in Sources */,
|
||||
E82325F5274E2E09003A3332 /* XPUserCardPresenter.m in Sources */,
|
||||
236B2E4C2AA07D06003967A8 /* XPLittleGameRoomOpenView.m in Sources */,
|
||||
@@ -12416,7 +12351,6 @@
|
||||
9BD63FB4277EF1B3006EB744 /* XPReleaseRadioModel.m in Sources */,
|
||||
E80EC8C228ACF97A00D133C5 /* QEEmotionImageView.m in Sources */,
|
||||
E8A03DFF27635F960098D9EA /* XPRoomCandyGiftView.m in Sources */,
|
||||
E8A3538E28FE5CED0014A784 /* Api+WishGift.m in Sources */,
|
||||
180116F9279E8C4C00F2CBC0 /* PLTimeUtil.m in Sources */,
|
||||
23CEFC502AFB8FC100576D89 /* UILabel+YBAttributeTextTapAction.m in Sources */,
|
||||
E87E545429AA05EA00EBE52B /* XPFootPrintNavView.m in Sources */,
|
||||
@@ -12454,8 +12388,8 @@
|
||||
E890BC0D273D09A50007C46B /* XPGiftCountView.m in Sources */,
|
||||
E880B3B2278C1D1800A83B0D /* XPAcrossRoomPKRuleView.m in Sources */,
|
||||
23E9E9A42A80DEAF00B792F2 /* XPMineGuildPersonalBillRecordContentView.m in Sources */,
|
||||
E8A3539428FE605F0014A784 /* WishGiftUserModel.m in Sources */,
|
||||
E81C1B262770663B0020D1E4 /* XPArrangeMicTableViewCell.m in Sources */,
|
||||
4CD47BCC2E61ADE400BCDA46 /* XPSocialAction.m in Sources */,
|
||||
238B37D22AC55A2C00BFC9D5 /* XPTreasureFairyExchangeView.m in Sources */,
|
||||
E81A652B2834E4F600F55894 /* XPMomentsAttentionViewController.m in Sources */,
|
||||
E8E20BEC2816A5B90033B688 /* XPMineBlackListViewController.m in Sources */,
|
||||
@@ -12473,6 +12407,7 @@
|
||||
23D321D22ADD0EBC006B259C /* PIRoomPhotoAlbumItemPresenter.m in Sources */,
|
||||
4CFBE0CA2DAD085700A923AF /* BravoGiftTabInfomationModel.m in Sources */,
|
||||
239D0FD22C046EAD002977CE /* MSTabbarRoomGameView.m in Sources */,
|
||||
4CD47BC62E61A4FA00BCDA46 /* XPRoomMoreMenuActionFactory.m in Sources */,
|
||||
4C864A052D561E1D00191AE0 /* LuckyPackageLogicManager.m in Sources */,
|
||||
9BFE992E288142FD009DA429 /* RoomClassifyModel.m in Sources */,
|
||||
2331C1B72A60F32D00E1D940 /* XPCandyRankContainerView.m in Sources */,
|
||||
@@ -12517,7 +12452,6 @@
|
||||
239141C92AE1358F00322CA9 /* PIInputEntireServerScrollingView.m in Sources */,
|
||||
E8AA6EF227DF1E97009B4C2B /* XPRoomTopicPresenter.m in Sources */,
|
||||
9BF4BEBC28D4182E009CF6C2 /* XPOpenRedPacketModel.m in Sources */,
|
||||
E89DCF5D2900E5EE001647EC /* WishGiftHistoryModel.m in Sources */,
|
||||
E873EB0C2809850D0071030D /* MessageContentCustomView.m in Sources */,
|
||||
238B37D42AC55A2C00BFC9D5 /* XPTreasureFailrySummonBallView.m in Sources */,
|
||||
E884C36F2743AAC800E1EBED /* AttachmentModel.m in Sources */,
|
||||
@@ -12540,7 +12474,6 @@
|
||||
4CC312242D7987A200F57A07 /* ShareHelder.m in Sources */,
|
||||
E88863D3278ED4C0004BCFAB /* Timestamp.m in Sources */,
|
||||
23E7FE9C2BB6CD42008F6800 /* XPNobleCenterWindow.m in Sources */,
|
||||
E8A3540A28FEC0510014A784 /* XPWishGiftListView.m in Sources */,
|
||||
238B37BF2AC55A2C00BFC9D5 /* XPTreasureFairyStoreResultView.m in Sources */,
|
||||
E88863CF278EC393004BCFAB /* XPAcrossRoomPKPrizeView.m in Sources */,
|
||||
4CE3A9462D22754C003F0796 /* RechargeUserModel.m in Sources */,
|
||||
@@ -12636,7 +12569,6 @@
|
||||
E8950180282CAC49007E459A /* XPMomentsUserInfoView.m in Sources */,
|
||||
18F404C927609A4300A6C548 /* MessagePresenter.m in Sources */,
|
||||
9BC9DAEF27E33B3F009EE409 /* XPRoomGiftAnimationParser.m in Sources */,
|
||||
E89DCF602900F4FB001647EC /* XPWishGiftEnterView.m in Sources */,
|
||||
E81366E326F0A1FC0076364C /* LoginBindPhoneViewController.m in Sources */,
|
||||
1464C5F329A4C18000AF7C94 /* XPIAPRechargeViewController.m in Sources */,
|
||||
E85E7B662A4EC35A00B6D00A /* XPIncomeRecordGoldDetailsModel.m in Sources */,
|
||||
@@ -12682,6 +12614,7 @@
|
||||
4CEB9EAD2D09AA0400443480 /* SexAgeLabel.m in Sources */,
|
||||
23FF42762AA6E1480055733C /* XPHomeRecommendOtherRoomView.m in Sources */,
|
||||
142721B229A7647F00C7C423 /* XPBlankViewController.m in Sources */,
|
||||
4C0B4A442E65A0D300D67F73 /* XPRoomCleanMessagesAction.m in Sources */,
|
||||
E85E7B6B2A4EC39400B6D00A /* XPMineExchangeAuthorityModel.m in Sources */,
|
||||
E836456B2A40A33300E0DBE4 /* MineSkillCardListInfoModel.m in Sources */,
|
||||
236B2E482AA07D06003967A8 /* XPLittleGameMiniStageView.m in Sources */,
|
||||
@@ -12714,6 +12647,7 @@
|
||||
2331C1AD2A60F32D00E1D940 /* XPCandyTreeAnimationModel.m in Sources */,
|
||||
E816C11527608A7500C84014 /* XPRoomMiniManager.m in Sources */,
|
||||
E81060EB2987BE8300B772F0 /* MessageGiftModel.m in Sources */,
|
||||
4C0B4A472E65A51600D67F73 /* XPRoomRedPacketAction.m in Sources */,
|
||||
E8EEB91726FC7B35007C6EBA /* XPMineUserInfoDesViewController.m in Sources */,
|
||||
544A36352C94160F00CA7858 /* RoomMenuBar.m in Sources */,
|
||||
9B1B72AC280031DB003FACE9 /* XPAnchorPKViewController.m in Sources */,
|
||||
@@ -12847,6 +12781,7 @@
|
||||
E880B3A9278BD82300A83B0D /* AcrossRoomPKInfoModel.m in Sources */,
|
||||
9B88E20F28C6305400D26FBA /* XPRoomSearchRecordViewController.m in Sources */,
|
||||
E84A2E892A527DF800D6AF8A /* XPIncomeRecordVC.m in Sources */,
|
||||
4CD47BC92E61A78D00BCDA46 /* XPRoomSettingAction.m in Sources */,
|
||||
E82D5C7A276B25D100858D6D /* SpriteSheetImageManager.m in Sources */,
|
||||
E85E7BB02A4EC99300B6D00A /* Api+GiveDiamond.m in Sources */,
|
||||
E874B88B27215EAF003954B9 /* MicroQueueModel.m in Sources */,
|
||||
@@ -12911,7 +12846,6 @@
|
||||
E8AE427327153A3500BEEBB2 /* XPRoomActivityContainerView.m in Sources */,
|
||||
23E9E99B2A80C40000B792F2 /* XPMineGuildPersonalBillRecordHeadView.m in Sources */,
|
||||
2305EEF32AD67A8D00AD403C /* PIRoomPhotoAlbumItemVC.m in Sources */,
|
||||
E89DCF5428FFEC67001647EC /* XPWishGiftHistoryTableViewCell.m in Sources */,
|
||||
2331C1B22A60F32D00E1D940 /* XPCandyTreeEmptyableViewCell.m in Sources */,
|
||||
E85E7B072A4EB0D200B6D00A /* XPGuildPresenter.m in Sources */,
|
||||
2331C17B2A5EB7AB00E1D940 /* XPNobleCenterEntranceView.m in Sources */,
|
||||
@@ -13075,10 +13009,10 @@
|
||||
E81C1B29277069DD0020D1E4 /* XPArrangeMicEmptyTableViewCell.m in Sources */,
|
||||
E8AC721C26F4720B007D6E91 /* XPMineSettingPresent.m in Sources */,
|
||||
2305EF102AD8006900AD403C /* PIRoomMessagePhotoAlbumCell.m in Sources */,
|
||||
4C0B4A502E65A68800D67F73 /* XPRoomAppManagerAction.m in Sources */,
|
||||
238B37BA2AC55A2C00BFC9D5 /* XPTreasureFairyFriendView.m in Sources */,
|
||||
E81060EE2987C35700B772F0 /* MessageTextClickModel.m in Sources */,
|
||||
E87AE8C5284E1A8400CAFBB3 /* XPRoomNewUserGreetView.m in Sources */,
|
||||
E8A3540728FEBD460014A784 /* XPWishGiftCreateItemViewController.m in Sources */,
|
||||
E87E627B2A3F5A0D002F68C9 /* XPNewHomeRecommendPresenter.m in Sources */,
|
||||
14DCAD08299B36A500A7DD31 /* XPLoginPwdViewController.m in Sources */,
|
||||
E81060F42987C6B200B772F0 /* MessageOpenLiveModel.m in Sources */,
|
||||
@@ -13122,7 +13056,6 @@
|
||||
9BC5C91C277C8A7B007C8719 /* XPReleaseRadioViewController.m in Sources */,
|
||||
23B2AEC42A6516C200543D17 /* LoginForgetPasswordViewController.m in Sources */,
|
||||
186A534C26FC6ED900D67B2C /* TTAlertView.m in Sources */,
|
||||
E8A3540428FEB7100014A784 /* XPWishGiftHistoryViewController.m in Sources */,
|
||||
23E9EB1E2A84DA5F00B792F2 /* XPMineUserInfoNavView.m in Sources */,
|
||||
E85E7B332A4EB0D300B6D00A /* XPGuildIncomeSectionView.m in Sources */,
|
||||
E85E7B0F2A4EB0D200B6D00A /* GuildRoomInfoModel.m in Sources */,
|
||||
@@ -13284,6 +13217,8 @@
|
||||
238B37BB2AC55A2C00BFC9D5 /* XPTreasureFairySummonView.m in Sources */,
|
||||
236B2E4B2AA07D06003967A8 /* XPLittleGameRoomListView.m in Sources */,
|
||||
9BE01AD428927E9C00B50299 /* XPDressUpShopListViewController.m in Sources */,
|
||||
4CD47BBE2E619F1700BCDA46 /* XPRoomMoreMenuAction.m in Sources */,
|
||||
4CD47BBF2E619F1700BCDA46 /* XPRoomMoreMenuActionContext.m in Sources */,
|
||||
239D0FED2C057362002977CE /* Api+MSRoomGameApi.m in Sources */,
|
||||
9B41D36E282649230048C588 /* XPWeekStarRankUserModel.m in Sources */,
|
||||
E824545926F5E65900BE8163 /* XPMineVerifIdentityView.m in Sources */,
|
||||
@@ -13336,7 +13271,6 @@
|
||||
9BD798B72926362F003E03E6 /* XPSessionListHeadItem.m in Sources */,
|
||||
E80487652717DDD9008595F2 /* XPRoomMenuItem.m in Sources */,
|
||||
E895018C282D0701007E459A /* XPMomentsTopicView.m in Sources */,
|
||||
E8A353A028FE84670014A784 /* XPWishGiftInfoView.m in Sources */,
|
||||
E89BD7D4277D471100E31B19 /* XPRoomOnlineTableViewCell.m in Sources */,
|
||||
1427219329A75F6F00C7C423 /* MultipartMessageHeader.m in Sources */,
|
||||
E8412F9627795E34006E1101 /* XPRoomInviteFansView.m in Sources */,
|
||||
@@ -13367,6 +13301,7 @@
|
||||
236B2E422AA07D06003967A8 /* SudCommon.m in Sources */,
|
||||
E88749B6282B8FC600C3C7DB /* MomentsInfoModel.m in Sources */,
|
||||
E89D60BA271D643A001F8895 /* Api+Room.m in Sources */,
|
||||
4C0B4A4A2E65A5D500D67F73 /* XPRoomMusicPanelAction.m in Sources */,
|
||||
E84843B227F5A0740050D365 /* XPRomPKResultTitleLabel.m in Sources */,
|
||||
E80EC80F28ACD84000D133C5 /* QEmotion.m in Sources */,
|
||||
E877A7EB2783E24700EFACED /* DatingStageView.m in Sources */,
|
||||
@@ -13381,7 +13316,6 @@
|
||||
4C1119722DD7218300C18416 /* MyEventsViewController.m in Sources */,
|
||||
9B1B7292280010E8003FACE9 /* Api+FansTeam.m in Sources */,
|
||||
4C815A172CFEB758002A46A6 /* SuperBlockViewController.m in Sources */,
|
||||
E8A3539728FE7C250014A784 /* XPWishGiftPresenter.m in Sources */,
|
||||
E85E7B142A4EB0D200B6D00A /* GuildAuthModel.m in Sources */,
|
||||
4CE746CA2D929D500094E496 /* BaseRoomBannerView.m in Sources */,
|
||||
9BE01ADE2892A66D00B50299 /* DressUpShopModel.m in Sources */,
|
||||
@@ -13455,7 +13389,6 @@
|
||||
E85E7B252A4EB0D300B6D00A /* XPMineGuildChooseManagerViewController.m in Sources */,
|
||||
E87E91522796A15500A7B3F2 /* MicroExtModel.m in Sources */,
|
||||
E8788948273A55D000BF1D57 /* XPGiftBarView.m in Sources */,
|
||||
E89DCF5728FFF076001647EC /* XPWishGiftEmptyTableViewCell.m in Sources */,
|
||||
237700D32BC7CC7C00D661F1 /* NSObject+MJExtension.m in Sources */,
|
||||
4C886BEE2E014B6C006F0BA7 /* Api+Medals.m in Sources */,
|
||||
E8D4DE442940462C00EC788D /* XPGiftTwelveStarBroadcastView.m in Sources */,
|
||||
@@ -13469,7 +13402,6 @@
|
||||
9BAA5FF0277A23F4007453F3 /* XPPermissionsViewController.m in Sources */,
|
||||
E85E7BA02A4EC99300B6D00A /* XPMineGiveDiamondDetailsModel.m in Sources */,
|
||||
4CE746C32D9290430094E496 /* RoomBoomManager.m in Sources */,
|
||||
E89DCF5A28FFF1AD001647EC /* XPWishGiftSectionView.m in Sources */,
|
||||
4CBBB44C2DA66334001B1C6D /* MessageCPNotifyModel.m in Sources */,
|
||||
E81A654C28351D9900F55894 /* XPMonentsTopicCollectionViewCell.m in Sources */,
|
||||
E85E7B9F2A4EC99300B6D00A /* XPMineGiveDiamondPresenter.m in Sources */,
|
||||
|
@@ -19,6 +19,7 @@ UIKIT_EXTERN NSString * const kTuWenMessageHistory;///图文消息已读记录
|
||||
UIKIT_EXTERN NSString * const kRoomQuickMessageCloseCount;
|
||||
UIKIT_EXTERN NSString * const kLoginMethod;
|
||||
UIKIT_EXTERN NSString * const kMessageFromPublicRoomWithAttachmentNotification;
|
||||
UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
typedef NS_ENUM(NSUInteger, Pi_KeyType) {
|
||||
KeyType_PasswordEncode,///密码 des 加密的
|
||||
KeyType_TRTC,///TRTC key
|
||||
|
@@ -124,9 +124,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
if (myGifts.count == 0) {
|
||||
[RoomBoomResultView displayEmptyView:superView];
|
||||
} else {
|
||||
if (myGifts.count > 0) {
|
||||
[RoomBoomResultView display:superView gifts:myGifts];
|
||||
}
|
||||
}
|
||||
|
@@ -379,38 +379,6 @@
|
||||
if ([message.session.sessionId isEqualToString:self.currentPublicRoomId]) {
|
||||
[self handleMessageWithAttachmentAndFirstSecond:message];
|
||||
}
|
||||
/*
|
||||
if (message.session.sessionType == NIMSessionTypeChatroom) {
|
||||
NSString *sessionId = message.session.sessionId;
|
||||
if ([sessionId isEqualToString:self.currentPublicRoomId]) {
|
||||
|
||||
AttachmentModel *attachment;
|
||||
if (message.messageType == NIMMessageTypeCustom) {
|
||||
NIMCustomObject *obj = (NIMCustomObject *) message.messageObject;
|
||||
attachment = (AttachmentModel *) obj.attachment;
|
||||
if (attachment.first > 0 && attachment.second >0) {
|
||||
attachment.isFromPublic = YES;
|
||||
[self handleMessageWithAttachmentAndFirstSecond:message];
|
||||
}
|
||||
// if (attachment) {
|
||||
// switch (attachment.first) {
|
||||
// case CustomMessageType_Super_Gift:
|
||||
// [self handleFirst_106:attachment
|
||||
// message:message];
|
||||
// break;
|
||||
// default:
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
// NIMMessageChatroomExtension *messageExt = (NIMMessageChatroomExtension *)message.messageExt;
|
||||
// NSLog(@"PublicRoomManager: 收到公共房间消息: %@\n%@",
|
||||
// message.rawAttachContent,
|
||||
// messageExt.roomExt);
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
||||
@@ -424,27 +392,5 @@
|
||||
object:message];
|
||||
}
|
||||
|
||||
- (void)handleFirst_106:(AttachmentModel *)attachment
|
||||
message:(NIMMessage *)message {
|
||||
|
||||
// allRoomMsg
|
||||
|
||||
// 只有用户在房间时,才会转发
|
||||
if (![XPSkillCardPlayerManager shareInstance].isInRoom) {
|
||||
NSLog(@"PublicRoomManager: 用户未在房间中,跳过消息转发");
|
||||
return;
|
||||
}
|
||||
|
||||
switch (attachment.second) {
|
||||
case Custom_Message_Sub_Super_Gift:
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:@"MessageFromPublicRoomWithAttachmentNotification"
|
||||
object:message];
|
||||
NSLog(@"PublicRoomManager: 转发 106 - 1061 类型消息到房间");
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
|
@@ -161,10 +161,6 @@ typedef NS_ENUM(NSInteger, RoomDatingStateChangeType) {
|
||||
@property (nonatomic, assign) long long pkBeginTime;
|
||||
///个播随机PK匹配结束时间
|
||||
@property (nonatomic, assign) long long pkMatchStartTime;
|
||||
/// 是否有心愿礼物权限
|
||||
@property (nonatomic,assign) BOOL hasWishGiftPermit;
|
||||
///是否已经开启心愿礼物
|
||||
@property (nonatomic,assign) BOOL hasOpenWishGift;
|
||||
///寻爱之旅的配置
|
||||
@property (nonatomic,strong) CandyTreeSwitchModel *findLoveDrawSwitchVo;
|
||||
///夺宝精灵的配置
|
||||
|
@@ -29,7 +29,6 @@
|
||||
#import "XPRoomMiniManager.h"
|
||||
#import "Api+RoomPK.h"
|
||||
#import "Api+Room.h"
|
||||
#import "Api+WishGift.h"
|
||||
#import "NSObject+MJExtension.h"
|
||||
#import "NSArray+Safe.h"
|
||||
#import "NSMutableDictionary+Saft.h"
|
||||
@@ -51,8 +50,6 @@
|
||||
#import "GiftInfoModel.h"
|
||||
#import "RoomPKTeamModel.h"
|
||||
#import "RoomNewUserGreetModel.h"
|
||||
#import "WishGiftInfoModel.h"
|
||||
#import "WishGiftInfoUpdateModel.h"
|
||||
///View
|
||||
#import "XPRoomHalfWebView.h"
|
||||
#import "XPAnchorAudienceUpMicView.h"
|
||||
@@ -80,8 +77,6 @@
|
||||
#import "XPRoomHalfMessageView.h"
|
||||
#import "XPAcrossRoomPKCountDownView.h"
|
||||
#import "XPNewUserRoomGiftView.h"
|
||||
#import "XPWishGiftViewController.h"
|
||||
#import "XPWishGiftEnterView.h"
|
||||
///个播PK
|
||||
#import "XPAnchorFansTeamEntranceView.h"
|
||||
#import "XPAnchorFansTeamViewController.h"
|
||||
|
@@ -17,7 +17,6 @@
|
||||
#import "XPGiftStorage.h"
|
||||
#import "XPRoomFaceTool.h"
|
||||
#import "TTPopup.h"
|
||||
#import "Api+WishGift.h"
|
||||
#import "NSArray+Safe.h"
|
||||
#import "ClientConfig.h"
|
||||
///Model
|
||||
|
@@ -0,0 +1,38 @@
|
||||
//
|
||||
// XPGiftEffectAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "../Model/XPRoomMoreMenuAction.h"
|
||||
|
||||
@class RoomInfoModel;
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
/**
|
||||
* 礼物特效开关操作
|
||||
*/
|
||||
@interface XPGiftEffectAction : XPRoomMoreMenuAction
|
||||
|
||||
/**
|
||||
* 创建开启礼物特效的操作
|
||||
*/
|
||||
+ (instancetype)openAction;
|
||||
|
||||
/**
|
||||
* 创建关闭礼物特效的操作
|
||||
*/
|
||||
+ (instancetype)closeAction;
|
||||
|
||||
/**
|
||||
* 根据房间状态创建对应的 Action
|
||||
* @param roomInfo 房间信息
|
||||
* @return 对应的 Action 实例
|
||||
*/
|
||||
+ (instancetype)actionWithRoomInfo:(RoomInfoModel *)roomInfo;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,41 @@
|
||||
//
|
||||
// XPGiftEffectAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPGiftEffectAction.h"
|
||||
#import "RoomInfoModel.h"
|
||||
|
||||
@implementation XPGiftEffectAction
|
||||
|
||||
+ (instancetype)openAction {
|
||||
XPGiftEffectAction *action = [[XPGiftEffectAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter5");
|
||||
action.imageName = @"room_more_menu_gift_effect";
|
||||
action.type = RoomMoreMenuType_Gift_Effect_Open;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)closeAction {
|
||||
XPGiftEffectAction *action = [[XPGiftEffectAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter28");
|
||||
action.imageName = @"room_more_menu_gift_effect";
|
||||
action.type = RoomMoreMenuType_Gift_Effect_Close;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
// 根据房间状态创建对应的 Action
|
||||
+ (instancetype)actionWithRoomInfo:(RoomInfoModel *)roomInfo {
|
||||
if (roomInfo.hasAnimationEffect) {
|
||||
return [self closeAction];
|
||||
} else {
|
||||
return [self openAction];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@end
|
54
YuMi/Modules/YMRoom/View/MoreView/Action/XPPKAction.h
Normal file
54
YuMi/Modules/YMRoom/View/MoreView/Action/XPPKAction.h
Normal file
@@ -0,0 +1,54 @@
|
||||
//
|
||||
// XPPKAction.h
|
||||
// YUMI
|
||||
//
|
||||
// Created by YUMI on 2024/01/01.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
@class RoomInfoModel;
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPPKAction : XPRoomMoreMenuAction
|
||||
|
||||
// MARK: - 同房PK模式
|
||||
/// 开启同房PK模式
|
||||
+ (instancetype)roomPKOpenAction;
|
||||
|
||||
/// 关闭同房PK模式
|
||||
+ (instancetype)roomPKCloseAction;
|
||||
|
||||
// MARK: - 跨房PK
|
||||
/// 开启跨房PK
|
||||
+ (instancetype)acrossRoomPKOpenAction;
|
||||
|
||||
/// 关闭跨房PK
|
||||
+ (instancetype)acrossRoomPKCloseAction;
|
||||
|
||||
// MARK: - 主播PK
|
||||
/// 开启主播PK
|
||||
+ (instancetype)anchorPKOpenAction;
|
||||
|
||||
/// 关闭主播PK
|
||||
+ (instancetype)anchorPKCloseAction;
|
||||
|
||||
// MARK: - 相亲模式
|
||||
/// 开启相亲模式
|
||||
+ (instancetype)datingOpenAction;
|
||||
|
||||
/// 关闭相亲模式
|
||||
+ (instancetype)datingCloseAction;
|
||||
|
||||
// MARK: - 根据房间信息创建对应的Action
|
||||
/// 根据房间信息创建对应的PK Action
|
||||
/// @param roomInfo 房间信息
|
||||
+ (instancetype)roomPKActionWithRoomInfo:(RoomInfoModel *)roomInfo;
|
||||
+ (instancetype)corssPKActionWithRoomInfo:(RoomInfoModel *)roomInfo;
|
||||
+ (instancetype)anchorPKActionWithRoomInfo:(RoomInfoModel *)roomInfo;
|
||||
+ (instancetype)blindActionWithRoomInfo:(RoomInfoModel *)roomInfo;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
127
YuMi/Modules/YMRoom/View/MoreView/Action/XPPKAction.m
Normal file
127
YuMi/Modules/YMRoom/View/MoreView/Action/XPPKAction.m
Normal file
@@ -0,0 +1,127 @@
|
||||
//
|
||||
// XPPKAction.m
|
||||
// YUMI
|
||||
//
|
||||
// Created by YUMI on 2024/01/01.
|
||||
//
|
||||
|
||||
#import "XPPKAction.h"
|
||||
#import "RoomInfoModel.h"
|
||||
|
||||
@implementation XPPKAction
|
||||
|
||||
#pragma mark - 同房PK模式
|
||||
|
||||
+ (instancetype)roomPKOpenAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter1");
|
||||
action.imageName = @"room_pk_menu_icon";
|
||||
action.type = RoomMoreMenuType_Room_PK_Open;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)roomPKCloseAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter26");
|
||||
action.imageName = @"room_pk_menu_icon";
|
||||
action.type = RoomMoreMenuType_Room_PK_Close;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
#pragma mark - 跨房PK
|
||||
|
||||
+ (instancetype)acrossRoomPKOpenAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter31");
|
||||
action.imageName = @"crossroom_pk_menu_icon";
|
||||
action.type = RoomMoreMenuType_Room_Across_PK_Open;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)acrossRoomPKCloseAction{
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter31");
|
||||
action.imageName = @"crossroom_pk_menu_icon";
|
||||
action.type = RoomMoreMenuType_Room_Across_PK_Close;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
#pragma mark - 主播PK
|
||||
|
||||
+ (instancetype)anchorPKOpenAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter33");
|
||||
action.imageName = @"room_more_menu_anchor_pk";
|
||||
action.type = RoomMoreMenuType_Room_Anchor_PK_Open;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)anchorPKCloseAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter32");
|
||||
action.imageName = @"room_more_menu_anchor_pk";
|
||||
action.type = RoomMoreMenuType_Room_Anchor_PK_Close;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
#pragma mark - 相亲模式
|
||||
|
||||
+ (instancetype)datingOpenAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter8");
|
||||
action.imageName = @"room_more_menu_dating";
|
||||
action.type = RoomMoreMenuType_Room_Dating_Open;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)datingCloseAction {
|
||||
XPPKAction *action = [[XPPKAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter29");
|
||||
action.imageName = @"room_more_menu_dating";
|
||||
action.type = RoomMoreMenuType_Room_Dating_Close;
|
||||
action.titleColor = [DJDKMIMOMColor appCellBackgroundColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
#pragma mark - 根据房间信息创建Action
|
||||
+ (instancetype)roomPKActionWithRoomInfo:(RoomInfoModel *)roomInfo {
|
||||
return roomInfo.roomModeType == RoomModeType_Open_PK_Mode ? [self roomPKCloseAction] : [self roomPKOpenAction];
|
||||
}
|
||||
|
||||
+ (instancetype)corssPKActionWithRoomInfo:(RoomInfoModel *)roomInfo {
|
||||
return roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode ? [self acrossRoomPKCloseAction] : [self acrossRoomPKOpenAction];
|
||||
}
|
||||
|
||||
+ (instancetype)anchorPKActionWithRoomInfo:(RoomInfoModel *)roomInfo {
|
||||
XPPKAction *action = roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode ? [self anchorPKCloseAction] : [self anchorPKOpenAction];
|
||||
|
||||
if (roomInfo.pkState == AcrossRoomPkStateTypePenalty) {
|
||||
if ([roomInfo.winUid isEqualToString:[AccountInfoStorage instance].getUid]) {
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter15");
|
||||
} else if ([roomInfo.winUid isEqualToString:roomInfo.pkUid]) {
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter14");
|
||||
} else {
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter15");
|
||||
}
|
||||
} else if (roomInfo.pkState == AcrossRoomPkStateTypePenaltyEnd) {
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter15");
|
||||
}
|
||||
if (roomInfo.pkMatchStartTime) {
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter17");
|
||||
}
|
||||
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)blindActionWithRoomInfo:(RoomInfoModel *)roomInfo {
|
||||
return roomInfo.roomModeType == RoomModeType_Open_Blind ? [self datingCloseAction] : [self datingOpenAction];
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomAppManagerAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomAppManagerAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomAppManagerAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomAppManagerAction.h"
|
||||
|
||||
@implementation XPRoomAppManagerAction
|
||||
+ (instancetype)action {
|
||||
XPRoomAppManagerAction *action = [[XPRoomAppManagerAction alloc] init];
|
||||
action.title = YMLocalizedString(@"34_text_1");
|
||||
action.imageName = @"app_admin_icon";
|
||||
action.type = RoomMoreMenuType_App_Manager;
|
||||
action.titleColor = [UIColor orangeColor];
|
||||
return action;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomBackCleanMessagesAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomCleanMessagesAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// XPRoomBackGroundSettingAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomBackGroundSettingAction : XPRoomMoreMenuAction
|
||||
|
||||
+ (instancetype)action;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// XPRoomBackGroundSettingAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomBackGroundSettingAction.h"
|
||||
|
||||
@implementation XPRoomBackGroundSettingAction
|
||||
|
||||
+ (instancetype)action {
|
||||
XPRoomBackGroundSettingAction *action = [[XPRoomBackGroundSettingAction alloc] init];
|
||||
action.title = YMLocalizedString(@"1.0.18_0");
|
||||
action.imageName = @"room_menu_background";
|
||||
action.type = RoomMoreMenuType_Room_Type_Background;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomBackCleanMessagesAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomCleanMessagesAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// XPRoomBackCleanMessagesAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomCleanMessagesAction.h"
|
||||
|
||||
@implementation XPRoomCleanMessagesAction
|
||||
|
||||
+ (instancetype)action {
|
||||
XPRoomCleanMessagesAction *action = [[XPRoomCleanMessagesAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter20");
|
||||
action.imageName = @"room_more_menu_message_clean";
|
||||
action.type = RoomMoreMenuType_Message_Screen_Clear;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomMusicPanelAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomMusicPanelAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomMusicPanelAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMusicPanelAction.h"
|
||||
|
||||
@implementation XPRoomMusicPanelAction
|
||||
+ (instancetype)action {
|
||||
XPRoomMusicPanelAction *action = [[XPRoomMusicPanelAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPRoomMusicVoiceSettingView1");
|
||||
action.imageName = @"menu_music";
|
||||
action.type = RoomMoreMenuType_Room_Music_Panel;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomRedPacketAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomRedPacketAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomRedPacketAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomRedPacketAction.h"
|
||||
|
||||
@implementation XPRoomRedPacketAction
|
||||
+ (instancetype)action {
|
||||
XPRoomRedPacketAction *action = [[XPRoomRedPacketAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter24");
|
||||
action.imageName = @"pi_red_packet_entrance";
|
||||
action.type = RoomMoreMenuType_Room_redPacket;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomRoomPhotoAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomRoomPhotoAction : XPRoomMoreMenuAction
|
||||
+ (instancetype)action;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomRoomPhotoAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomRoomPhotoAction.h"
|
||||
|
||||
@implementation XPRoomRoomPhotoAction
|
||||
+ (instancetype)action {
|
||||
XPRoomRoomPhotoAction *action = [[XPRoomRoomPhotoAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter37");
|
||||
action.imageName = @"room_info_photo_album";
|
||||
action.type = RoomMoreMenuType_Room_Room_Photo_Album;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,24 @@
|
||||
//
|
||||
// XPRoomSettingAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
/**
|
||||
* 房间设置操作
|
||||
*/
|
||||
@interface XPRoomSettingAction : XPRoomMoreMenuAction
|
||||
|
||||
/**
|
||||
* 创建房间设置操作
|
||||
*/
|
||||
+ (instancetype)action;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// XPRoomSettingAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPRoomSettingAction.h"
|
||||
|
||||
@implementation XPRoomSettingAction
|
||||
|
||||
+ (instancetype)action {
|
||||
XPRoomSettingAction *action = [[XPRoomSettingAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter21");
|
||||
action.imageName = @"room_more_menu_setting";
|
||||
action.type = RoomMoreMenuType_Room_Setting;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// XPRoomTypeSettingAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomTypeSettingAction : XPRoomMoreMenuAction
|
||||
|
||||
+ (instancetype)action;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// XPRoomTypeSettingAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by P on 2025/9/1.
|
||||
//
|
||||
|
||||
#import "XPRoomTypeSettingAction.h"
|
||||
|
||||
@implementation XPRoomTypeSettingAction
|
||||
|
||||
+ (instancetype)action {
|
||||
XPRoomTypeSettingAction *action = [[XPRoomTypeSettingAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter25");
|
||||
action.imageName = @"room_type_selection_icon";
|
||||
action.type = RoomMoreMenuType_Room_Type_Setting;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
return action;
|
||||
}
|
||||
|
||||
@end
|
28
YuMi/Modules/YMRoom/View/MoreView/Action/XPSocialAction.h
Normal file
28
YuMi/Modules/YMRoom/View/MoreView/Action/XPSocialAction.h
Normal file
@@ -0,0 +1,28 @@
|
||||
//
|
||||
// XPSocialAction.h
|
||||
// YUMI
|
||||
//
|
||||
// Created by YUMI on 2024/12/19.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPSocialAction : XPRoomMoreMenuAction
|
||||
|
||||
// 邀请粉丝
|
||||
//+ (instancetype)inviteFansAction;
|
||||
|
||||
// 发布广播
|
||||
//+ (instancetype)releaseRadioAction;
|
||||
|
||||
// VIP小喇叭
|
||||
+ (instancetype)trumpetAction;
|
||||
|
||||
// 举报房间
|
||||
+ (instancetype)reportAction;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
53
YuMi/Modules/YMRoom/View/MoreView/Action/XPSocialAction.m
Normal file
53
YuMi/Modules/YMRoom/View/MoreView/Action/XPSocialAction.m
Normal file
@@ -0,0 +1,53 @@
|
||||
//
|
||||
// XPSocialAction.m
|
||||
// YUMI
|
||||
//
|
||||
// Created by YUMI on 2024/12/19.
|
||||
//
|
||||
|
||||
#import "XPSocialAction.h"
|
||||
|
||||
@implementation XPSocialAction
|
||||
|
||||
#pragma mark - Factory Methods
|
||||
|
||||
//+ (instancetype)inviteFansAction {
|
||||
// XPSocialAction *action = [[XPSocialAction alloc] init];
|
||||
// action.title = @"邀请粉丝"; // 暂时使用硬编码,后续改为本地化
|
||||
// action.imageName = @"room_more_menu_invite_friend"; // 使用正确的图片名称
|
||||
// action.type = RoomMoreMenuType_Invite_Fans;
|
||||
// action.isEnabled = YES;
|
||||
// action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor]; // 使用正确的标题颜色
|
||||
// return action;
|
||||
//}
|
||||
|
||||
//+ (instancetype)releaseRadioAction {
|
||||
// XPSocialAction *action = [[XPSocialAction alloc] init];
|
||||
// action.title = @"发布广播"; // 暂时使用硬编码,后续改为本地化
|
||||
// action.imageName = @"room_more_menu_release_radio"; // 使用正确的图片名称
|
||||
// action.type = RoomMoreMenuType_Release_Radio;
|
||||
// action.isEnabled = YES;
|
||||
// action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor]; // 使用正确的标题颜色
|
||||
// return action;
|
||||
//}
|
||||
|
||||
+ (instancetype)trumpetAction {
|
||||
XPSocialAction *action = [[XPSocialAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter35"); // 暂时使用硬编码,后续改为本地化
|
||||
action.imageName = @"room_more_menu_trumpet"; // 使用正确的图片名称
|
||||
action.type = RoomMoreMenuType_Room_trumpet;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor]; // 使用正确的标题颜色
|
||||
return action;
|
||||
}
|
||||
|
||||
+ (instancetype)reportAction {
|
||||
XPSocialAction *action = [[XPSocialAction alloc] init];
|
||||
action.title = YMLocalizedString(@"XPMoreMenuPresenter36");
|
||||
action.imageName = @"room_info_report";
|
||||
action.type = RoomMoreMenuType_Room_report;
|
||||
action.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor]; // 使用正确的标题颜色
|
||||
return action;
|
||||
}
|
||||
|
||||
|
||||
@end
|
@@ -0,0 +1,37 @@
|
||||
//
|
||||
// XPRoomMoreMenuActionFactory.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@class XPRoomMoreMenuActionContext;
|
||||
@class XPRoomMoreMenuAction;
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
/**
|
||||
* 房间更多菜单操作工厂类
|
||||
* 负责根据上下文创建合适的操作列表
|
||||
*/
|
||||
@interface XPRoomMoreMenuActionFactory : NSObject
|
||||
|
||||
/**
|
||||
* 创建操作列表
|
||||
* @param context 操作上下文
|
||||
* @return 操作列表
|
||||
*/
|
||||
//+ (NSArray<XPRoomMoreMenuAction *> *)createActionsWithContext:(XPRoomMoreMenuActionContext *)context;
|
||||
|
||||
/// 超管直接回使用固定组合 models (trumpet, giftEffect, appManager, report)
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createSuperAdminActionsWithContext:(XPRoomMoreMenuActionContext *)context;
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createPanelActionsWithContext:(XPRoomMoreMenuActionContext *)context isCreator:(BOOL)isCreator isManager:(BOOL)isManager isSuperAdmin:(BOOL)isSuperAdmin isOnMic:(BOOL)isOnMic;
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createPanelActionsForNoCharRoomMembersWithContext:(XPRoomMoreMenuActionContext *)context;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,145 @@
|
||||
//
|
||||
// XPRoomMoreMenuActionFactory.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuActionFactory.h"
|
||||
#import "XPRoomMoreMenuActionContext.h"
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
#import "XPGiftEffectAction.h"
|
||||
#import "XPRoomSettingAction.h"
|
||||
#import "XPRoomBackGroundSettingAction.h"
|
||||
#import "XPSocialAction.h"
|
||||
#import "XPPKAction.h"
|
||||
#import "XPRoomTypeSettingAction.h"
|
||||
#import "XPRoomRedPacketAction.h"
|
||||
#import "XPRoomMusicPanelAction.h"
|
||||
#import "XPRoomRoomPhotoAction.h"
|
||||
#import "XPRoomAppManagerAction.h"
|
||||
#import "XPRoomCleanMessagesAction.h"
|
||||
#import "RoomInfoModel.h"
|
||||
#import "ClientConfig.h"
|
||||
|
||||
@implementation XPRoomMoreMenuActionFactory
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createActionsWithContext:(XPRoomMoreMenuActionContext *)context {
|
||||
NSMutableArray *actions = [NSMutableArray array];
|
||||
|
||||
[actions addObject:[XPSocialAction trumpetAction]];
|
||||
[actions addObject:[XPGiftEffectAction actionWithRoomInfo:context.roomInfo]];
|
||||
[actions addObject:[XPRoomAppManagerAction action]];
|
||||
[actions addObject:[XPSocialAction reportAction]];
|
||||
|
||||
return actions;
|
||||
}
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createPanelActionsWithContext:(XPRoomMoreMenuActionContext *)context
|
||||
isCreator:(BOOL)isCreator
|
||||
isManager:(BOOL)isManager
|
||||
isSuperAdmin:(BOOL)isSuperAdmin
|
||||
isOnMic:(BOOL)isOnMic {
|
||||
NSMutableArray *actions = [NSMutableArray array];
|
||||
RoomInfoModel *roomInfo = context.roomInfo;
|
||||
RoomType type = roomInfo.type;
|
||||
|
||||
// 1. PK相关功能 - 按优先级顺序
|
||||
if ((isCreator || isManager || isSuperAdmin) &&
|
||||
type != RoomType_MiniGame && type != RoomType_Anchor) {
|
||||
[actions addObject:[XPPKAction roomPKActionWithRoomInfo:roomInfo]];
|
||||
}
|
||||
|
||||
if (isCreator && type != RoomType_MiniGame && type != RoomType_Anchor) {
|
||||
[actions addObject:[XPPKAction corssPKActionWithRoomInfo:roomInfo]];
|
||||
}
|
||||
|
||||
if (isCreator && type == RoomType_Anchor) {
|
||||
[actions addObject:[XPPKAction anchorPKActionWithRoomInfo:roomInfo]];
|
||||
}
|
||||
|
||||
// 2. 相亲模式 - 插入到最前面
|
||||
if ((isCreator || isManager || isSuperAdmin) &&
|
||||
roomInfo.canOpenBlindDate &&
|
||||
type != RoomType_Anchor && type != RoomType_MiniGame) {
|
||||
[actions insertObject:[XPPKAction blindActionWithRoomInfo:roomInfo] atIndex:0];
|
||||
}
|
||||
|
||||
// 3. 音乐面板 - 根据麦上状态
|
||||
if (isOnMic) {
|
||||
[actions addObject:[XPRoomMusicPanelAction action]];
|
||||
}
|
||||
|
||||
// 4. 基础功能 - 根据权限
|
||||
if (isCreator || isManager || isSuperAdmin) {
|
||||
[actions addObject:[XPSocialAction trumpetAction]];
|
||||
[actions addObject:[XPGiftEffectAction actionWithRoomInfo:roomInfo]];
|
||||
[actions addObject:[XPRoomSettingAction action]];
|
||||
[actions addObject:[XPRoomBackGroundSettingAction action]];
|
||||
[actions addObject:[XPRoomCleanMessagesAction action]];
|
||||
} else {
|
||||
[actions addObject:[XPSocialAction trumpetAction]];
|
||||
[actions addObject:[XPGiftEffectAction actionWithRoomInfo:roomInfo]];
|
||||
}
|
||||
|
||||
// 5. 通用功能
|
||||
[actions addObject:[XPSocialAction reportAction]];
|
||||
|
||||
// 6. 房间类型设置
|
||||
if ((isCreator || isManager || isSuperAdmin) &&
|
||||
roomInfo.isPermitRoom != PermitRoomType_License &&
|
||||
roomInfo.roomModeType != RoomModeType_Open_Blind &&
|
||||
type != RoomType_MiniGame && type != RoomType_Anchor) {
|
||||
[actions addObject:[XPRoomTypeSettingAction action]];
|
||||
}
|
||||
|
||||
// 7. 房间相册 - 插入到指定位置
|
||||
if (roomInfo.hasRoomAlbum) {
|
||||
NSInteger insertIndex = [self calculateRoomAlbumInsertIndex:actions];
|
||||
[actions insertObject:[XPRoomRoomPhotoAction action] atIndex:insertIndex];
|
||||
}
|
||||
|
||||
// 8. 红包功能 - 插入到指定位置
|
||||
if ([ClientConfig shareConfig].configInfo.redEnvelopeConfig.open && roomInfo.redEnvelopeOpen) {
|
||||
[actions insertObject:[XPRoomRedPacketAction action] atIndex:1];
|
||||
}
|
||||
|
||||
return actions;
|
||||
}
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createPanelActionsForNoCharRoomMembersWithContext:(XPRoomMoreMenuActionContext *)context {
|
||||
NSMutableArray *actions = [NSMutableArray array];
|
||||
RoomInfoModel *roomInfo = context.roomInfo;
|
||||
|
||||
if(roomInfo.hasRoomAlbum == YES){
|
||||
[actions addObject:[XPRoomRoomPhotoAction action]];
|
||||
}
|
||||
|
||||
if ([ClientConfig shareConfig].configInfo.redEnvelopeConfig.open && roomInfo.redEnvelopeOpen) {
|
||||
[actions addObject:[XPRoomRedPacketAction action]];
|
||||
}
|
||||
|
||||
[actions addObject:[XPSocialAction reportAction]];
|
||||
|
||||
return actions;
|
||||
}
|
||||
|
||||
+ (NSArray<XPRoomMoreMenuAction *> *)createSuperAdminActionsWithContext:(XPRoomMoreMenuActionContext *)context {
|
||||
NSMutableArray *actions = [NSMutableArray array];
|
||||
|
||||
[actions addObject:[XPSocialAction trumpetAction]];
|
||||
[actions addObject:[XPGiftEffectAction actionWithRoomInfo:context.roomInfo]];
|
||||
[actions addObject:[XPRoomAppManagerAction action]];
|
||||
[actions addObject:[XPSocialAction reportAction]];
|
||||
|
||||
return actions;
|
||||
}
|
||||
|
||||
// 计算房间相册插入位置的辅助方法
|
||||
+ (NSInteger)calculateRoomAlbumInsertIndex:(NSArray<XPRoomMoreMenuAction *> *)actions {
|
||||
// 根据原有逻辑计算插入位置
|
||||
// 这里可以简化逻辑,避免复杂的计数
|
||||
return MIN(actions.count, 3); // 插入到前3个位置
|
||||
}
|
||||
|
||||
@end
|
@@ -51,9 +51,9 @@ typedef NS_ENUM(NSInteger, RoomMoreMenuType) {
|
||||
///发红包
|
||||
RoomMoreMenuType_Room_redPacket = 20,
|
||||
///扬声器
|
||||
RoomMoreMenuType_Room_Voice = 21,
|
||||
// RoomMoreMenuType_Room_Voice = 21,
|
||||
///心愿礼物
|
||||
RoomMoreMenuType_Room_Wish_Gift = 22,
|
||||
// RoomMoreMenuType_Room_Wish_Gift = 22,
|
||||
///举报
|
||||
RoomMoreMenuType_Room_report = 23,
|
||||
///房间相册
|
||||
|
@@ -0,0 +1,47 @@
|
||||
//
|
||||
// XPRoomMoreMenuAction.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "XPRoomMoreItemModel.h"
|
||||
#import "ThemeColor+Room.h"
|
||||
#import "RoomHostDelegate.h"
|
||||
#import "XPRoomMoreMenuActionContext.h"
|
||||
|
||||
@class XPRoomMoreMenuActionContext;
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
/**
|
||||
* 房间更多菜单操作抽象基类
|
||||
* 每个具体的菜单操作都应该继承此类
|
||||
*/
|
||||
@interface XPRoomMoreMenuAction : NSObject
|
||||
|
||||
/// 操作标题
|
||||
@property (nonatomic, copy) NSString *title;
|
||||
|
||||
/// 图标名称
|
||||
@property (nonatomic, copy) NSString *imageName;
|
||||
|
||||
/// 操作类型
|
||||
@property (nonatomic, assign) RoomMoreMenuType type;
|
||||
|
||||
/// 标题颜色
|
||||
@property (nonatomic, strong) UIColor *titleColor;
|
||||
|
||||
/// 图标颜色
|
||||
@property (nonatomic, strong) UIColor *imageTintColor;
|
||||
|
||||
/**
|
||||
* 转换为数据模型
|
||||
* @return XPRoomMoreItemModel 实例
|
||||
*/
|
||||
- (XPRoomMoreItemModel *)toItemModel;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// XPRoomMoreMenuAction.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
|
||||
@implementation XPRoomMoreMenuAction
|
||||
- (XPRoomMoreItemModel *)toItemModel {
|
||||
XPRoomMoreItemModel *model = [[XPRoomMoreItemModel alloc] init];
|
||||
model.title = self.title;
|
||||
model.imageName = self.imageName;
|
||||
model.titleColor = self.titleColor;
|
||||
model.imageTintColor = self.imageTintColor;
|
||||
model.type = self.type;
|
||||
return model;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,57 @@
|
||||
//
|
||||
// XPRoomMoreMenuActionContext.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@class RoomInfoModel;
|
||||
@class UserInfoModel;
|
||||
@protocol RoomHostDelegate;
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
/**
|
||||
* 房间更多菜单操作上下文
|
||||
* 包含执行操作所需的所有依赖
|
||||
*/
|
||||
@interface XPRoomMoreMenuActionContext : NSObject
|
||||
|
||||
/// 房间信息
|
||||
@property (nonatomic, strong) RoomInfoModel *roomInfo;
|
||||
|
||||
/// 用户信息
|
||||
@property (nonatomic, strong) UserInfoModel *userInfo;
|
||||
|
||||
/// 房间代理
|
||||
@property (nonatomic, assign) id<RoomHostDelegate> hostDelegate;
|
||||
|
||||
/// 当前展示的视图控制器
|
||||
@property (nonatomic, assign) id presentingViewController;
|
||||
|
||||
/// 用户是否在麦上
|
||||
@property (nonatomic, assign) BOOL isOnMic;
|
||||
|
||||
/// 是否是超级管理员
|
||||
@property (nonatomic, assign) BOOL isSuperAdmin;
|
||||
|
||||
/// 是否是应用超级管理员
|
||||
@property (nonatomic, assign) BOOL isAppSuperAdmin;
|
||||
|
||||
/**
|
||||
* 便利构造方法
|
||||
*/
|
||||
+ (instancetype)contextWithRoomInfo:(RoomInfoModel *)roomInfo
|
||||
userInfo:(UserInfoModel * _Nullable)userInfo
|
||||
hostDelegate:(id<RoomHostDelegate> _Nullable)hostDelegate
|
||||
presentingViewController:(id _Nullable)presentingViewController
|
||||
isOnMic:(BOOL)isOnMic
|
||||
isSuperAdmin:(BOOL)isSuperAdmin
|
||||
isAppSuperAdmin:(BOOL)isAppSuperAdmin;
|
||||
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,34 @@
|
||||
//
|
||||
// XPRoomMoreMenuActionContext.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by Linus on 2025/1/13.
|
||||
//
|
||||
|
||||
#import "XPRoomMoreMenuActionContext.h"
|
||||
#import "XPMoreMenuPresenter.h"
|
||||
|
||||
@implementation XPRoomMoreMenuActionContext
|
||||
|
||||
+ (instancetype)contextWithRoomInfo:(RoomInfoModel *)roomInfo
|
||||
userInfo:(UserInfoModel * _Nullable)userInfo
|
||||
hostDelegate:(id<RoomHostDelegate> _Nullable)hostDelegate
|
||||
presentingViewController:(id _Nullable)presentingViewController
|
||||
isOnMic:(BOOL)isOnMic
|
||||
isSuperAdmin:(BOOL)isSuperAdmin
|
||||
isAppSuperAdmin:(BOOL)isAppSuperAdmin {
|
||||
|
||||
XPRoomMoreMenuActionContext *context = [[XPRoomMoreMenuActionContext alloc] init];
|
||||
context.roomInfo = roomInfo;
|
||||
context.userInfo = userInfo;
|
||||
context.hostDelegate = hostDelegate;
|
||||
context.presentingViewController = presentingViewController;
|
||||
context.isOnMic = isOnMic;
|
||||
context.isSuperAdmin = isSuperAdmin;
|
||||
context.isAppSuperAdmin = isAppSuperAdmin;
|
||||
|
||||
return context;
|
||||
}
|
||||
|
||||
|
||||
@end
|
@@ -11,6 +11,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
@class RoomInfoModel;
|
||||
@interface XPMoreMenuPresenter : BaseMvpPresenter
|
||||
|
||||
- (void)getMoreMenuDataSourceWithNewArchitecture:(RoomInfoModel *)roomInfo
|
||||
isSuperAdmin:(BOOL)isSuperAdmin
|
||||
isOnMic:(BOOL)isOnMic
|
||||
isAppSuperAdmin:(BOOL)isAppSuperAdmin;
|
||||
|
||||
///获取更多菜单
|
||||
- (void)getMoreMenuDataSource:(RoomInfoModel *)roomInfo isSuperAdmin:(BOOL)isSuperAdmin isOnMic:(BOOL)isOnMic isAppSuperAdmin:(BOOL)isAppSuperAdmin;
|
||||
|
||||
|
@@ -18,13 +18,93 @@
|
||||
#import "RoomInfoModel.h"
|
||||
#import "XPReleaseRadioModel.h"
|
||||
#import "XPNobleTrumpetModel.h"
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
#import "XPRoomMoreMenuActionContext.h"
|
||||
#import "XPRoomMoreMenuActionFactory.h"
|
||||
///P
|
||||
#import "XPMoreMenuProtocol.h"
|
||||
#import "DJDKMIMOMColor.h"
|
||||
#import <NIMSDK/NIMSDK.h>
|
||||
|
||||
@implementation XPMoreMenuPresenter
|
||||
|
||||
- (void)loadNIMMemberData:(void(^)(NSArray<NIMChatroomMember *> * _Nullable members))finish withRoomInfo:(RoomInfoModel *)roomInfo{
|
||||
if (!finish) {
|
||||
return;
|
||||
}
|
||||
|
||||
NSString * uid = [AccountInfoStorage instance].getUid;
|
||||
if (uid.length <= 0) {
|
||||
finish(nil);
|
||||
return;
|
||||
}
|
||||
NSString * roomId = [NSString stringWithFormat:@"%ld", roomInfo.roomId];
|
||||
NIMChatroomMembersByIdsRequest *request = [[NIMChatroomMembersByIdsRequest alloc]init];
|
||||
request.roomId = roomId;
|
||||
request.userIds = @[uid];
|
||||
|
||||
[[NIMSDK sharedSDK].chatroomManager fetchChatroomMembersByIds:request completion:^(NSError * _Nullable error, NSArray<NIMChatroomMember *> * _Nullable members) {
|
||||
if (members) {
|
||||
finish(members);
|
||||
} else {
|
||||
finish(nil);
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)getMoreMenuDataSourceWithNewArchitecture:(RoomInfoModel *)roomInfo
|
||||
isSuperAdmin:(BOOL)isSuperAdmin
|
||||
isOnMic:(BOOL)isOnMic
|
||||
isAppSuperAdmin:(BOOL)isAppSuperAdmin {
|
||||
// 创建上下文
|
||||
XPRoomMoreMenuActionContext *context = [XPRoomMoreMenuActionContext
|
||||
contextWithRoomInfo:roomInfo
|
||||
userInfo:nil
|
||||
hostDelegate:nil
|
||||
presentingViewController:nil
|
||||
isOnMic:isOnMic
|
||||
isSuperAdmin:isSuperAdmin
|
||||
isAppSuperAdmin:isAppSuperAdmin];
|
||||
|
||||
if (isAppSuperAdmin) {
|
||||
// 超管使用固定组合
|
||||
NSArray<XPRoomMoreMenuAction *> *actions = [XPRoomMoreMenuActionFactory createSuperAdminActionsWithContext:context];
|
||||
[self convertActionsToModels:actions];
|
||||
} else {
|
||||
// 普通用户根据权限创建
|
||||
@kWeakify(self);
|
||||
[self loadNIMMemberData:^(NSArray<NIMChatroomMember *> * _Nullable members) {
|
||||
@kStrongify(self);
|
||||
|
||||
BOOL isCreator = NO;
|
||||
BOOL isManager = NO;
|
||||
|
||||
if (members && members.count > 0) {
|
||||
NIMChatroomMember *member = members.firstObject;
|
||||
isCreator = member.type == NIMChatroomMemberTypeCreator;
|
||||
isManager = member.type == NIMChatroomMemberTypeManager;
|
||||
}
|
||||
|
||||
NSArray<XPRoomMoreMenuAction *> *actions = [XPRoomMoreMenuActionFactory
|
||||
createPanelActionsWithContext:context
|
||||
isCreator:isCreator
|
||||
isManager:isManager
|
||||
isSuperAdmin:isSuperAdmin
|
||||
isOnMic:isOnMic];
|
||||
|
||||
[self convertActionsToModels:actions];
|
||||
} withRoomInfo:roomInfo];
|
||||
}
|
||||
}
|
||||
|
||||
// 将 Action 转换为数据模型
|
||||
- (void)convertActionsToModels:(NSArray<XPRoomMoreMenuAction *> *)actions {
|
||||
NSMutableArray *models = [NSMutableArray array];
|
||||
for (XPRoomMoreMenuAction *action in actions) {
|
||||
[models addObject:[action toItemModel]];
|
||||
}
|
||||
[[self getView] getMoreMenuDataSuccess:models];
|
||||
}
|
||||
|
||||
- (void)getMoreMenuDataSource:(RoomInfoModel *)roomInfo isSuperAdmin:(BOOL)isSuperAdmin isOnMic:(BOOL)isOnMic isAppSuperAdmin:(BOOL)isAppSuperAdmin{
|
||||
XPRoomMoreItemModel * roomPK = [[XPRoomMoreItemModel alloc] init];
|
||||
roomPK.title = roomInfo.roomModeType == RoomModeType_Open_PK_Mode ?YMLocalizedString(@"XPMoreMenuPresenter26") : YMLocalizedString(@"XPMoreMenuPresenter1");
|
||||
@@ -49,12 +129,6 @@
|
||||
giftEffect.imageName = @"room_more_menu_gift_effect";
|
||||
giftEffect.type = roomInfo.hasAnimationEffect ? RoomMoreMenuType_Gift_Effect_Close : RoomMoreMenuType_Gift_Effect_Open;
|
||||
giftEffect.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
|
||||
XPRoomMoreItemModel * wishGift = [[XPRoomMoreItemModel alloc] init];
|
||||
wishGift.title = YMLocalizedString(@"XPMoreMenuPresenter6");
|
||||
wishGift.imageName = @"room_more_menu_wish_gift";
|
||||
wishGift.type = RoomMoreMenuType_Room_Wish_Gift;
|
||||
wishGift.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
|
||||
XPRoomMoreItemModel * dating = [[XPRoomMoreItemModel alloc] init];
|
||||
dating.title = roomInfo.roomModeType == RoomModeType_Open_Blind ? YMLocalizedString(@"XPMoreMenuPresenter29") : YMLocalizedString(@"XPMoreMenuPresenter8");
|
||||
@@ -93,18 +167,6 @@
|
||||
roomSetting.imageName = @"room_more_menu_setting";
|
||||
roomSetting.type = RoomMoreMenuType_Room_Setting;
|
||||
roomSetting.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
|
||||
XPRoomMoreItemModel * inviteFriend = [[XPRoomMoreItemModel alloc] init];
|
||||
inviteFriend.title = YMLocalizedString(@"XPMoreMenuPresenter22");
|
||||
inviteFriend.imageName = @"room_more_menu_invite_friend";
|
||||
inviteFriend.type = RoomMoreMenuType_Invite_Fans;
|
||||
inviteFriend.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
|
||||
XPRoomMoreItemModel * releaseRadio = [[XPRoomMoreItemModel alloc] init];
|
||||
releaseRadio.title = YMLocalizedString(@"XPMoreMenuPresenter23");
|
||||
releaseRadio.imageName = @"room_more_menu_release_radio";
|
||||
releaseRadio.type = RoomMoreMenuType_Release_Radio;
|
||||
releaseRadio.titleColor = [DJDKMIMOMColor roomMoreMenuTextColor];
|
||||
|
||||
XPRoomMoreItemModel * trumpet = [[XPRoomMoreItemModel alloc] init];
|
||||
trumpet.title = YMLocalizedString(@"XPMoreMenuPresenter35");
|
||||
@@ -198,10 +260,6 @@
|
||||
[array addObject:anchorRoomPK];
|
||||
indexOfRoomAlbum += 1;
|
||||
}
|
||||
|
||||
if ((isCreator || isManager || isSuperAdmin) && roomInfo.hasWishGiftPermit) {
|
||||
[array addObject:wishGift];
|
||||
}
|
||||
|
||||
if (isCreator || isManager || isSuperAdmin) {
|
||||
if (roomInfo.canOpenBlindDate && roomInfo.type != RoomType_Anchor && roomInfo.type != RoomType_MiniGame) {
|
||||
|
@@ -53,6 +53,11 @@
|
||||
- (void)setItemModel:(XPRoomMoreItemModel *)itemModel {
|
||||
_itemModel = itemModel;
|
||||
if (_itemModel) {
|
||||
NSLog(@"=== Cell 设置数据 ===");
|
||||
NSLog(@"标题: %@", _itemModel.title);
|
||||
NSLog(@"图片: %@", _itemModel.imageName);
|
||||
NSLog(@"类型: %ld", (long)_itemModel.type);
|
||||
|
||||
self.titleLabel.text = _itemModel.title;
|
||||
self.titleLabel.textColor = _itemModel.titleColor ? _itemModel.titleColor : [DJDKMIMOMColor mainTextColor];
|
||||
if (itemModel.imageTintColor) {
|
||||
@@ -61,6 +66,8 @@
|
||||
} else {
|
||||
self.logoImageView.image = [UIImage getLanguageImage:_itemModel.imageName];
|
||||
}
|
||||
|
||||
NSLog(@"图片是否加载成功: %@", self.logoImageView.image ? @"是" : @"否");
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -34,7 +34,6 @@
|
||||
#import "XPReleaseRadioViewController.h"
|
||||
#import "XPRoomPKViewController.h"
|
||||
#import "BaseNavigationController.h"
|
||||
#import "XPWishGiftCreateViewController.h"
|
||||
#import "XPAnchorPKSelectTypeController.h"
|
||||
#import "XPRoomTrumpetViewController.h"
|
||||
#import "XPWebViewController.h"
|
||||
@@ -48,6 +47,9 @@
|
||||
|
||||
#import "RoomModeViewController.h"
|
||||
|
||||
#import "XPRoomMoreMenuActionFactory.h"
|
||||
#import "XPRoomMoreMenuAction.h"
|
||||
#import "XPPKAction.h"
|
||||
|
||||
UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
|
||||
@@ -90,6 +92,7 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
[super viewDidLoad];
|
||||
[self initSubViews];
|
||||
[self initSubViewConstraints];
|
||||
|
||||
///自己是公会超管
|
||||
BOOL meIsSuperAdmin = NO;
|
||||
for (GuildSuperAdminInfoModel *managerInfo in self.hostDelegate.getRoomSuperAdminList) {
|
||||
@@ -98,10 +101,15 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
break;
|
||||
}
|
||||
}
|
||||
[self.presenter getMoreMenuDataSource:self.roomInfo
|
||||
isSuperAdmin:meIsSuperAdmin
|
||||
isOnMic:self.isOnMic
|
||||
isAppSuperAdmin:[self.hostDelegate.getUserInfo platformRole]==1];
|
||||
// [self.presenter getMoreMenuDataSource:self.roomInfo
|
||||
// isSuperAdmin:meIsSuperAdmin
|
||||
// isOnMic:self.isOnMic
|
||||
// isAppSuperAdmin:[self.hostDelegate.getUserInfo platformRole]==1];
|
||||
|
||||
[self.presenter getMoreMenuDataSourceWithNewArchitecture:self.roomInfo
|
||||
isSuperAdmin:meIsSuperAdmin
|
||||
isOnMic:self.isOnMic
|
||||
isAppSuperAdmin:[self.hostDelegate.getUserInfo platformRole]==1];
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
@@ -139,6 +147,13 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
|
||||
#pragma mark - XPMoreMenuProtocol
|
||||
- (void)getMoreMenuDataSuccess:(NSArray<XPRoomMoreItemModel *> *)list {
|
||||
NSLog(@"=== getMoreMenuDataSuccess ===");
|
||||
NSLog(@"接收到 %lu 个菜单项", (unsigned long)list.count);
|
||||
|
||||
for (XPRoomMoreItemModel *item in list) {
|
||||
NSLog(@"菜单项: 标题=%@, 图片=%@, 类型=%ld", item.title, item.imageName, (long)item.type);
|
||||
}
|
||||
|
||||
self.datasource = list;
|
||||
[self.collectionView reloadData];
|
||||
CGFloat contentHeight= 24 + 36;
|
||||
@@ -257,76 +272,83 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||
[collectionView deselectItemAtIndexPath:indexPath animated:YES];
|
||||
XPRoomMoreItemModel * item = [self.datasource xpSafeObjectAtIndex:indexPath.row];
|
||||
|
||||
NSLog(@"=== 点击菜单项 ===");
|
||||
NSLog(@"点击的菜单项: 标题=%@, 类型=%ld", item.title, (long)item.type);
|
||||
[self handleItemWithLegacyLogic:item];
|
||||
}
|
||||
|
||||
- (void)handleItemWithLegacyLogic:(XPRoomMoreItemModel *)item {
|
||||
NSString * roomUid = [NSString stringWithFormat:@"%ld",self.roomInfo.uid];
|
||||
// NSString * roomId = [NSString stringWithFormat:@"%ld", self.roomInfo.roomId];
|
||||
switch (item.type) {
|
||||
case RoomMoreMenuType_Gift_Effect_Open:
|
||||
{
|
||||
[self showSuccessToast:YMLocalizedString(@"XPRoomMoreMenuViewController4")];
|
||||
NSDictionary * dic = @{@"hasAnimationEffect": @(1)};
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kRoomGiftEffectUpdateNotificationKey object:dic];
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Gift_Effect_Close:
|
||||
{
|
||||
[self showSuccessToast:YMLocalizedString(@"XPRoomMoreMenuViewController5")];
|
||||
NSDictionary * dic = @{@"hasAnimationEffect": @(0)};
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kRoomGiftEffectUpdateNotificationKey object:dic];
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Invite_Fans:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
NSString * roomUid = [NSString stringWithFormat:@"%ld", self.roomInfo.uid];
|
||||
XPRoomInviteFansView * inviteFansView = [[XPRoomInviteFansView alloc]initWithRoomUid:roomUid];
|
||||
[TTPopup popupView:inviteFansView style:TTPopupStyleActionSheet];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Setting:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
XPRoomSettingViewController * roomsettingVC = [[XPRoomSettingViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomsettingVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Dating_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController6")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_PK_Mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController7")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
TTAlertConfig *config = [[TTAlertConfig alloc] init];
|
||||
config.message = YMLocalizedString(@"XPRoomMoreMenuViewController8");
|
||||
config.confirmButtonConfig.title = YMLocalizedString(@"XPRoomMoreMenuViewController9");
|
||||
[TTPopup alertWithConfig:config confirmHandler:^{
|
||||
[self.presenter openRoomDating:roomUid];
|
||||
} cancelHandler:^{
|
||||
}];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Dating_Close:
|
||||
{
|
||||
TTAlertConfig * config = [[TTAlertConfig alloc] init];
|
||||
config.title = YMLocalizedString(@"XPRoomMoreMenuViewController10");
|
||||
config.message = YMLocalizedString(@"XPRoomMoreMenuViewController11");
|
||||
config.confirmButtonConfig.title = YMLocalizedString(@"XPRoomMoreMenuViewController12");
|
||||
[TTPopup alertWithConfig:config confirmHandler:^{
|
||||
[self.presenter closeRoomDating:roomUid];
|
||||
} cancelHandler:^{
|
||||
|
||||
}];
|
||||
}
|
||||
break;
|
||||
|
||||
switch (item.type) {
|
||||
case RoomMoreMenuType_Gift_Effect_Open:
|
||||
{
|
||||
[self showSuccessToast:YMLocalizedString(@"XPRoomMoreMenuViewController4")];
|
||||
NSDictionary * dic = @{@"hasAnimationEffect": @(1)};
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kRoomGiftEffectUpdateNotificationKey object:dic];
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Gift_Effect_Close:
|
||||
{
|
||||
[self showSuccessToast:YMLocalizedString(@"XPRoomMoreMenuViewController5")];
|
||||
NSDictionary * dic = @{@"hasAnimationEffect": @(0)};
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kRoomGiftEffectUpdateNotificationKey object:dic];
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Invite_Fans:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
NSString * roomUid = [NSString stringWithFormat:@"%ld", self.roomInfo.uid];
|
||||
XPRoomInviteFansView * inviteFansView = [[XPRoomInviteFansView alloc]initWithRoomUid:roomUid];
|
||||
[TTPopup popupView:inviteFansView style:TTPopupStyleActionSheet];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Setting:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
XPRoomSettingViewController * roomsettingVC = [[XPRoomSettingViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomsettingVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Dating_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController6")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_PK_Mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController7")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
TTAlertConfig *config = [[TTAlertConfig alloc] init];
|
||||
config.message = YMLocalizedString(@"XPRoomMoreMenuViewController8");
|
||||
config.confirmButtonConfig.title = YMLocalizedString(@"XPRoomMoreMenuViewController9");
|
||||
[TTPopup alertWithConfig:config confirmHandler:^{
|
||||
[self.presenter openRoomDating:roomUid];
|
||||
} cancelHandler:^{
|
||||
}];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Dating_Close:
|
||||
{
|
||||
TTAlertConfig * config = [[TTAlertConfig alloc] init];
|
||||
config.title = YMLocalizedString(@"XPRoomMoreMenuViewController10");
|
||||
config.message = YMLocalizedString(@"XPRoomMoreMenuViewController11");
|
||||
config.confirmButtonConfig.title = YMLocalizedString(@"XPRoomMoreMenuViewController12");
|
||||
[TTPopup alertWithConfig:config confirmHandler:^{
|
||||
[self.presenter closeRoomDating:roomUid];
|
||||
} cancelHandler:^{
|
||||
|
||||
}];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Release_Radio:
|
||||
{
|
||||
[self.presenter getRoomRadioMessageListWithType:[NSString stringWithFormat:@"%zd", self.roomInfo.type]];
|
||||
@@ -335,30 +357,30 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
case RoomMoreMenuType_Room_trumpet:
|
||||
[self.presenter getRoomgetUserVipRoomTrumpet:roomUid];
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Across_PK_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController13")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_PK_Mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController14")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPAcrossRoomPKViewController * acrossRoomPKVC = [[XPAcrossRoomPKViewController alloc] initWithRoomUid:roomUid];
|
||||
[self.hostDelegate.getCurrentNav presentViewController:acrossRoomPKVC animated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Across_PK_Close:
|
||||
{
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController15")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Across_PK_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController13")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_PK_Mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController14")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPAcrossRoomPKViewController * acrossRoomPKVC = [[XPAcrossRoomPKViewController alloc] initWithRoomUid:roomUid];
|
||||
[self.hostDelegate.getCurrentNav presentViewController:acrossRoomPKVC animated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Across_PK_Close:
|
||||
{
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController15")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Anchor_PK_Open:
|
||||
{
|
||||
if (self.hostDelegate.getRoomInfo.pkMatchStartTime) {//PK匹配中
|
||||
@@ -366,7 +388,7 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
config.message = YMLocalizedString(@"XPRoomMoreMenuViewController16");
|
||||
[TTPopup alertWithConfig:config confirmHandler:^{
|
||||
[self.presenter requestCancelMatchRandomPK:roomUid];
|
||||
} cancelHandler:^{
|
||||
} cancelHandler:^{
|
||||
}];
|
||||
} else {
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
@@ -375,28 +397,28 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Anchor_PK_Close:
|
||||
{
|
||||
if (self.roomInfo.pkState == AcrossRoomPkStateTypePenalty) {
|
||||
if ([self.roomInfo.winUid isEqualToString:[AccountInfoStorage instance].getUid]) {//赢
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
} else if ([self.roomInfo.winUid isEqualToString:self.roomInfo.pkUid]) {//输
|
||||
|
||||
} else {//平局
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Anchor_PK_Close:
|
||||
{
|
||||
if (self.roomInfo.pkState == AcrossRoomPkStateTypePenalty) {
|
||||
if ([self.roomInfo.winUid isEqualToString:[AccountInfoStorage instance].getUid]) {//赢
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
} else if ([self.roomInfo.winUid isEqualToString:self.roomInfo.pkUid]) {//输
|
||||
|
||||
} else {//平局
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (self.roomInfo.roundId) {
|
||||
[self.presenter requestFinishAnchorPK:[NSString stringWithFormat:@"%ld", self.roomInfo.roundId]];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Message_Screen_Clear:
|
||||
{
|
||||
TTAlertConfig * config = [[TTAlertConfig alloc] init];
|
||||
@@ -410,32 +432,32 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
}
|
||||
break;
|
||||
|
||||
case RoomMoreMenuType_Room_PK_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController20")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController21")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPRoomPKViewController * roomPKVC = [[XPRoomPKViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomPKVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_PK_Close:
|
||||
{
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPRoomPKViewController * roomPKVC = [[XPRoomPKViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomPKVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_PK_Open:
|
||||
{
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController20")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.roomInfo.roomModeType == RoomModeType_Open_AcrossRoomPK_mode) {
|
||||
[self showErrorToast:YMLocalizedString(@"XPRoomMoreMenuViewController21")];
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPRoomPKViewController * roomPKVC = [[XPRoomPKViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomPKVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_PK_Close:
|
||||
{
|
||||
[self dismissViewControllerAnimated:NO completion:nil];
|
||||
XPRoomPKViewController * roomPKVC = [[XPRoomPKViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:roomPKVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_redPacket:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
@@ -447,21 +469,6 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
[self.hostDelegate.getCurrentNav presentViewController:nav animated:YES completion:nil];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Voice:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
[RtcManager instance].remoteMuted = !item.isSelected;
|
||||
item.isSelected = [RtcManager instance].isRemoteMuted;
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_Wish_Gift:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
|
||||
XPWishGiftCreateViewController *wishGiftVC = [[XPWishGiftCreateViewController alloc] initWithDelegate:self.hostDelegate];
|
||||
[self.hostDelegate.getCurrentNav pushViewController:wishGiftVC animated:YES];
|
||||
}
|
||||
break;
|
||||
case RoomMoreMenuType_Room_report:
|
||||
{
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
@@ -527,9 +534,9 @@ UIKIT_EXTERN NSString * const kRoomGiftEffectUpdateNotificationKey;
|
||||
[self.hostDelegate.getCurrentNav pushViewController:vc animated:YES];
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - Event Response
|
||||
|
82
issues/room-more-menu-refactor-todo.md
Normal file
82
issues/room-more-menu-refactor-todo.md
Normal file
@@ -0,0 +1,82 @@
|
||||
# 房间更多菜单重构 TODO
|
||||
|
||||
## 重构目标
|
||||
将 `XPRoomMoreMenuViewController.m` 中 600 行的垃圾代码重构为清晰、可维护的架构。
|
||||
|
||||
## 当前问题
|
||||
1. `didSelectItemAtIndexPath` 方法有 200+ 行,包含 20+ 个不同的功能
|
||||
2. 巨大的 switch 语句,违反单一职责原则
|
||||
3. 到处都是 if-else 处理特殊情况
|
||||
4. 难以测试、难以维护、难以扩展
|
||||
|
||||
## 重构方案
|
||||
使用策略模式 + 工厂模式,将每个功能封装成独立的 Action 类。
|
||||
|
||||
## TODO 清单
|
||||
|
||||
### ✅ 已完成
|
||||
- [x] 创建 `XPRoomMoreMenuAction.h/.m` - 抽象基类
|
||||
- [x] 创建 `XPRoomMoreMenuActionContext.h/.m` - 上下文类
|
||||
- [x] 创建 `XPRoomMoreMenuActionFactory.h/.m` - 工厂类
|
||||
- [x] 创建 `XPGiftEffectAction.h/.m` - 礼物特效 Action 类
|
||||
- [x] 创建 `XPRoomSettingAction.h/.m` - 房间设置 Action 类
|
||||
- [x] 创建 `XPSocialAction.h/.m` - 社交功能 Action 类
|
||||
- [x] 创建 `XPPKAction.h/.m` - PK 相关功能 Action 类
|
||||
- [x] 重构主控制器 `didSelectItemAtIndexPath` 方法
|
||||
- [x] 集成新架构到主控制器
|
||||
- [x] 更新工厂类集成PK Action
|
||||
- [x] 测试新架构功能
|
||||
|
||||
### 🔄 进行中
|
||||
- [ ] 修复编译环境问题 - UIKit 导入问题
|
||||
- [ ] 修复 PIBaseModel 继承问题
|
||||
- [ ] 添加新的 Action 类到 Xcode 项目
|
||||
|
||||
### 📋 待完成
|
||||
|
||||
#### 基础设施搭建 (优先级:高)
|
||||
- [ ] 修复编译环境问题 - UIKit 导入问题
|
||||
- [ ] 修复 PIBaseModel 继承问题
|
||||
- [ ] 修复手动引用计数问题
|
||||
|
||||
#### 实现具体的 Action 类 (优先级:高)
|
||||
- [x] `XPRoomSettingAction.h/.m` - 房间设置
|
||||
- [x] `XPSocialAction.h/.m` - 社交功能
|
||||
- [x] `XPPKAction.h/.m` - PK 相关功能(同房PK、跨房PK、主播PK、相亲模式)
|
||||
- [ ] `XPRoomManagementAction.h/.m` - 房间管理
|
||||
- [ ] `XPOtherAction.h/.m` - 其他功能
|
||||
|
||||
#### 重构主控制器 (优先级:高)
|
||||
- [x] 重构 `XPRoomMoreMenuViewController.m` - 简化主逻辑
|
||||
- [x] 集成工厂模式
|
||||
- [x] 更新数据源创建逻辑
|
||||
- [ ] 移除巨大的 switch 语句 (保留为 fallback)
|
||||
- [ ] 进一步优化架构
|
||||
|
||||
#### 测试和优化 (优先级:中)
|
||||
- [ ] 创建单元测试
|
||||
- [ ] 集成测试
|
||||
- [ ] 性能测试
|
||||
- [ ] 代码审查
|
||||
|
||||
#### 文档和优化 (优先级:低)
|
||||
- [ ] 编写重构文档
|
||||
- [ ] 创建使用示例
|
||||
- [ ] 进一步优化架构
|
||||
|
||||
## 当前遇到的问题
|
||||
1. **编译环境问题**:UIKit 导入失败,可能是预编译头文件配置问题
|
||||
2. **PIBaseModel 继承问题**:找不到 PIBaseModel 接口声明
|
||||
3. **手动引用计数问题**:项目使用 MRC,需要调整属性修饰符
|
||||
|
||||
## 下一步计划
|
||||
1. 解决编译环境问题
|
||||
2. 完成基础设施类
|
||||
3. 实现第一个具体的 Action 类
|
||||
4. 在主控制器中集成测试
|
||||
|
||||
## 重构收益
|
||||
- 代码行数:从 600 行减少到每个类 50-100 行
|
||||
- 可维护性:每个类职责单一,易于理解和修改
|
||||
- 可测试性:每个 Action 可以独立测试
|
||||
- 可扩展性:新增功能只需添加新的 Action 类
|
Reference in New Issue
Block a user