@interface VMyFavoritesViewController ()<UITableViewDataSource, UITableViewDelegate,SWTableViewCellDelegate>
@property (strong, nonatomic) UITableView *tableView;
@property (strong, nonatomic) NSMutableArray *keys;
@property(nonatomic,strong) NSMutableArray *dataArray ;
@property(nonatomic,strong) NSArray *tmpArray;
@property(nonatomic,strong) NSMutableDictionary *favouriteItems;
@property(nonatomic,strong )NSMutableArray *userInfoArray;
@end
- (void) handleFavouriteArray:(NSArray *)dataArray ;
{
self.dataArray = [dataArray mutableCopy];
for (VBasicUserInfoEntity *info in self.dataArray) {
if (([info.nickName characterAtIndex:0]<='Z'&&[info.nickName characterAtIndex:0] >='A')||(([info.nickName characterAtIndex:0]<='z'&&[info.nickName characterAtIndex:0] >='a'))) {
NSString *first= [NSString stringWithFormat:@"%c",[info.nickName characterAtIndex:0]];
NSString *firstChar = [first uppercaseString];
if ([self.keys containsObject:firstChar]) {
[[self.favouriteItems objectForKey:firstChar] addObject:info];
}else{
[self.keys addObject:firstChar];
NSMutableArray *favArray = [[NSMutableArray alloc]init];
[favArray addObject:info];
[self.favouriteItems setObject:favArray forKey:firstChar];
}
}else{
NSString *first= [NSString stringWithFormat:@"#"];
NSString *firstChar = [first uppercaseString];
if ([self.keys containsObject:firstChar]) {
[[self.favouriteItems objectForKey:firstChar] addObject:info];
}else{
[self.keys addObject:firstChar];
NSMutableArray *favArray = [[NSMutableArray alloc]init];
[favArray addObject:info];
[self.favouriteItems setObject:favArray forKey:firstChar];
}
}
}
self.tmpArray = [[self.favouriteItems allKeys] sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
return [obj1 compare:obj2 options:NSCaseInsensitiveSearch];
}];
self.keys = [[NSMutableArray alloc]initWithArray:self.tmpArray];
if( [self.keys indexOfObject:@"#"]!=NSNotFound){
NSInteger lastIndex = [self.keys indexOfObject:[self.keys lastObject]];
if (lastIndex !=NSNotFound) {
[self.keys removeObject:@"#"];
[self.keys insertObject:@"#" atIndex:lastIndex ];
}
};
for (NSString *key in self.keys) {
[[self.favouriteItems objectForKey:key] sortUsingComparator:^NSComparisonResult(VBasicUserInfoEntity * obj1, VBasicUserInfoEntity *obj2) {
return [obj1.nickName compare:obj2.nickName options:NSCaseInsensitiveSearch];
}];
}
//修改客服位置始终位于第一位
NSMutableArray *supportArr = [self.favouriteItems objectForKey:@"S"];
NSArray *tmpArr = [NSArray arrayWithArray:supportArr];
for(VBasicUserInfoEntity *info in tmpArr){
if ([[VBasicUserInfoManager sharedManager] isCustomerCare:info.userId]){
[supportArr removeObject:info];
[supportArr insertObject:info atIndex:0];
}
}
}