// // VipExamViewController.m // jiaPei // // Created by 张嵘 on 2019/8/26. // Copyright © 2019 JCZ. All rights reserved. // #import "VipExamViewController.h" #import "FMDatabaseAdditions.h" #import "DZMCoverController.h" #import "TempViewController.h" #import "QuestionModel.h" #import "SingData.h" #import "VipSubjectViewController.h" #import "HWPanModal.h" #import "ToolsBarView.h" @interface VipExamViewController () @property (nonatomic, readwrite, weak) DZMCoverController *coverVC; @property (nonatomic, readwrite, assign) int number;/// 记录数字 @property (nonatomic, readwrite, assign) int firstNum;///再次进来的第一题 @property (nonatomic, readwrite, retain) FMDatabase *db; @property (nonatomic, readwrite, retain) FMDatabaseQueue *dbQueue; @property (nonatomic, readwrite, strong) UISegmentedControl *segmentedControl; @property (nonatomic, readwrite, strong) UILabel *titleLab; @property (nonatomic, readwrite, strong) UILabel *selLab;///选中条显示 @property (nonatomic, readwrite, strong) VipSubjectViewController *collectionViewController; @property (nonatomic, readwrite, strong) ToolsBarView *toolsBarView; @end @implementation VipExamViewController #pragma mark - Life Circle - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; self.tabBarController.tabBar.hidden = YES; } - (void)viewDidLoad { [super viewDidLoad]; [self initUI]; } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; int popNum = _firstNum 0) { [self.coverVC setController:[self creatSubVC] animated:NO isAbove:NO]; } } - (void)creatCoverVC { DZMCoverController *coverVC = [[DZMCoverController alloc] init]; coverVC.delegate = self; [self.view addSubview:coverVC.view]; [self addChildViewController:coverVC]; self.coverVC = coverVC; [self.coverVC setController:[self creatSubVC]]; } - (TempViewController *)creatSubVC { TempViewController *vc = [[TempViewController alloc] init]; vc.model = self.questionArr[self.number]; vc.showAnswer = _showAnswer; vc.index = self.number; vc.delegate = self; return vc; } - (void)creatNaviNorColor:(UIColor *)norColor SelColor:(UIColor *)selColor { [self.segmentedControl setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: norColor, NSForegroundColorAttributeName, [UIFont systemFontOfSize:60 * HeightScale], NSFontAttributeName,nil] forState:UIControlStateNormal]; [self.segmentedControl setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: selColor, NSForegroundColorAttributeName, [UIFont systemFontOfSize:60 * HeightScale], NSFontAttributeName,nil] forState:UIControlStateSelected]; } /// 根据车型取题 - (void)changeCityQuestion { FMResultSet *resultSet; resultSet =[_db executeQuery:@"select * from dt_question where cert_type in (2,1) and course=1 order by chapter"]; while ( [ resultSet next ] ) { // 对应字段来取数据 QuesTionItem *Item = [[QuesTionItem alloc] init]; Item.HiddenRightAnswer = YES; Item.questionID = [resultSet intForColumn:@"question_id"]; Item.type = [resultSet intForColumn:@"type"]; Item.chapter = [resultSet intForColumn:@"chapter"]; Item.isRight = 0; Item.userAnswer = @""; Item.is_favorite = [resultSet intForColumn:@"is_favorite"]; Item.question = [NSString stringWithFormat:@"%@",[ resultSet stringForColumn: @"question" ]]; Item.category = [resultSet intForColumn:@"media_type"]; if (Item.category != 0) { if (Item.category == 1) { Item.picName = [resultSet stringForColumn:@"img_url"]; }else{ Item.VediaName = [resultSet stringForColumn:@"video_url"]; } } if (Item.type != 1) { NSString *option_a = [resultSet stringForColumn:@"option_a"]; NSString *option_b = [resultSet stringForColumn:@"option_b"]; NSString *option_c = [resultSet stringForColumn:@"option_c"]; NSString *option_d = [resultSet stringForColumn:@"option_d"]; Item.Awasers = @[option_a,option_b,option_c,option_d]; } Item.difficulty = [resultSet intForColumn:@"difficulty"]; Item.RightAwaser = [resultSet stringForColumn:@"answer"]; Item.Comments = [resultSet stringForColumn:@"comments"]; [self.questionArr addObject:Item];//获取到所有车型科目一四的所有题目 } [self searchExamRecord]; //顺序练习 if (self.questionArr.count > 0) { [self creatCoverVC]; [self creatToolsBar]; } } - (void)creatToolsBar { [self.view addSubview:self.toolsBarView]; @weakify(self) [self.toolsBarView.listBtn setTapActionWithBlock:^(UIGestureRecognizer *gestureRecoginzer) { @strongify(self) self.collectionViewController.index = self.number; [self presentPanModal:self.collectionViewController]; }]; } /// 查看答题记录 - (void)searchExamRecord { FMResultSet *RightresultSet = [_db executeQuery:@"select * from dt_practice_record where course = 1 and mode = 1 and cert_type = 1"]; // 逐行读取数据 while ( [ RightresultSet next ] ) { NSInteger ID = [RightresultSet intForColumn:@"question_id"]; for (QuesTionItem *item in self.questionArr) { if (item.questionID == ID) { item.userAnswer = [RightresultSet stringForColumn:@"user_answer"]; if ([item.userAnswer isEqualToString:[NSString stringWithFormat:@"%d",[RightresultSet intForColumn:@"RIGHT"]]]) { item.isRight=1;//答对 }else{ item.isRight=2;//答错 } } } } } /// 保存更新答题记录 ,如果没有打完自动跳转到下一题 ,model:1顺序2随机3专项4答对5打错6未答7收藏8模拟9考试纪录10章节 . */ -(void)saveTheAnswerRecordActionWithQuesTionItem:(QuesTionItem *_Nullable)item isRight:(NSInteger)right{ /* *自动跳转到下一题 */ _firstNum=self.number; if (![[[NSUserDefaults standardUserDefaults] objectForKey:@"AutoJump"] isEqual:@1]) { if (self.number