// // RQYDTQuestionModule.m // jiaPei // // Created by 张嵘 on 2022/3/28. // Copyright © 2022 JCZ. All rights reserved. // #import "RQYDTQuestionModule.h" #import "RQYDTXCQuestionModule.h" #import "RQYDTHCQuestionModule.h" #import "RQYDTKCQuestionModule.h" #import "RQYDTMTCQuestionModule.h" #import "RQYDTZGZJLYQuestionModule.h" #import "RQYDTZGZKYQuestionModule.h" #import "RQYDTZGZHYQuestionModule.h" #import "RQYDTZGZWXPQuestionModule.h" #import "RQYDTZGZCZCQuestionModule.h" #import "RQYDTZGZWYCQuestionModule.h" /// 正式环境key static NSString * const RQYDTQuestionCarTypeKey = @"RQYDTQuestionCarTypeKey"; @implementation RQYDTQuestionModule static id rq_ydtQuestionModule = nil; #pragma mark - init + (instancetype)sharedInstance { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ rq_ydtQuestionModule = [[self alloc] init]; }); return rq_ydtQuestionModule; } - (instancetype)init { if (self = [super init]) { NSInteger userVersion = [RQ_YDT_USER_Question_Module getQuestionVersion]; NSLog(@"用户题库版本号:%ld",userVersion); NSInteger xcVersion = [RQ_YDT_XC_Question_Module getQuestionVersion]; NSLog(@"小车题库版本号:%ld",xcVersion); NSInteger hcVersion = [RQ_YDT_HC_Question_Module getQuestionVersion]; NSLog(@"货车题库版本号:%ld",hcVersion); NSInteger kcVersion = [RQ_YDT_KC_Question_Module getQuestionVersion]; NSLog(@"客车题库版本号:%ld",kcVersion); NSInteger mtcVersion = [RQ_YDT_MTC_Question_Module getQuestionVersion]; NSLog(@"摩托车题库版本号:%ld",mtcVersion); NSInteger zgzJlyVersion = [RQ_YDT_ZGZ_JLY_Question_Module getQuestionVersion]; NSLog(@"资格证教练员题库版本号:%ld",zgzJlyVersion); } return self; } - (void)setCarType:(RQHomePageCarType)carType { NSString *carTypeStr = [NSString stringWithFormat:@"%@",[NSNumber numberWithInteger:carType]]; [[NSUserDefaults standardUserDefaults] setObject:carTypeStr forKey:RQYDTQuestionCarTypeKey]; [[NSUserDefaults standardUserDefaults] synchronize]; } - (RQHomePageCarType)carType { NSString *carTypeStr = [[NSUserDefaults standardUserDefaults] objectForKey:RQYDTQuestionCarTypeKey]; carTypeStr = [carTypeStr rq_stringValueExtension]; return carTypeStr.integerValue; } - (NSString *)carTypeStr { return [self getCarTypeNameWithCarType:self.carType]; } - (NSString *)subjectStr { return [self getSubjectNameWithSubject:self.subject]; } #pragma mark - PublicMethods /// 更新题库 - (void)updateDatabaseWithResourcePath:(NSString *)resourcePath { switch (self.carType) { case RQHomePageCarType_Car: [RQ_YDT_XC_Question_Module initDatabaseQueueWithResourcePath:resourcePath]; break; case RQHomePageCarType_Truck: [RQ_YDT_HC_Question_Module initDatabaseQueueWithResourcePath:resourcePath]; break; case RQHomePageCarType_Bus: [RQ_YDT_KC_Question_Module initDatabaseQueueWithResourcePath:resourcePath]; break; case RQHomePageCarType_Motorcycle: [RQ_YDT_MTC_Question_Module initDatabaseQueueWithResourcePath:resourcePath]; break; default: break; } } - (NSInteger)getQuestionVersion { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getQuestionVersion]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getQuestionVersion]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getQuestionVersion]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getQuestionVersion]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getQuestionVersion]; default: return [RQ_YDT_XC_Question_Module getQuestionVersion]; } } - (NSString *)getSubjectNameWithSubject:(RQHomePageSubjectType)subject { switch (subject) { case RQHomePageSubjectType_SubjectOne: return @"1"; case RQHomePageSubjectType_SubjectTwo: return @"2"; case RQHomePageSubjectType_SubjectThree: return @"3"; case RQHomePageSubjectType_SubjectFour: return @"4"; default: return @"1"; } } - (RQHomePageSubjectType)getSubjectWithSubjectName:(NSString *)subjectName { if ([subjectName isEqualToString:@"1"]) { return RQHomePageSubjectType_SubjectOne; } else if ([subjectName isEqualToString:@"2"]) { return RQHomePageSubjectType_SubjectTwo; } else if ([subjectName isEqualToString:@"3"]) { return RQHomePageSubjectType_SubjectThree; } else if ([subjectName isEqualToString:@"4"]) { return RQHomePageSubjectType_SubjectFour; } else { return RQHomePageSubjectType_SubjectOne; } } - (RQHomePageCarType)getCarTypeWithCarTypeName:(NSString *)carTypeName { if ([carTypeName isEqualToString:@"C1"]) { return RQHomePageCarType_Car; } else if ([carTypeName isEqualToString:@"A2"]) { return RQHomePageCarType_Truck; } else if ([carTypeName isEqualToString:@"A1"]) { return RQHomePageCarType_Bus; } else if ([carTypeName isEqualToString:@"D"]) { return RQHomePageCarType_Motorcycle; } else if ([carTypeName isEqualToString:@"1"]) { return RQHomePageCarType_ZGZ_JLY; } else if ([carTypeName isEqualToString:@"2"]) { return RQHomePageCarType_ZGZ_KY; } else if ([carTypeName isEqualToString:@"3"]) { return RQHomePageCarType_ZGZ_HY; } else if ([carTypeName isEqualToString:@"4"]) { return RQHomePageCarType_ZGZ_WXP; } else if ([carTypeName isEqualToString:@"5"]) { return RQHomePageCarType_ZGZ_CZC; } else if ([carTypeName isEqualToString:@"6"]) { return RQHomePageCarType_ZGZ_WYC; } else { return RQHomePageCarType_Car; } } - (NSArray *)getQuestionWithExerciseType:(RQExerciseType)exerciseType { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; default: return [RQ_YDT_XC_Question_Module getQuestionWithSubject:self.subject exerciseType:exerciseType]; } } - (NSArray *)getQuestionWithSubject:(RQHomePageSubjectType)subject exerciseType:(RQExerciseType)exerciseType { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; default: return [RQ_YDT_XC_Question_Module getQuestionWithSubject:subject exerciseType:exerciseType]; } } - (NSArray *)getChapterArr { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getChapter]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getChapter]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getChapter]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getChapter]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getChapter]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getChapter]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getChapter]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getChapter]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getChapter]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getChapter]; default: return [RQ_YDT_XC_Question_Module getChapter]; } } - (NSArray *)getChapterQuestionWithChapterName:(NSString *)chapterName { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getChapterQuestionWithChapterName:chapterName]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getChapterQuestionWithChapterName:chapterName]; default: return [RQ_YDT_XC_Question_Module getChapterQuestionWithChapterName:chapterName]; } } - (NSArray *)getPoint { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getPoint]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getPoint]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getPoint]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getPoint]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getPoint]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getPoint]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getPoint]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getPoint]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getPoint]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getPoint]; default: return [RQ_YDT_XC_Question_Module getPoint]; } } - (NSArray *)getPointQuestionWithPointID:(NSInteger)pointId { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getPointQuestionWithPointId:pointId]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getPointQuestionWithPointId:pointId]; default: return [RQ_YDT_XC_Question_Module getPointQuestionWithPointId:pointId]; } } - (NSData *)getMediaDataWithMediaName:(NSString *)mediaName { switch (self.carType) { case RQHomePageCarType_Car: return [RQ_YDT_XC_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_Truck: return [RQ_YDT_HC_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_Bus: return [RQ_YDT_KC_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_Motorcycle: return [RQ_YDT_MTC_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_JLY: return [RQ_YDT_ZGZ_JLY_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_KY: return [RQ_YDT_ZGZ_KY_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_HY: return [RQ_YDT_ZGZ_HY_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_WXP: return [RQ_YDT_ZGZ_WXP_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_CZC: return [RQ_YDT_ZGZ_CZC_Question_Module getMediaDataWithMediaName:mediaName]; case RQHomePageCarType_ZGZ_WYC: return [RQ_YDT_ZGZ_WYC_Question_Module getMediaDataWithMediaName:mediaName]; default: return [RQ_YDT_XC_Question_Module getMediaDataWithMediaName:mediaName]; } } - (NSString *)getCarTypeNameWithCarType:(RQHomePageCarType)carType { switch (carType) { case RQHomePageCarType_Car: return @"xc"; case RQHomePageCarType_Bus: return @"kc"; case RQHomePageCarType_Truck: return @"hc"; case RQHomePageCarType_Motorcycle: return @"mtc"; case RQHomePageCarType_ZGZ_JLY: return @"zgzjl"; case RQHomePageCarType_ZGZ_KY: return @"zgzky"; case RQHomePageCarType_ZGZ_HY: return @"zgzhy"; case RQHomePageCarType_ZGZ_WXP: return @"zgzwxp"; case RQHomePageCarType_ZGZ_CZC: return @"zgzcz"; case RQHomePageCarType_ZGZ_WYC: return @"zgzwyc"; default: return @"xc"; } } - (NSString *)getCarTypeCNNameWithCarType:(RQHomePageCarType)carType { switch (carType) { case RQHomePageCarType_Car: return @"小车"; case RQHomePageCarType_Bus: return @"客车"; case RQHomePageCarType_Truck: return @"货车"; case RQHomePageCarType_Motorcycle: return @"摩托车"; case RQHomePageCarType_ZGZ_JLY: return @"教练员l"; case RQHomePageCarType_ZGZ_KY: return @"客运"; case RQHomePageCarType_ZGZ_HY: return @"货运"; case RQHomePageCarType_ZGZ_WXP: return @"危险品"; case RQHomePageCarType_ZGZ_CZC: return @"出租车"; case RQHomePageCarType_ZGZ_WYC: return @"网约车"; default: return @"xc"; } } #pragma mark - PrivateMethods @end