RQExerciseModule.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. //
  2. // RQExerciseModule.h
  3. // SDJK
  4. //
  5. // Created by 张嵘 on 2021/8/12.
  6. //
  7. #import <Foundation/Foundation.h>
  8. #define RQ_Exercise_Module [RQExerciseModule sharedInstance]
  9. /// 刷新TableView
  10. FOUNDATION_EXTERN NSString * const RQRefreshExerciseTableViewNotification;
  11. /// 答题结果
  12. FOUNDATION_EXTERN NSString * const RQAnswerResultsNotification;
  13. /// 答题页面更新
  14. FOUNDATION_EXTERN NSString * const RQQuestionReloadNotification;
  15. /// 答题结果 key
  16. FOUNDATION_EXTERN NSString * const RQAnswerResultsKey;
  17. /// 练习模式Key
  18. FOUNDATION_EXTERN NSString * const RQExerciseTypeKey;
  19. /// 页面操作类型Key
  20. FOUNDATION_EXTERN NSString * const RQExerciseDoTypeKey;
  21. /// 答题页面更新ExerciseModelKey
  22. FOUNDATION_EXTERN NSString * const RQQuestionReloadExerciseModelKey;
  23. /// 收藏成功通知
  24. FOUNDATION_EXTERN NSString * const RQAddCollectNotification;
  25. /// 取消收藏成功通知
  26. FOUNDATION_EXTERN NSString * const RQCancelCollectNotification;
  27. /// 取消收藏题目Key
  28. FOUNDATION_EXTERN NSString * const RQCancelCollectExerciseModelKey;
  29. /// 答题结果Type
  30. typedef NS_ENUM(NSUInteger, RQAnswerResultsType) {
  31. RQAnswerResultsType_Unanswered, /// 未答题
  32. RQAnswerResultsType_Correct, /// 回答正确
  33. RQAnswerResultsType_Error, /// 回答错误
  34. };
  35. /// 页面操作类型
  36. typedef NS_ENUM(NSUInteger, RQExerciseDoType) {
  37. RQExerciseDoType_Default, /// 默认值
  38. RQExerciseDoType_Read, /// 读题
  39. RQExerciseDoType_ReadAndAnswer, /// 读题+答案
  40. RQExerciseDoType_SkillExplanation, /// 技巧讲解
  41. RQExerciseDoType_officialInterpretation, /// 官方解释
  42. RQExerciseDoType_Auto, /// 自动读题
  43. };
  44. /// 习题页面类型
  45. typedef NS_ENUM(NSUInteger, RQExerciseType) {
  46. /// 顺序练习
  47. RQExerciseType_Sequential,
  48. /// 随机练习
  49. RQExerciseType_Random,
  50. /// 背题模式
  51. RQExerciseType_Recitation,
  52. /// 单项测试
  53. RQExerciseType_Test,
  54. /// 模拟考试
  55. RQExerciseType_Exam,
  56. /// 考前秘卷模拟考试
  57. RQExerciseType_MiExam,
  58. };
  59. /// 题目类型
  60. typedef NS_ENUM(NSUInteger, RQQuestionType) {
  61. RQQuestionType_Judgment, /// 判断题
  62. RQQuestionType_SingleChoice, /// 单选题
  63. RQQuestionType_MultipleChoice, /// 多选题
  64. };
  65. #pragma mark - Vendor
  66. #import "DZMCoverController.h"
  67. #import "HWPanModal.h"
  68. #pragma mark - Model
  69. #import "RQExerciseModel.h"
  70. #import "RQGetScoreInfoAllModel.h"
  71. #import "RQHTTPService+RQGetScoreInfoAll.h"
  72. #import "RQHTTPService+RQAddScoreRecord.h"
  73. #import "RQHTTPService+RQGetScoreInfoList.h"
  74. #import "RQCollectionModel.h"
  75. #import "RQHTTPService+RQAddCollectionRecord.h"
  76. #import "RQHTTPService+RQAddCollectionRecords.h"
  77. #import "RQHTTPService+RQDeleteCollectionRecord.h"
  78. #import "RQHTTPService+RQCancleCollectionRecord.h"
  79. #import "RQHTTPService+RQGetCollectionList.h"
  80. #import "RQWrongModel.h"
  81. #import "RQHTTPService+RQAddWrongRecord.h"
  82. #import "RQHTTPService+RQAddWrongRecords.h"
  83. #import "RQHTTPService+RQDeleteWrongRecord.h"
  84. #import "RQHTTPService+RQGetWrongList.h"
  85. #import "RQHistoryModel.h"
  86. #import "RQHTTPService+RQBakWrongs.h"
  87. #import "RQHTTPService+RQAppWrongByUser.h"
  88. #import "RQHTTPService+RQWrongs.h"
  89. #import "RQHTTPService+RQBakCollections.h"
  90. #import "RQHTTPService+RQAppCollectionByUser.h"
  91. #import "RQHTTPService+RQCollections.h"
  92. #pragma mark - ViewModel
  93. #import "RQExerciseViewModel.h"
  94. #import "RQExerciseSubViewModel.h"
  95. #import "RQTestQuestionsViewModel.h"
  96. #import "RQCatalogueViewModel.h"
  97. #import "RQExerciseSettingViewModel.h"
  98. #import "RQExerciseQuestionItemViewModel.h"
  99. #import "RQExerciseOptionItemViewModel.h"
  100. #import "RQExerciseOptionSureBtnItemViewModel.h"
  101. #import "RQExerciseAnswerItemViewModel.h"
  102. #import "RQExerciseToolBarItemViewModel.h"
  103. #import "RQExerciseExamToolBarItemViewModel.h"
  104. #import "RQExerciseCatalogueItemViewModel.h"
  105. #import "RQTestResultsViewModel.h"
  106. #pragma mark - View
  107. #import "RQExerciseQuestionCell.h"
  108. #import "RQExerciseOptionCell.h"
  109. #import "RQExerciseOptionSureBtnCell.h"
  110. #import "RQExerciseAnswerCell.h"
  111. #import "RQExerciseExamToolBarCell.h"
  112. #import "RQExerciseToolBarCell.h"
  113. #import "RQExerciseToolBarView.h"
  114. #import "RQErrorExerciseToolBarView.h"
  115. #import "RQExerciseCatalogueToolBarView.h"
  116. #import "RQExerciseSettingHeaderView.h"
  117. #import "RQExerciseSettingCell.h"
  118. #import "RQExerciseCatalogueCell.h"
  119. #import "RQCountdownView.h"
  120. #import "RQHandInThePaperView.h"
  121. #import "JXCategoryTitleBackgroundView.h"
  122. #import "RQExercisExplainCell.h"
  123. #pragma mark - ViewController
  124. #import "RQExerciseViewController.h"
  125. #import "RQExerciseSubViewController.h"
  126. #import "RQTestQuestionsViewController.h"
  127. #import "RQCatalogueViewController.h"
  128. #import "RQExerciseSettingViewController.h"
  129. #import "RQTestResultsViewController.h"
  130. @interface RQExerciseModule : NSObject
  131. @property (nonatomic, readwrite, assign) BOOL isAutoRead;
  132. @property (nonatomic, readwrite, assign) RQExerciseDoType exerciseDoType;
  133. @property (nonatomic, readwrite, strong) RQExerciseModel *currrentExerciseModel;
  134. @property (nonatomic, readwrite, assign) BOOL isRightAutoJumpToNext;
  135. @property (nonatomic, readwrite, assign) BOOL isExerciseSound;
  136. @property (nonatomic, readwrite, assign) NSInteger exerciseFontSize;
  137. /// 单例
  138. + (instancetype) sharedInstance;
  139. - (void)rq_RACIsAutoRead;
  140. - (void)cancleAutoReadQuestion;
  141. - (void)rq_showOfficialInterpretationAlertWithMessage:(NSString *)messageStr mp3Url:(NSString *)mp3Url;
  142. - (void)rq_showSkillExplanationAlertWithMessage:(NSString *)messageStr skillkeyword:(NSString *)skillkeyword explainGifUrl:(NSString *)explainGifUrl mp3Url:(NSString *)mp3Url completeBlock:(void(^__nullable)(void))completeBlock;
  143. @end