YOUPAILCMediaChatRecordVC.m 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. //
  2. // YOUPAILCMediaChatRecordVC.m
  3. // LiveChat
  4. //
  5. // Created by 张灿 on 2018/8/25.
  6. // Copyright © 2018年 caicai. All rights reserved.
  7. //
  8. #import "YOUPAILCMediaChatRecordVC.h"
  9. #import "YOUPAILCCallRecordCell.h"
  10. #import "YOUPAILZUserShowVC.h"
  11. @interface YOUPAILCMediaChatRecordVC ()<UITableViewDelegate,UITableViewDataSource>
  12. @property(nonatomic,assign)NSInteger youpaipcurrentPage;
  13. @property(nonatomic,assign)NSInteger youpaiptotalPage;
  14. @property(nonatomic,strong)NSMutableArray* youpaiprecordArray;
  15. @property(nonatomic,strong)NSMutableArray* youpaiprecordIdArray;
  16. @end
  17. @implementation YOUPAILCMediaChatRecordVC
  18. - (void)viewDidLoad {
  19. [super viewDidLoad];
  20. self.title = @"通话记录";
  21. self.youpaiprecordArray = [NSMutableArray array];
  22. self.youpaiprecordIdArray = [NSMutableArray array];
  23. [self youpaifsetupTableView];
  24. self.tableView.backgroundColor = UIColor.clearColor;
  25. [self.tableView.mj_header beginRefreshing];
  26. }
  27. - (void)youpaifsetupTableView{
  28. self.tableView.frame = CGRectZero;
  29. self.tableView.showsVerticalScrollIndicator = NO;
  30. self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
  31. self.tableView.estimatedRowHeight = 78;
  32. self.tableView.delegate = self;
  33. self.tableView.dataSource= self;
  34. self.isAllowScroll = YES;
  35. [self.view addSubview:self.tableView];
  36. CGFloat topM;
  37. if (self.youpaipnoTabbar == YES) {
  38. topM = SafeHeight +54;
  39. }else{
  40. topM = 0;
  41. }
  42. [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
  43. make.left.mas_equalTo(0);
  44. make.right.mas_equalTo(0);
  45. make.top.mas_equalTo(topM);
  46. make.bottom.mas_equalTo(0);
  47. }];
  48. self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(youpaifloadNewData)];
  49. MJRefreshAutoNormalFooter* normalFooter = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(youpaifloadMoreData)];
  50. [normalFooter setTitle:@"正在加载..." forState:(MJRefreshStateRefreshing)];
  51. [normalFooter setTitle:@"" forState:(MJRefreshStateNoMoreData)];
  52. self.tableView.mj_footer = normalFooter;
  53. self.tableView.mj_footer.automaticallyHidden = YES;
  54. }
  55. - (void)youpaifloadNewData{
  56. self.tableView.mj_footer.hidden = YES;
  57. [self.tableView.mj_footer endRefreshing];//先结束上拉,假如有的话
  58. self.youpaipcurrentPage = 1;
  59. [LCHttpHelper requestWithURLString:VideoCallRecord parameters:@{@"page":@(self.youpaipcurrentPage),@"type":@(0),@"calltype":@(0)} needToken:YES type:(HttpRequestTypePost) success:^(id responseObject) {
  60. NSDictionary* dict = (NSDictionary*)responseObject;
  61. NSInteger code = [[dict objectForKey:@"code"] integerValue];
  62. if (code==0) {//成功
  63. [self.youpaiprecordArray removeAllObjects];
  64. [self.youpaiprecordIdArray removeAllObjects];
  65. NSArray* array = [[dict objectForKey:@"data"]objectForKey:@"list"];
  66. NSMutableArray* modelArray = [YOUPAILCCallRecordModel mj_objectArrayWithKeyValuesArray:array];
  67. NSMutableArray* tempArray = [NSMutableArray arrayWithArray:(NSArray*)modelArray];
  68. // for (YOUPAILCCallRecordModel* model in modelArray) {
  69. //// if ([self.recordArray containsObject:model.recordId] || model.otherType==2 || [LCSaveModel getUserModel].userinfo.type ==2) {
  70. //// [tempArray removeObject:model];
  71. //// }else{
  72. // [self.recordIdArray addObject:model.recordId];
  73. //// }
  74. // }
  75. [self.youpaiprecordArray addObjectsFromArray:tempArray];
  76. self.youpaiptotalPage = [[[dict objectForKey:@"data"]objectForKey:@"total_page"]integerValue];
  77. self.youpaipcurrentPage = [[[dict objectForKey:@"data"]objectForKey:@"page"]integerValue];
  78. [self.tableView reloadData];
  79. if (self.youpaipcurrentPage>=self.youpaiptotalPage) {
  80. [self.tableView.mj_footer endRefreshingWithNoMoreData];
  81. self.tableView.mj_footer.hidden = YES;
  82. }
  83. if (self.youpaiprecordArray.count != 0) {
  84. [self.tableView lz_hideEmptyView];
  85. }else{
  86. [self.tableView lz_showEmptyViewWithImage:[UIImage imageNamed:@"vqu_images_not_call_video_data"] content:@"暂无通话记录"];
  87. }
  88. [self.tableView.mj_header endRefreshing];
  89. }else{
  90. [self.tableView.mj_header endRefreshing];
  91. }
  92. } failure:^(NSError *error) {
  93. [self.tableView.mj_header endRefreshing];
  94. }];
  95. }
  96. - (void)youpaifloadMoreData{
  97. [self.tableView.mj_header endRefreshing];
  98. self.tableView.mj_footer.hidden = YES;
  99. [self.tableView.mj_footer endRefreshing];
  100. self.youpaipcurrentPage+=1;
  101. [LCHttpHelper requestWithURLString:VideoCallRecord parameters:@{@"page":@(self.youpaipcurrentPage),@"type":@(0),@"calltype":@(0)} needToken:YES type:(HttpRequestTypePost) success:^(id responseObject) {
  102. NSDictionary* dict = (NSDictionary*)responseObject;
  103. NSInteger code = [[dict objectForKey:@"code"] integerValue];
  104. if (code==0) {//成功
  105. NSArray* array = [[dict objectForKey:@"data"]objectForKey:@"list"];
  106. NSMutableArray* modelArray = [YOUPAILCCallRecordModel mj_objectArrayWithKeyValuesArray:array];
  107. NSMutableArray* tempArray = [NSMutableArray arrayWithArray:(NSArray*)modelArray];
  108. // for (YOUPAILCCallRecordModel* model in modelArray) {
  109. // if ([self.recordArray containsObject:model.recordId] || model.otherType==2 || [LCSaveModel getUserModel].userinfo.type ==2) {
  110. // [tempArray removeObject:model];
  111. // }else{
  112. // [self.recordIdArray addObject:model.recordId];
  113. // }
  114. // }
  115. [self.youpaiprecordArray addObjectsFromArray:tempArray];
  116. self.youpaiptotalPage = [[[dict objectForKey:@"data"]objectForKey:@"total_page"]integerValue];
  117. self.youpaipcurrentPage = [[[dict objectForKey:@"data"]objectForKey:@"page"]integerValue];
  118. [self.tableView reloadData];
  119. if (self.youpaipcurrentPage>=self.youpaiptotalPage) {
  120. [self.tableView.mj_footer endRefreshingWithNoMoreData];
  121. self.tableView.mj_footer.hidden = YES;
  122. }
  123. [self.tableView.mj_header endRefreshing];
  124. }else{
  125. [self.tableView.mj_header endRefreshing];
  126. }
  127. } failure:^(NSError *error) {
  128. [self.tableView.mj_header endRefreshing];
  129. }];
  130. }
  131. - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
  132. return 78;
  133. }
  134. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
  135. return self.youpaiprecordArray.count;
  136. }
  137. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
  138. YOUPAILCCallRecordCell* cell = [[YOUPAILCCallRecordCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"YOUPAILCCallRecordCell"];
  139. YOUPAILCCallRecordModel* model = self.youpaiprecordArray[indexPath.row];
  140. cell.youpaiprecordModel = model;
  141. [cell setSelectionStyle:UITableViewCellSelectionStyleNone];
  142. // [cell bottomLineforViewHeight:68];
  143. return cell;
  144. }
  145. - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
  146. YOUPAILCCallRecordModel* model = self.youpaiprecordArray[indexPath.row];
  147. // LCUserShowVC* userShow = [[LCUserShowVC alloc]init];
  148. YOUPAILZUserShowVC *userShow = [[YOUPAILZUserShowVC alloc] init];
  149. userShow.youpaipuserId = model.youpaipuserid;
  150. [self.navigationController pushViewController:userShow animated:YES];
  151. }
  152. //- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
  153. // return YES;
  154. //}
  155. //- (NSArray <UITableViewRowAction *> *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath{
  156. // UITableViewRowAction *rowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"删除" handler:^(UITableViewRowAction * _Nonnull action, NSIndexPath * _Nonnull indexPath) {
  157. // YOUPAILCCallRecordModel* model = self.recordArray[indexPath.row];
  158. //// [self deleteVideoCallRecordWithId:model.recordId indexPath:indexPath];
  159. // }];
  160. // rowAction.backgroundColor = [UIColor redColor];
  161. // NSArray *arr = @[rowAction];
  162. // return arr;
  163. //}
  164. #pragma mark - JXCategoryListContainerView
  165. - (UIView *)listView{
  166. return self.view;
  167. }
  168. @end