// // RQVipAuthorityNewCell.m // jiaPei // // Created by 张嵘 on 2022/11/14. // Copyright © 2022 JCZ. All rights reserved. // #import "RQVipAuthorityNewCell.h" @interface RQVipAuthorityNewCell () @property (nonatomic, readwrite, strong) RQVipAuthorityNewItemViewModel *viewModel; @property (weak, nonatomic) IBOutlet UIImageView *bgImageView; @property (weak, nonatomic) IBOutlet UILabel *authorityLabel; @property (weak, nonatomic) IBOutlet UIStackView *subject23View; @property (weak, nonatomic) IBOutlet UIStackView *subject14View; @property (weak, nonatomic) IBOutlet UIStackView *allSubjectView; @property (weak, nonatomic) IBOutlet UILabel *subject23TitleLabel; @property (weak, nonatomic) IBOutlet UILabel *subject14TitleLabel; @end @implementation RQVipAuthorityNewCell #pragma mark - PublicMethods + (instancetype)cellWithCollectionView:(UICollectionView *)collectionView forIndexPath:(NSIndexPath *)indexPath { static NSString *ID = @"RQVipAuthorityNewCell"; [collectionView registerNib:[UINib nibWithNibName:ID bundle:nil] forCellWithReuseIdentifier:ID]; RQVipAuthorityNewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:ID forIndexPath:indexPath]; if (!cell) cell = [self rq_viewFromXib]; return cell; } - (void)bindViewModel:(RQVipAuthorityNewItemViewModel *)viewModel { @weakify(self) _viewModel = viewModel; [[[RACObserve(viewModel, bgImageName) deliverOnMainThread] takeUntil:self.rac_prepareForReuseSignal] subscribeNext:^(id _Nullable x) { @strongify(self) self.bgImageView.image = RQImageNamed(viewModel.bgImageName); }]; RAC(self.authorityLabel, text) = [[RACObserve(viewModel, authorityTitle) takeUntil:self.rac_prepareForReuseSignal] deliverOnMainThread]; [[[RACObserve(viewModel, chooseTypeModel) takeUntil:self.rac_prepareForReuseSignal] deliverOnMainThread] subscribeNext:^(id _Nullable x) { @strongify(self) if ([viewModel.chooseTypeModel.dictLabel containsString:@"科一专项VIP"]) { self.subject14View.hidden = NO; self.subject23View.hidden = YES; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科二专项VIP"]) { self.subject14View.hidden = YES; self.subject23View.hidden = NO; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科三专项VIP"]) { self.subject14View.hidden = YES; self.subject23View.hidden = NO; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科四专项VIP"]) { self.subject14View.hidden = NO; self.subject23View.hidden = YES; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科一+科四VIP"]) { self.subject14View.hidden = NO; self.subject23View.hidden = YES; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科二+科三VIP"]) { self.subject14View.hidden = YES; self.subject23View.hidden = NO; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科三+科四VIP"]) { self.subject14View.hidden = NO; self.subject23View.hidden = NO; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = NO; self.subject23TitleLabel.hidden = NO; self.subject23TitleLabel.text = @"科三所有付费权益"; } else if ([viewModel.chooseTypeModel.dictLabel containsString:@"科二+科三+科四"]) { self.subject14View.hidden = NO; self.subject23View.hidden = NO; self.allSubjectView.hidden = YES; self.subject14TitleLabel.hidden = NO; self.subject23TitleLabel.hidden = NO; self.subject23TitleLabel.text = @"科二科三所有付费权益"; } else { self.subject14View.hidden = YES; self.subject23View.hidden = YES; self.allSubjectView.hidden = NO; self.subject14TitleLabel.hidden = YES; self.subject23TitleLabel.hidden = YES; } }]; } #pragma mark - SystemMethods - (void)awakeFromNib { [super awakeFromNib]; // Initialization code } @end