// // RQUpdateLocalDataManager.m // SDJK // // Created by 张嵘 on 2021/9/3. // #import "RQUpdateLocalDataManager.h" @interface RQUpdateLocalDataManager () @property (nonatomic, readwrite, strong) NSMutableArray *selectedArray; @property (nonatomic, readwrite, strong) NSArray *allQuestionArray; @end @implementation RQUpdateLocalDataManager @def_singleton(RQUpdateLocalDataManager); - (void)dealloc { } - (void)updateLocalWrongListWithComplete:(VoidBlock)complete { // [[RQ_HTTP_Service getWrongListWithPageNum:0 pageSize:0 carType:RQHomePageCarType_Default subject:RQHomePageSubjectType_Default] subscribeNext:^(NSArray *wrongModelArr) { // [RQ_SDJK_DB_MANAGER addWrongRecordWithRQWrongModelArr:wrongModelArr isClearOldData:YES complete:complete]; // }]; } - (void)updateLocalCollectionListWithComplete:(VoidBlock)complete { // [[RQ_HTTP_Service getCollectionListWithPageNum:0 pageSize:0 carType:RQHomePageCarType_Default subject:RQHomePageSubjectType_Default] subscribeNext:^(NSArray *collectionModelArr) { // [RQ_SDJK_DB_MANAGER addCollectionRecordWithRQCollectionModelArr:collectionModelArr isClearOldData:YES complete:complete]; // }]; } - (void)updateLocalSaveBetchFavQuestion { [self saveBetchFavQuestion]; } - (void)saveBetchFavQuestion { if (myDelegate.isLogin == NO) { NSLog(@"未登录无法上传错题"); return ; } if (![Util connectedToNetWork]) { showMsgUnconnect(); return; } NSString *wrongString = @""; NSString *favString = @""; NSString *pcString = @""; //25 36 47 for (NSString *tagStr in self.selectedArray) { NSInteger tag = [tagStr integerValue]; NSArray *qids = self.allQuestionArray[tag - 2]; NSString *sub = @"1"; if (tag > 4) { sub = @"4"; } for (NSString *qid in qids) { NSString *pinStr = [NSString stringWithFormat:@"%@,%@;",qid,sub]; if (tag == 2 || tag == 5) {//错题 wrongString = [wrongString stringByAppendingString:pinStr]; } if (tag == 3 || tag == 6) {//收藏 favString = [favString stringByAppendingString:pinStr]; } if (tag == 4 || tag == 7) {//排除 pcString = [pcString stringByAppendingString:pinStr]; } } } // NSArray *questionArray = @[wrongString,favString,pcString]; // [self saveBetchFavQuestionWithArray:questionArray]; @weakify(self) [[[[RACSignal interval:600 onScheduler:[RACScheduler scheduler]] takeUntil: self.rac_willDeallocSignal] deliverOnMainThread] subscribeNext:^(NSDate * _Nullable x) { @strongify(self) if (wrongString.length == 0 && favString.length == 0 && pcString.length == 0) { /// 没有题目不上传 } else { [self saveBetchFavQuestion]; } }]; } - (void)saveBetchFavQuestionWithArray:(NSArray *)array { @weakify(self) if (RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN) { [DB_Que_Helper setIsUpdateWithArray:self.selectedArray]; } else { NSMutableArray *arr = [NSMutableArray array]; [arr addPro:@"favArr" Value:array[1]]; [arr addPro:@"wrongArr" Value:[array firstObject]]; [arr addPro:@"pcArr" Value:[array lastObject]]; [arr addPro:@"user" Value:defUser.userDict[@"id"]]; [arr addPro:@"outId" Value:defUser.userStuId]; [arr addPro:@"carType" Value:defUser.car_type]; NSString* method = @"saveBetchFavQuestion"; [jiaPeiManager requestAnythingWithURL:method array:arr data:nil completion:^(NSDictionary *root) { @strongify(self) if (!root) { NSLog(@"上传失败,请重试"); return ; } if ([root[@"code"] isEqualToString:@"1"]) { NSLog(@"%@",root[@"body"]); return; } NSLog(@"%@",root[@"body"]); if ([defUser.car_type isEqualToString:@"2"]) { [DB_Que_Helper setGZPZ_EXAM_CYRYIsUpdateWithArray:self.selectedArray]; } else { [DB_Que_Helper setIsUpdateWithArray:self.selectedArray]; } }]; } } #pragma mark - LazyLoad - (NSMutableArray *)selectedArray { return @[@"2",@"3",@"4",@"5",@"6",@"7"].mutableCopy; } - (NSArray *)allQuestionArray { NSArray *wrongArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"1"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"1"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"1"]);//错题 NSArray *collectArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"1"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"1"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"1"]);//收藏 NSArray *exceptArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"1"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"1"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"1"]);//排错 NSArray *wrongFourArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"4"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"4"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"1" Subject:@"4"]);//错题 NSArray *collectFourArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"4"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"4"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"2" Subject:@"4"]);//收藏 NSArray *exceptFourArray = RQ_COMMON_MANAGER.YYXC_SERVICE_OPEN? [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"4"] : ([defUser.car_type isEqualToString:@"2"]? [DB_Que_Helper queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"4"] : [DB_Que_Helper queryMarkQuestionWithUpData:0 MarkType:@"3" Subject:@"4"]);//排错 return @[wrongArray,collectArray,exceptArray,wrongFourArray,collectFourArray,exceptFourArray]; } @end