RQTimeViewModel.m 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  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. RQTimeSingleItemViewModel *timeSingle7ItemViewModel = [[RQTimeSingleItemViewModel alloc] init];
  59. timeSingle7ItemViewModel.icon = @"模拟培训";
  60. timeSingle7ItemViewModel.title = @"科一考核";
  61. //2023-12-13 日 , 从业计时不在开启
  62. // group1.itemViewModels = RQ_USER_MANAGER.isCykh? @[timeSingle1ItemViewModel, timeSingle2ItemViewModel, timeSingle3ItemViewModel] : @[timeSingle1ItemViewModel, timeSingle3ItemViewModel];
  63. //2023-02-04 日 , 新增 课堂培训,模拟培训(待定)
  64. //2024-03-28 日 , 新增 实车认证
  65. NSMutableArray *mt_models = [NSMutableArray arrayWithArray:@[timeSingle1ItemViewModel,timeSingle3ItemViewModel]];
  66. if ([[RQ_USER_MANAGER getParamsKey:@"APP_STU_LIVE"] rangeOfString:RQ_USER_MANAGER.currentUser.city].location != NSNotFound) {//实车认证
  67. [mt_models addObject:timeSingle6ItemViewModel];
  68. }
  69. if ([[RQ_USER_MANAGER getParamsKey:@"APP_KT_PHOTO"] rangeOfString:RQ_USER_MANAGER.currentUser.city].location != NSNotFound) {//课堂培训
  70. [mt_models addObject:timeSingle4ItemViewModel];
  71. }
  72. NSString *APP_MNXL = [RQ_USER_MANAGER getParamsKey:@"APP_MNXL"];//是否启用模拟训练, 0不启用, 1启用
  73. if([APP_MNXL isEqualToString:@"1"]){
  74. [mt_models addObject:timeSingle5ItemViewModel];
  75. }
  76. //2024-08-20 日 , 新增 广西-添加科一审核
  77. NSString *cityStr = @"4501,4502,4503";
  78. if(RQ_USER_MANAGER.currentUser.city){
  79. if ([cityStr rangeOfString:RQ_USER_MANAGER.currentUser.city].location != NSNotFound) {//课堂培训
  80. [mt_models addObject:timeSingle7ItemViewModel];
  81. }
  82. }
  83. //培训
  84. group1.itemViewModels = mt_models;
  85. //@[timeSingle1ItemViewModel,timeSingle6ItemViewModel, timeSingle3ItemViewModel,timeSingle4ItemViewModel];
  86. RQCommonGroupViewModel *group2 = [RQCommonGroupViewModel groupViewModel];
  87. RQTimeRuleItemViewModel *timeRuleItemViewModel = [[RQTimeRuleItemViewModel alloc] init];
  88. group2.itemViewModels = @[timeRuleItemViewModel];
  89. return @[group0, group1, group2];
  90. }];
  91. }
  92. @end