// // PrizeExchangeDetailsViewController.m // Lighting // // Created by 曹云霄 on 2016/11/22. // Copyright © 2016年 上海勾芒科技有限公司. All rights reserved. // #import "PrizeExchangeDetailsViewController.h" #import "PrizeExchangeBillTableViewCell.h" #import "PrizeExchangeSectionTableViewCell.h" #import "PrizeExchangeInformationTableViewCell.h" #import "PrizeExchangeConsigneeTableViewCell.h" #import "PrizeExchangeCourierTableViewCell.h" #import "prizeOrderDetailsModel.h" @interface PrizeExchangeDetailsViewController () /** 兑奖单详情 */ @property (nonatomic,strong) prizeOrderDetailsModel *prizeBillResult; /** section title Array */ @property (nonatomic,strong) NSMutableArray *sectionTitleArray; @end @implementation PrizeExchangeDetailsViewController - (void)viewDidLoad { [super viewDidLoad]; [self setUpTableView]; [self getPrizeDetailsDataAction]; } #pragma mark - UITableView - (void)setUpTableView { self.prizeExchangeDetailsTableView.tableFooterView = [UIView new]; self.prizeExchangeDetailsTableView.sectionHeaderHeight = 60; } #pragma mark - 兑奖记录详情 - (void)getPrizeDetailsDataAction { WS(weakSelf); [XBLoadingView showHUDViewWithDefault];; NSString *url = [NSString stringWithFormat:SERVERREQUESTURL(PRIZEBILLDETAILS),self.prizeBillNumber]; [HTTP networkWithDictionaryRequestWithURL:url withRequestType:ONE withParameter:nil withReturnValueBlock:^(id returnValue) { [XBLoadingView hideHUDViewWithDefault]; if (RESULT(returnValue)) { weakSelf.prizeBillResult = [[prizeOrderDetailsModel alloc]initWithDictionary:RESPONSE(returnValue) error:nil]; }else { [XBLoadingView showHUDViewWithText:MESSAGE(returnValue)]; } [weakSelf.prizeExchangeDetailsTableView reloadData]; } withFailureBlock:^(NSError *error) { [XBLoadingView showHUDViewWithText:error.localizedDescription]; }]; } #pragma mark - - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { switch (indexPath.section) { case ExchangeBillInformation: { PrizeExchangeBillTableViewCell *billCell = [tableView dequeueReusableCellWithIdentifier:@"PrizeExchangeBillTableViewCell" forIndexPath:indexPath]; billCell.billEntity = self.prizeBillResult.bill; return billCell; } break; case ReceivingInformation: { PrizeExchangeConsigneeTableViewCell *consigneeCell = [tableView dequeueReusableCellWithIdentifier:@"PrizeExchangeConsigneeTableViewCell" forIndexPath:indexPath]; consigneeCell.consigneeEntity = self.prizeBillResult.bill; return consigneeCell; } break; case RewardInformation: { PrizeExchangeInformationTableViewCell *rewardCell = [tableView dequeueReusableCellWithIdentifier:@"PrizeExchangeInformationTableViewCell" forIndexPath:indexPath]; rewardCell.giftDetailsArray = self.prizeBillResult.details; return rewardCell; } break; case LogisticsInformation: { PrizeExchangeCourierTableViewCell *logisticsCell = [tableView dequeueReusableCellWithIdentifier:@"PrizeExchangeCourierTableViewCell" forIndexPath:indexPath]; logisticsCell.billEntity = self.prizeBillResult.bill; return logisticsCell; } break; default: break; } return nil; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return ONE; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return self.sectionTitleArray.count; } - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { PrizeExchangeSectionTableViewCell *headerView = [tableView dequeueReusableCellWithIdentifier:@"PrizeExchangeSectionTableViewCell"]; headerView.sectionTitleLabel.text = self.sectionTitleArray[section]; return headerView; } - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { switch (indexPath.section) { case ExchangeBillInformation: case ReceivingInformation: return 100; break; case RewardInformation: { return self.prizeBillResult.giftHeight; } break; case LogisticsInformation: { return 60; } break; default: break; } return 0; } #pragma mark - lazy - (NSMutableArray *)sectionTitleArray { if (!_sectionTitleArray) { _sectionTitleArray = [NSMutableArray arrayWithObjects:@"兑换单信息",@"收货信息",@"奖励信息", nil]; if (self.isDelivery) { [_sectionTitleArray addObject:@"物流信息"]; } } return _sectionTitleArray; } @end