修复了金币开通贵族显示价格的问题
This commit is contained in:
@@ -25,6 +25,8 @@ typedef NS_ENUM(NSInteger, RechargeType) {
|
||||
@property (nonatomic,assign) BOOL isSelect;
|
||||
///是否是最后一个
|
||||
@property (nonatomic,assign) BOOL isLastOne;
|
||||
///副标题
|
||||
@property (nonatomic,copy) NSString *subTitle;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -18,6 +18,8 @@
|
||||
@property (nonatomic,strong) UIImageView *logoImageView;
|
||||
///显示支付名
|
||||
@property (nonatomic,strong) UILabel *titleLabel;
|
||||
///钻石余额
|
||||
@property (nonatomic,strong) UILabel *subtitleLabel;
|
||||
///选中的支付
|
||||
@property (nonatomic,strong) UIButton *chooseButton;
|
||||
///分割线
|
||||
@@ -40,6 +42,7 @@
|
||||
self.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||
[self.contentView addSubview:self.logoImageView];
|
||||
[self.contentView addSubview:self.titleLabel];
|
||||
[self.contentView addSubview:self.subtitleLabel];
|
||||
[self.contentView addSubview:self.chooseButton];
|
||||
[self.contentView addSubview:self.lineView];
|
||||
}
|
||||
@@ -57,6 +60,11 @@
|
||||
make.left.mas_equalTo(self.logoImageView.mas_right).offset(10);
|
||||
}];
|
||||
|
||||
[self.subtitleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.mas_equalTo(self.titleLabel.mas_right).offset(10);
|
||||
make.bottom.equalTo(self.titleLabel);
|
||||
}];
|
||||
|
||||
[self.chooseButton mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.size.mas_equalTo(CGSizeMake(18, 18));
|
||||
make.centerY.mas_equalTo(self.contentView);
|
||||
@@ -78,6 +86,12 @@
|
||||
_titleLabel.text = _rechargeTypeModel.title;
|
||||
_chooseButton.selected = _rechargeTypeModel.isSelect;
|
||||
self.lineView.hidden = _rechargeTypeModel.isLastOne;
|
||||
if (_rechargeTypeModel.subTitle.length > 0) {
|
||||
self.subtitleLabel.text = _rechargeTypeModel.subTitle;
|
||||
self.subtitleLabel.hidden = NO;
|
||||
} else {
|
||||
self.subtitleLabel.hidden = YES;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -98,6 +112,16 @@
|
||||
return _titleLabel;
|
||||
}
|
||||
|
||||
- (UILabel *)subtitleLabel {
|
||||
if (!_subtitleLabel) {
|
||||
_subtitleLabel = [[UILabel alloc] init];
|
||||
_subtitleLabel.font = [UIFont systemFontOfSize:10];
|
||||
_subtitleLabel.textColor = [ThemeColor secondTextColor];
|
||||
_subtitleLabel.hidden = YES;
|
||||
}
|
||||
return _subtitleLabel;
|
||||
}
|
||||
|
||||
- (UIButton *)chooseButton {
|
||||
if (!_chooseButton) {
|
||||
_chooseButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||
|
@@ -23,6 +23,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
@property (nonatomic,assign) CGFloat money;
|
||||
///原价
|
||||
@property (nonatomic,assign) CGFloat oriPrice;
|
||||
///换算率
|
||||
@property (nonatomic,assign) NSInteger rate;
|
||||
|
||||
@end
|
||||
|
||||
|
@@ -18,6 +18,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
|
||||
@interface XPNobleRechargeTableViewCell : UITableViewCell
|
||||
///钻石数
|
||||
@property (nonatomic,assign) CGFloat diamondNum;
|
||||
///默认的充值类型
|
||||
@property (nonatomic,assign) RechargeDefaultPayType type;
|
||||
///当前选中的支付类型
|
||||
|
@@ -205,6 +205,7 @@
|
||||
if (_type == RechargeDefaultPayType_Coin) {
|
||||
self.currentItem = self.coinPayItem;
|
||||
}
|
||||
self.coinPayItem.subTitle = [NSString stringWithFormat:@"(%.2f钻石)", _diamondNum > 0 ? _diamondNum : 0];
|
||||
|
||||
[self.tableView reloadData];
|
||||
}
|
||||
@@ -238,7 +239,6 @@
|
||||
EnterPrieseRechargeTypeItemModel * zfbItem = [[EnterPrieseRechargeTypeItemModel alloc] init];
|
||||
zfbItem.imageName = @"mine_recharge_alipay";
|
||||
zfbItem.title = @"支付宝";
|
||||
zfbItem.isSelect = YES;
|
||||
zfbItem.type = RechargeType_ZFB;
|
||||
_aliPayItem = zfbItem;
|
||||
}
|
||||
|
@@ -16,6 +16,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
@property (nonatomic,copy) NSString *chargeMoney;
|
||||
///房主的uid
|
||||
@property (nonatomic,copy) NSString *roomUid;
|
||||
///利率
|
||||
@property (nonatomic,assign) NSInteger rate;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -34,6 +34,10 @@
|
||||
@interface XPNobleRechargeView ()<UITableViewDelegate, UITableViewDataSource, XPNobleRechargeTableViewCellDelegate>
|
||||
///
|
||||
@property (nonatomic,strong) UILabel *titleLabel;
|
||||
///支付容器
|
||||
@property (nonatomic,strong) UIStackView *moneyStackView;
|
||||
///钻石
|
||||
@property (nonatomic,strong) UIImageView *diamondImageView;
|
||||
///显示金额
|
||||
@property (nonatomic,strong) UILabel *moneyLabel;
|
||||
///列表
|
||||
@@ -46,6 +50,8 @@
|
||||
@property (nonatomic,assign) RechargeDefaultPayType payType;
|
||||
///当前选中的支付渠道
|
||||
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *currentItem;
|
||||
///钱包信息
|
||||
@property (nonatomic,strong) WalletInfoModel *walletInfo;
|
||||
@end
|
||||
|
||||
@implementation XPNobleRechargeView
|
||||
@@ -69,18 +75,18 @@
|
||||
} else {
|
||||
self.payType = RechargeDefaultPayType_ZFB;
|
||||
}
|
||||
[self.tableView reloadData];
|
||||
|
||||
NSString * uid = [AccountInfoStorage instance].getUid;
|
||||
NSString * ticket = [AccountInfoStorage instance].getTicket;
|
||||
[Api getUserWalletInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||
if (code == 200) {
|
||||
WalletInfoModel * model = [WalletInfoModel modelWithDictionary:data.data];
|
||||
if (model.diamonds.integerValue > self.chargeMoney.integerValue) {
|
||||
self.walletInfo = model;
|
||||
if (model.diamonds.integerValue >= (self.chargeMoney.integerValue * 10)) {
|
||||
self.payType = RechargeDefaultPayType_Coin;
|
||||
}
|
||||
[self.tableView reloadData];
|
||||
}
|
||||
[self.tableView reloadData];
|
||||
} uid:uid ticket:ticket];
|
||||
} channelType:@"1"];
|
||||
|
||||
@@ -90,9 +96,12 @@
|
||||
- (void)initSubViews {
|
||||
self.backgroundColor = [ThemeColor appCellBackgroundColor];
|
||||
[self addSubview:self.titleLabel];
|
||||
[self addSubview:self.moneyLabel];
|
||||
[self addSubview:self.moneyStackView];
|
||||
[self addSubview:self.tableView];
|
||||
[self addSubview:self.payButton];
|
||||
|
||||
[self.moneyStackView addArrangedSubview:self.diamondImageView];
|
||||
[self.moneyStackView addArrangedSubview:self.moneyLabel];
|
||||
UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, KScreenWidth, 416 + kSafeAreaBottomHeight) byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(12, 12)];
|
||||
CAShapeLayer *maskLayer = [CAShapeLayer layer];
|
||||
maskLayer.path = path.CGPath;
|
||||
@@ -109,10 +118,17 @@
|
||||
make.centerX.mas_equalTo(self.mas_centerX);
|
||||
make.top.mas_equalTo(87);
|
||||
}];
|
||||
[self.moneyLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
[self.moneyStackView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.centerX.mas_equalTo(self.mas_centerX);
|
||||
make.top.mas_equalTo(self.titleLabel.mas_bottom).offset(20);
|
||||
make.height.mas_equalTo(30);
|
||||
}];
|
||||
|
||||
[self.diamondImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.mas_equalTo(20);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(self.moneyLabel.mas_bottom).offset(10);
|
||||
make.left.right.mas_equalTo(self);
|
||||
@@ -137,13 +153,24 @@
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
XPNobleRechargeTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPNobleRechargeTableViewCell class])];
|
||||
cell.delegate = self;
|
||||
cell.type = self.payType;
|
||||
cell.diamondNum = self.walletInfo.diamonds.floatValue;
|
||||
if (self.payType > 0) {
|
||||
cell.type = self.payType;
|
||||
}
|
||||
|
||||
return cell;
|
||||
}
|
||||
|
||||
#pragma mark - XPNobleRechargeTableViewCell
|
||||
- (void)xPNobleRechargeTableViewCell:(XPNobleRechargeTableViewCell *)view didChooseItem:(EnterPrieseRechargeTypeItemModel *)itemInfo {
|
||||
self.currentItem = itemInfo;
|
||||
if (self.currentItem.type == RechargeType_Coin) {
|
||||
self.diamondImageView.hidden = NO;
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"%.0f", _chargeMoney.floatValue * _rate];
|
||||
} else {
|
||||
self.diamondImageView.hidden = YES;
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"¥%@", _chargeMoney];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - Event Response
|
||||
@@ -230,6 +257,17 @@
|
||||
}
|
||||
}
|
||||
|
||||
- (void)setPayType:(RechargeDefaultPayType)payType {
|
||||
_payType = payType;
|
||||
if (_payType == RechargeDefaultPayType_Coin) {
|
||||
self.diamondImageView.hidden = NO;
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"%.0f", _chargeMoney.floatValue * 10];
|
||||
} else {
|
||||
self.diamondImageView.hidden = YES;
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"¥%@", _chargeMoney];
|
||||
}
|
||||
}
|
||||
|
||||
- (UILabel *)titleLabel {
|
||||
if (!_titleLabel) {
|
||||
_titleLabel = [[UILabel alloc] init];
|
||||
@@ -241,6 +279,27 @@
|
||||
return _titleLabel;
|
||||
}
|
||||
|
||||
- (UIStackView *)moneyStackView {
|
||||
if (!_moneyStackView) {
|
||||
_moneyStackView = [[UIStackView alloc] init];
|
||||
_moneyStackView.axis = UILayoutConstraintAxisHorizontal;
|
||||
_moneyStackView.distribution = UIStackViewDistributionFill;
|
||||
_moneyStackView.alignment = UIStackViewAlignmentCenter;
|
||||
_moneyStackView.spacing = 2;
|
||||
}
|
||||
return _moneyStackView;
|
||||
}
|
||||
|
||||
- (UIImageView *)diamondImageView {
|
||||
if (!_diamondImageView) {
|
||||
_diamondImageView = [[UIImageView alloc] init];
|
||||
_diamondImageView.userInteractionEnabled = YES;
|
||||
_diamondImageView.image = [UIImage imageNamed:@"common_diamond"];
|
||||
_diamondImageView.hidden = YES;
|
||||
}
|
||||
return _diamondImageView;
|
||||
}
|
||||
|
||||
- (UILabel *)moneyLabel {
|
||||
if (!_moneyLabel) {
|
||||
_moneyLabel = [[UILabel alloc] init];
|
||||
|
@@ -384,6 +384,7 @@
|
||||
- (void)onOpenNobleButtonClick:(UITapGestureRecognizer *)button {
|
||||
[StatisticsServiceHelper trackEventWithKey:StatisticsServiceEventVipOpenClick];
|
||||
XPNobleRechargeView * rechargetView =[[XPNobleRechargeView alloc] init];
|
||||
rechargetView.rate = self.rechargeModel.rate;
|
||||
rechargetView.chargeMoney = [NSString stringWithFormat:@"%.0f", self.rechargeModel.money];
|
||||
rechargetView.chargeProdId = self.rechargeModel.chargeProdId;
|
||||
rechargetView.roomUid = [NSString stringWithFormat:@"%ld", self.roomUid];
|
||||
|
Reference in New Issue
Block a user