// // InterMailEditSearchVC.m // smartRhino // // Created by niuzhen on 2020/2/26. // Copyright © 2020 tederen. All rights reserved. // #import "InterMailEditSearchVC.h" #import "ChatMsgNoticeCell.h" #import "NSDate+Extension.h" #import "TDInterLeterHomeViewController.h" #import "MyApprovalPageDetail.h" #import "MoveViewController.h" @interface InterMailEditSearchVC () @property (nonatomic, copy) NSMutableArray *interLetterArray; @property (nonatomic, assign) NSUInteger currentPage; @property (nonatomic, assign) NSUInteger totalPage; @property (nonatomic, assign) NSUInteger totalRecord; @property (nonatomic, strong) NSMutableArray *listArray; @property (strong, nonatomic) UIButton *moveButton; @property (nonatomic,strong) UIView * operationBottomBgView; @end @implementation InterMailEditSearchVC - (NSMutableArray *)interLetterArray { if (!_interLetterArray) { _interLetterArray = [NSMutableArray array]; } return _interLetterArray; } - (void)viewDidLoad { [super viewDidLoad]; self.fd_prefersNavigationBarHidden = YES; self.view.backgroundColor = RGB(255, 255, 255); self.lineL.hidden = YES; self.tableView.delegate = self; self.tableView.dataSource = self; [self addRefresh]; [self initBottomBgView]; self.historySearchType = HistorySearchType_InterMail; self.operationBottomBgView.hidden = YES; [self addObserver:self forKeyPath:@"searchText" options:NSKeyValueObservingOptionNew context:nil]; [self addObserver:self forKeyPath:@"IsBViewHidden" options:NSKeyValueObservingOptionNew context:nil]; } - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"searchText"]) { id obj = [change objectForKey:@"new"]; NSString * text = @""; if ([obj isKindOfClass:[NSString class]]) { text = obj; }else{ text = [obj stringValue]; } if (text.length > 0) { [self headRefresh]; } } if ([keyPath isEqualToString:@"IsBViewHidden"]) { self.operationBottomBgView.hidden = YES; } } - (void)addRefresh { WS(weakSelf); if (self.searchText.length > 0) { self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{ [weakSelf headRefresh]; }]; self.tableView.mj_footer = [MJRefreshBackStateFooter footerWithRefreshingBlock:^{ [weakSelf footerRefresh]; }]; } } - (void)headRefresh{ self.currentPage = 1; [self.interLetterArray removeAllObjects]; [self getData:self.searchText]; } - (void)footerRefresh{ self.currentPage += 1; if (self.totalRecord == self.interLetterArray.count) { self.currentPage --; return ; } [self getData:self.searchText]; } - (void)getData:(NSString *)text { if (text.length == 0) { return; } NSLog(@"%@",@"刷新数据"); NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; [dict setObject:@(self.currentPage) forKey:@"Page"]; [dict setObject:@"20" forKey:@"PerPage"]; [dict setObject:@(self.type) forKey:@"SearchType"]; [dict setObject:text forKey:@"Keyword"]; [dict setObject:@(self.FolderId) forKey:@"NoticeFolderId"]; WS(weakSelf); [[HttpManager sharedHttpManager] POSTUrl:Host(API_NOTICE_LIST) parameters:dict responseStyle:JOSN success:^(id _Nonnull responseObject) { NSLog(@"站内信返回数据%@",responseObject); NoticeListModel *listModel = [[NoticeListModel alloc] initWithDictionary:responseObject error:nil]; [weakSelf.tableView.mj_header endRefreshing]; [weakSelf.tableView.mj_footer endRefreshing]; weakSelf.totalRecord = listModel.Total; [weakSelf.interLetterArray addObjectsFromArray:listModel.Items]; if (weakSelf.totalRecord == weakSelf.interLetterArray.count) { [weakSelf.tableView.mj_footer resetNoMoreData]; [weakSelf.tableView.mj_footer endRefreshingWithNoMoreData]; } [weakSelf.tableView reloadData]; } failure:^(NSError * _Nonnull error) { SHOWERROR([ZYCTool handerResultData:error]); [weakSelf.tableView.mj_header endRefreshing]; [weakSelf.tableView.mj_footer endRefreshing]; }]; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ return self.interLetterArray.count; } - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ return UITableViewAutomaticDimension; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ WS(weakSelf); NoticeModel *model = self.interLetterArray[indexPath.row]; switch (model.AttributeValue) { case 1:{ switch (model.NoticeStatus) { case 1:///正常 { switch (model.TypeValue){ case PageTypeFromTitleMail: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2RedBgView.hidden = model.IsRead; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleNotice: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"通知图标"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.cell2RedBgView.hidden = model.IsRead; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeShen: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.cell2RedBgView.hidden = model.IsRead; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeSend: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.cell2RedBgView.hidden = model.IsRead; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleChao: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.cell2RedBgView.hidden = model.IsRead; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; default:///匿名 { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.cell2TimeLabel.text = [NSDate getTimeStringAutoShort2:model.CreatedDate]; cell.cell2RedBgView.hidden = model.IsRead; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; } } break; case 0:///删除 { switch (model.TypeValue) { case PageTypeFromTitleMail:{ ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleNotice: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"通知图标"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeShen: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeSend: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleChao: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; default:///匿名 { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; cell.cell2RedBgView.hidden = YES; cell.cell2TimeLabel.hidden = YES; [cell.cell2EditBtn setTitle:@"恢复" forState:UIControlStateNormal]; [cell.cell2EditBtn setAction:^{ NSLog(@"恢复已删除站内信"); [weakSelf reDoDeleteFind:@[model].mutableCopy]; }]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; } } break; default: { switch (model.TypeValue) { case PageTypeFromTitleMail:{ ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleNotice: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"通知图标"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeShen: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleMeSend: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; case PageTypeFromTitleChao: { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; [self setShenIcon:model withCellImgV:cell.cell2UserImgView]; cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; default:///匿名 { ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; cell.cell2UserImgView.image = model.IsRecall ? IMG(@"IsRecall_Icon") : IMG(@"站内信图"); cell.cell2TitleLabel.attributedText = [ZYCTool checkOfString:model.Title withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; [self setIntroLabelWithModel:model introLabel:cell.cell2IntroLabel unreadNumberLabel:cell.cell2UnReadNumberLbl]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell2EditBtn.hidden = NO; [cell.cell2EditBtn setAction:^{ [weakSelf editorButtonHander:indexPath]; }]; cell.cell2RedBgView.hidden = model.IsRead; cell.cell2TimeLabel.hidden = YES; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; } break; } } break; } } break; case 2:{ ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell10:tableView indexPath:indexPath]; cell.cell1TitleLabel.attributedText = [ZYCTool checkOfString:model.FolderName withSearchText:self.searchText withColor:UIColorHex(0xFF5252)]; cell.IsTopImgV.hidden = !model.IsTop; cell.cell1TimeLabel.text = [NSString stringWithFormat:@"%ld",(long)model.FileCount]; cell.cell1SelectButton.selected = model.IsSelect; [cell.cell1SelectButton setAction:^{ model.IsSelect = !model.IsSelect; [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; }]; return cell; }break; default:{ ChatMsgNoticeCell *cell = [ChatMsgNoticeCell configCell20:tableView indexPath:indexPath]; return cell; } break; } } - (void)thoroughDelete:(NSMutableArray*)array isDelete:(BOOL)isDelete { NSMutableArray * addArray = [NSMutableArray array]; for (NoticeModel *model in array) { [addArray addObject:@(model.Id)]; } NSDictionary * dict = @{@"MiddleIds":addArray, @"FolderType":@(800), ///1 通知 @"IsDelete":@(isDelete) }; WS(weakSelf); SHOWLOADING [[HttpManager sharedHttpManager] POSTUrl:Host(API_Find_DeleteRecord) parameters:dict responseStyle:DATA success:^(id _Nonnull responseObject) { REMOVESHOW SHOWSUCCESS(@"删除成功"); [weakSelf.interLetterArray removeObjectsInArray:array]; dispatch_async(dispatch_get_main_queue(), ^{ [weakSelf.tableView reloadData]; }); } failure:^(NSError * _Nonnull error) { REMOVESHOW }]; } - (void)setShenIcon:(NoticeModel *)model withCellImgV:(UIImageView *)imagV { if (model.IsRecall) { imagV.image = IMG(@"shenpi_reCall"); }else{ if ([model.FlowState isEqualToString:@"Checking"]) { imagV.image = IMG(@"审批"); }else{ imagV.image = IMG(@"shenpi_icon"); } } } - (void)reDoDeleteFind:(NSMutableArray*)findModelArray{ NSMutableArray *MiddleIds = [NSMutableArray array]; for (NoticeModel *model in findModelArray) { [MiddleIds addObject:@(model.Id)]; } NSMutableDictionary *dic = [[NSMutableDictionary alloc]init]; [dic setValue:MiddleIds forKey:@"MiddleIds"]; [dic setValue:@(5) forKey:@"FolderType"]; [dic setValue:@(0) forKey:@"IsDelete"]; [dic setValue:@([AppUserModel sharedAppUserModel].Id) forKey:@"UserId"]; SHOWLOADING WEAKSELF [[HttpManager sharedHttpManager] POSTUrl:Host(API_Find_DeleteRecord_Redo) parameters:dic responseStyle:DATA success:^(id _Nonnull responseObject) { STRONGSELF REMOVESHOW [strongSelf headRefresh]; } failure:^(NSError * _Nonnull error) { SHOWERROR([ZYCTool handerResultData:error]); }]; } - (void)editorButtonHander:(NSIndexPath *)indexpath{ WS(weakSelf); NoticeModel *model = self.interLetterArray[indexpath.row]; MyTDTopicCreateVC * vc = [MyTDTopicCreateVC initMyTDTopicCreateVC]; vc.type = CollectModel_InterMail; vc.isEdit = YES; vc.replayType = MailReplayEdit; vc.Id = model.MiddleId; vc.isFromDraft = (model.SourceId == 0 ? YES : NO); vc.MailType = model.TypeValue; vc.upDateBlock = ^{ [weakSelf headRefresh]; }; [self.navigationController pushViewController:vc animated:YES]; } - (void)setIntroLabelWithModel:(NoticeModel *)model introLabel:(UILabel *)introLabel unreadNumberLabel:(UILabel *)unreadNumberLabel { //判断是否匿名 if (model.IsAdmin) { if (model.EnjoyUser.length > 10) { NSRange range1 = NSMakeRange(10, (model.EnjoyUser.length - 10)); NSString *resultStr1 = [model.EnjoyUser stringByReplacingCharactersInRange:range1 withString:@"..."]; introLabel.text = [NSString stringWithFormat:@"收件人:%@",resultStr1]; }else{ introLabel.text = [NSString stringWithFormat:@"收件人:%@",model.EnjoyUser]; } unreadNumberLabel.text = [NSString stringWithFormat:@"已读:%ld/%ld",(long)model.ReadCount,(long)model.AllCount]; }else { if (model.TypeValue == 18) { introLabel.text = @"匿名"; unreadNumberLabel.text = nil; }else{ introLabel.text = [NSString stringWithFormat:@"发件人:%@",model.UserName]; unreadNumberLabel.text = [NSString stringWithFormat:@"已读:%ld/%ld",(long)model.ReadCount,(long)model.AllCount]; } } } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ [tableView deselectRowAtIndexPath:indexPath animated:YES]; NoticeModel *model = self.interLetterArray[indexPath.row]; model.IsSelect = !model.IsSelect; [tableView reloadRowAtIndexPath:indexPath withRowAnimation:UITableViewRowAnimationAutomatic]; } -(void)initBottomBgView{ UIButton *leftCloseBtn = [UIButton buttonWithType:UIButtonTypeCustom]; [leftCloseBtn setTitle:@"删除" forState:UIControlStateNormal]; [leftCloseBtn setTitleColor:RGB(255, 82, 82) forState:UIControlStateNormal]; leftCloseBtn.titleLabel.font = [UIFont systemFontOfSize:15]; [self.operationBottomBgView addSubview:leftCloseBtn]; [leftCloseBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.top.left.bottom.mas_equalTo(self.operationBottomBgView); make.width.mas_equalTo(self.operationBottomBgView.mas_width).multipliedBy(0.5); }]; UIButton *rightMoveBtn = [UIButton buttonWithType:UIButtonTypeCustom]; [rightMoveBtn setTitle:@"移动" forState:UIControlStateNormal]; [rightMoveBtn setTitleColor:RGB(57, 121, 211) forState:UIControlStateNormal]; rightMoveBtn.titleLabel.font = [UIFont systemFontOfSize:15]; [self.operationBottomBgView addSubview:rightMoveBtn]; self.moveButton = rightMoveBtn; [rightMoveBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.top.right.bottom.mas_equalTo(self.operationBottomBgView); make.width.mas_equalTo(self.operationBottomBgView.mas_width).multipliedBy(0.5); }]; UIView *line = [[UIView alloc] init]; line.backgroundColor = RGB(240, 239, 244); [self.operationBottomBgView addSubview:line]; [line mas_makeConstraints:^(MASConstraintMaker *make) { make.top.bottom.mas_equalTo(self.operationBottomBgView); make.width.mas_offset(0.5); make.centerX.mas_equalTo(self.operationBottomBgView); }]; UIView *topline = [[UIView alloc] init]; topline.backgroundColor = RGB(240, 239, 244); [self.operationBottomBgView addSubview:topline]; [topline mas_makeConstraints:^(MASConstraintMaker *make) { make.top.left.right.mas_equalTo(self.operationBottomBgView); make.height.mas_offset(0.5); }]; WS(weakSelf); [leftCloseBtn setAction:^{ NSMutableArray *selectIDArray = [NSMutableArray array]; for (NoticeModel * model in weakSelf.listArray) { if (model.IsSelect) { [selectIDArray addObject:model]; } } if (selectIDArray.count == 0) { SHOWERROR(@"请选择要删除的通知"); return ; }else{ [weakSelf thoroughDelete:selectIDArray isDelete:NO]; } }]; [rightMoveBtn setAction:^{ NSMutableArray *selectIDArray = [NSMutableArray array]; for (NoticeModel * model in weakSelf.listArray) { if (model.IsSelect) { [selectIDArray addObject:@(model.Id)]; } } if (selectIDArray.count == 0) { SHOWERROR(@"请选择要移动的通知或者文件夹"); return ; } [weakSelf launchMoveVC:selectIDArray]; }]; [self.view addSubview:self.operationBottomBgView]; } - (void)launchMoveVC:(NSMutableArray*)selectIDArray{ MoveViewController * vc = [MoveViewController initMoveViewController]; vc.TypeId = CreateShouType; vc.collectType = CollectHanderType_Move; vc.ParentId = 0; vc.titleStr = @"移动到"; vc.FolderIds = selectIDArray; [self.navigationController pushViewController:vc animated:YES]; } @end