新增adjust及帐单更改
@@ -22,6 +22,7 @@
|
||||
#import "XPRoomViewController.h"
|
||||
#import "XCCurrentVCStackManager.h"
|
||||
#import "ClientConfig.h"
|
||||
#import <Adjust/Adjust.h>
|
||||
|
||||
UIKIT_EXTERN NSString * kYouMiNumberCountKey;
|
||||
UIKIT_EXTERN NSString * adImageName;
|
||||
@@ -34,6 +35,7 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
[self configShareSDK];
|
||||
[self configNIMSDK];
|
||||
[self initEmojiData];
|
||||
[self configAdjust];
|
||||
}
|
||||
|
||||
- (void)configNIMSDK {
|
||||
@@ -53,7 +55,25 @@ UIKIT_EXTERN NSString * adImageName;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
-(void)configAdjust{
|
||||
NSString *appToken = @"p5sndfu9udq8";
|
||||
NSString *environment;
|
||||
#ifdef DEBUG
|
||||
environment = ADJEnvironmentSandbox;
|
||||
#else
|
||||
environment = ADJEnvironmentProduction;
|
||||
#endif
|
||||
|
||||
ADJConfig*adjustConfig = [ADJConfig configWithAppToken:appToken
|
||||
environment:environment];
|
||||
|
||||
#ifdef DEBUG
|
||||
[adjustConfig setLogLevel:ADJLogLevelVerbose];
|
||||
#else
|
||||
|
||||
#endif
|
||||
[Adjust appDidLaunch:adjustConfig];
|
||||
}
|
||||
- (void)configShareSDK {
|
||||
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
|
||||
///faceBook
|
||||
|
22
YuMi/Assets.xcassets/jm/Guild/mine_guild_bill_record_arrow.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_bill_record_arrow@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_bill_record_arrow@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 138 B |
After Width: | Height: | Size: 195 B |
22
YuMi/Assets.xcassets/jm/Guild/mine_guild_bill_record_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_bill_record_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_bill_record_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_bill_record_bg.imageset/mine_guild_bill_record_bg@2x.png
vendored
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_bill_record_bg.imageset/mine_guild_bill_record_bg@3x.png
vendored
Normal file
After Width: | Height: | Size: 69 KiB |
22
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_check.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_check@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_check@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_check.imageset/mine_guild_guild_check@2x.png
vendored
Normal file
After Width: | Height: | Size: 5.7 KiB |
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_check.imageset/mine_guild_guild_check@3x.png
vendored
Normal file
After Width: | Height: | Size: 11 KiB |
22
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_manager.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_manager@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_manager@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_manager.imageset/mine_guild_guild_manager@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_manager.imageset/mine_guild_guild_manager@3x.png
vendored
Normal file
After Width: | Height: | Size: 10 KiB |
22
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_meber.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_meber@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "mine_guild_guild_meber@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_meber.imageset/mine_guild_guild_meber@2x.png
vendored
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
YuMi/Assets.xcassets/jm/Guild/mine_guild_guild_meber.imageset/mine_guild_guild_meber@3x.png
vendored
Normal file
After Width: | Height: | Size: 11 KiB |
@@ -58,11 +58,11 @@
|
||||
/* ------Button 相关颜色 START------ */
|
||||
/// button 可用 渐变色的开始 0x3CAAFF
|
||||
+ (UIColor *)confirmButtonGradientStartColor {
|
||||
return UIColorFromRGB(0x3CAAFF);
|
||||
return UIColorFromRGB(0x13E2F5);
|
||||
}
|
||||
/// button 可用 渐变色的开始 0xB176FF
|
||||
+ (UIColor *)confirmButtonGradientEndColor {
|
||||
return UIColorFromRGB(0xB176FF);
|
||||
return UIColorFromRGB(0xCC66FF);
|
||||
}
|
||||
/// 确定的按钮文字颜色 #FFFFFF
|
||||
+ (UIColor *)confirmButtonTextColor {
|
||||
@@ -75,7 +75,7 @@
|
||||
|
||||
/// button 可用 渐变色的中间 #9CB3FF
|
||||
+ (UIColor *)confirmButtonGradientMiddleColor {
|
||||
return [self colorWithHexString:@"#9CB3FF"];
|
||||
return UIColorFromRGB(0xf9CB3FF);
|
||||
}
|
||||
/// 取消按钮 渐变色的结束 0xF7E8C4
|
||||
+ (UIColor *)cancelButtonGradientEndColor {
|
||||
|
@@ -49,7 +49,7 @@ isPhoneXSeries = [[UIApplication sharedApplication] delegate].window.safeAreaIns
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define API_HOST_URL @"https://beta.api.pekolive.com"
|
||||
#define API_HOST_URL [NSString stringWithFormat:@"%@%@",@"https://beta.api",@".pekolive.com"]
|
||||
|
||||
#else
|
||||
|
||||
|
@@ -118,6 +118,7 @@
|
||||
if (model != nil) {
|
||||
[[AccountInfoStorage instance] saveAccountInfo:model];
|
||||
[[self getView] loginSuccess];
|
||||
[XPAdjustEvent loginEvent];
|
||||
}
|
||||
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||
[[self getView] showErrorToast:YMLocalizedString(@"LoginPresenter1")];
|
||||
@@ -164,7 +165,9 @@
|
||||
if (model != nil) {
|
||||
[[AccountInfoStorage instance] saveAccountInfo:model];
|
||||
[[self getView] loginSuccess];
|
||||
[XPAdjustEvent loginEvent];
|
||||
}
|
||||
|
||||
}fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||
[[super getView] showErrorToast:YMLocalizedString(@"LoginPresenter1")];
|
||||
} showLoading:YES] openid:openid unionid:unionid access_token:access_token type:[NSString stringWithFormat:@"%lu", (unsigned long)ThirdLoginType_Gmail]];
|
||||
|
@@ -228,6 +228,7 @@ UIKIT_EXTERN NSString * kUserCompleteInfoFinishKey;
|
||||
}
|
||||
[vc dismissViewControllerAnimated:YES completion:^{
|
||||
}];
|
||||
[XPAdjustEvent registeringEvent];
|
||||
NSString * inviteCode = self.codeTextField.text.length > 0 ? self.codeTextField.text : @"";
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kUserCompleteInfoFinishKey object:inviteCode];
|
||||
}
|
||||
|
@@ -223,6 +223,7 @@
|
||||
[[CountDownHelper shareHelper] stopCountDown];
|
||||
[self disMissVC];
|
||||
self.loginButton.enabled = YES;
|
||||
[XPAdjustEvent loginEvent];
|
||||
}
|
||||
|
||||
///绑定手机号成功
|
||||
|
@@ -116,6 +116,7 @@
|
||||
while (vc.presentingViewController) {
|
||||
vc = vc.presentingViewController;
|
||||
}
|
||||
[XPAdjustEvent loginEvent];
|
||||
[vc dismissViewControllerAnimated:YES completion:nil];
|
||||
[self.navigationController popToRootViewControllerAnimated:NO];
|
||||
}
|
||||
|
@@ -210,6 +210,12 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
+(void)requestMasterDisableRrEnablememberExchangeRights:(HttpRequestHelperCompletion)completion status:(NSString *)status targetUid:(NSString *)targetUid;
|
||||
///获取加入房间
|
||||
+(void)applyHallBtnStateWithHallId:(HttpRequestHelperCompletion)completion hallId:(NSString *)hallId;
|
||||
/// 获取公会收入列表
|
||||
/// @param completion 完成
|
||||
/// @param hallId 公会id
|
||||
/// @param startTime 查询开始时间,时间格式为yy-mm-dd
|
||||
/// @param endTime 查询开始时间, 时间格式为yy-mm-dd
|
||||
+(void)getGuildIncomeTotalList:(HttpRequestHelperCompletion)completion hallId:(NSString *)hallId startTime:(NSString *)startTime endTime:(NSString *)endTime;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -266,4 +266,12 @@
|
||||
+(void)applyHallBtnStateWithHallId:(HttpRequestHelperCompletion)completion hallId:(NSString *)hallId{
|
||||
[self makeRequest:@"hall/getApplyBtnStatus" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__,hallId,nil];
|
||||
}
|
||||
/// 获取公会收入列表
|
||||
/// @param completion 完成
|
||||
/// @param hallId 公会id
|
||||
/// @param startTime 查询开始时间,时间格式为yy-mm-dd
|
||||
/// @param endTime 查询开始时间, 时间格式为yy-mm-dd
|
||||
+(void)getGuildIncomeTotalList:(HttpRequestHelperCompletion)completion hallId:(NSString *)hallId startTime:(NSString *)startTime endTime:(NSString *)endTime{
|
||||
[self makeRequest:@"income/totalList" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, hallId, startTime,endTime, nil];
|
||||
}
|
||||
@end
|
||||
|
@@ -0,0 +1,26 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordModel.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/28.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
@class XPMineGuildPersonalBillRecordItemModel;
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillRecordModel : NSObject
|
||||
@property(nonatomic,copy) NSArray<XPMineGuildPersonalBillRecordItemModel *> *income;
|
||||
@property(nonatomic,copy) NSString *total;
|
||||
@end
|
||||
@interface XPMineGuildPersonalBillRecordItemModel : NSObject
|
||||
@property(nonatomic,copy) NSString *bagIncome;
|
||||
@property(nonatomic,copy) NSString *giftUv;
|
||||
@property(nonatomic,copy) NSString *hallAvatar;
|
||||
@property(nonatomic,copy) NSString *hallName;
|
||||
@property(nonatomic,copy) NSString *userNewSendGiftNum;
|
||||
@property(nonatomic,copy) NSString *normalGiftIncome;
|
||||
@property(nonatomic,copy) NSString *roomIncome;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordModel.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/28.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillRecordModel.h"
|
||||
|
||||
@implementation XPMineGuildPersonalBillRecordModel
|
||||
+ (NSDictionary *)objectClassInArray {
|
||||
return @{@"income": XPMineGuildPersonalBillRecordItemModel.class};
|
||||
}
|
||||
@end
|
||||
@implementation XPMineGuildPersonalBillRecordItemModel
|
||||
+ (NSDictionary *)replacedKeyFromPropertyName {
|
||||
return @{@"userNewSendGiftNum":@"newUserSendGiftNum"};
|
||||
}
|
||||
@end
|
@@ -30,6 +30,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
/// @param startTime 开始时间
|
||||
/// @param endTime 结束时间
|
||||
- (void)getHallAnchorTotalIncome:(NSString *)clanId startTime:(NSString *)startTime endTime:(NSString *)endTime;
|
||||
/// 获取公会收入列表
|
||||
/// @param hallId 公会id
|
||||
/// @param startTime 查询开始时间,时间格式为yy-mm-dd
|
||||
/// @param endTime 查询开始时间, 时间格式为yy-mm-dd
|
||||
-(void)getGuildIncomeTotalListWithhallId:(NSString *)hallId startTime:(NSString *)startTime endTime:(NSString *)endTime;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -11,6 +11,7 @@
|
||||
#import "GuildIncomeRecordModel.h"
|
||||
#import "GuildPersonIncomeRecordModel.h"
|
||||
#import "XPGuildIncomeProtocol.h"
|
||||
#import "XPMineGuildPersonalBillRecordModel.h"
|
||||
|
||||
@implementation XPGuildIncomePresenter
|
||||
|
||||
@@ -70,5 +71,16 @@
|
||||
[[self getView] getHallAnchorTotalIncomeFail:msg];
|
||||
}] uid:uid clanId:clanId startTime:startTime endTime:endTime];
|
||||
}
|
||||
|
||||
/// 获取公会收入列表
|
||||
/// @param hallId 公会id
|
||||
/// @param startTime 查询开始时间,时间格式为yy-mm-dd
|
||||
/// @param endTime 查询开始时间, 时间格式为yy-mm-dd
|
||||
-(void)getGuildIncomeTotalListWithhallId:(NSString *)hallId startTime:(NSString *)startTime endTime:(NSString *)endTime{
|
||||
[Api getGuildIncomeTotalList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||
XPMineGuildPersonalBillRecordModel *model = [XPMineGuildPersonalBillRecordModel modelWithDictionary:data.data];
|
||||
[[self getView]getGuildIncomeTotalListSuccess:model];
|
||||
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||
|
||||
} showLoading:YES errorToast:YES] hallId:hallId startTime:startTime endTime:endTime];
|
||||
}
|
||||
@end
|
||||
|
@@ -8,7 +8,7 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
@class GuildIncomeRecordModel, GuildPersonIncomeRecordModel;
|
||||
@class GuildIncomeRecordModel, GuildPersonIncomeRecordModel,XPMineGuildPersonalBillRecordModel;
|
||||
@protocol XPGuildIncomeProtocol <NSObject>
|
||||
|
||||
///获取家族所有的收入记录成功
|
||||
@@ -27,6 +27,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
- (void)getHallAnchorTotalIncomeSuccess:(GuildPersonIncomeRecordModel *)incomeInfo;
|
||||
///获取公会所有个播收入失败
|
||||
- (void)getHallAnchorTotalIncomeFail:(NSString *)msg;
|
||||
//获取得公会房间收入成功
|
||||
-(void)getGuildIncomeTotalListSuccess:(XPMineGuildPersonalBillRecordModel *)model;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPNewMineHallIncomeCell.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "GuildIncomeRecordModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPNewMineHallIncomeCell : UITableViewCell
|
||||
///用户信息
|
||||
@property (nonatomic,strong) GuildIncomeRecordUserInfoModel *userInfo;
|
||||
///排名
|
||||
@property (nonatomic,assign) NSInteger rankNumber;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,218 @@
|
||||
//
|
||||
// XPNewMineHallIncomeCell.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
|
||||
#import "XPNewMineHallIncomeCell.h"
|
||||
#import "XPMineGuildPersonalBillRecordItemView.h"
|
||||
@interface XPNewMineHallIncomeCell()
|
||||
///背景
|
||||
@property(nonatomic,strong) UIView *bgView;
|
||||
///排名
|
||||
@property(nonatomic,strong) UILabel *rankView;
|
||||
///头像
|
||||
@property(nonatomic,strong) NetImageView *headView;
|
||||
///房间名
|
||||
@property(nonatomic,strong) UILabel *roomNameView;
|
||||
///流水类型
|
||||
@property(nonatomic,strong) UILabel *typeView;
|
||||
///房间流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *roomBillView;
|
||||
///普通礼物流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *commonGiftView;
|
||||
///背包礼物流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *bagGiftView;
|
||||
///送礼人数
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *sendGiftView;
|
||||
///新用户送礼人数
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *userGiftView;
|
||||
@end
|
||||
@implementation XPNewMineHallIncomeCell
|
||||
-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
|
||||
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
|
||||
if(self){
|
||||
[self installUI];
|
||||
[self installConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
-(void)installUI{
|
||||
self.contentView.backgroundColor = UIColorFromRGB(0xF5F6FA);
|
||||
[self.contentView addSubview:self.bgView];
|
||||
[self.bgView addSubview:self.rankView];
|
||||
[self.bgView addSubview:self.headView];
|
||||
[self.bgView addSubview:self.roomNameView];
|
||||
[self.bgView addSubview:self.typeView];
|
||||
[self.bgView addSubview:self.roomBillView];
|
||||
[self.bgView addSubview:self.commonGiftView];
|
||||
[self.bgView addSubview:self.bagGiftView];
|
||||
[self.bgView addSubview:self.sendGiftView];
|
||||
[self.bgView addSubview:self.userGiftView];
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.equalTo(self.contentView).inset(kGetScaleWidth(10));
|
||||
make.top.equalTo(self.contentView);
|
||||
make.height.mas_equalTo(kGetScaleWidth(222));
|
||||
make.width.mas_greaterThanOrEqualTo(kGetScaleWidth(14));
|
||||
}];
|
||||
[self.rankView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||
make.top.mas_equalTo(kGetScaleWidth(20));
|
||||
make.height.mas_equalTo(kGetScaleWidth(28));
|
||||
}];
|
||||
[self.headView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.equalTo(self.rankView.mas_trailing).mas_offset(kGetScaleWidth(8));
|
||||
make.width.height.mas_equalTo(kGetScaleWidth(40));
|
||||
make.centerY.equalTo(self.rankView);
|
||||
}];
|
||||
[self.roomNameView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.equalTo(self.headView.mas_trailing).mas_offset(kGetScaleWidth(8));
|
||||
make.centerY.equalTo(self.rankView);
|
||||
}];
|
||||
[self.typeView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.headView.mas_bottom).mas_offset(kGetScaleWidth(10));
|
||||
make.leading.height.mas_equalTo(kGetScaleWidth(20));
|
||||
}];
|
||||
[self.roomBillView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.typeView.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(98));
|
||||
make.height.mas_equalTo(kGetScaleWidth(52));
|
||||
}];
|
||||
[self.commonGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.typeView.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.centerX.equalTo(self.bgView);
|
||||
make.width.mas_equalTo(kGetScaleWidth(98));
|
||||
make.height.mas_equalTo(kGetScaleWidth(52));
|
||||
}];
|
||||
[self.bagGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.typeView.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.trailing.mas_equalTo(-kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(98));
|
||||
make.height.mas_equalTo(kGetScaleWidth(52));
|
||||
}];
|
||||
[self.sendGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.roomBillView.mas_bottom).mas_offset(kGetScaleWidth(16));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(98));
|
||||
make.height.mas_equalTo(kGetScaleWidth(52));
|
||||
}];
|
||||
[self.userGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.roomBillView.mas_bottom).mas_offset(kGetScaleWidth(16));
|
||||
make.centerX.equalTo(self.bgView);
|
||||
make.width.mas_equalTo(kGetScaleWidth(98));
|
||||
make.height.mas_equalTo(kGetScaleWidth(52));
|
||||
}];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
- (void)setRankNumber:(NSInteger)rankNumber {
|
||||
_rankNumber = rankNumber;
|
||||
self.rankView.text = [NSString stringWithFormat:@"%ld.", _rankNumber+1];
|
||||
}
|
||||
|
||||
- (void)setUserInfo:(GuildIncomeRecordUserInfoModel *)userInfo {
|
||||
_userInfo = userInfo;
|
||||
if (_userInfo) {
|
||||
self.headView.imageUrl = _userInfo.hallAvatar;
|
||||
self.roomNameView.text = _userInfo.hallName;
|
||||
self.roomBillView.num = [NSString stringWithFormat:@"+%@", _userInfo.roomIncome];
|
||||
self.commonGiftView.num = [NSString stringWithFormat:@"+%@", _userInfo.normalGiftIncome];
|
||||
self.bagGiftView.num = [NSString stringWithFormat:@"+%@",_userInfo.bagIncome];
|
||||
self.sendGiftView.num = [NSString stringWithFormat:@"+%@", _userInfo.giftUv];
|
||||
self.userGiftView.num = [NSString stringWithFormat:@"+%@", _userInfo.userSendGiftNum];
|
||||
}
|
||||
}
|
||||
#pragma mark - 懒加载
|
||||
- (UIView *)bgView{
|
||||
if(!_bgView){
|
||||
_bgView = [UIView new];
|
||||
_bgView.backgroundColor = [UIColor whiteColor];
|
||||
_bgView.layer.cornerRadius = kGetScaleWidth(10);
|
||||
_bgView.layer.masksToBounds = YES;
|
||||
}
|
||||
return _bgView;
|
||||
}
|
||||
- (UILabel *)rankView{
|
||||
if(!_rankView){
|
||||
_rankView = [UILabel labelInitWithText:@"" font:kFontMedium(20) textColor:UIColorFromRGB(0x1F1B4F)];
|
||||
}
|
||||
return _rankView;
|
||||
}
|
||||
- (NetImageView *)headView{
|
||||
if(!_headView){
|
||||
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||
_headView = [[NetImageView alloc]initWithConfig:config];
|
||||
_headView.layer.cornerRadius = kGetScaleWidth(40)/2;
|
||||
_headView.layer.masksToBounds = YES;
|
||||
}
|
||||
return _headView;
|
||||
}
|
||||
- (UILabel *)roomNameView{
|
||||
if(!_roomNameView){
|
||||
_roomNameView = [UILabel labelInitWithText:@"" font:kFontMedium(16) textColor:UIColorFromRGB(0x2B2D33)];
|
||||
}
|
||||
return _roomNameView;
|
||||
}
|
||||
-(UILabel *)typeView{
|
||||
if(!_typeView){
|
||||
_typeView = [UILabel labelInitWithText:YMLocalizedString(@"XPGuildIncomeSectionView5") font:kFontMedium(14) textColor:UIColorFromRGB(0x2B2D33)];
|
||||
}
|
||||
return _typeView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)roomBillView{
|
||||
if(!_roomBillView){
|
||||
_roomBillView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_roomBillView.num = @"+0.0";
|
||||
_roomBillView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView0");
|
||||
}
|
||||
return _roomBillView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)commonGiftView{
|
||||
if(!_commonGiftView){
|
||||
_commonGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_commonGiftView.num = @"+0.0";
|
||||
_commonGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView1");
|
||||
}
|
||||
return _commonGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)bagGiftView{
|
||||
if(!_bagGiftView){
|
||||
_bagGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_bagGiftView.num = @"+0.0";
|
||||
_bagGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView2");
|
||||
}
|
||||
return _bagGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)sendGiftView{
|
||||
if(!_sendGiftView){
|
||||
_sendGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_sendGiftView.num = @"+0.0";
|
||||
_sendGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView3");
|
||||
}
|
||||
return _sendGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)userGiftView{
|
||||
if(!_userGiftView){
|
||||
_userGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_userGiftView.num = @"+0.0";
|
||||
_userGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView4");
|
||||
}
|
||||
return _userGiftView;
|
||||
}
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
|
||||
[super setSelected:selected animated:animated];
|
||||
|
||||
// Configure the view for the selected state
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,28 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordVC.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "BaseViewController.h"
|
||||
#import "MvpViewController.h"
|
||||
#import <JXCategoryView/JXCategoryListContainerView.h>
|
||||
typedef NS_ENUM(NSInteger, GuildBillRecrdTimeType) {
|
||||
///每日
|
||||
GuildBillRecrdTimeType_Day = 1,
|
||||
///每周
|
||||
GuildBillRecrdTimeType_Week,
|
||||
///每月
|
||||
GuildBillRecrdTimeType_Mouth,
|
||||
};
|
||||
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillRecordVC : MvpViewController<JXCategoryListContentViewDelegate>
|
||||
@property(nonatomic,assign) GuildBillRecrdTimeType billType;
|
||||
@property(nonatomic,copy) NSString *hallId;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,257 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordVC.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillRecordVC.h"
|
||||
#import "XPMineGuildPersonalBillRecordHeadView.h"
|
||||
#import "XPMineGuildPersonalBillRecordItemView.h"
|
||||
#import "XPGuildTimePickView.h"
|
||||
#import "XPGuildTimeMonthPickerView.h"
|
||||
#import "PLTimeUtil.h"
|
||||
#import "XPGuildIncomePresenter.h"
|
||||
#import "XPMineGuildPersonalBillRecordModel.h"
|
||||
#import "XPMineGuildPersonalBillRecordContentView.h"
|
||||
@interface XPMineGuildPersonalBillRecordVC ()<XPGuildTimePickViewDelegate, XPGuildTimeMonthPickerViewDelegate,XPMineGuildPersonalBillRecordHeadViewDelegate>
|
||||
///头部
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordHeadView *headView;
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordContentView *contentVeiw;
|
||||
|
||||
///结束的时间
|
||||
@property (nonatomic,strong) NSDate *endDate;
|
||||
///开始的时间
|
||||
@property (nonatomic,strong) NSDate *startDate;
|
||||
///当前选择的时间
|
||||
@property (nonatomic,strong) NSDate *currentDate;
|
||||
///选择年月
|
||||
@property (nonatomic,strong) XPGuildTimeMonthPickerView *monthPickerView;
|
||||
///开始的时间戳
|
||||
@property (nonatomic,copy) NSString *startTimeStr;
|
||||
///结束的时间戳
|
||||
@property (nonatomic,copy) NSString *endTimeStr;
|
||||
@property (nonatomic,strong) NSDateFormatter *formatter;
|
||||
@end
|
||||
|
||||
@implementation XPMineGuildPersonalBillRecordVC
|
||||
- (__kindof id)createPresenter {
|
||||
return [[XPGuildIncomePresenter alloc] init];
|
||||
}
|
||||
- (BOOL)isHiddenNavBar {
|
||||
return YES;
|
||||
}
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
[self installUI];
|
||||
[self installConstraints];
|
||||
}
|
||||
-(void)installUI{
|
||||
[self.view addSubview:self.headView];
|
||||
[self.view addSubview:self.contentVeiw];
|
||||
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.headView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.height.mas_equalTo(kGetScaleWidth(148));
|
||||
make.top.mas_equalTo(kGetScaleWidth(0));
|
||||
make.leading.trailing.equalTo(self.view).inset(kGetScaleWidth(0));
|
||||
}];
|
||||
[self.contentVeiw mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.bottom.equalTo(self.view);
|
||||
make.top.equalTo(self.headView.mas_bottom).mas_offset(kGetScaleWidth(0));
|
||||
}];
|
||||
}
|
||||
- (void)headerRefresh {
|
||||
[self.presenter getGuildIncomeTotalListWithhallId:self.hallId startTime:self.startTimeStr endTime:self.endTimeStr];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
- (void)setBillType:(GuildBillRecrdTimeType)billType {
|
||||
_billType = billType;
|
||||
switch (_billType) {
|
||||
case GuildBillRecrdTimeType_Day:
|
||||
{
|
||||
self.startDate = [NSDate date];
|
||||
self.endDate = [NSDate date];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.headView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
}
|
||||
break;
|
||||
case GuildBillRecrdTimeType_Week:
|
||||
{
|
||||
[self weekDayWithCurrentDate:[NSDate date]];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
self.headView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
break;
|
||||
}
|
||||
case GuildBillRecrdTimeType_Mouth:
|
||||
{
|
||||
[self monthWithCurrentDate:[NSDate date]];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
[self.formatter setDateFormat:YMLocalizedString(@"PLTimeUtil3")];
|
||||
NSString * currentDay = [self.formatter stringFromDate:[NSDate date]];
|
||||
self.headView.time = currentDay;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
[self headerRefresh];
|
||||
}
|
||||
-(void)getGuildIncomeTotalListSuccess:(XPMineGuildPersonalBillRecordModel *)model{
|
||||
self.headView.diamond = model.total;
|
||||
self.contentVeiw.model = model;
|
||||
}
|
||||
- (void)weekDayWithCurrentDate:(NSDate *)date {
|
||||
NSCalendar * calendar = [NSCalendar currentCalendar]; // 指定日历的算法
|
||||
NSDateComponents *comps = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitWeekday | NSCalendarUnitDay fromDate:date];
|
||||
// 获取今天是周几
|
||||
// 1 是周日,2是周一 3.以此类推
|
||||
NSInteger weekDay = [comps weekday];
|
||||
// 获取几天是几号
|
||||
NSInteger day = [comps day];
|
||||
long firstDiff,lastDiff;
|
||||
if (weekDay == 1){
|
||||
firstDiff = -6;
|
||||
lastDiff = 0;
|
||||
} else {
|
||||
firstDiff = [calendar firstWeekday] - weekDay + 1;
|
||||
lastDiff = 8 - weekDay;
|
||||
}
|
||||
// 在当前日期(去掉时分秒)基础上加上差的天数
|
||||
NSDateComponents *baseDayComp = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay fromDate:date];
|
||||
//获取周一日期
|
||||
[baseDayComp setDay:day + firstDiff];
|
||||
NSDate *firstDayOfWeek = [calendar dateFromComponents:baseDayComp];
|
||||
self.startDate = firstDayOfWeek;
|
||||
//获取周末日期
|
||||
[baseDayComp setDay:day + lastDiff];
|
||||
NSDate *lastDayOfWeek = [calendar dateFromComponents:baseDayComp];
|
||||
self.endDate = lastDayOfWeek;
|
||||
}
|
||||
|
||||
#pragma mark - JXCategoryListContentViewDelegate
|
||||
- (UIView *)listView {
|
||||
return self.view;
|
||||
}
|
||||
#pragma mark - XPMineGuildPersonalBillRecordHeadViewDelegate
|
||||
- (void)xPMineGuildPersonalBillRecordHeadView:(XPMineGuildPersonalBillRecordHeadView *)view didChooseTime:(UILabel *)sender{
|
||||
if (self.billType == GuildBillRecrdTimeType_Mouth) {
|
||||
[self.monthPickerView setDate:[NSDate date] animated:YES];
|
||||
[self.monthPickerView show];
|
||||
} else {
|
||||
XPGuildTimePickView * timeView = [[XPGuildTimePickView alloc] init];
|
||||
timeView.currentDate = [NSDate date];
|
||||
timeView.pickDateType = self.billType == GuildBillRecrdTimeType_Week ? XPGuildTimePickTypeWeek : XPGuildTimePickTypeDay;
|
||||
timeView.delegate = self;
|
||||
[TTPopup popupView:timeView style:TTPopupStyleActionSheet];
|
||||
}
|
||||
}
|
||||
#pragma mark - XPGuildTimeMonthPickerViewDelegate
|
||||
- (void)datePicker:(XPGuildTimeMonthPickerView *)datePicker didCancel:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
}
|
||||
|
||||
- (void)datePicker:(XPGuildTimeMonthPickerView *)dataPicker didSelectedDate:(NSDate *)date {
|
||||
[TTPopup dismiss];
|
||||
[self monthWithCurrentDate:date];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:date];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
[self.formatter setDateFormat:YMLocalizedString(@"PLTimeUtil3")];
|
||||
NSString * currentDay = [self.formatter stringFromDate:date];
|
||||
self.headView.time = currentDay;
|
||||
[self headerRefresh];
|
||||
}
|
||||
|
||||
#pragma mark -XPGuildTimePickViewDelegate
|
||||
- (void)xPGuildTimePickView:(XPGuildTimePickView *)view didClickCancel:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
}
|
||||
|
||||
- (void)xPGuildTimePickView:(XPGuildTimePickView *)view didClickSure:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
if (self.billType == GuildBillRecrdTimeType_Week) {
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:view.endDate];
|
||||
self.headView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
} else {
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];;
|
||||
self.headView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
|
||||
}
|
||||
[self headerRefresh];
|
||||
}
|
||||
///获取当前时间 的一个月之后的时间
|
||||
- (void)monthWithCurrentDate:(NSDate *)newDate {
|
||||
if (newDate == nil) {
|
||||
newDate = [NSDate date];
|
||||
}
|
||||
double interval = 0;
|
||||
NSDate *beginDate = nil;
|
||||
NSDate *endDate = nil;
|
||||
NSCalendar *calendar = [NSCalendar currentCalendar];
|
||||
[calendar setFirstWeekday:2];//设定周一为周首日
|
||||
BOOL ok = [calendar rangeOfUnit:NSCalendarUnitMonth startDate:&beginDate interval:&interval forDate:newDate];
|
||||
if (ok) {
|
||||
endDate = [beginDate dateByAddingTimeInterval:interval-1];
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
self.startDate = beginDate;
|
||||
self.endDate = endDate;
|
||||
}
|
||||
#pragma mark - 懒加载
|
||||
- (XPMineGuildPersonalBillRecordHeadView *)headView{
|
||||
if(!_headView){
|
||||
_headView = [[XPMineGuildPersonalBillRecordHeadView alloc]initWithFrame:CGRectZero];
|
||||
_headView.delegate = self;
|
||||
_headView.diamond = @"0";
|
||||
}
|
||||
return _headView;
|
||||
}
|
||||
|
||||
- (XPGuildTimeMonthPickerView *)monthPickerView {
|
||||
if (!_monthPickerView) {
|
||||
_monthPickerView = [[XPGuildTimeMonthPickerView alloc] initWithSuperView:self.view];
|
||||
_monthPickerView.delegate = self;
|
||||
_monthPickerView.datePickerMode = HooDatePickerModeYearAndMonth;
|
||||
[_monthPickerView setTintColor:UIColorFromRGB(0x999999)];//设置主色
|
||||
[_monthPickerView setHighlightColor:UIColorFromRGB(0x333333)];
|
||||
NSDate * date = [NSDate date];
|
||||
NSDateComponents *comps = nil; comps = [[NSCalendar sharedCalendar] components:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitMonth fromDate:date];
|
||||
NSDateComponents *adcomps = [[NSDateComponents alloc] init];
|
||||
[adcomps setYear:-15];
|
||||
[adcomps setMonth:0];
|
||||
[adcomps setDay:0];
|
||||
NSDate *minDate = [[NSCalendar sharedCalendar] dateByAddingComponents:adcomps toDate:date options:0];
|
||||
|
||||
NSDateComponents *maxcomps = [[NSDateComponents alloc] init];
|
||||
[maxcomps setYear:15];
|
||||
[maxcomps setMonth:0];
|
||||
[maxcomps setDay:0];
|
||||
NSDate *maxDate = [[NSCalendar sharedCalendar] dateByAddingComponents:maxcomps toDate:date options:0];
|
||||
_monthPickerView.minimumDate = minDate;
|
||||
_monthPickerView.maximumDate = maxDate;
|
||||
|
||||
}
|
||||
return _monthPickerView;
|
||||
}
|
||||
- (NSDateFormatter *)formatter {
|
||||
if (!_formatter) {
|
||||
_formatter = [[NSDateFormatter alloc] init];
|
||||
}
|
||||
return _formatter;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordContentView *)contentVeiw{
|
||||
if(!_contentVeiw){
|
||||
_contentVeiw = [[XPMineGuildPersonalBillRecordContentView alloc]initWithFrame:CGRectZero];
|
||||
}
|
||||
return _contentVeiw;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillStatisVC.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "BaseViewController.h"
|
||||
#import "MvpViewController.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillStatisVC : MvpViewController
|
||||
|
||||
@property (nonatomic,strong) NSString *guildId;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,184 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillStatisVC.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillStatisVC.h"
|
||||
#import "XPMineClanIncomeStatisViewController.h"
|
||||
///Third
|
||||
#import <Masonry/Masonry.h>
|
||||
#import <JXCategoryView/JXCategoryView.h>
|
||||
#import <JXCategoryView/JXCategoryIndicatorBackgroundView.h>
|
||||
#import <JXCategoryView/JXCategoryListContainerView.h>
|
||||
#import "XPNobleSettingNavView.h"
|
||||
///Tool
|
||||
|
||||
|
||||
///View
|
||||
#import "XPMineGuildPersonalBillRecordVC.h"
|
||||
@interface XPMineGuildPersonalBillStatisVC ()<JXCategoryViewDelegate, JXCategoryListContainerViewDelegate,XPNobleSettingNavViewDelegate>
|
||||
@property (nonatomic, strong) XPNobleSettingNavView *navView;
|
||||
///分页标题
|
||||
@property (nonatomic, strong) NSArray<NSString *> *titles;
|
||||
///分页控件
|
||||
@property (nonatomic, strong) JXCategoryTitleView *titleView;
|
||||
///分页lineView
|
||||
@property (nonatomic, strong) JXCategoryListContainerView *contentView;
|
||||
///日
|
||||
@property (nonatomic,strong) XPMineGuildPersonalBillRecordVC *dayRecordVC;
|
||||
///周
|
||||
@property (nonatomic,strong) XPMineGuildPersonalBillRecordVC *weekRecordVC;
|
||||
///月
|
||||
@property (nonatomic,strong) XPMineGuildPersonalBillRecordVC *mouthRecordVC;
|
||||
@end
|
||||
|
||||
@implementation XPMineGuildPersonalBillStatisVC
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
[self initSubViews];
|
||||
[self initSubViewConstraints];
|
||||
}
|
||||
|
||||
- (BOOL)isHiddenNavBar {
|
||||
return YES;
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
[self.view addSubview:self.navView];
|
||||
[self.view addSubview:self.titleView];
|
||||
[self.view addSubview:self.contentView];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.top.mas_equalTo(self.view);
|
||||
make.height.mas_equalTo(kNavigationHeight);
|
||||
}];
|
||||
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(self.navView.mas_bottom).mas_equalTo(10);
|
||||
make.left.mas_equalTo(self.view);
|
||||
make.right.mas_equalTo(-kGetScaleWidth(0));
|
||||
make.height.mas_equalTo(kGetScaleWidth(50));
|
||||
}];
|
||||
|
||||
[self.contentView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(self.titleView.mas_bottom);
|
||||
make.left.right.bottom.mas_equalTo(self.view);
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - JXCategoryViewDelegate
|
||||
- (NSInteger)numberOfListsInlistContainerView:(JXCategoryListContainerView *)listContainerView {
|
||||
return self.titles.count;
|
||||
}
|
||||
|
||||
- (id<JXCategoryListContentViewDelegate>)listContainerView:(JXCategoryListContainerView *)listContainerView initListForIndex:(NSInteger)index {
|
||||
if (index == 0) {
|
||||
self.dayRecordVC.hallId = self.guildId;
|
||||
self.dayRecordVC.billType = GuildBillRecrdTimeType_Day;
|
||||
return self.dayRecordVC;
|
||||
} else if(index == 1) {
|
||||
self.weekRecordVC.hallId = self.guildId;
|
||||
self.weekRecordVC.billType = GuildBillRecrdTimeType_Week;
|
||||
return self.weekRecordVC;
|
||||
} else {
|
||||
self.mouthRecordVC.hallId = self.guildId;
|
||||
self.mouthRecordVC.billType = GuildBillRecrdTimeType_Mouth;
|
||||
return self.mouthRecordVC;
|
||||
}
|
||||
}
|
||||
|
||||
- (void)categoryView:(JXCategoryBaseView *)categoryView didSelectedItemAtIndex:(NSInteger)index {
|
||||
|
||||
}
|
||||
#pragma mark - XPNobleSettingNavViewDelegate
|
||||
///点击了返回按钮
|
||||
- (void)xPNobleSettingNavView:(XPNobleSettingNavView *)view didClickBackButton:(UIButton *)sender {
|
||||
[self.navigationController popViewControllerAnimated:YES];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
|
||||
|
||||
- (JXCategoryTitleView *)titleView {
|
||||
if (!_titleView) {
|
||||
_titleView = [[JXCategoryTitleView alloc] init];
|
||||
_titleView.delegate = self;
|
||||
_titleView.titles = self.titles;
|
||||
_titleView.backgroundColor = UIColorFromRGB(0xF5F6FA);
|
||||
_titleView.titleColor = UIColorFromRGB(0x6D6B89);
|
||||
_titleView.titleSelectedColor = UIColorFromRGB(0x1F1B4F);
|
||||
_titleView.titleFont = kFontRegular(14);
|
||||
_titleView.titleSelectedFont = kFontSemibold(16);
|
||||
_titleView.titleLabelAnchorPointStyle = JXCategoryTitleLabelAnchorPointStyleCenter;
|
||||
_titleView.contentScrollViewClickTransitionAnimationEnabled = NO;
|
||||
_titleView.defaultSelectedIndex = 0;
|
||||
_titleView.cellSpacing = kGetScaleWidth(15);
|
||||
_titleView.cellWidthIncrement = kGetScaleWidth(4);
|
||||
_titleView.listContainer = self.contentView;
|
||||
|
||||
JXCategoryIndicatorImageView *lineView = [[JXCategoryIndicatorImageView alloc] init];
|
||||
lineView.indicatorImageViewSize = CGSizeMake(kGetScaleWidth(12), kGetScaleWidth(4));
|
||||
lineView.verticalMargin = kGetScaleWidth(4);
|
||||
lineView.indicatorImageView.image = [UIImage gradientColorImageFromColors:@[[DJDKMIMOMColor confirmButtonGradientStartColor], [DJDKMIMOMColor confirmButtonGradientMiddleColor],[DJDKMIMOMColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(kGetScaleWidth(12), kGetScaleWidth(4))];
|
||||
lineView.indicatorImageView.layer.masksToBounds = YES;
|
||||
lineView.indicatorImageView.layer.cornerRadius = kGetScaleWidth(4)/2;
|
||||
_titleView.indicators = @[lineView];
|
||||
}
|
||||
return _titleView;
|
||||
}
|
||||
|
||||
- (JXCategoryListContainerView *)contentView {
|
||||
if (!_contentView) {
|
||||
_contentView = [[JXCategoryListContainerView alloc] initWithType:JXCategoryListContainerType_ScrollView delegate:self];
|
||||
_contentView.defaultSelectedIndex = 0;
|
||||
}
|
||||
return _contentView;
|
||||
}
|
||||
|
||||
- (NSArray<NSString *> *)titles {
|
||||
if (!_titles) {
|
||||
_titles = @[YMLocalizedString(@"XPMineGuildPersonalBillStatisVC1"), YMLocalizedString(@"XPMineGuildPersonalBillStatisVC2"), YMLocalizedString(@"XPMineGuildPersonalBillStatisVC3")];
|
||||
}
|
||||
return _titles;
|
||||
}
|
||||
|
||||
- (XPMineGuildPersonalBillRecordVC *)dayRecordVC {
|
||||
if (!_dayRecordVC) {
|
||||
_dayRecordVC = [[XPMineGuildPersonalBillRecordVC alloc] init];
|
||||
|
||||
}
|
||||
return _dayRecordVC;
|
||||
}
|
||||
|
||||
- (XPMineGuildPersonalBillRecordVC *)weekRecordVC {
|
||||
if (!_weekRecordVC) {
|
||||
_weekRecordVC = [[XPMineGuildPersonalBillRecordVC alloc] init];
|
||||
|
||||
}
|
||||
return _weekRecordVC;
|
||||
}
|
||||
|
||||
- (XPMineGuildPersonalBillRecordVC *)mouthRecordVC {
|
||||
if (!_mouthRecordVC) {
|
||||
_mouthRecordVC = [[XPMineGuildPersonalBillRecordVC alloc] init];
|
||||
|
||||
}
|
||||
return _mouthRecordVC;
|
||||
}
|
||||
- (XPNobleSettingNavView *)navView {
|
||||
if (!_navView) {
|
||||
_navView = [[XPNobleSettingNavView alloc] init];
|
||||
_navView.titleLabel.text = YMLocalizedString(@"XPMineGuildPersonalBillStatisVC0");
|
||||
_navView.titleLabel.font = [UIFont systemFontOfSize:18 weight:UIFontWeightMedium];
|
||||
_navView.titleLabel.textColor = UIColorFromRGB(0x1F1B4F);
|
||||
[_navView.backButton setImage:kImage(@"common_nav_back") forState:UIControlStateNormal];
|
||||
_navView.delegate = self;
|
||||
}
|
||||
return _navView;
|
||||
}
|
||||
|
||||
@end
|
@@ -13,11 +13,11 @@
|
||||
#import <JXCategoryView/JXCategoryListContainerView.h>
|
||||
#import "DJDKMIMOMColor.h"
|
||||
#import "UIImage+Utils.h"
|
||||
|
||||
#import "XPNewMineHallIncomeVC.h"
|
||||
#import "XPNewMineGuildIncomeRecordViewController.h"
|
||||
|
||||
@interface XPMineMainIncomeStatisViewController ()<JXCategoryViewDelegate, JXCategoryListContainerViewDelegate>
|
||||
|
||||
#import "XPNobleSettingNavView.h"
|
||||
@interface XPMineMainIncomeStatisViewController ()<JXCategoryViewDelegate, JXCategoryListContainerViewDelegate,XPNobleSettingNavViewDelegate>
|
||||
@property (nonatomic, strong) XPNobleSettingNavView *navView;
|
||||
///分页标题
|
||||
@property (nonatomic, strong) NSArray<NSString *> *titles;
|
||||
///分页控件
|
||||
@@ -25,14 +25,16 @@
|
||||
///分页lineView
|
||||
@property (nonatomic, strong) JXCategoryListContainerView *contentView;
|
||||
///公会收入
|
||||
@property (nonatomic,strong) XPNewMineGuildIncomeRecordViewController *clanIncomeVC;
|
||||
@property (nonatomic,strong) XPNewMineHallIncomeVC *clanIncomeVC;
|
||||
///主播收入
|
||||
@property (nonatomic,strong) XPNewMineGuildIncomeRecordViewController *anchorncomeVC;
|
||||
|
||||
@end
|
||||
|
||||
@implementation XPMineMainIncomeStatisViewController
|
||||
|
||||
- (BOOL)isHiddenNavBar {
|
||||
return YES;
|
||||
}
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
self.title = YMLocalizedString(@"XPMineClanIncomeStatisViewController0");
|
||||
@@ -42,14 +44,19 @@
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
self.view.backgroundColor = [UIColor whiteColor];
|
||||
self.view.backgroundColor = UIColorFromRGB(0xF5F6FA);
|
||||
[self.view addSubview:self.navView];
|
||||
[self.view addSubview:self.titleView];
|
||||
[self.view addSubview:self.contentView];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.top.mas_equalTo(self.view);
|
||||
make.height.mas_equalTo(kNavigationHeight);
|
||||
}];
|
||||
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(self.view).offset(10);
|
||||
make.top.mas_equalTo(self.navView.mas_bottom).offset(0);
|
||||
make.left.right.mas_equalTo(self.view);
|
||||
make.height.mas_equalTo(30);
|
||||
}];
|
||||
@@ -76,7 +83,11 @@
|
||||
- (void)categoryView:(JXCategoryBaseView *)categoryView didSelectedItemAtIndex:(NSInteger)index {
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - XPNobleSettingNavViewDelegate
|
||||
///点击了返回按钮
|
||||
- (void)xPNobleSettingNavView:(XPNobleSettingNavView *)view didClickBackButton:(UIButton *)sender {
|
||||
[self.navigationController popViewControllerAnimated:YES];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
- (void)setClanId:(NSString *)clanId {
|
||||
_clanId = clanId;
|
||||
@@ -92,7 +103,7 @@
|
||||
_titleView = [[JXCategoryTitleView alloc] init];
|
||||
_titleView.delegate = self;
|
||||
_titleView.titles = self.titles;
|
||||
_titleView.backgroundColor = [UIColor whiteColor];
|
||||
_titleView.backgroundColor = UIColorFromRGB(0xF5F6FA);
|
||||
_titleView.titleColor = [DJDKMIMOMColor secondTextColor];
|
||||
_titleView.titleSelectedColor = [DJDKMIMOMColor mainTextColor];
|
||||
_titleView.titleFont = [UIFont systemFontOfSize:15 weight:UIFontWeightMedium];
|
||||
@@ -119,6 +130,7 @@
|
||||
if (!_contentView) {
|
||||
_contentView = [[JXCategoryListContainerView alloc] initWithType:JXCategoryListContainerType_ScrollView delegate:self];
|
||||
_contentView.defaultSelectedIndex = 0;
|
||||
|
||||
}
|
||||
return _contentView;
|
||||
}
|
||||
@@ -130,10 +142,9 @@
|
||||
return _titles;
|
||||
}
|
||||
|
||||
- (XPNewMineGuildIncomeRecordViewController *)clanIncomeVC {
|
||||
- (XPNewMineHallIncomeVC *)clanIncomeVC {
|
||||
if (!_clanIncomeVC) {
|
||||
_clanIncomeVC = [[XPNewMineGuildIncomeRecordViewController alloc] init];
|
||||
_clanIncomeVC.incomeType = NewGuildIncomeType_Clan;
|
||||
_clanIncomeVC = [[XPNewMineHallIncomeVC alloc] init];
|
||||
}
|
||||
return _clanIncomeVC;
|
||||
}
|
||||
@@ -147,7 +158,17 @@
|
||||
}
|
||||
|
||||
|
||||
|
||||
- (XPNobleSettingNavView *)navView {
|
||||
if (!_navView) {
|
||||
_navView = [[XPNobleSettingNavView alloc] init];
|
||||
_navView.titleLabel.text = YMLocalizedString(@"XPMineGuildPersonalBillStatisVC0");
|
||||
_navView.titleLabel.font = [UIFont systemFontOfSize:18 weight:UIFontWeightMedium];
|
||||
_navView.titleLabel.textColor = UIColorFromRGB(0x1F1B4F);
|
||||
[_navView.backButton setImage:kImage(@"common_nav_back") forState:UIControlStateNormal];
|
||||
_navView.delegate = self;
|
||||
}
|
||||
return _navView;
|
||||
}
|
||||
|
||||
|
||||
@end
|
||||
|
@@ -20,8 +20,6 @@ typedef NS_ENUM(NSInteger, NewGuildIncomeRecrdTimeType) {
|
||||
typedef NS_ENUM(NSInteger, NewGuildIncomeType) {
|
||||
///家族收入
|
||||
NewGuildIncomeType_Clan = 1,
|
||||
///公会收入
|
||||
NewGuildIncomeType_Hall,
|
||||
///个播
|
||||
NewGuildIncomeType_Anchor,
|
||||
};
|
||||
|
@@ -54,7 +54,9 @@
|
||||
@end
|
||||
|
||||
@implementation XPNewMineGuildIncomeRecordViewController
|
||||
|
||||
- (BOOL)isHiddenNavBar {
|
||||
return YES;
|
||||
}
|
||||
- (__kindof id)createPresenter {
|
||||
return [[XPGuildIncomePresenter alloc] init];
|
||||
}
|
||||
@@ -85,8 +87,6 @@
|
||||
- (void)headerRefresh {
|
||||
if (self.incomeType == NewGuildIncomeType_Clan) {
|
||||
[self.presenter getClanTotalIncome:self.guidId startTime:self.startTimeStr endTime:self.endTimeStr];
|
||||
} else if(self.incomeType == NewGuildIncomeType_Hall) {
|
||||
[self.presenter getHallTotalIncome:self.guidId startTime:self.startTimeStr endTime:self.endTimeStr];
|
||||
} else {
|
||||
// if (self.clanId.length > 0) {
|
||||
// [self.presenter getClanAnchorTotalIncome:self.clanId startTime:self.startTimeStr endTime:self.endTimeStr];
|
||||
@@ -189,13 +189,6 @@
|
||||
cell.rankNumber = indexPath.row;
|
||||
cell.userInfo = [self.datasource safeObjectAtIndex1:indexPath.row];
|
||||
return cell;
|
||||
} else if(self.incomeType == NewGuildIncomeType_Hall) {
|
||||
XPGuildPersonIncomeTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPGuildPersonIncomeTableViewCell class])];
|
||||
if (cell == nil) {
|
||||
cell = [[XPGuildPersonIncomeTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([XPGuildPersonIncomeTableViewCell class])];
|
||||
}
|
||||
cell.userInfo = [self.datasource safeObjectAtIndex1:indexPath.row];
|
||||
return cell;
|
||||
} else if(self.incomeType == NewGuildIncomeType_Anchor) {
|
||||
XPGuildSingleRoomIncomeTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPGuildSingleRoomIncomeTableViewCell class])];
|
||||
if (cell == nil) {
|
||||
@@ -221,7 +214,7 @@
|
||||
|
||||
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
|
||||
if (section == 0) {
|
||||
if (self.incomeType == NewGuildIncomeType_Clan || self.incomeType == NewGuildIncomeType_Hall) {
|
||||
if (self.incomeType == NewGuildIncomeType_Clan) {
|
||||
|
||||
if(self.incomeType == NewGuildIncomeType_Clan){
|
||||
XPGuildIncomeSectionView * newSectionView = [[XPGuildIncomeSectionView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 47) right:124];
|
||||
@@ -231,12 +224,8 @@
|
||||
}
|
||||
XPGuildIncomeSectionView * sectionView = [[XPGuildIncomeSectionView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 47)];
|
||||
|
||||
GuildIncomeType type;
|
||||
if (self.incomeType == NewGuildIncomeType_Hall){
|
||||
type = GuildIncomeType_Hall;
|
||||
}else{
|
||||
type = GuildIncomeType_Anchor;
|
||||
}
|
||||
GuildIncomeType type = GuildIncomeType_Anchor;;
|
||||
|
||||
sectionView.incomeType = type ;
|
||||
return sectionView;
|
||||
} else {
|
||||
@@ -258,18 +247,7 @@
|
||||
|
||||
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
[tableView deselectRowAtIndexPath:indexPath animated:YES];
|
||||
if (self.incomeType == NewGuildIncomeType_Hall) {
|
||||
if (self.datasource.count > 0) {
|
||||
GuildPersonIncomeUserInfoModel * memberInfo = [self.datasource safeObjectAtIndex1:indexPath.row];
|
||||
XPMineGuildIncomeDetailViewController * incomeDetailVC = [[XPMineGuildIncomeDetailViewController alloc] init];
|
||||
incomeDetailVC.hallId = self.guidId;
|
||||
incomeDetailVC.startTime = self.startTimeStr;
|
||||
incomeDetailVC.endTime = self.endTimeStr;
|
||||
incomeDetailVC.memberInfo = memberInfo;
|
||||
[self.navigationController pushViewController:incomeDetailVC animated:YES];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - XPGuildIncomeHeaderViewDelegate
|
||||
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPNewMineHallIncomeVC.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
#import <JXCategoryView/JXCategoryListContainerView.h>
|
||||
#import "MvpViewController.h"
|
||||
#import "XPNewMineGuildIncomeRecordViewController.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPNewMineHallIncomeVC : MvpViewController<JXCategoryListContentViewDelegate>
|
||||
///时间的类型
|
||||
@property (nonatomic,assign) NewGuildIncomeRecrdTimeType timeType;
|
||||
//公会的id 或者是家族的id
|
||||
@property (nonatomic,copy) NSString *guidId;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,357 @@
|
||||
//
|
||||
// XPNewMineHallIncomeVC.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
|
||||
#import "XPNewMineHallIncomeVC.h"
|
||||
#import <Masonry/Masonry.h>
|
||||
#import <MJRefresh/MJRefresh.h>
|
||||
///Tool
|
||||
#import "DJDKMIMOMColor.h"
|
||||
#import "PLTimeUtil.h"
|
||||
#import "TTPopup.h"
|
||||
#import "NSDate+DateUtils.h"
|
||||
|
||||
///Model
|
||||
#import "GuildIncomeRecordModel.h"
|
||||
#import "GuildPersonIncomeRecordModel.h"
|
||||
///View
|
||||
#import "XPGuildIncomeRecordTableViewCell.h"
|
||||
#import "XPGuildPersonIncomeTableViewCell.h"
|
||||
#import "XPMineGuildEmptyTableViewCell.h"
|
||||
#import "XPGuildSingleRoomIncomeTableViewCell.h"
|
||||
#import "XPGuildIncomeSectionView.h"
|
||||
#import "XPGuildAnchorIncomeSectionView.h"
|
||||
#import "XPMineGuildPersonalBillRecordHeadView.h"
|
||||
#import "XPNewGuildTimePickView.h"
|
||||
#import "XPGuildTimeMonthPickerView.h"
|
||||
#import "XPMineGuildIncomeDetailViewController.h"
|
||||
#import "XPNewMineHallIncomeCell.h"
|
||||
///P
|
||||
#import "XPGuildIncomePresenter.h"
|
||||
#import "XPGuildIncomeProtocol.h"
|
||||
#import "XPNewMineGuildIncomeRecordViewController.h"
|
||||
@interface XPNewMineHallIncomeVC ()<UITableViewDelegate, UITableViewDataSource, XPGuildIncomeProtocol, XPMineGuildPersonalBillRecordHeadViewDelegate, XPNewGuildTimePickViewDelegate, XPGuildTimeMonthPickerViewDelegate>
|
||||
///列表
|
||||
@property (nonatomic,strong) UITableView *tableView;
|
||||
///头部的view
|
||||
@property (nonatomic,strong) XPMineGuildPersonalBillRecordHeadView *headerView;
|
||||
///数据
|
||||
@property (nonatomic,strong) NSArray *datasource;
|
||||
///结束的时间
|
||||
@property (nonatomic,strong) NSDate *endDate;
|
||||
///开始的时间
|
||||
@property (nonatomic,strong) NSDate *startDate;
|
||||
///当前选择的时间
|
||||
@property (nonatomic,strong) NSDate *currentDate;
|
||||
///选择年月
|
||||
@property (nonatomic,strong) XPGuildTimeMonthPickerView *monthPickerView;
|
||||
///开始的时间戳
|
||||
@property (nonatomic,copy) NSString *startTimeStr;
|
||||
///结束的时间戳
|
||||
@property (nonatomic,copy) NSString *endTimeStr;
|
||||
@property (nonatomic,strong) NSDateFormatter *formatter;
|
||||
@end
|
||||
|
||||
@implementation XPNewMineHallIncomeVC
|
||||
- (BOOL)isHiddenNavBar {
|
||||
return YES;
|
||||
}
|
||||
- (__kindof id)createPresenter {
|
||||
return [[XPGuildIncomePresenter alloc] init];
|
||||
}
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
[self initSubViews];
|
||||
[self initHeaderAndFooterRrfresh];
|
||||
[self headerRefresh];
|
||||
|
||||
}
|
||||
|
||||
- (void)viewDidLayoutSubviews {
|
||||
[super viewDidLayoutSubviews];
|
||||
[self initSubViewConstraints];
|
||||
}
|
||||
|
||||
- (void)initHeaderAndFooterRrfresh {
|
||||
MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
|
||||
header.stateLabel.font = [UIFont systemFontOfSize:10.0];
|
||||
header.lastUpdatedTimeLabel.font = [UIFont systemFontOfSize:10.0];
|
||||
header.stateLabel.textColor = [DJDKMIMOMColor secondTextColor];
|
||||
header.lastUpdatedTimeLabel.textColor = [DJDKMIMOMColor secondTextColor];
|
||||
self.tableView.mj_header = header;
|
||||
}
|
||||
|
||||
- (void)headerRefresh {
|
||||
|
||||
[self.presenter getClanTotalIncome:self.guidId startTime:self.startTimeStr endTime:self.endTimeStr];
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
self.view.backgroundColor = UIColorFromRGB(0xF5F6FA);
|
||||
[self.view addSubview:self.headerView];
|
||||
[self.view addSubview:self.tableView];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[self.headerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.mas_equalTo(self.view);
|
||||
make.right.mas_equalTo(self.view);
|
||||
make.top.mas_equalTo(self.view).offset(0);
|
||||
make.height.mas_equalTo(kGetScaleWidth(148));
|
||||
}];
|
||||
|
||||
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.right.bottom.mas_equalTo(self.view);
|
||||
make.top.mas_equalTo(self.headerView.mas_bottom);
|
||||
}];
|
||||
}
|
||||
|
||||
///获取当前时间 的一个月之后的时间
|
||||
- (void)monthWithCurrentDate:(NSDate *)newDate {
|
||||
if (newDate == nil) {
|
||||
newDate = [NSDate date];
|
||||
}
|
||||
double interval = 0;
|
||||
NSDate *beginDate = nil;
|
||||
NSDate *endDate = nil;
|
||||
NSCalendar *calendar = [NSCalendar currentCalendar];
|
||||
[calendar setFirstWeekday:2];//设定周一为周首日
|
||||
BOOL ok = [calendar rangeOfUnit:NSCalendarUnitMonth startDate:&beginDate interval:&interval forDate:newDate];
|
||||
if (ok) {
|
||||
endDate = [beginDate dateByAddingTimeInterval:interval-1];
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
self.startDate = beginDate;
|
||||
self.endDate = endDate;
|
||||
}
|
||||
|
||||
- (void)weekDayWithCurrentDate:(NSDate *)date {
|
||||
NSCalendar * calendar = [NSCalendar currentCalendar]; // 指定日历的算法
|
||||
NSDateComponents *comps = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitWeekday | NSCalendarUnitDay fromDate:date];
|
||||
// 获取今天是周几
|
||||
// 1 是周日,2是周一 3.以此类推
|
||||
NSInteger weekDay = [comps weekday];
|
||||
// 获取几天是几号
|
||||
NSInteger day = [comps day];
|
||||
long firstDiff,lastDiff;
|
||||
if (weekDay == 1){
|
||||
firstDiff = -6;
|
||||
lastDiff = 0;
|
||||
} else {
|
||||
firstDiff = -(weekDay - 2);
|
||||
lastDiff = 8 - weekDay;
|
||||
}
|
||||
// 在当前日期(去掉时分秒)基础上加上差的天数
|
||||
NSDateComponents *baseDayComp = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay fromDate:date];
|
||||
//获取周一日期
|
||||
[baseDayComp setDay:day + firstDiff];
|
||||
NSDate *firstDayOfWeek = [calendar dateFromComponents:baseDayComp];
|
||||
self.startDate = firstDayOfWeek;
|
||||
//获取周末日期
|
||||
[baseDayComp setDay:day + lastDiff];
|
||||
NSDate *lastDayOfWeek = [calendar dateFromComponents:baseDayComp];
|
||||
self.endDate = lastDayOfWeek;
|
||||
}
|
||||
|
||||
#pragma mark - UITableViewDelegate And UITableViewDataSource
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
|
||||
return self.datasource.count > 0 ? self.datasource.count : 1;
|
||||
}
|
||||
|
||||
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
|
||||
return self.datasource.count > 0 ? kGetScaleWidth(222) : 400;
|
||||
}
|
||||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
if (self.datasource.count > 0) {
|
||||
XPNewMineHallIncomeCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPNewMineHallIncomeCell class]) forIndexPath:indexPath];
|
||||
|
||||
cell.rankNumber = indexPath.row;
|
||||
cell.userInfo = [self.datasource safeObjectAtIndex1:indexPath.row];
|
||||
return cell;
|
||||
}
|
||||
XPMineGuildEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMineGuildEmptyTableViewCell class])];
|
||||
if (cell == nil) {
|
||||
cell = [[XPMineGuildEmptyTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([XPMineGuildEmptyTableViewCell class])];
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
|
||||
#pragma mark - XPGuildIncomeHeaderViewDelegate
|
||||
- (void)xPNewGuildIncomeHeaderView:(XPMineGuildPersonalBillRecordHeadView *)view didChooseTime:(UIButton *)sender {
|
||||
if (self.timeType == NewGuildIncomeRecrdTimeType_Mouth) {
|
||||
[self.monthPickerView setDate:[NSDate date] animated:YES];
|
||||
[self.monthPickerView show];
|
||||
} else {
|
||||
XPNewGuildTimePickView * timeView = [[XPNewGuildTimePickView alloc] init];
|
||||
timeView.currentDate = [NSDate date];
|
||||
timeView.pickDateType = self.timeType == NewGuildIncomeRecrdTimeType_Week ? XPNewGuildTimePickTypeWeek : XPNewGuildTimePickTypeDay;
|
||||
timeView.delegate = self;
|
||||
[TTPopup popupView:timeView style:TTPopupStyleActionSheet];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - XPGuildTimeMonthPickerViewDelegate
|
||||
- (void)datePicker:(XPGuildTimeMonthPickerView *)datePicker didCancel:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
}
|
||||
|
||||
- (void)datePicker:(XPGuildTimeMonthPickerView *)dataPicker didSelectedDate:(NSDate *)date {
|
||||
[TTPopup dismiss];
|
||||
[self monthWithCurrentDate:date];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:date];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
[self.formatter setDateFormat:YMLocalizedString(@"PLTimeUtil3")];
|
||||
NSString * currentDay = [self.formatter stringFromDate:date];
|
||||
self.headerView.time = currentDay;
|
||||
[self headerRefresh];
|
||||
}
|
||||
|
||||
#pragma mark -XPGuildTimePickViewDelegate
|
||||
- (void)xPNewGuildTimePickView:(XPNewGuildTimePickView *)view didClickCancel:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
}
|
||||
|
||||
- (void)xPNewGuildTimePickView:(XPNewGuildTimePickView *)view didClickSure:(UIButton *)sender {
|
||||
[TTPopup dismiss];
|
||||
if (self.timeType == NewGuildIncomeRecrdTimeType_Week) {
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:view.endDate];
|
||||
self.headerView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
} else {
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:view.startDate];;
|
||||
self.headerView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
}
|
||||
[self headerRefresh];
|
||||
}
|
||||
|
||||
#pragma mark - XPGuildIncomeProtocol
|
||||
- (void)getClanTotalIncomeScuess:(GuildIncomeRecordModel *)incomeInfo {
|
||||
[self.tableView.mj_header endRefreshing];
|
||||
self.headerView.diamond = incomeInfo.total;
|
||||
self.datasource = incomeInfo.income;
|
||||
[self.tableView reloadData];
|
||||
}
|
||||
|
||||
- (void)getClanTotalIncomeFail:(NSString *)msg {
|
||||
[self.tableView.mj_header endRefreshing];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#pragma mark - JXCategoryListContentViewDelegate
|
||||
- (UIView *)listView {
|
||||
return self.view;
|
||||
}
|
||||
|
||||
#pragma mark - Getters And Setters
|
||||
- (void)setTimeType:(NewGuildIncomeRecrdTimeType)timeType {
|
||||
_timeType = timeType;
|
||||
switch (_timeType) {
|
||||
case NewGuildIncomeRecrdTimeType_Day:
|
||||
self.startDate = [NSDate date];
|
||||
self.endDate = [NSDate date];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.headerView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
break;
|
||||
case NewGuildIncomeRecrdTimeType_Week:
|
||||
[self weekDayWithCurrentDate:[NSDate date]];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
self.headerView.time = [NSString stringWithFormat:@"%@ %@ %@",self.startTimeStr,YMLocalizedString(@"XPIncomeRecordGoldDetailsVC1"),self.endTimeStr];
|
||||
break;
|
||||
case NewGuildIncomeRecrdTimeType_Mouth:
|
||||
{
|
||||
[self monthWithCurrentDate:[NSDate date]];
|
||||
self.startTimeStr = [PLTimeUtil getYYMMDDWithDate:self.startDate];
|
||||
self.endTimeStr = [PLTimeUtil getYYMMDDWithDate:self.endDate];
|
||||
[self.formatter setDateFormat:YMLocalizedString(@"PLTimeUtil3")];
|
||||
NSString * currentDay = [self.formatter stringFromDate:[NSDate date]];
|
||||
self.headerView.time = currentDay;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
[self headerRefresh];
|
||||
}
|
||||
|
||||
//去掉UItableview headerview黏性
|
||||
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
|
||||
CGFloat sectionHeaderHeight = 37;
|
||||
if (scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {
|
||||
scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);
|
||||
} else if (scrollView.contentOffset.y>=sectionHeaderHeight) {
|
||||
scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
- (UITableView *)tableView {
|
||||
if (!_tableView) {
|
||||
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
|
||||
_tableView.delegate = self;
|
||||
_tableView.dataSource = self;
|
||||
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
|
||||
_tableView.backgroundColor = [UIColor clearColor];
|
||||
if (@available(iOS 11.0, *)) {
|
||||
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
|
||||
}
|
||||
[_tableView registerClass:[XPNewMineHallIncomeCell class] forCellReuseIdentifier:NSStringFromClass([XPNewMineHallIncomeCell class])];
|
||||
}
|
||||
return _tableView;
|
||||
}
|
||||
|
||||
- (XPMineGuildPersonalBillRecordHeadView *)headerView {
|
||||
if (!_headerView) {
|
||||
_headerView = [[XPMineGuildPersonalBillRecordHeadView alloc] init];
|
||||
_headerView.delegate = self;
|
||||
}
|
||||
return _headerView;
|
||||
}
|
||||
|
||||
- (XPGuildTimeMonthPickerView *)monthPickerView {
|
||||
if (!_monthPickerView) {
|
||||
_monthPickerView = [[XPGuildTimeMonthPickerView alloc] initWithSuperView:self.view];
|
||||
_monthPickerView.delegate = self;
|
||||
_monthPickerView.datePickerMode = HooDatePickerModeYearAndMonth;
|
||||
[_monthPickerView setTintColor:UIColorFromRGB(0x999999)];//设置主色
|
||||
[_monthPickerView setHighlightColor:UIColorFromRGB(0x333333)];
|
||||
NSDate * date = [NSDate date];
|
||||
NSDateComponents *comps = nil; comps = [[NSCalendar sharedCalendar] components:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitMonth fromDate:date];
|
||||
NSDateComponents *adcomps = [[NSDateComponents alloc] init];
|
||||
[adcomps setYear:-15];
|
||||
[adcomps setMonth:0];
|
||||
[adcomps setDay:0];
|
||||
NSDate *minDate = [[NSCalendar sharedCalendar] dateByAddingComponents:adcomps toDate:date options:0];
|
||||
|
||||
NSDateComponents *maxcomps = [[NSDateComponents alloc] init];
|
||||
[maxcomps setYear:15];
|
||||
[maxcomps setMonth:0];
|
||||
[maxcomps setDay:0];
|
||||
NSDate *maxDate = [[NSCalendar sharedCalendar] dateByAddingComponents:maxcomps toDate:date options:0];
|
||||
_monthPickerView.minimumDate = minDate;
|
||||
_monthPickerView.maximumDate = maxDate;
|
||||
|
||||
}
|
||||
return _monthPickerView;
|
||||
}
|
||||
- (NSDateFormatter *)formatter {
|
||||
if (!_formatter) {
|
||||
_formatter = [[NSDateFormatter alloc] init];
|
||||
}
|
||||
return _formatter;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordContentView.h
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "XPMineGuildPersonalBillRecordModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillRecordContentView : UIView
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordModel *model;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,191 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordContentView.m
|
||||
// YuMi
|
||||
//
|
||||
// Created by duoban on 2023/8/7.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillRecordContentView.h"
|
||||
#import "XPMineGuildPersonalBillRecordItemView.h"
|
||||
@interface XPMineGuildPersonalBillRecordContentView()
|
||||
///房间流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *roomBillView;
|
||||
///普通礼物流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *commonGiftView;
|
||||
///背包礼物流水
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *bagGiftView;
|
||||
///送礼人数
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *sendGiftView;
|
||||
///新用户送礼人数
|
||||
@property(nonatomic,strong) XPMineGuildPersonalBillRecordItemView *userGiftView;
|
||||
///背景
|
||||
@property(nonatomic,strong) UIView *bgView;
|
||||
///头像
|
||||
@property(nonatomic,strong) NetImageView *headImageView;
|
||||
///房间名
|
||||
@property(nonatomic,strong) UILabel *roomNameVeiw;
|
||||
///标题
|
||||
@property(nonatomic,strong) UILabel *titleVeiw;
|
||||
@end
|
||||
@implementation XPMineGuildPersonalBillRecordContentView
|
||||
|
||||
-(instancetype)initWithFrame:(CGRect)frame{
|
||||
self = [super initWithFrame:frame];
|
||||
if(self){
|
||||
[self installUI];
|
||||
[self installConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
-(void)installUI{
|
||||
[self addSubview:self.bgView];
|
||||
[self.bgView addSubview:self.headImageView];
|
||||
[self.bgView addSubview:self.roomNameVeiw];
|
||||
[self.bgView addSubview:self.titleVeiw];
|
||||
|
||||
[self.bgView addSubview:self.roomBillView];
|
||||
[self.bgView addSubview:self.commonGiftView];
|
||||
[self.bgView addSubview:self.bagGiftView];
|
||||
[self.bgView addSubview:self.sendGiftView];
|
||||
[self.bgView addSubview:self.userGiftView];
|
||||
|
||||
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.edges.equalTo(self);
|
||||
|
||||
}];
|
||||
[self.headImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.height.mas_equalTo(kGetScaleWidth(48));
|
||||
make.top.mas_equalTo(kGetScaleWidth(16));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(20));
|
||||
}];
|
||||
[self.roomNameVeiw mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.equalTo(self.headImageView.mas_trailing).mas_offset(kGetScaleWidth(10));
|
||||
make.centerY.equalTo(self.headImageView);
|
||||
}];
|
||||
[self.titleVeiw mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.headImageView.mas_bottom).mas_offset(kGetScaleWidth(10));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(20));
|
||||
make.height.mas_equalTo(kGetScaleWidth(20));
|
||||
}];
|
||||
[self.roomBillView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.titleVeiw.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(108));
|
||||
make.height.mas_equalTo(kGetScaleWidth(58));
|
||||
}];
|
||||
[self.commonGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.titleVeiw.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.centerX.equalTo(self.bgView);
|
||||
make.width.mas_equalTo(kGetScaleWidth(108));
|
||||
make.height.mas_equalTo(kGetScaleWidth(58));
|
||||
}];
|
||||
[self.bagGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.titleVeiw.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||
make.trailing.mas_equalTo(-kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(108));
|
||||
make.height.mas_equalTo(kGetScaleWidth(58));
|
||||
}];
|
||||
[self.sendGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.roomBillView.mas_bottom).mas_offset(kGetScaleWidth(16));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||
make.width.mas_equalTo(kGetScaleWidth(108));
|
||||
make.height.mas_equalTo(kGetScaleWidth(58));
|
||||
}];
|
||||
[self.userGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.equalTo(self.roomBillView.mas_bottom).mas_offset(kGetScaleWidth(16));
|
||||
make.centerX.equalTo(self.bgView);
|
||||
make.width.mas_equalTo(kGetScaleWidth(108));
|
||||
make.height.mas_equalTo(kGetScaleWidth(58));
|
||||
}];
|
||||
}
|
||||
-(void)setModel:(XPMineGuildPersonalBillRecordModel *)model{
|
||||
_model = model;
|
||||
if(model.income.count > 0){
|
||||
XPMineGuildPersonalBillRecordItemModel *itemModel = model.income.firstObject;
|
||||
self.roomBillView.num = [NSString stringWithFormat:@"+%@",itemModel.roomIncome];
|
||||
self.bagGiftView.num = [NSString stringWithFormat:@"+%@",itemModel.bagIncome];
|
||||
self.headImageView.imageUrl = itemModel.hallAvatar;
|
||||
self.roomNameVeiw.text = itemModel.hallName;
|
||||
self.commonGiftView.num = [NSString stringWithFormat:@"+%@",itemModel.normalGiftIncome];
|
||||
self.sendGiftView.num = [NSString stringWithFormat:@"+%@",itemModel.giftUv];
|
||||
self.userGiftView.num = [NSString stringWithFormat:@"+%@",itemModel.userNewSendGiftNum];
|
||||
}
|
||||
[self.bgView setCornerWithLeftTopCorner:kGetScaleWidth(16) rightTopCorner:kGetScaleWidth(16) bottomLeftCorner:0 bottomRightCorner:0 size:self.bgView.frame.size];
|
||||
}
|
||||
#pragma mark - 懒加载
|
||||
- (UIView *)bgView{
|
||||
if(!_bgView){
|
||||
_bgView = [UIView new];
|
||||
_bgView.backgroundColor = [UIColor whiteColor];
|
||||
}
|
||||
return _bgView;
|
||||
}
|
||||
- (NetImageView *)headImageView{
|
||||
if(!_headImageView){
|
||||
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||
_headImageView = [[NetImageView alloc]initWithConfig:config];
|
||||
_headImageView.layer.cornerRadius = kGetScaleWidth(48)/2;
|
||||
_headImageView.layer.masksToBounds = YES;
|
||||
}
|
||||
return _headImageView;
|
||||
}
|
||||
-(UILabel *)roomNameVeiw{
|
||||
if(!_roomNameVeiw){
|
||||
_roomNameVeiw = [UILabel labelInitWithText:@"" font:kFontMedium(16) textColor:UIColorFromRGB(0x2B2D33)];
|
||||
}
|
||||
return _roomNameVeiw;
|
||||
}
|
||||
- (UILabel *)titleVeiw{
|
||||
if(!_titleVeiw){
|
||||
_titleVeiw = [UILabel new];
|
||||
NSMutableAttributedString *textAtt = [[NSMutableAttributedString alloc]initWithString:YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView5") attributes:@{NSFontAttributeName:kFontMedium(14),NSForegroundColorAttributeName:UIColorFromRGB(0x2B2D33)}];
|
||||
[textAtt addAttributes:@{NSFontAttributeName:kFontMedium(14),NSForegroundColorAttributeName:UIColorFromRGB(0x1F1B4F)} range:[textAtt.string rangeOfString:YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView6")]];
|
||||
_titleVeiw.attributedText = textAtt;
|
||||
}
|
||||
return _titleVeiw;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)roomBillView{
|
||||
if(!_roomBillView){
|
||||
_roomBillView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_roomBillView.num = @"+0.0";
|
||||
_roomBillView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView0");
|
||||
}
|
||||
return _roomBillView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)commonGiftView{
|
||||
if(!_commonGiftView){
|
||||
_commonGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_commonGiftView.num = @"+0.0";
|
||||
_commonGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView1");
|
||||
}
|
||||
return _commonGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)bagGiftView{
|
||||
if(!_bagGiftView){
|
||||
_bagGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_bagGiftView.num = @"+0.0";
|
||||
_bagGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView2");
|
||||
}
|
||||
return _bagGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)sendGiftView{
|
||||
if(!_sendGiftView){
|
||||
_sendGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_sendGiftView.num = @"+0.0";
|
||||
_sendGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView3");
|
||||
}
|
||||
return _sendGiftView;
|
||||
}
|
||||
- (XPMineGuildPersonalBillRecordItemView *)userGiftView{
|
||||
if(!_userGiftView){
|
||||
_userGiftView = [[XPMineGuildPersonalBillRecordItemView alloc]initWithFrame:CGRectZero];
|
||||
_userGiftView.num = @"+0.0";
|
||||
_userGiftView.title = YMLocalizedString(@"XPMineGuildPersonalBillRecordContentView4");
|
||||
}
|
||||
return _userGiftView;
|
||||
}
|
||||
@end
|
@@ -0,0 +1,27 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordHeadView.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
@class XPMineGuildPersonalBillRecordHeadView;
|
||||
@protocol XPMineGuildPersonalBillRecordHeadViewDelegate <NSObject>
|
||||
|
||||
///选择日期
|
||||
- (void)xPMineGuildPersonalBillRecordHeadView:(XPMineGuildPersonalBillRecordHeadView *_Nonnull)view didChooseTime:(UILabel *_Nullable)sender;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillRecordHeadView : UIView
|
||||
@property(nonatomic,copy) NSString *diamond;
|
||||
@property(nonatomic,copy) NSString *time;
|
||||
|
||||
@property(nonatomic,weak) id<XPMineGuildPersonalBillRecordHeadViewDelegate>delegate;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,118 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordHeadView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillRecordHeadView.h"
|
||||
@interface XPMineGuildPersonalBillRecordHeadView()
|
||||
///背景
|
||||
@property(nonatomic,strong) UIImageView *bgImageView;
|
||||
///收入标题
|
||||
@property(nonatomic,strong) UILabel *titleView;
|
||||
|
||||
///钻石数量
|
||||
@property(nonatomic,strong) UILabel *diamondNumView;
|
||||
///时间
|
||||
@property(nonatomic,strong) UILabel *timeVeiw;
|
||||
|
||||
|
||||
@end
|
||||
@implementation XPMineGuildPersonalBillRecordHeadView
|
||||
-(instancetype)initWithFrame:(CGRect)frame{
|
||||
self = [super initWithFrame:frame];
|
||||
if(self){
|
||||
[self installUI];
|
||||
[self installConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
-(void)installUI{
|
||||
|
||||
[self addSubview:self.bgImageView];
|
||||
[self.bgImageView addSubview:self.titleView];
|
||||
[self.bgImageView addSubview:self.diamondNumView];
|
||||
[self.bgImageView addSubview:self.timeVeiw];
|
||||
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.equalTo(self).inset(0);
|
||||
make.top.mas_equalTo(kGetScaleWidth(0));
|
||||
make.height.mas_equalTo(kGetScaleWidth(148));
|
||||
}];
|
||||
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(kGetScaleWidth(31));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(35));
|
||||
make.height.mas_equalTo(kGetScaleWidth(20));
|
||||
}];
|
||||
[self.diamondNumView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.mas_equalTo(kGetScaleWidth(35));
|
||||
make.top.mas_equalTo(kGetScaleWidth(59));
|
||||
make.height.mas_equalTo(kGetScaleWidth(32));
|
||||
}];
|
||||
[self.timeVeiw mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(kGetScaleWidth(108));
|
||||
make.leading.mas_equalTo(kGetScaleWidth(35));
|
||||
}];
|
||||
|
||||
}
|
||||
-(void)setDiamond:(NSString *)diamond{
|
||||
_diamond = diamond;
|
||||
_diamondNumView.text = _diamond;
|
||||
}
|
||||
|
||||
-(void)chooseTime{
|
||||
if(self.delegate && [self.delegate respondsToSelector:@selector(xPMineGuildPersonalBillRecordHeadView:didChooseTime:)]){
|
||||
[self.delegate xPMineGuildPersonalBillRecordHeadView:self didChooseTime:self.timeVeiw];
|
||||
}
|
||||
}
|
||||
- (void)setTime:(NSString *)time{
|
||||
_time = time;
|
||||
NSString *getTime = [NSString stringWithFormat:@"%@ ",_time];
|
||||
NSMutableAttributedString * starAttribute = [[NSMutableAttributedString alloc]initWithString:getTime attributes:@{NSFontAttributeName:kFontRegular(12),NSForegroundColorAttributeName:UIColorFromRGB(0x6D6B89)}];
|
||||
UIImage *iconImage = kImage(@"mine_guild_bill_record_arrow");
|
||||
NSTextAttachment * attachment = [[NSTextAttachment alloc] init];
|
||||
attachment.bounds = CGRectMake(0, roundf(self.timeVeiw.font.capHeight - iconImage.size.height)/2.f, iconImage.size.width, iconImage.size.height);;
|
||||
attachment.image = iconImage;
|
||||
[starAttribute insertAttributedString:[NSMutableAttributedString attributedStringWithAttachment:attachment] atIndex:getTime.length];
|
||||
_timeVeiw.attributedText = starAttribute;
|
||||
}
|
||||
#pragma mark - 懒加载
|
||||
- (UIImageView *)bgImageView{
|
||||
if(!_bgImageView){
|
||||
_bgImageView = [UIImageView new];
|
||||
_bgImageView.image = kImage(@"mine_guild_bill_record_bg");
|
||||
_bgImageView.userInteractionEnabled = YES;
|
||||
}
|
||||
return _bgImageView;
|
||||
}
|
||||
- (UILabel *)titleView{
|
||||
if(!_titleView){
|
||||
_titleView = [UILabel labelInitWithText:YMLocalizedString(@"XPMineGuildPersonalBillRecordHeadView2") font:kFontMedium(14) textColor:[UIColor whiteColor]];
|
||||
NSMutableAttributedString *textAtt = [[NSMutableAttributedString alloc]initWithString:YMLocalizedString(@"XPMineGuildPersonalBillRecordHeadView3") attributes:@{NSFontAttributeName:kFontMedium(14),NSForegroundColorAttributeName:UIColorFromRGB(0x1F1B4F)}];
|
||||
[textAtt addAttributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0x1F1B4F)} range:[textAtt.string rangeOfString:YMLocalizedString(@"XPMineGuildPersonalBillRecordHeadView4")]];
|
||||
_titleView.attributedText = textAtt;
|
||||
}
|
||||
return _titleView;
|
||||
}
|
||||
- (UILabel *)diamondNumView{
|
||||
if(!_diamondNumView){
|
||||
_diamondNumView = [UILabel labelInitWithText:@"" font:kFontMedium(24) textColor:UIColorFromRGB(0x9168FA)];
|
||||
}
|
||||
return _diamondNumView;
|
||||
}
|
||||
-(UILabel *)timeVeiw{
|
||||
if(!_timeVeiw){
|
||||
_timeVeiw = [UILabel new];
|
||||
_timeVeiw.font = kFontMedium(12);
|
||||
_timeVeiw.textColor = [UIColor whiteColor];
|
||||
_timeVeiw.userInteractionEnabled = YES;
|
||||
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(chooseTime)];
|
||||
[_timeVeiw addGestureRecognizer:tap];
|
||||
}
|
||||
return _timeVeiw;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordItemView.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMineGuildPersonalBillRecordItemView : UIView
|
||||
@property(nonatomic,copy) NSString *num;
|
||||
@property(nonatomic,copy) NSString *title;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,65 @@
|
||||
//
|
||||
// XPMineGuildPersonalBillRecordItemView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/7/27.
|
||||
//
|
||||
|
||||
#import "XPMineGuildPersonalBillRecordItemView.h"
|
||||
@interface XPMineGuildPersonalBillRecordItemView()
|
||||
@property(nonatomic,strong) UILabel *numView;
|
||||
@property(nonatomic,strong) UILabel *titleView;
|
||||
@end
|
||||
@implementation XPMineGuildPersonalBillRecordItemView
|
||||
|
||||
-(instancetype)initWithFrame:(CGRect)frame{
|
||||
self = [super initWithFrame:frame];
|
||||
if(self){
|
||||
[self installUI];
|
||||
[self installConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
-(void)installUI{
|
||||
self.backgroundColor = UIColorRGBAlpha(0xBBBCCF, 0.1);
|
||||
self.layer.cornerRadius = kGetScaleWidth(6);
|
||||
self.layer.masksToBounds = YES;
|
||||
[self addSubview:self.numView];
|
||||
[self addSubview:self.titleView];
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.bottom.mas_equalTo(-kGetScaleWidth(8));
|
||||
make.centerX.equalTo(self);
|
||||
}];
|
||||
[self.numView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.trailing.equalTo(self).inset(kGetScaleWidth(5));
|
||||
make.bottom.equalTo(self.titleView.mas_top).mas_offset(-kGetScaleWidth(2));
|
||||
make.top.mas_equalTo(kGetScaleWidth(0));
|
||||
}];
|
||||
}
|
||||
- (void)setNum:(NSString *)num{
|
||||
_num = num;
|
||||
_numView.text = _num;
|
||||
}
|
||||
- (void)setTitle:(NSString *)title{
|
||||
_title = title;
|
||||
_titleView.text = _title;
|
||||
}
|
||||
#pragma mark - 懒加载
|
||||
- (UILabel *)numView{
|
||||
if(!_numView){
|
||||
_numView = [UILabel labelInitWithText:@"+0" font:kFontSemibold(12) textColor:UIColorFromRGB(0x2B2D33)];
|
||||
_numView.textAlignment = NSTextAlignmentCenter;
|
||||
_numView.numberOfLines = 2;
|
||||
}
|
||||
return _numView;
|
||||
}
|
||||
-(UILabel *)titleView{
|
||||
if(!_titleView){
|
||||
_titleView = [UILabel labelInitWithText:@"" font:kFontRegular(11) textColor:UIColorFromRGB(0x696D7A)];
|
||||
_titleView.textAlignment = NSTextAlignmentCenter;
|
||||
}
|
||||
return _titleView;
|
||||
}
|
||||
@end
|
@@ -150,7 +150,7 @@
|
||||
if (_totalIncome == nil) {
|
||||
_totalIncome = @"0";
|
||||
}
|
||||
NSString * title = [NSString stringWithFormat:YMLocalizedString(@"XPGuildIncomeHeaderView2"), [NSString getDealNumwithstring:_totalIncome]];
|
||||
NSString * title = [NSString stringWithFormat:YMLocalizedString(@"XPGuildIncomeHeaderView2"), _totalIncome];
|
||||
NSRange range = [title rangeOfString:YMLocalizedString(@"XPGuildIncomeHeaderView3")];
|
||||
NSMutableAttributedString * attribute = [[NSMutableAttributedString alloc] initWithString:title attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:23],NSForegroundColorAttributeName:[UIColor whiteColor]}];
|
||||
[attribute addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:18] range:range];
|
||||
|
@@ -34,6 +34,8 @@
|
||||
#import "XPMineUserInfoViewController.h"
|
||||
#import "XPMineMainGuildListVC.h"
|
||||
#import "SessionViewController.h"
|
||||
#import "XPNewMineGuildItemView.h"
|
||||
#import "XPMineGuildPersonalBillStatisVC.h"
|
||||
///P
|
||||
#import "XPGuildPresenter.h"
|
||||
#import "XPGuildProtocol.h"
|
||||
@@ -89,12 +91,16 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
@property (nonatomic,strong) TTActionSheetConfig *addMemberItem;
|
||||
///移除成员
|
||||
@property (nonatomic,strong) TTActionSheetConfig *removeMemberItem;
|
||||
///成员收入
|
||||
@property (nonatomic,strong) TTActionSheetConfig *memberIncomeItem;
|
||||
|
||||
///主播收入
|
||||
@property (nonatomic,strong) TTActionSheetConfig *singleIncomeItem;
|
||||
///查看流水
|
||||
@property(nonatomic,strong) XPNewMineGuildItemView *checkView;
|
||||
///成员收入
|
||||
@property(nonatomic,strong) XPNewMineGuildItemView *memberView;
|
||||
///管理设置
|
||||
@property (nonatomic,strong) TTActionSheetConfig *managerSetItem;
|
||||
@property(nonatomic,strong) XPNewMineGuildItemView *managerView;
|
||||
@property(nonatomic,strong) UIStackView *itemStackView;
|
||||
///加入房间
|
||||
@property (nonatomic,strong) UIView *addRoomView;
|
||||
///
|
||||
@@ -186,7 +192,13 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
|
||||
[self.headerView addSubview:self.avatarImageView];
|
||||
[self.headerView addSubview:self.idLabel];
|
||||
self.headerView.frame = CGRectMake(0, 0, KScreenWidth, 174 + kSafeAreaTopHeight);
|
||||
|
||||
[self.headerView addSubview:self.itemStackView];
|
||||
[self.itemStackView addArrangedSubview:self.checkView];
|
||||
[self.itemStackView addArrangedSubview:self.memberView];
|
||||
|
||||
[self.itemStackView addArrangedSubview:self.managerView];
|
||||
self.headerView.frame = CGRectMake(0, 0, KScreenWidth, 285);
|
||||
self.tableView.tableHeaderView = self.headerView;
|
||||
|
||||
|
||||
@@ -209,12 +221,6 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
[self.navigationController pushViewController:removeVC animated:YES];
|
||||
};
|
||||
|
||||
self.memberIncomeItem.clickAction = ^{
|
||||
@kStrongify(self);
|
||||
XPMineGuildIncomeStatisViewController * personIncomeVC = [[XPMineGuildIncomeStatisViewController alloc] init];
|
||||
personIncomeVC.hallId = self.clanDetailInfo.hall.hallId;
|
||||
[self.navigationController pushViewController:personIncomeVC animated:YES];
|
||||
};
|
||||
|
||||
self.singleIncomeItem.clickAction = ^{
|
||||
@kStrongify(self);
|
||||
@@ -228,12 +234,7 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
vc.isFromHall = YES;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
};
|
||||
self.managerSetItem.clickAction = ^{
|
||||
@kStrongify(self);
|
||||
XPMineMangerListViewController * managerList = [[XPMineMangerListViewController alloc] init];
|
||||
managerList.guildId = self.clanDetailInfo.hall.hallId;
|
||||
[self.navigationController pushViewController:managerList animated:YES];
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -299,6 +300,27 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
make.centerX.mas_equalTo(self.headerView);
|
||||
make.top.mas_equalTo(self.avatarImageView.mas_bottom).offset(10);
|
||||
}];
|
||||
CGFloat spacing = (KScreenWidth - 112*3)/4;
|
||||
[self.itemStackView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.mas_equalTo(spacing);
|
||||
make.trailing.mas_equalTo(-spacing);
|
||||
make.top.mas_equalTo(221);
|
||||
make.height.mas_equalTo(52);
|
||||
}];
|
||||
CGFloat width = 112;
|
||||
[self.checkView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.height.mas_equalTo(52);
|
||||
make.width.mas_equalTo(width);
|
||||
|
||||
}];
|
||||
[self.memberView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.height.mas_equalTo(52);
|
||||
make.width.mas_equalTo(width);
|
||||
}];
|
||||
[self.managerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.height.mas_equalTo(52);
|
||||
make.width.mas_equalTo(width);
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - UITableViewDelegate And UITableViewDataSource
|
||||
@@ -499,15 +521,17 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
self.removeMemberItem.title = obj.name;
|
||||
[array addObject:self.removeMemberItem];
|
||||
}else if ([obj.code isEqualToString:@"look_hall_income"]) {
|
||||
self.memberIncomeItem.title = obj.name;
|
||||
[array addObject:self.memberIncomeItem];
|
||||
self.memberView.text = obj.name;
|
||||
self.memberView.hidden = NO;
|
||||
}else if ([obj.code isEqualToString:@"single_room_income"]) {
|
||||
self.singleIncomeItem.title = obj.name;
|
||||
[array addObject:self.singleIncomeItem];
|
||||
}else if ([obj.code isEqualToString:@"hall_manager_set"]) {
|
||||
self.managerSetItem.title = obj.name;
|
||||
[array addObject:self.managerSetItem];
|
||||
}
|
||||
self.managerView.text = obj.name;
|
||||
self.managerView.hidden = NO;
|
||||
}else if ([obj.code isEqualToString:@"hall_serial"]) {
|
||||
self.checkView.hidden = NO;
|
||||
}
|
||||
}
|
||||
}];
|
||||
self.managerAuthList = array.copy;
|
||||
@@ -624,6 +648,21 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
break;
|
||||
}
|
||||
}
|
||||
-(void)checkBillAction{
|
||||
XPMineGuildPersonalBillStatisVC *billVC = [[XPMineGuildPersonalBillStatisVC alloc]init];
|
||||
billVC.guildId = self.clanDetailInfo.hall.hallId;
|
||||
[self.navigationController pushViewController:billVC animated:YES];
|
||||
}
|
||||
-(void)checkMemberIncomeAction{
|
||||
XPMineGuildIncomeStatisViewController * personIncomeVC = [[XPMineGuildIncomeStatisViewController alloc] init];
|
||||
personIncomeVC.hallId = self.clanDetailInfo.hall.hallId;
|
||||
[self.navigationController pushViewController:personIncomeVC animated:YES];
|
||||
}
|
||||
-(void)checkManagerSetAction{
|
||||
XPMineMangerListViewController * managerList = [[XPMineMangerListViewController alloc] init];
|
||||
managerList.guildId = self.clanDetailInfo.hall.hallId;
|
||||
[self.navigationController pushViewController:managerList animated:YES];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
|
||||
- (UIView *)navView {
|
||||
@@ -789,13 +828,7 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
return _removeMemberItem;
|
||||
}
|
||||
|
||||
- (TTActionSheetConfig *)memberIncomeItem {
|
||||
if (!_memberIncomeItem) {
|
||||
_memberIncomeItem = [[TTActionSheetConfig alloc] init];
|
||||
_memberIncomeItem.titleColor = [DJDKMIMOMColor alertTitleColor];
|
||||
}
|
||||
return _memberIncomeItem;
|
||||
}
|
||||
|
||||
|
||||
- (TTActionSheetConfig *)singleIncomeItem {
|
||||
if (!_singleIncomeItem) {
|
||||
@@ -811,12 +844,51 @@ UIKIT_EXTERN NSString *kInviteMemeberSuccess;
|
||||
}
|
||||
return _addGuildItem;
|
||||
}
|
||||
- (TTActionSheetConfig *)managerSetItem {
|
||||
if (!_managerSetItem) {
|
||||
_managerSetItem = [[TTActionSheetConfig alloc] init];
|
||||
_managerSetItem.titleColor = [DJDKMIMOMColor alertTitleColor];
|
||||
}
|
||||
return _managerSetItem;
|
||||
|
||||
- (XPNewMineGuildItemView *)checkView{
|
||||
if(!_checkView){
|
||||
_checkView = [[XPNewMineGuildItemView alloc]initWithFrame:CGRectZero];
|
||||
_checkView.bgImage = kImage(@"mine_guild_guild_check");
|
||||
_checkView.text = YMLocalizedString(@"XPGuildHeaderView4");
|
||||
_checkView.hidden = YES;
|
||||
_checkView.textColor = UIColorFromRGB(0x308BE0);
|
||||
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checkBillAction)];
|
||||
[_checkView addGestureRecognizer:tap];
|
||||
}
|
||||
return _checkView;
|
||||
}
|
||||
- (XPNewMineGuildItemView *)memberView{
|
||||
if(!_memberView){
|
||||
_memberView = [[XPNewMineGuildItemView alloc]initWithFrame:CGRectZero];
|
||||
_memberView.bgImage = kImage(@"mine_guild_guild_meber");
|
||||
_memberView.textColor = UIColorFromRGB(0xE1489B);
|
||||
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checkMemberIncomeAction)];
|
||||
[_memberView addGestureRecognizer:tap];
|
||||
_memberView.hidden = YES;
|
||||
}
|
||||
return _memberView;
|
||||
}
|
||||
- (XPNewMineGuildItemView *)managerView{
|
||||
if(!_managerView){
|
||||
_managerView = [[XPNewMineGuildItemView alloc]initWithFrame:CGRectZero];
|
||||
_managerView.textColor = UIColorFromRGB(0x8843E0);
|
||||
_managerView.bgImage = kImage(@"mine_guild_guild_manager");
|
||||
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checkManagerSetAction)];
|
||||
[_managerView addGestureRecognizer:tap];
|
||||
_managerView.hidden = YES;
|
||||
}
|
||||
return _managerView;
|
||||
}
|
||||
- (UIStackView *)itemStackView {
|
||||
if (!_itemStackView) {
|
||||
_itemStackView = [[UIStackView alloc] init];
|
||||
_itemStackView.axis = UILayoutConstraintAxisHorizontal;
|
||||
_itemStackView.distribution = UIStackViewDistributionFill;
|
||||
_itemStackView.alignment = UIStackViewAlignmentLeading;
|
||||
CGFloat spacing = (KScreenWidth - 112*3)/4;
|
||||
_itemStackView.spacing = spacing;
|
||||
}
|
||||
return _itemStackView;
|
||||
}
|
||||
- (UIView *)addRoomView{
|
||||
if (!_addRoomView){
|
||||
|
@@ -18,7 +18,10 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
@end
|
||||
|
||||
@interface XPNobleSettingNavView : UIView
|
||||
|
||||
///返回按钮
|
||||
@property (nonatomic,strong) UIButton *backButton;
|
||||
///显示文本
|
||||
@property (nonatomic,strong) UILabel *titleLabel;
|
||||
///代理
|
||||
@property (nonatomic,weak) id<XPNobleSettingNavViewDelegate> delegate;
|
||||
|
||||
|
@@ -14,10 +14,8 @@
|
||||
|
||||
|
||||
@interface XPNobleSettingNavView ()
|
||||
///返回按钮
|
||||
@property (nonatomic,strong) UIButton *backButton;
|
||||
///显示文本
|
||||
@property (nonatomic,strong) UILabel *titleLabel;
|
||||
|
||||
|
||||
@end
|
||||
|
||||
@implementation XPNobleSettingNavView
|
||||
|
@@ -50,7 +50,7 @@
|
||||
/// 初始化配置
|
||||
/// @param complection 完成
|
||||
+ (void)clientInitConfig:(HttpRequestHelperCompletion)complection {
|
||||
NSString * fang = [NSString stringFromBase64String:@"Y2xpZW50L2luaXQ="];///
|
||||
NSString * fang = [NSString stringFromBase64String:@"Y2xpZW50L2luaXQ="];///client/init
|
||||
[HttpRequestHelper request:fang method:HttpRequestHelperMethodGET params:[NSMutableDictionary dictionary] completion:complection];
|
||||
}
|
||||
|
||||
|
@@ -28,7 +28,7 @@
|
||||
// 是否在证书域字段中验证域名
|
||||
[manager.securityPolicy setValidatesDomainName:NO];
|
||||
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/plain",@"image/jpeg",@"image/png", nil];
|
||||
manager.requestSerializer.timeoutInterval = 60;
|
||||
manager.requestSerializer.timeoutInterval = 60;
|
||||
});
|
||||
return manager;
|
||||
}
|
||||
|
@@ -33,4 +33,6 @@
|
||||
#import "TTPopup.h"
|
||||
#import "NSDate+DateUtils.h"
|
||||
#import "NSMutableDictionary+Saft.h"
|
||||
#import "NetImageView.h"
|
||||
#import "XPAdjustEvent.h"
|
||||
#endif /* PrefixHeader_pch */
|
||||
|
18
YuMi/Tools/Event/XPAdjustEvent.h
Normal file
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// XPAdjustEvent.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2022/11/10.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPAdjustEvent : NSObject
|
||||
+(void)registeringEvent;
|
||||
+(void)loginEvent;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
24
YuMi/Tools/Event/XPAdjustEvent.m
Normal file
@@ -0,0 +1,24 @@
|
||||
//
|
||||
// XPAdjustEvent.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2022/11/10.
|
||||
//
|
||||
|
||||
#import "XPAdjustEvent.h"
|
||||
#import <Adjust/Adjust.h>
|
||||
#import "XPEventHead.h"
|
||||
|
||||
|
||||
|
||||
@implementation XPAdjustEvent
|
||||
+(void)registeringEvent{
|
||||
ADJEvent *event = [ADJEvent eventWithEventToken:RegisterEvent];
|
||||
[Adjust trackEvent:event];
|
||||
|
||||
}
|
||||
+(void)loginEvent{
|
||||
ADJEvent *event = [ADJEvent eventWithEventToken:LoginEvent];
|
||||
[Adjust trackEvent:event];
|
||||
}
|
||||
@end
|
62
YuMi/Tools/Event/XPEventHead.h
Normal file
@@ -0,0 +1,62 @@
|
||||
//
|
||||
// XPEventHead.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2022/12/2.
|
||||
//
|
||||
|
||||
#ifndef XPEventHead_h
|
||||
#define XPEventHead_h
|
||||
///AdjustE注册事件
|
||||
static NSString *const RegisterEvent = @"enx4lp";
|
||||
static NSString *const LoginEvent = @"eyxpri";
|
||||
///Firebbase
|
||||
//facebook
|
||||
static NSString *const facebook = @"fb";
|
||||
//line
|
||||
static NSString *const line = @"line";
|
||||
//google
|
||||
static NSString *const google = @"google";
|
||||
//id
|
||||
static NSString *const userId = @"id";
|
||||
//手机
|
||||
static NSString *const phone = @"phone";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
///埋点事件
|
||||
static NSString *const kFirstActivate = @"activate_first";
|
||||
static NSString *const kAgreementShow = @"agreement_show";
|
||||
static NSString *const KAgreementClick = @"agreement_click";
|
||||
static NSString *const kLoginShow = @"login_show";
|
||||
static NSString *const kLoginClick = @"login_click";
|
||||
static NSString *const kLoginRequest = @"login_request";
|
||||
static NSString *const kLoginResult = @"login_result";
|
||||
static NSString *const kModuleHomepageClick = @"module_homepage_click";
|
||||
static NSString *const kTabHomepageClick = @"tab_homepage_click";
|
||||
static NSString *const kPaypageShow = @"paypage_show";
|
||||
static NSString *const kPayClick = @"pay_click";
|
||||
|
||||
///事件参数key
|
||||
static NSString *const kModule = @"module";
|
||||
static NSString *const kClickType = @"click_type";
|
||||
static NSString *const kPage = @"page";
|
||||
static NSString *const kLoginType = @"login_type";
|
||||
static NSString *const kResult = @"result";
|
||||
static NSString *const kFailDetail = @"fail_detail";
|
||||
static NSString *const kHomepageType = @"homepage_type";
|
||||
static NSString *const kHomepageTab = @"homepage_tab";
|
||||
static NSString *const kPaypageType = @"paypage_type";
|
||||
static NSString *const kAccountBalance = @"account_balance";
|
||||
static NSString *const kFristpikoActivate = @"kFristpikoActivate";
|
||||
static NSString *const kMoney = @"money";
|
||||
|
||||
///事件参数value
|
||||
static NSString *const kpikoActivate = @"piko_activate";
|
||||
static NSString *const kpikoLogin = @"piko_login";
|
||||
static NSString *const kpikoHomepage = @"piko_homepage";
|
||||
static NSString *const kpikoPay = @"piko_pay";
|
||||
|
||||
#endif /* XPEventHead_h */
|
@@ -2543,6 +2543,27 @@
|
||||
///DateUtils
|
||||
"DateUtils0"="MM月dd日 HH:mm";
|
||||
"DateUtils1"="yyyy年MM月dd日 HH:mm";
|
||||
///XPMineGuildPersonalBillStatisVC
|
||||
"XPMineGuildPersonalBillStatisVC0"="收入统计";
|
||||
"XPMineGuildPersonalBillStatisVC1"="按日统计";
|
||||
"XPMineGuildPersonalBillStatisVC2"="每周统计";
|
||||
"XPMineGuildPersonalBillStatisVC3"="每月统计";
|
||||
|
||||
///XPMineGuildPersonalBillRecordHeadView
|
||||
"XPMineGuildPersonalBillRecordHeadView0"="%@ 钻石";
|
||||
"XPMineGuildPersonalBillRecordHeadView1"="钻石";
|
||||
|
||||
"XPMineGuildPersonalBillRecordHeadView2"="总收入";
|
||||
"XPMineGuildPersonalBillRecordHeadView3"="收入(钻石)";
|
||||
"XPMineGuildPersonalBillRecordHeadView4"="(钻石)";
|
||||
///XPMineGuildPersonalBillRecordContentView
|
||||
"XPMineGuildPersonalBillRecordContentView0"="房间流水";
|
||||
"XPMineGuildPersonalBillRecordContentView1"="普通礼物流水";
|
||||
"XPMineGuildPersonalBillRecordContentView2"="背包礼物流水";
|
||||
"XPMineGuildPersonalBillRecordContentView3"="送礼人数";
|
||||
"XPMineGuildPersonalBillRecordContentView4"="新用户送礼人数";
|
||||
"XPMineGuildPersonalBillRecordContentView5"="收入(鉆石)";
|
||||
"XPMineGuildPersonalBillRecordContentView6"="(鉆石)";
|
||||
///不能脚本生成的
|
||||
"App_Common_And" = "和";
|
||||
"App_Common_Male" = "男";
|
||||
|