RQTimeViewModel.m 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. //
  2. // RQTimeViewModel.m
  3. // jiaPei
  4. //
  5. // Created by 张嵘 on 2021/11/19.
  6. // Copyright © 2021 JCZ. All rights reserved.
  7. //
  8. #import "RQTimeViewModel.h"
  9. @interface RQTimeViewModel ()
  10. @end
  11. @implementation RQTimeViewModel
  12. #pragma mark - Public Method
  13. - (instancetype)initWithServices:(id<RQViewModelServices>)services params:(NSDictionary *)params {
  14. if (self = [super initWithServices:services params:params]) {
  15. }
  16. return self;
  17. }
  18. - (void)initialize {
  19. [super initialize];
  20. self.title = @"学车计时";
  21. ///配置数据
  22. [self rq_configureData];
  23. }
  24. #pragma mark - ConfigureData
  25. - (void)rq_configureData {
  26. // @weakify(self)
  27. /// 数据源
  28. RAC(self, dataSource) = [RACSignal
  29. combineLatest:@[RACObserve(RQ_USER_MANAGER, isCykh)]
  30. reduce:^(NSNumber *isCykh) {
  31. // @strongify(self)
  32. RQCommonGroupViewModel *group0 = [RQCommonGroupViewModel groupViewModel];
  33. RQTimeADItemViewModel *timeADItemViewModel = [[RQTimeADItemViewModel alloc] init];
  34. group0.itemViewModels = @[timeADItemViewModel];
  35. [group0 setCustomStyleWithRQCommonGroupModel:^(RQCommonGroupModel *groupModel) {
  36. groupModel.footerHeight = 8.f;
  37. groupModel.footerBgColor = UIColor.whiteColor;
  38. }];
  39. RQCommonGroupViewModel *group1 = [RQCommonGroupViewModel groupViewModel];
  40. RQTimeSingleItemViewModel *timeSingle1ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  41. timeSingle1ItemViewModel.icon = @"理论计时";
  42. timeSingle1ItemViewModel.title = @"理论计时";
  43. RQTimeSingleItemViewModel *timeSingle2ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  44. timeSingle2ItemViewModel.icon = @"从业计时";
  45. timeSingle2ItemViewModel.title = @"从业计时";
  46. RQTimeSingleItemViewModel *timeSingle3ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  47. timeSingle3ItemViewModel.icon = @"我的学时";
  48. timeSingle3ItemViewModel.title = @"我的学时";
  49. RQTimeSingleItemViewModel *timeSingle4ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  50. timeSingle4ItemViewModel.icon = @"课堂培训";
  51. timeSingle4ItemViewModel.title = @"课堂培训";
  52. RQTimeSingleItemViewModel *timeSingle5ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  53. timeSingle5ItemViewModel.icon = @"模拟培训";
  54. timeSingle5ItemViewModel.title = @"模拟培训";
  55. RQTimeSingleItemViewModel *timeSingle6ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  56. timeSingle6ItemViewModel.icon = @"实车认证";
  57. timeSingle6ItemViewModel.title = @"实车认证";
  58. //2023-12-13 日 , 从业计时不在开启
  59. // group1.itemViewModels = RQ_USER_MANAGER.isCykh? @[timeSingle1ItemViewModel, timeSingle2ItemViewModel, timeSingle3ItemViewModel] : @[timeSingle1ItemViewModel, timeSingle3ItemViewModel];
  60. //2023-02-04 日 , 新增 课堂培训,模拟培训(待定)
  61. //2024-03-28 日 , 新增 实车认证
  62. NSMutableArray *mt_models = [NSMutableArray arrayWithArray:@[timeSingle1ItemViewModel,timeSingle3ItemViewModel]];
  63. if ([[RQ_USER_MANAGER getParamsKey:@"APP_STU_LIVE"] rangeOfString:RQ_USER_MANAGER.currentUser.city].location != NSNotFound) {//实车认证
  64. [mt_models addObject:timeSingle6ItemViewModel];
  65. }
  66. if ([[RQ_USER_MANAGER getParamsKey:@"APP_KT_PHOTO"] rangeOfString:RQ_USER_MANAGER.currentUser.city].location != NSNotFound) {//课堂培训
  67. [mt_models addObject:timeSingle4ItemViewModel];
  68. }
  69. NSString *APP_MNXL = [RQ_USER_MANAGER getParamsKey:@"APP_MNXL"];//是否启用模拟训练, 0不启用, 1启用
  70. if([APP_MNXL isEqualToString:@"1"]){
  71. [mt_models addObject:timeSingle5ItemViewModel];
  72. }
  73. //培训
  74. group1.itemViewModels = mt_models;
  75. //@[timeSingle1ItemViewModel,timeSingle6ItemViewModel, timeSingle3ItemViewModel,timeSingle4ItemViewModel];
  76. RQCommonGroupViewModel *group2 = [RQCommonGroupViewModel groupViewModel];
  77. RQTimeRuleItemViewModel *timeRuleItemViewModel = [[RQTimeRuleItemViewModel alloc] init];
  78. group2.itemViewModels = @[timeRuleItemViewModel];
  79. return @[group0, group1, group2];
  80. }];
  81. }
  82. @end