123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211 |
- //
- // ASPayFinishHeadView.m
- // Asteria
- //
- // Created by xingyu on 2024/5/16.
- //
- #import "ASPayFinishHeadView.h"
- @interface ASPayFinishHeadView()
- @property (nonatomic, strong) UIView *topBackView;
- @property (nonatomic, strong) UIImageView *iconImage;
- @property (nonatomic, strong) UILabel *payStatusLab;
- @property (nonatomic, strong) UILabel *orderNumLab;
- @property (nonatomic, strong) UILabel *descLab;
- @property (nonatomic, strong) UIButton *topBtn;
- @property (nonatomic, strong) UIView *bottomBackView;
- @property (nonatomic, assign) float viewHeight;
- @end
- @implementation ASPayFinishHeadView
- - (instancetype)initWithFrame:(CGRect)frame status:(int)status desc:(NSString *)desc{
- if (self = [super initWithFrame:frame]) {
-
- _topBackView = [[UIView alloc] init];
- _topBackView.backgroundColor = Col_FFF;
- TT_ViewRadius(_topBackView, 4);
- [self addSubview:_topBackView];
- [_topBackView mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.top.mas_equalTo(10);
- make.right.mas_equalTo(-10);
- }];
-
- _iconImage = [[UIImageView alloc] init];
- [_topBackView addSubview:_iconImage];
- [_iconImage mas_makeConstraints:^(MASConstraintMaker *make) {
- make.centerX.equalTo(_topBackView);
- make.top.mas_equalTo(30);
- make.width.height.mas_equalTo(50);
- }];
-
- _payStatusLab = [UILabel labelCreateWithText:@"" font:[UIFont fontWithName:Rob_Bold size:16] textColor:_0B0B0B];
- _payStatusLab.textAlignment = NSTextAlignmentCenter;
- [_topBackView addSubview:_payStatusLab];
- [_payStatusLab mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(20);
- make.right.mas_equalTo(-20);
- make.top.equalTo(_iconImage.mas_bottom).offset(20);
- }];
-
-
-
- if (status == 0) {
- _descLab = [UILabel labelCreateWithText:@"" font:[UIFont fontWithName:Rob_Regular size:12] textColor:_0B0B0B];
- _descLab.numberOfLines = 0;
- [_topBackView addSubview:_descLab];
- [_descLab mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(20);
- make.right.mas_equalTo(-20);
- make.top.mas_equalTo(_payStatusLab.mas_bottom).offset(10);
- }];
- } else {
- _orderNumLab = [UILabel labelCreateWithText:@"" font:[UIFont fontWithName:Rob_Bold size:12] textColor:_0B0B0B];
- _orderNumLab.textAlignment = NSTextAlignmentCenter;
- [_topBackView addSubview:_orderNumLab];
- [_orderNumLab mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(20);
- make.right.mas_equalTo(-20);
- make.top.mas_equalTo(_payStatusLab.mas_bottom).offset(10);
- }];
-
- _descLab = [UILabel labelCreateWithText:@"" font:[UIFont fontWithName:Rob_Regular size:12] textColor:_0B0B0B];
- _descLab.numberOfLines = 0;
- [_topBackView addSubview:_descLab];
- [_descLab mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(20);
- make.right.mas_equalTo(-20);
- make.top.mas_equalTo(_orderNumLab.mas_bottom).offset(10);
- }];
- }
-
- _topBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- _topBtn.titleLabel.font = [UIFont fontWithName:Rob_Regular size:14];
- _topBtn.titleLabel.adjustsFontSizeToFitWidth = YES;
- [_topBtn setTitleColor:Col_000 forState:UIControlStateNormal];
- TT_ViewBorderRadius(_topBtn, 0, 1, Col_000);
- [_topBtn addTarget:self action:@selector(_topClick) forControlEvents:UIControlEventTouchUpInside];
- [_topBackView addSubview:_topBtn];
- [_topBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.mas_equalTo(_descLab.mas_bottom).offset(10);
- make.height.mas_equalTo(35);
- make.width.mas_equalTo(200);
- make.centerX.equalTo(_topBackView);
- make.bottom.mas_equalTo(-30);
- }];
-
- _bottomBackView = [[UIView alloc] init];
- _bottomBackView.backgroundColor = _E0FFF5;
- TT_ViewRadius(_bottomBackView, 4);
- [self addSubview:_bottomBackView];
- [_bottomBackView mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.equalTo(_topBackView.mas_bottom).offset(20);
- make.left.mas_equalTo(10);
- make.right.mas_equalTo(-10);
- make.height.mas_equalTo(80);
- }];
- UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(_bottomClick)];
- [_bottomBackView addGestureRecognizer:tap];
-
- UILabel *faqsLab = [UILabel labelCreateWithText:@"Faqs" font:[UIFont fontWithName:Rob_Regular size:12] textColor:_0B0B0B];
- [_bottomBackView addSubview:faqsLab];
- [faqsLab mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(10);
- make.top.mas_equalTo(20);
- }];
-
- UILabel *faqsLab1 = [UILabel labelCreateWithText:@"Please contact customer service if need any help" font:[UIFont fontWithName:Rob_Regular size:12] textColor:_0B0B0B];
- faqsLab1.adjustsFontSizeToFitWidth = YES;
- [_bottomBackView addSubview:faqsLab1];
- [faqsLab1 mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.mas_equalTo(10);
- make.right.mas_equalTo(-30);
- make.top.mas_equalTo(faqsLab.mas_bottom).offset(10);
- }];
-
- UIImageView *arrowRightImgV = [[UIImageView alloc] init];
- arrowRightImgV.image = [UIImage imageNamed:@"productList_more_right"];
- [_bottomBackView addSubview:arrowRightImgV];
- [arrowRightImgV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.mas_equalTo(-10);
- make.centerY.equalTo(_bottomBackView);
- make.width.height.mas_equalTo(14);
- }];
-
- float bottomHeight = 20;
- if (status == 0) {
- bottomHeight = 85;
-
- UIButton *contactBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- contactBtn.titleLabel.font = [UIFont fontWithName:Rob_Regular size:14];
- [contactBtn setTitle:@"Contact Us" forState:UIControlStateNormal];
- contactBtn.backgroundColor = Col_000;
- [contactBtn addTarget:self action:@selector(_contactBtnClick) forControlEvents:UIControlEventTouchUpInside];
- TT_ViewRadius(contactBtn, 4);
- [contactBtn setTitleColor:Col_FFF forState:UIControlStateNormal];
- [self addSubview:contactBtn];
- [contactBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.mas_equalTo(_bottomBackView.mas_bottom).offset(20);
- make.height.mas_equalTo(45);
- make.left.mas_equalTo(10);
- make.right.mas_equalTo(-10);
-
- }];
-
- _iconImage.image = [UIImage imageNamed:@"pay_failed_icon"];
- _payStatusLab.text = @"Payment Failed.";
- _descLab.text = @"Please try another card or refresh browser. Paypal gateway has rejected request. The buyer cannot pay with PayPal for this transaction(#13113: buyer cannot pay).";
- [_topBtn setTitle:@"Edit the payment information" forState:UIControlStateNormal];
-
- [_topBtn mas_updateConstraints:^(MASConstraintMaker *make) {
- make.width.mas_equalTo(260);
- }];
-
- } else {
- _iconImage.image = [UIImage imageNamed:@"pay_success_icon"];
- _payStatusLab.text = @"Your Order Has Been Received";
- _orderNumLab.text = @"Order #123";
- _descLab.text = @"Please try another card or refresh browser. Paypal gateway has rejected request. The buyer cannot pay with PayPal for this transaction(#13113: buyer cannot pay).";
- [_topBtn setTitle:@"Continue Shopping" forState:UIControlStateNormal];
- }
-
- [self layoutIfNeeded];
- [_bottomBackView layoutIfNeeded];
-
- self.viewHeight = CGRectGetMaxY(_bottomBackView.frame) + bottomHeight;
-
- }
- return self;
- }
- - (float)getViewHeight {
- return self.viewHeight;
- }
- - (void)_topClick {
- if (self.clickBlock) {
- self.clickBlock(1);
- }
- }
- - (void)_bottomClick {
- if (self.clickBlock) {
- self.clickBlock(2);
- }
- }
- - (void)_contactBtnClick {
- if (self.clickBlock) {
- self.clickBlock(3);
- }
- }
- @end
|