123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- //
- // RQVipBuyView.m
- // jiaPei
- //
- // Created by 张嵘 on 2022/3/2.
- // Copyright © 2022 JCZ. All rights reserved.
- //
- #import "RQVipBuyView.h"
- @interface RQVipBuyView ()
- @property (weak, nonatomic) IBOutlet UIStackView *myPriceView;
- @property (weak, nonatomic) IBOutlet UILabel *nowPriceLabel;
- @property (weak, nonatomic) IBOutlet UIButton *priceBtn;
- @property (weak, nonatomic) IBOutlet NSLayoutConstraint *prewToBottom;
- @end
- @implementation RQVipBuyView
- + (instancetype)vipBuyView {
- return [super rq_viewFromXib];
- }
- - (void)awakeFromNib {
- [super awakeFromNib];
- self.layer.shadowColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.16].CGColor;
- CGFloat btnHeight = RQ_FIT_HORIZONTAL(93.f) - RQ_FIT_HORIZONTAL(18.f) - 8 - 8 - 12;
- CGFloat priceBtnWidth = (RQ_SCREEN_WIDTH - 16 - 16) - RQ_FIT_HORIZONTAL(100.f);
-
- [self.priceBtn setBackgroundImage:[UIImage imageWithGradualChangingColor:^(QQGradualChangingColor *graColor) {
- graColor.fromColor = [UIColor qmui_colorWithHexString:@"#252531"];
- graColor.toColor = [UIColor qmui_colorWithHexString:@"#2C2D3C"];
- graColor.type = QQGradualChangeTypeLeftToRight;
- } size:CGSizeMake(priceBtnWidth, btnHeight) cornerRadius:QQRadiusMake(btnHeight / 2.f, 0, btnHeight / 2.f, 0)] forState:UIControlStateNormal];
-
- [self.buyBtn setBackgroundImage:[UIImage imageWithGradualChangingColor:^(QQGradualChangingColor *graColor) {
- graColor.fromColor = [UIColor qmui_colorWithHexString:@"#DBA05C"];
- graColor.toColor = [UIColor qmui_colorWithHexString:@"#F3C085"];
- graColor.type = QQGradualChangeTypeLeftToRight;
- } size:CGSizeMake(RQ_FIT_HORIZONTAL(100.f), btnHeight) cornerRadius:QQRadiusMake(0, btnHeight / 2.f, 0, btnHeight / 2.f)] forState:UIControlStateNormal];
-
- self.buyBtn.titleLabel.adjustsFontForContentSizeCategory = YES;
- _prewToBottom.constant = 12 + RQ_APPLICATION_SAFEAREA_BOTTOM_HEIGHT;
- }
- - (void)setTypeModel:(RQTypeModel *)typeModel {
- self.layer.shadowColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.16].CGColor;
- CGFloat btnHeight = RQ_FIT_HORIZONTAL(93.f) - RQ_FIT_HORIZONTAL(18.f) - 8 - 8 - 12;
- CGFloat priceBtnWidth = (RQ_SCREEN_WIDTH - 16 - 16) - RQ_FIT_HORIZONTAL(100.f);
-
- [self.priceBtn setBackgroundImage:[UIImage imageWithGradualChangingColor:^(QQGradualChangingColor *graColor) {
- graColor.fromColor = [UIColor qmui_colorWithHexString:@"#252531"];
- graColor.toColor = [UIColor qmui_colorWithHexString:@"#2C2D3C"];
- graColor.type = QQGradualChangeTypeLeftToRight;
- } size:CGSizeMake(priceBtnWidth, btnHeight) cornerRadius:QQRadiusMake(btnHeight / 2.f, 0, btnHeight / 2.f, 0)] forState:UIControlStateNormal];
-
- [self.buyBtn setBackgroundImage:[UIImage imageWithGradualChangingColor:^(QQGradualChangingColor *graColor) {
- graColor.fromColor = [UIColor qmui_colorWithHexString:@"#DBA05C"];
- graColor.toColor = [UIColor qmui_colorWithHexString:@"#F3C085"];
- graColor.type = QQGradualChangeTypeLeftToRight;
- } size:CGSizeMake(RQ_FIT_HORIZONTAL(100), btnHeight) cornerRadius:QQRadiusMake(0, btnHeight / 2.f, 0, btnHeight / 2.f)] forState:UIControlStateNormal];
-
- if (RQObjectIsNil(typeModel)) {
- [self.priceBtn setTitleNormal:@"暂无可用VIP套餐"];
- } else {
- NSString *nowPriceStr;
- NSString *oldPriceStr;
- if (RQStringIsNotEmpty(typeModel.dictValue) && [typeModel.dictValue containsString:@","]) {
- nowPriceStr = [typeModel.dictValue componentsSeparatedByString:@","].firstObject;
- if ([typeModel.dictValue componentsSeparatedByString:@","].count >= 2) {
- oldPriceStr = [typeModel.dictValue componentsSeparatedByString:@","][1];
- } else {
- oldPriceStr = @"";
- }
- } else {
- nowPriceStr = typeModel.dictValue;
- oldPriceStr = typeModel.dictValue;
- }
-
- if ([oldPriceStr isEqualToString:nowPriceStr]) {
- NSString *price = [NSString stringWithFormat:@"¥%@/1年",nowPriceStr];
- [self.priceBtn setTitleNormal:price];
- } else {
- NSString *price = [NSString stringWithFormat:@"¥%@/1年 ¥%@",nowPriceStr,oldPriceStr];
- NSString *year = [NSString stringWithFormat:[typeModel.dictLabel isEqualToString:@"理论实操计时"]? @"/长期" : @"/1年"];
- NSString *oldPrice = [NSString stringWithFormat:@"¥%@",oldPriceStr];
- NSMutableAttributedString *nowPriceAttrStr = [[NSMutableAttributedString alloc] initWithString:price];
- [nowPriceAttrStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:22] range:[price rangeOfString:year]];
- [nowPriceAttrStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:13] range:[price rangeOfString:oldPrice]];
- [nowPriceAttrStr addAttribute:NSStrikethroughStyleAttributeName value:@(1) range:[price rangeOfString:oldPrice]];
- [nowPriceAttrStr addAttribute:NSBaselineOffsetAttributeName value:@(NSUnderlineStyleSingle) range:[price rangeOfString:oldPrice]];
- [nowPriceAttrStr addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:115/255.0 green:115/255.0 blue:115/255.0 alpha:1.0] range:[price rangeOfString:oldPrice]];
- [self.priceBtn setAttributedTitle:nowPriceAttrStr forState:UIControlStateNormal];
- }
- }
-
- [self layoutIfNeeded];
- }
- - (IBAction)userAgreeBtnAction:(id)sender {
- _userAgreeBtn.selected = !_userAgreeBtn.selected;
- }
- - (IBAction)userAgreementBtnAction:(id)sender {
- NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"https://ys.zzxcx.net/jsjp-sf.html"]];
- RQWebViewModel *viewModel = [[RQWebViewModel alloc] initWithServices:RQ_APPDELEGATE.services params:@{RQViewModelRequestKey : request,RQViewModelWebViewTypeKey:@(RQWebViewType_VIP)}];
- RQWebViewViewController *viewController = [[RQWebViewViewController alloc] initWithViewModel:viewModel];
- RQBaseNavigationController *nav = [[RQBaseNavigationController alloc] initWithRootViewController:viewController];
- [RQControllerHelper.currentViewController presentViewController:nav animated:YES completion:^{
-
- }];
- // [RQ_APPDELEGATE.services presentViewModel:viewModel animated:YES completion:^{
- //
- // }];
- }
- @end
|