RQSpecialAddItemViewModel.m 5.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. //
  2. // RQSpecialAddItemViewModel.m
  3. // jiaPei
  4. //
  5. // Created by 张嵘 on 2022/6/22.
  6. // Copyright © 2022 JCZ. All rights reserved.
  7. //
  8. #import "RQSpecialAddItemViewModel.h"
  9. #import "StrongVC.h"
  10. @interface RQSpecialAddItemViewModel ()
  11. @end
  12. @implementation RQSpecialAddItemViewModel
  13. - (instancetype)initWithTitleStr:(NSString *)titleStr iconImgStr:(NSString *)iconImgStr {
  14. if (self = [super init]) {
  15. self.title = titleStr;
  16. self.icon = iconImgStr;
  17. CGFloat width = (RQ_SCREEN_WIDTH - 24 - 32) / 4.f;
  18. CGFloat height = RQ_FIT_HORIZONTAL(110.f);
  19. self.itemSize = CGSizeMake(width, height);
  20. if ([self.title isEqualToString:@"图标技巧"]) {
  21. self.subtitle = @"快速记忆";
  22. self.operation = ^{
  23. [myDelegate setType:@"5"];
  24. RQStrongViewModel *strongViewModel = [[RQStrongViewModel alloc] initWithServices:RQ_APPDELEGATE.services params:nil];
  25. [RQ_APPDELEGATE.services pushViewModel:strongViewModel animated:YES];
  26. };
  27. } else if ([self.title isEqualToString:@"新规题"]) {
  28. NSInteger count = [RQ_YDTQuestion_Module getQuestionNumWithWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_NewRule];
  29. self.subtitle = [NSString stringWithFormat:@"%@题",[NSString qmui_stringWithNSInteger:count]];
  30. self.operation = ^{
  31. NSArray *arr = [[RQ_YDTQuestion_Module getQuestionWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_NewRule ].rac_sequence.signal map:^id _Nullable(RQYDTQuestionModel *ydtQuestionModel) {
  32. return [RQExerciseModel exerciseModelWithRQYDTQuestionModel:ydtQuestionModel];
  33. }].toArray;
  34. RQExerciseViewModel *exerciseViewModel = [[RQExerciseViewModel alloc] initWithServices:RQ_APPDELEGATE.services params:@{
  35. RQHomePageCarTypeKey : @(RQ_YDTQuestion_Module.carType),
  36. RQHomePageSubjectTypeKey : @(RQ_YDTQuestion_Module.subject),
  37. RQHomeSubPageTypeKey : @(RQHomeSubPageType_SequentialPractice),
  38. RQViewModelIDKey : titleStr,
  39. RQExerciseTypeKey : @(RQExerciseType_NewRule),
  40. RQViewModelUtilKey : arr,
  41. }];
  42. [RQ_APPDELEGATE.services pushViewModel:exerciseViewModel animated:YES];
  43. };
  44. } else if ([self.title isEqualToString:@"易错题"]) {
  45. NSInteger count = [RQ_YDTQuestion_Module getQuestionNumWithWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Fallible];
  46. self.subtitle = [NSString stringWithFormat:@"%@题",[NSString qmui_stringWithNSInteger:count]];
  47. self.operation = ^{
  48. NSArray *arr = [[RQ_YDTQuestion_Module getQuestionWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Fallible ].rac_sequence.signal map:^id _Nullable(RQYDTQuestionModel *ydtQuestionModel) {
  49. return [RQExerciseModel exerciseModelWithRQYDTQuestionModel:ydtQuestionModel];
  50. }].toArray;
  51. RQExerciseViewModel *exerciseViewModel = [[RQExerciseViewModel alloc] initWithServices:RQ_APPDELEGATE.services params:@{
  52. RQHomePageCarTypeKey : @(RQ_YDTQuestion_Module.carType),
  53. RQHomePageSubjectTypeKey : @(RQ_YDTQuestion_Module.subject),
  54. RQHomeSubPageTypeKey : @(RQHomeSubPageType_SequentialPractice),
  55. RQViewModelIDKey : titleStr,
  56. RQExerciseTypeKey : @(RQExerciseType_Fallible),
  57. RQViewModelUtilKey : arr,
  58. }];
  59. [RQ_APPDELEGATE.services pushViewModel:exerciseViewModel animated:YES];
  60. };
  61. } else if ([self.title isEqualToString:@"争议题"]) {
  62. NSInteger count = [RQ_YDTQuestion_Module getQuestionNumWithWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Disputed];
  63. self.subtitle = [NSString stringWithFormat:@"%@题",[NSString qmui_stringWithNSInteger:count]];
  64. self.operation = ^{
  65. NSArray *arr = [[RQ_YDTQuestion_Module getQuestionWithSubject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Disputed ].rac_sequence.signal map:^id _Nullable(RQYDTQuestionModel *ydtQuestionModel) {
  66. return [RQExerciseModel exerciseModelWithRQYDTQuestionModel:ydtQuestionModel];
  67. }].toArray;
  68. RQExerciseViewModel *exerciseViewModel = [[RQExerciseViewModel alloc] initWithServices:RQ_APPDELEGATE.services params:@{
  69. RQHomePageCarTypeKey : @(RQ_YDTQuestion_Module.carType),
  70. RQHomePageSubjectTypeKey : @(RQ_YDTQuestion_Module.subject),
  71. RQHomeSubPageTypeKey : @(RQHomeSubPageType_SequentialPractice),
  72. RQViewModelIDKey : titleStr,
  73. RQExerciseTypeKey : @(RQExerciseType_Disputed),
  74. RQViewModelUtilKey : arr,
  75. }];
  76. [RQ_APPDELEGATE.services pushViewModel:exerciseViewModel animated:YES];
  77. };
  78. }
  79. }
  80. return self;
  81. }
  82. @end