// // MyTDTopicSearchVC.m // smartRhino // // Created by niuzhen on 2019/12/19. // Copyright © 2019 tederen. All rights reserved. // #import "MyTDTopicSearchVC.h" #import "TDGroupInfoListCell.h" #import "TopicListModel.h" #import "MyTDGroupView.h" #import "MyTDTopicDetailVC.h" #import "TopicGroupManageModel.h" #import "MyTDTopicCreateVC.h" #import "NoteBookVC.h" #import "NoteBookShareVC.h" #import "MyTDGroupViewController.h" #import "MoveViewController.h" #import "HomeDetailController.h" #import "TDGroupInfoListVC.h" #import "WorkFlowDetailsController.h" #import "MyApprovalPageDetail.h" #import "DownFileViewController.h" #import "MyFavoriteVC.h" #import "OtherNoteBookVC.h" #import "OtherFavoriteVC.h" #import "MailListDetailVC.h" @interface MyTDTopicSearchVC () @property (nonatomic, assign) NSUInteger currentPage; @property (nonatomic, assign) NSUInteger totalPage; @property (nonatomic, assign) NSUInteger totalRecord; @property (nonatomic, assign) BOOL isFresh; @property (strong, nonatomic) NSMutableArray * groupListArray; @property (strong, nonatomic) NSMutableArray * dataArray; @property (strong, nonatomic) NoteBookShareVC * noteBookShareVC; @end @implementation MyTDTopicSearchVC - (void)viewDidLoad { self.historySearchType = HistorySearchType_Topic; [super viewDidLoad]; self.fd_prefersNavigationBarHidden = YES; self.view.backgroundColor = RGB(255, 255, 255); self.tableView.delegate = self; self.tableView.dataSource = self; self.historySearchType = HistorySearchType_Topic; [self addObserver:self forKeyPath:@"searchText" options:NSKeyValueObservingOptionNew context:nil]; } - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { id obj = [change objectForKey:@"new"]; NSString * text = @""; if ([obj isKindOfClass:[NSString class]]) { text = obj; }else{ text = [obj stringValue]; } if (text.length > 0) { [self headRefresh]; } } #pragma mark - UItableView刷新 - (void)setTableViewRefresh{ WeakSelf(self) self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{ [weakself headRefresh]; }]; self.tableView.mj_footer = [MJRefreshBackStateFooter footerWithRefreshingBlock:^{ [weakself footerRefresh]; }]; } - (void)headRefresh{ self.currentPage = 1; self.totalPage = 0; [self.dataArray removeAllObjects]; [self getData]; } - (void)footerRefresh{ self.currentPage += 1; if (self.totalRecord == self.dataArray.count) { self.currentPage --; [self.tableView.mj_footer endRefreshing]; return ; } [self getData]; } - (void)getData { NSDictionary * paraDict; NSString * url; if (self.searchType == TDTopicSearch) { paraDict = @{@"ParentId":@(self.floderId), @"UserId":@([AppUserModel sharedAppUserModel].Id), @"Keyword": self.searchText, @"TopicGroupIds": @[], @"PerPage": @(20), @"Page": @(self.currentPage), @"Sort":@"" }; url = Host(APP_Topic_Topic_List_Page); }else{ paraDict = @{@"GroupId":@(self.GroupId), @"Page": @(self.currentPage), @"PerPage": @(20), @"Sort":@"", @"UserId":@([AppUserModel sharedAppUserModel].Id), @"Key":self.searchText }; url = Host(APP_Group_Search); } WS(weakSelf); SHOWLOADING [[HttpManager sharedHttpManager] POSTUrl:url parameters:paraDict responseStyle:JOSN success:^(id _Nonnull responseObject) { NSLog(@"%@",responseObject); REMOVESHOW TopicListModel * model = [TopicListModel modelWithDictionary:responseObject]; weakSelf.totalRecord = model.Total; [weakSelf.tableView.mj_header endRefreshing]; [weakSelf.tableView.mj_footer endRefreshing]; [weakSelf.dataArray addObjectsFromArray:model.Items]; if (weakSelf.totalRecord == weakSelf.dataArray.count) { [weakSelf.tableView.mj_footer resetNoMoreData]; } dispatch_async(dispatch_get_main_queue(), ^{ if (weakSelf.dataArray.count > 0) { weakSelf.collectionView.hidden = YES; weakSelf.noDataView.hidden = YES; weakSelf.tableView.hidden = NO; [weakSelf.tableView reloadData]; }else{ weakSelf.noDataView.hidden = NO; weakSelf.collectionView.hidden = YES; weakSelf.tableView.hidden = YES; weakSelf.noDataL.attributedText = [ZYCTool checkOfString:@"没有话题,我来发表一个" withSearchText:@"发表" bgtextColor:UIColorHex(#BBBBBB) foreTextColor:UIColorHex(#0F88EB) font:[UIFont systemFontOfSize:15]]; UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithActionBlock:^(id _Nonnull sender) { MyTDTopicCreateVC * vc = [MyTDTopicCreateVC initMyTDTopicCreateVC]; vc.type = weakSelf.searchType == TDTopicSearch ? CollectModel_NewTopic : CollectModel_Toipc; vc.upDateBlock = ^{ [weakSelf headRefresh]; }; [weakSelf.navigationController pushViewController:vc animated:YES]; }]; [weakSelf.noDataL addGestureRecognizer:tap]; weakSelf.noDataL.userInteractionEnabled = YES; } }); } failure:^(NSError * _Nonnull error) { REMOVESHOW }]; } #pragma mark - UITableViewDelegate - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.dataArray.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { WS(weakSelf); TopicListItemModel * model = [self.dataArray objectAtIndex:indexPath.row]; switch (model.DataType) { case TopiclistCellImage: { TDGroupInfoListCell * cell; switch (model.Data.count) { case 1: { cell = [TDGroupInfoListCell configCell1:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = YES; cell.cellImagV3.hidden = YES; cell.cellImagV4.hidden = YES; cell.cellImagV5.hidden = YES; cell.cellImagV6.hidden = YES; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 2: { cell = [TDGroupInfoListCell configCell1:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = YES; cell.cellImagV4.hidden = YES; cell.cellImagV5.hidden = YES; cell.cellImagV6.hidden = YES; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 3: { cell = [TDGroupInfoListCell configCell2:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = YES; cell.cellImagV5.hidden = YES; cell.cellImagV6.hidden = YES; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 4: { cell = [TDGroupInfoListCell configCell3:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = YES; cell.cellImagV6.hidden = YES; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 5: { cell = [TDGroupInfoListCell configCell4:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = NO; cell.cellImagV6.hidden = YES; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel4 = model.Data[4]; [cell.cellImagV5 sd_setImageWithURL:[NSURL URLWithString:subModel4.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 6: { cell = [TDGroupInfoListCell configCell4:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = NO; cell.cellImagV6.hidden = NO; cell.cellImagV7.hidden = YES; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel4 = model.Data[4]; [cell.cellImagV5 sd_setImageWithURL:[NSURL URLWithString:subModel4.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel5 = model.Data[5]; [cell.cellImagV6 sd_setImageWithURL:[NSURL URLWithString:subModel5.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 7: { cell = [TDGroupInfoListCell configCell5:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = NO; cell.cellImagV6.hidden = NO; cell.cellImagV7.hidden = NO; cell.cellImagV8.hidden = YES; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel4 = model.Data[4]; [cell.cellImagV5 sd_setImageWithURL:[NSURL URLWithString:subModel4.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel5 = model.Data[5]; [cell.cellImagV6 sd_setImageWithURL:[NSURL URLWithString:subModel5.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel6 = model.Data[6]; [cell.cellImagV7 sd_setImageWithURL:[NSURL URLWithString:subModel6.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; case 8: { cell = [TDGroupInfoListCell configCell5:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = NO; cell.cellImagV6.hidden = NO; cell.cellImagV7.hidden = NO; cell.cellImagV8.hidden = NO; cell.cellImagV9.hidden = YES; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel4 = model.Data[4]; [cell.cellImagV5 sd_setImageWithURL:[NSURL URLWithString:subModel4.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel5 = model.Data[5]; [cell.cellImagV6 sd_setImageWithURL:[NSURL URLWithString:subModel5.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel6 = model.Data[6]; [cell.cellImagV7 sd_setImageWithURL:[NSURL URLWithString:subModel6.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel7 = model.Data[7]; [cell.cellImagV8 sd_setImageWithURL:[NSURL URLWithString:subModel7.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; default: { cell = [TDGroupInfoListCell configCell5:tableView indexPath:indexPath]; cell.cellImagV1.hidden = NO; cell.cellImagV2.hidden = NO; cell.cellImagV3.hidden = NO; cell.cellImagV4.hidden = NO; cell.cellImagV5.hidden = NO; cell.cellImagV6.hidden = NO; cell.cellImagV7.hidden = NO; cell.cellImagV8.hidden = NO; cell.cellImagV9.hidden = NO; TopicListSubModel * subModel0 = model.Data[0]; [cell.cellImagV1 sd_setImageWithURL:[NSURL URLWithString:subModel0.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel1 = model.Data[1]; [cell.cellImagV2 sd_setImageWithURL:[NSURL URLWithString:subModel1.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel2 = model.Data[2]; [cell.cellImagV3 sd_setImageWithURL:[NSURL URLWithString:subModel2.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel3 = model.Data[3]; [cell.cellImagV4 sd_setImageWithURL:[NSURL URLWithString:subModel3.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel4 = model.Data[4]; [cell.cellImagV5 sd_setImageWithURL:[NSURL URLWithString:subModel4.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel5 = model.Data[5]; [cell.cellImagV6 sd_setImageWithURL:[NSURL URLWithString:subModel5.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel6 = model.Data[6]; [cell.cellImagV7 sd_setImageWithURL:[NSURL URLWithString:subModel6.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel7 = model.Data[7]; [cell.cellImagV8 sd_setImageWithURL:[NSURL URLWithString:subModel7.File] placeholderImage:IMG(@"img_placeHolderVertical")]; TopicListSubModel * subModel8 = model.Data[8]; [cell.cellImagV9 sd_setImageWithURL:[NSURL URLWithString:subModel8.File] placeholderImage:IMG(@"img_placeHolderVertical")]; } break; } [cell.cellIconV sd_setImageWithURL:[NSURL URLWithString:model.AvatarUrl] placeholderImage:kUserDefaultHeadImage]; [cell.fileBtn setTitle:model.FolderResult.FolderName forState:UIControlStateNormal]; [cell.fileBtn setAction:^{ [weakSelf enterFileWithModel:model]; }]; cell.cellTimeL.text = [model.CreatedDate substringWithRange:NSMakeRange(5, 11)]; cell.cellNameL.text = model.UserName; cell.cellReadNumL.text = [NSString stringWithFormat:@"阅读:%ld",(long)model.ReadCount]; cell.celltitleL.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText]; cell.cellContentL.attributedText = [ZYCTool checkOfString:model.Content withSearchText:self.searchText]; [cell.cellLikeBtn setAction:^{ [weakSelf likeAction:model withBtn:cell.cellLikeBtn index:indexPath]; }]; if (model.CommentCount > 0) { [cell.cellPingBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.CommentCount] forState:UIControlStateNormal]; }else{ [cell.cellPingBtn setTitle:@"评论" forState:UIControlStateNormal]; } if (model.PraiseCount > 0) { [cell.cellLikeBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.PraiseCount] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitle:@"赞" forState:UIControlStateNormal]; } if (model.IsPraise) { [cell.cellLikeBtn setTitleColor:UIColorHex(#009AFF) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞_select"] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitleColor:UIColorHex(#999999) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞"] forState:UIControlStateNormal]; } [cell.cellPingBtn setAction:^{ [weakSelf CommentPush:model]; }]; [cell.cellSendBtn setAction:^{ [weakSelf reSend:model]; }]; if (model.Title.length == 0) { cell.TitleConstant.constant = 0; }else{ cell.TitleConstant.constant = 10.f; } if (model.Content.length == 0) { cell.subTitleContant.constant = 0.f; }else{ cell.subTitleContant.constant = 7.5f; } cell.fileContant.constant = 0.f; if (self.searchType == TDTopicSearch) { cell.fileBtn.hidden = NO; cell.rightView.hidden = NO; }else{ cell.fileBtn.hidden = YES; cell.rightView.hidden = YES; } cell.ClickUserBlock = ^{ [weakSelf showUserInfo:model.UserId]; }; return cell; } break; case TopiclistCellFile: { TDGroupInfoListCell * cell = [TDGroupInfoListCell configCell6:tableView indexPath:indexPath]; [cell.cellIconV sd_setImageWithURL:[NSURL URLWithString:model.AvatarUrl] placeholderImage:kUserDefaultHeadImage]; [cell.fileBtn setTitle:model.FolderResult.FolderName forState:UIControlStateNormal]; [cell.fileBtn setAction:^{ [weakSelf enterFileWithModel:model]; }]; cell.cellNameL.text = model.UserName; cell.cellTimeL.text = [model.CreatedDate substringWithRange:NSMakeRange(5, 11)]; cell.celltitleL.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText]; cell.cellContentL.attributedText = [ZYCTool checkOfString:model.Content withSearchText:self.searchText]; [cell setDataWithCell6:model.Data.firstObject]; cell.cellReadNumL.text = [NSString stringWithFormat:@"阅读:%ld",(long)model.ReadCount]; [cell.ClickFileAction setAction:^{ [weakSelf pushFileWithModel:model.Data.firstObject]; }]; [cell.cellLikeBtn setAction:^{ [weakSelf likeAction:model withBtn:cell.cellLikeBtn index:indexPath]; }]; if (model.CommentCount > 0) { [cell.cellPingBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.CommentCount] forState:UIControlStateNormal]; }else{ [cell.cellPingBtn setTitle:@"评论" forState:UIControlStateNormal]; } if (model.PraiseCount > 0) { [cell.cellLikeBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.PraiseCount] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitle:@"赞" forState:UIControlStateNormal]; } if (model.IsPraise) { [cell.cellLikeBtn setTitleColor:UIColorHex(#009AFF) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞_select"] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitleColor:UIColorHex(#999999) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞"] forState:UIControlStateNormal]; } [cell.cellPingBtn setAction:^{ [weakSelf CommentPush:model]; }]; [cell.cellSendBtn setAction:^{ [weakSelf reSend:model]; }]; if (model.Title.length == 0) { cell.TitleConstant.constant = 0; }else{ cell.TitleConstant.constant = 10.f; } if (model.Content.length == 0) { cell.subTitleContant.constant = 0.f; }else{ cell.subTitleContant.constant = 7.5f; } cell.fileContant.constant = 0.f; if (self.searchType == TDTopicSearch) { cell.fileBtn.hidden = NO; cell.rightView.hidden = NO; }else{ cell.fileBtn.hidden = YES; cell.rightView.hidden = YES; } cell.ClickUserBlock = ^{ [weakSelf showUserInfo:model.UserId]; }; return cell; } break; default:///TopiclistCellNone { TDGroupInfoListCell * cell = [TDGroupInfoListCell configCell0:tableView indexPath:indexPath]; [cell.cellIconV sd_setImageWithURL:[NSURL URLWithString:model.AvatarUrl] placeholderImage:kUserDefaultHeadImage]; [cell.fileBtn setTitle:model.FolderResult.FolderName forState:UIControlStateNormal]; [cell.fileBtn setAction:^{ [weakSelf enterFileWithModel:model]; }]; cell.cellNameL.text = model.UserName; cell.cellTimeL.text = [model.CreatedDate substringWithRange:NSMakeRange(5, 11)]; cell.celltitleL.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText]; cell.cellContentL.attributedText = [ZYCTool checkOfString:model.Content withSearchText:self.searchText]; cell.cellReadNumL.text = [NSString stringWithFormat:@"阅读:%ld",(long)model.ReadCount]; [cell.cellLikeBtn setAction:^{ [weakSelf likeAction:model withBtn:cell.cellLikeBtn index:indexPath]; }]; if (model.CommentCount > 0) { [cell.cellPingBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.CommentCount] forState:UIControlStateNormal]; }else{ [cell.cellPingBtn setTitle:@"评论" forState:UIControlStateNormal]; } if (model.PraiseCount > 0) { [cell.cellLikeBtn setTitle:[NSString stringWithFormat:@"%ld",(long)model.PraiseCount] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitle:@"赞" forState:UIControlStateNormal]; } if (model.IsPraise) { [cell.cellLikeBtn setTitleColor:UIColorHex(#009AFF) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞_select"] forState:UIControlStateNormal]; }else{ [cell.cellLikeBtn setTitleColor:UIColorHex(#999999) forState:UIControlStateNormal]; [cell.cellLikeBtn setImage:[UIImage imageNamed:@"收藏_赞"] forState:UIControlStateNormal]; } [cell.cellPingBtn setAction:^{ [weakSelf CommentPush:model]; }]; [cell.cellSendBtn setAction:^{ [weakSelf reSend:model]; }]; if (model.Title.length == 0) { cell.TitleConstant.constant = 0; }else{ cell.TitleConstant.constant = 10.f; } if (model.Content.length == 0) { cell.subTitleContant.constant = 0.f; }else{ cell.subTitleContant.constant = 7.5f; } cell.fileContant.constant = 0.f; if (self.searchType == TDTopicSearch) { cell.fileBtn.hidden = NO; cell.rightView.hidden = NO; }else{ cell.fileBtn.hidden = YES; cell.rightView.hidden = YES; } cell.ClickUserBlock = ^{ [weakSelf showUserInfo:model.UserId]; }; return cell; } break; } } - (void)showUserInfo:(NSInteger)userId { MailListDetailVC * vc = [MailListDetailVC initMailListDetailVC]; vc.indexId = userId; [self.navigationController pushViewController:vc animated:YES]; } - (void)enterFileWithModel:(TopicListItemModel *)model { NoteBookVC *vc = [NoteBookVC initNoteBookVC]; vc.listType = MyFavoriteListLevelTypeB; vc.ParentId = model.FolderResult.Id; vc.FolderId = model.FolderResult.Id; vc.myTitle = model.FolderResult.FolderName; vc.VisitUserId = 0; [self.navigationController pushViewController:vc animated:YES]; } - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { return 0.01f; } - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { return 8.f; } - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { UIView * view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 8)]; view.backgroundColor = UIColorHex(#F5F6F8); return view; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:YES]; TopicListItemModel * model = [self.dataArray objectAtIndex:indexPath.row]; MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = self.searchType == TDTopicSearch ? CollectModel_NewTopic : CollectModel_Toipc; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } #pragma mark - loadData - (NSMutableArray *)groupListArray { if (!_groupListArray) { _groupListArray = [NSMutableArray array]; } return _groupListArray; } - (NSMutableArray *)dataArray { if (!_dataArray) { _dataArray = [NSMutableArray array]; } return _dataArray; } #pragma mark - 点击文件跳转 - (void)pushFileWithModel:(TopicListSubModel *)model { WS(weakSelf); switch (model.Type) { case CollectModel_Aritle: { SHOWLOADING [[HttpManager sharedHttpManager] GETWithUrl:[NSString stringWithFormat:@"%@%ld",Article_Detail_Get,(long)model.Id] parameters:@{} success:^(id _Nonnull responseObject) { REMOVESHOW; Item *itemModel = [[Item alloc]initWithDictionary:responseObject error:nil]; HomeDetailController *homeDetail = [[HomeDetailController alloc] init]; [homeDetail loadCurrentModel:itemModel]; [weakSelf.navigationController pushViewController:homeDetail animated:YES]; } failure:^(NSError * _Nonnull error) { SHOWERROR([ZYCTool handerResultData:error]); }]; } break; case CollectModel_Toipc: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_Toipc; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_NewTopic: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_NewTopic; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_Collect: { } break; case CollectModel_NoteBook: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_NoteBook; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_CollectFile:{ if (model.SourceUserId == [AppUserModel sharedAppUserModel].Id) { MyFavoriteVC *vc = [MyFavoriteVC initMyFavoriteVC]; vc.listType = model.Id == 0 ? MyFavoriteListLevelTypeA : MyFavoriteListLevelTypeB; vc.ParentId = 0; vc.FolderId = model.Id; vc.myTitle = model.Title; [self.navigationController pushViewController:vc animated:YES]; }else{ OtherFavoriteVC *vc = [OtherFavoriteVC initOtherFavoriteVC]; vc.listType = model.Id == 0 ? MyFavoriteListLevelTypeA : MyFavoriteListLevelTypeB; vc.ParentId = 0; vc.FolderId = model.Id; vc.myTitle = model.Title; vc.VisitUserId = model.SourceUserId; [self.navigationController pushViewController:vc animated:YES]; } }break; case CollectModel_NoteFile:{ if (model.SourceUserId == [AppUserModel sharedAppUserModel].Id) { NoteBookVC *vc = [NoteBookVC initNoteBookVC]; vc.listType = model.Id == 0 ? MyFavoriteListLevelTypeA : MyFavoriteListLevelTypeB; vc.ParentId = 0; vc.FolderId = model.Id; vc.myTitle = model.Title; vc.VisitUserId = 0; [self.navigationController pushViewController:vc animated:YES]; }else{ OtherNoteBookVC *vc = [OtherNoteBookVC initOtherNoteBookVC]; vc.listType = model.Id == 0 ? MyFavoriteListLevelTypeA : MyFavoriteListLevelTypeB; vc.ParentId = 0; vc.FolderId = model.Id; vc.myTitle = model.Title; vc.VisitUserId = model.SourceUserId; [self.navigationController pushViewController:vc animated:YES]; } }break; case CollectModel_Notice: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_Notice; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_InterMail: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_InterMail; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_Group: { TDGroupInfoListVC * vc = [TDGroupInfoListVC initTDGroupInfoListVC]; vc.GroupId = model.Id; vc.titleStr = model.Title; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_meetMian: { MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = CollectModel_meetMian; vc.Id = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_meetDetail: { WorkFlowDetailsController * vc = [[WorkFlowDetailsController alloc] initWithId:model.Id]; [self.navigationController pushViewController:vc animated:YES]; } break; case CollectModel_work: { MyApprovalPageDetail * vc = [[MyApprovalPageDetail alloc]init]; vc.pageType = Type_ONEC; vc.indexId = model.Id; vc.title = model.Title; vc.TodoId = model.Id; [self.navigationController pushViewController:vc animated:YES]; } break; default: { DownFileViewController *vc = [[DownFileViewController alloc]init]; FlowAttachmentsModel * fmodel = [[FlowAttachmentsModel alloc] init]; fmodel.SoureId = model.Id; fmodel.Title = model.Title; fmodel.Url = model.File; vc.model = fmodel; [self.navigationController pushViewController:vc animated:YES]; } break; } } #pragma mark - 点击评论 - (void)likeAction:(TopicListItemModel *)model withBtn:(UIButton *)btn index:(NSIndexPath *)indexPath { WS(weakSelf); NSDictionary * paraDict = @{@"SourceId":@(model.Id), @"TypeValue":@(self.searchType == 0 ? 3 : 1),///3 笔记 @"AnalyzeType":@(1) }; btn.enabled = NO; [[HttpManager sharedHttpManager] POSTUrl:Host(API_APP_Analyze_Set) parameters:paraDict responseStyle:DATA success:^(id _Nonnull responseObject) { btn.enabled = YES; model.IsPraise = !model.IsPraise; model.PraiseCount = model.IsPraise ? (model.PraiseCount + 1) : (model.PraiseCount - 1); dispatch_async(dispatch_get_main_queue(), ^{ [weakSelf.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }); } failure:^(NSError * _Nonnull error) { btn.enabled = YES; }]; } - (void)CommentPush:(TopicListItemModel *)model { WS(weakSelf); MyTDTopicDetailVC * vc = [MyTDTopicDetailVC initMyTDTopicDetailVC]; vc.type = self.searchType == TDTopicSearch ? CollectModel_NewTopic : CollectModel_Toipc; vc.deleteTopicBlock = ^{ [weakSelf headRefresh]; }; vc.Id = model.Id; vc.isComment = YES; [self.navigationController pushViewController:vc animated:YES]; } /// 转发正文 - (void)shareHander:(NSIndexPath *)indexPath{ [self.noteBookShareVC initNoteBookShareData]; self.noteBookShareVC.indexpath = indexPath; self.noteBookShareVC.view.hidden = !self.noteBookShareVC.view.hidden; } - (NoteBookShareVC *)noteBookShareVC{ if (_noteBookShareVC == nil) { _noteBookShareVC = [NoteBookShareVC initNoteBookShareVC]; [_noteBookShareVC.view setFrame:CGRectMake(0,0, SCREEN_WIDTH, SCREEN_HEIGHT)]; [_noteBookShareVC.view setHidden:YES]; _noteBookShareVC.delegate = self; } return _noteBookShareVC; } - (void)userSelectType:(NSString *)typeName WithIndexPath:(NSIndexPath *)indexPath { // TopicListItemModel * model = [self.dataArray objectAtIndex:(indexPath.section - 1)]; self.noteBookShareVC.view.hidden = !self.noteBookShareVC.view.hidden; if ([typeName isEqualToString:@"发给微信好友"]) { }else if ([typeName isEqualToString:@"发到朋友圈"]){ }else if ([typeName isEqualToString:@"发到微博"]){ }else if ([typeName isEqualToString:@"发给QQ好友"]){ }else if ([typeName isEqualToString:@"发到消息"]){ }else if ([typeName isEqualToString:@"发到小组"]){ [self returnToGroup]; }else if ([typeName isEqualToString:@"发到笔记"]){ [self returnToNote]; }else if ([typeName isEqualToString:@"发到话题"]){ [self returnToTopic]; }else{ } } - (void)returnToGroup { MyTDGroupViewController * vc = [[MyTDGroupViewController alloc] init]; vc.type = CollectModel_Group; vc.sendModel = self.sendModel; vc.isReturn = YES; [self.navigationController pushViewController:vc animated:YES]; } - (void)returnToNote { MyTDTopicCreateVC * vc = [MyTDTopicCreateVC initMyTDTopicCreateVC]; vc.type = CollectModel_NoteBook; vc.sendModel = self.sendModel; vc.isReturn = YES; [self.navigationController pushViewController:vc animated:YES]; } - (void)returnToTopic { MyTDTopicCreateVC * vc = [MyTDTopicCreateVC initMyTDTopicCreateVC]; vc.type = CollectModel_NewTopic; vc.sendModel = self.sendModel; vc.isReturn = YES; [self.navigationController pushViewController:vc animated:YES]; } - (void)reSend:(TopicListItemModel *)model { FlowAttachmentsModel * topicModel = [[FlowAttachmentsModel alloc] init]; topicModel.SoureTypeId = self.searchType == TDTopicSearch ? CollectModel_NewTopic : CollectModel_Toipc; topicModel.Title = model.Title; topicModel.SoureId = model.Id; topicModel.Title = model.Title; topicModel.Author = model.UserName; self.sendModel = topicModel; [self.noteBookShareVC initNoteBookShareData]; self.noteBookShareVC.view.hidden = !self.noteBookShareVC.view.hidden; } @end