BogoInviteDetailSubViewController.m 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. //
  2. // BogoInviteDetailSubViewController.m
  3. // UniversalApp
  4. //
  5. // Created by Mac on 2021/6/10.
  6. // Copyright © 2021 voidcat. All rights reserved.
  7. //
  8. #import "BogoInviteDetailSubViewController.h"
  9. #import "BogoInviteListCell.h"
  10. #import "BogoInviteResponseModel.h"
  11. #import "BogoNetworkKit.h"
  12. @interface BogoInviteDetailSubViewController ()<UITableViewDelegate,UITableViewDataSource>
  13. @property(nonatomic, strong) UITableView *tableView;
  14. @property(nonatomic, strong) NSMutableArray *dataArray;
  15. @property(nonatomic, assign) NSInteger page;
  16. @end
  17. @implementation BogoInviteDetailSubViewController
  18. - (void)viewDidLoad {
  19. [super viewDidLoad];
  20. // Do any additional setup after loading the view.
  21. [self.view addSubview:self.tableView];
  22. [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
  23. make.edges.equalTo(self.view);
  24. }];
  25. [self headerRefresh];
  26. }
  27. - (void)headerRefresh{
  28. self.page = 1;
  29. [self requestData];
  30. }
  31. - (void)footerRefresh{
  32. self.page ++;
  33. [self requestData];
  34. }
  35. - (void)requestData{
  36. // /mapi/index.php?ctl=invite_vue&act=invite_info_new&uid=2
  37. [[BogoNetwork shareInstance] POSTV4:@"" param:@{@"ctl":@"invite_vue",@"act":@"invite_info_new",@"page":@(self.page),@"type":@(self.type)} success:^(id _Nonnull result) {
  38. if (self.page == 1) {
  39. [self.dataArray removeAllObjects];
  40. }
  41. NSString *money = [NSString stringWithFormat:@"%@",result[@"data"]];
  42. [[NSNotificationCenter defaultCenter] postNotificationName:@"upldateTopViewMoney" object:money];
  43. NSArray *list = result[@"lists"];
  44. for (NSDictionary *dict in list) {
  45. BogoInviteResponseModelLists *model = [BogoInviteResponseModelLists mj_objectWithKeyValues:dict];
  46. [self.dataArray addObject:model];
  47. }
  48. [self.tableView reloadData];
  49. [self.tableView.mj_header endRefreshing];
  50. if (list.count < 20) {
  51. [self.tableView.mj_footer endRefreshingWithNoMoreData];
  52. }else{
  53. [self.tableView.mj_footer endRefreshing];
  54. }
  55. } failure:^(NSString * _Nonnull error) {
  56. [[BGHUDHelper sharedInstance] tipMessage:error];
  57. [self.tableView.mj_header endRefreshing];
  58. [self.tableView.mj_footer endRefreshing];
  59. }];
  60. }
  61. #pragma mark - UITableViewDelegate,UITableViewDataSource
  62. - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
  63. return 1;
  64. }
  65. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
  66. return self.dataArray.count;
  67. }
  68. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
  69. BogoInviteListCell *cell = [tableView dequeueReusableCellWithIdentifier:@"BogoInviteListCell" forIndexPath:indexPath];
  70. if (indexPath.row < self.dataArray.count) {
  71. cell.model = self.dataArray[indexPath.row];
  72. }
  73. return cell;
  74. }
  75. - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
  76. return 54;
  77. }
  78. - (UITableView *)tableView{
  79. if (!_tableView) {
  80. _tableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, kScreenW, 120) style:UITableViewStylePlain];
  81. _tableView.backgroundColor = kWhiteColor;
  82. _tableView.delegate = self;
  83. _tableView.dataSource = self;
  84. [_tableView registerNib:[UINib nibWithNibName:@"BogoInviteListCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"BogoInviteListCell"];
  85. _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
  86. _tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
  87. _tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(footerRefresh)];
  88. }
  89. return _tableView;
  90. }
  91. - (NSMutableArray *)dataArray{
  92. if (!_dataArray) {
  93. _dataArray = [NSMutableArray array];
  94. }
  95. return _dataArray;
  96. }
  97. @end