// // KWHisAndHotWordsViewModel.m // westkissMob // // Created by iOS on 2022/9/14. // #import "KWHisAndHotWordsViewModel.h" static NSString *localSearchList = @"localSearchList"; @implementation KWHisAndHotWordsViewModel -(void)getHotKeyList:(btnClickBlock)success { __weak typeof(self) weakSelf = self; [ASNetTools.shared getWithPath:getHotList param:@{@"type":@"words"} success:^(id _Nonnull json) { NSLog(@"------url:%@---json:%@------", getHotList, json); NSArray *arr = [KWSearchHotKeyModel mj_objectArrayWithKeyValuesArray:json]; weakSelf.hotKeys = arr; success(); } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) { NSLog(@"------url:%@---code:%@---msg:%@---", getHotList, code, msg); weakSelf.hotKeys = @[]; success(); }]; } -(void)getAboutKeyList:(NSString *)key back:(btnClickBlock)success { __weak typeof(self) weakSelf = self; [ASNetTools.shared getWithPath:getLinkingKey param:@{@"q":key} success:^(id _Nonnull json) { NSLog(@"------url:%@---json:%@------", getHotList, json); success(); } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) { NSLog(@"------url:%@---code:%@---msg:%@---", getHotList, code, msg); success(); }]; } // MARK: - local Search Data - (NSArray *) getLocalSearchDatas { NSArray *localArr = [NSUserDefaults.standardUserDefaults stringArrayForKey:localSearchList]; return localArr; } - (BOOL)addSearchData:(NSString *)key { if ([key isEqualToString:@""]) { return false; } NSArray *localArr = [self getLocalSearchDatas]; BOOL hadContains = false; for (NSString *item in localArr) { if ([item isEqualToString:key]) { hadContains = true; } } NSMutableArray *tempArr = [NSMutableArray arrayWithArray:localArr]; [tempArr removeObject:key]; [tempArr insertObject:key atIndex:0]; while (tempArr.count > 10) { [tempArr removeLastObject]; } [NSUserDefaults.standardUserDefaults setValue:tempArr forKey:localSearchList]; if (self.dataReload) { self.dataReload(); } return true; } - (void)cleanLocalHisDatas { [NSUserDefaults.standardUserDefaults setValue:@[] forKey:localSearchList]; if (self.dataReload) { self.dataReload(); } } @end