Files
midi_ios/QXLive/Manager/QXRedPacketManager.h
2025-10-13 14:16:49 +08:00

36 lines
1.1 KiB
Objective-C

//
// QXRedPacketManager.h
// QXLive
//
// Created by 启星 on 2025/10/11.
//
#import <Foundation/Foundation.h>
#import "QXRedPacketModel.h"
@class QXRedPacketManager;
@protocol QXRedPacketManagerDelegate <NSObject>
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didAddRedPacket:(QXRedPacketModel *)redPacket;
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didRemoveRedPacket:(NSString *)packetId;
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didUpdateRedPacket:(QXRedPacketModel *)redPacket;
@end
@interface QXRedPacketManager : NSObject
@property (nonatomic, strong, readonly) NSMutableDictionary<NSString *, QXRedPacketModel *> *redPackets;
@property (nonatomic, weak) id<QXRedPacketManagerDelegate> delegate;
+ (instancetype)sharedManager;
/// 添加红包
- (void)addRedPacket:(QXRedPacketModel *)redPacket;
/// 移除红包
- (void)removeRedPacket:(NSString *)packetId;
/// 获取所有红包
- (NSArray<QXRedPacketModel *> *)allRedPackets;
/// 根据位置获取红包
- (QXRedPacketModel *)redPacketAtPosition:(NSInteger)position;
/// 检查并更新红包状态
- (void)checkAndUpdateRedPackets;
@end