类名 | 类描述 |
---|---|
VHallLottery | 抽奖类 |
属性 | 属性描述 |
---|---|
delegate | 代理对象 |
方法 | 方法描述 |
---|---|
submitLotteryInfo | 提交个人中奖信息 |
getSubmitConfigWithWebinarId | 获取领奖页中奖信息列表 |
lotteryParticipationWithRoomId | 参加口令抽奖 |
getLotteryWinListWithLotteryId | 获取中奖名单 |
fetchLotteryListShowAll | 获取抽奖列表接口 |
lotteryWinningUserInfoWithRoomId | 获取中奖人信息 |
lotteryWinningUserDetail | 查看中奖详情 |
方法 | 方法描述 |
---|---|
startLottery | 抽奖开始 |
endLottery | 抽奖结束 |
- (void)submitLotteryInfo:(NSDictionary *)info
success:(void(^)(void))success
failed:(void (^)(NSDictionary *failedData))reslutFailedCallback;
参数名称 | 是否必须 | 示例 | 备注 |
---|---|---|---|
info | 是 | @{@"name":姓名,@"phone":手机号,...} | 个人信息 |
success | 成功回调 | ||
reslutFailedCallback | 失败回调 字典结构:{code:错误码,content:错误信息} |
/// 抽奖对象
@property (nonatomic, strong) VHallLottery * lottery;
self.lottery = [[VHallLottery alloc] initWithObject:self.inavRoom];
self.lottery.delegate = self;
[self.lottery submitLotteryInfo:dic success:^{
// 提交成功
} failed:^(NSDictionary *failedData) {
// 提交失败
}];
通过各项中的 field_key 作为 key,以及对应输入内容作为 value,一起组成字典,用于提交中奖信息接口传参 (v6.0 新增,仅支持 v3 控制台新建的直播抽奖使用)
- (void)getSubmitConfigWithWebinarId:(NSString *)webinar_id
lottery_id:(NSString *)lottery_id
success:(void(^)(NSArray <VHallLotterySubmitConfig *> *submitList, NSInteger receive_award_way))success
failed:(void (^)(NSDictionary *failedData))reslutFailedCallback;
参数名称 | 是否必须 | 示例 | 备注 |
---|---|---|---|
webinar_id | 是 | 123456789 | 活动 id |
lottery_id | 是 | 123456 | 抽奖 id |
success | 成功回调 | submitList 信息列表 receive_award_way 领奖方式 1 寄送奖品,2 私信兑奖,3 无需领奖 | |
reslutFailedCallback | 失败回调 字典结构:{code:错误码,content:错误信息} |
参数名称 | 备注 |
---|---|
is_required | 是否必填 1:必填 0:非必填 |
is_system | 是否是系统选项,即非自定义项 1:是 0:否 |
rank | 输入项显示位置,控制台添加的自定义项显示顺序,越大越靠后显示 |
field | 该输入项标题 |
placeholder | 该输入项 placeholder |
field_key | 提交中奖信息传参字典对应的 key |
__weak __typeof(self)weakSelf = self;
[self.vhLottery getSubmitConfigWithWebinarId:@"活动id" lottery_id:@"抽奖id" success:^(NSArray<VHallLotterySubmitConfig *> *submitList, NSInteger receive_award_way) {
// 判断领奖方式 1寄送奖品,2私信兑奖,3无需领奖
if (receive_award_way == 1) {
// 寄送界面 填写信息弹窗
}
if (receive_award_way == 2) {
// 私信领奖
}
} failed:^(NSDictionary *failedData) {
NSString * msg = [NSString stringWithFormat:@"%@",failedData[@"content"]];
[VHProgressHud showToast:msg];
}];
v6.0 新增 ,仅支持 v3 控制台新建的直播抽奖使用
- (void)lotteryParticipationWithRoomId:(NSString *)room_id
lottery_id:(NSString *)lottery_id
command:(NSString *)command
success:(void(^)(void))success
failed:(void (^)(NSDictionary *failedData))reslutFailedCallback;
参数名称 | 是否必须 | 示例 | 备注 |
---|---|---|---|
room_id | 是 | lss_xxxxxx | 房间 id 可以从消息回调的模型中获取 |
lottery_id | 是 | 123456 | 抽奖 id |
success | 成功回调 | ||
success | 成功回调 | ||
reslutFailedCallback | 失败回调 字典结构:{code:错误码,content:错误信息} |
[self.vhLottery lotteryParticipationWithRoomId:self.startModel.huadieInfo.room_id lottery_id:self.startModel.huadieInfo.lottery_id command:self.startModel.huadieInfo.command success:^{
[VHProgressHud showToast:@"参与成功"];
} failed:^(NSDictionary *failedData) {
NSString * msg = [NSString stringWithFormat:@"%@",failedData[@"content"]];
[VHProgressHud showToast:msg];
}];
v6.0 新增,仅支持 v3 控制台新建的直播抽奖使用
- (void)getLotteryWinListWithLotteryId:(NSString *)lottery_id
success:(void(^)(VHallLotteryResultModel * lotteryResult))success
failed:(void (^)(NSDictionary *failedData))reslutFailedCallback;
参数名称 | 是否必须 | 示例 | 备注 |
---|---|---|---|
lottery_id | 是 | 123456 | 抽奖 id |
success | 成功回调 | submitList | |
reslutFailedCallback | 失败回调 字典结构:{code:错误码,content:错误信息} |
参数名称 | 备注 |
---|---|
total | 中奖总人数 |
lottery_id | 抽奖 id |
user_win | 自己是否中奖 |
list | 中奖人 id |
参数名称 | 备注 |
---|---|
win | 是否中奖 |
lottery_user_id | 中奖者 id |
lottery_user_nickname | 中奖者昵称 |
lottery_user_avatar | 中奖者头像 |
lottery_award_id | 奖品 id |
lottery_award_name | 奖品名称 |
__weak __typeof(self)weakSelf = self;
[self.vhLottery getLotteryWinListWithLotteryId:self.endLotteryModel.huadieInfo.lottery_id success:^(VHallLotteryResultModel *lotteryResult) {
//收到数据用列表展示,切刷新列表
[weakSelf.dataSource setArray:lotteryResult.list];
[weakSelf.tableView reloadData];
} failed:^(NSDictionary *failedData) {
NSString * msg = [NSString stringWithFormat:@"%@",failedData[@"content"]];
[VHProgressHud showToast:msg];
}];
- (void)fetchLotteryListShowAll:(NSInteger)showAll
webinarId:(NSString *)webinarId
success:(void (^)(VHLotteryListModel * listModel))success
fail:(void (^)(NSError * error))fail;
参数名称 | 是否必须 | 示例 | 备注 |
---|---|---|---|
showAll | 是 | YES | 是否需要展示所有抽奖 0-否(默认:仅展示进行中、已中奖抽奖) 1-全部抽奖 2 已中奖抽奖(sdk 专用) |
webinarId |