HomeViewController.m 2.8 KB
//
//  HomeViewController.m
//  DreamSleep
//
//  Created by peter on 2022/4/1.
//

#import "HomeViewController.h"
#import "HomeTableView.h"
#import "RescuePlanView.h"
#import "FirstLeadAlertView.h"
#import "UserRequestModel.h"
#import "HomeRequestModel.h"

@interface HomeViewController ()
@property (nonatomic, strong) HomeTableView *homeTV;
@end

@implementation HomeViewController

- (void)loadView {
    self.view = self.homeTV;
}

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // leftItem
    UILabel *leftLab = [UILabel dkLabWithText:@"小梦睡眠" font:BoldFont(24.0)];
    UIBarButtonItem *leftItem = [[UIBarButtonItem alloc] initWithCustomView:leftLab];
    self.navigationItem.leftBarButtonItem = leftItem;
    
    if ([LoginUtils getUserLoginData]) {
        // 自动登录请求(调用时机)
        [UserRequestModel autoLoginRequestWithCompletion:^(UserRequestModel * _Nonnull requestModel) {
        }];
    }
    
    // 运营活动弹框时机(已登录还是未登录)
    // [self queryPromotionImageRequest];
}

#pragma mark - APP首次启动弹框
- (void)showFirstLeadAlertView {
    FirstLeadAlertView *view = [[FirstLeadAlertView alloc] initWithJumpBlock:^(JumpType type) {
        if (type == JumpTypeAI) {
            // 切换到AI睡眠教练标签
            self.tabBarController.selectedIndex = 1;
        } else {
            // 进入快速入眠页面
            
        }
    }];
    [view show];
}

#pragma mark - 运营活动弹窗接口
- (void)queryPromotionImageRequest {
    [HomeRequestModel queryPromotionImageWithCompletion:^(HomeRequestModel * _Nonnull requestModel) {
        if (requestModel.resCode == DSResCodeSuccess) {
            PromotionModel *pModel = requestModel.promotionModel;
            [self showRescuePlanView:pModel];
        }
    }];
}

#pragma mark - 显示失眠拯救计划弹框
- (void)showRescuePlanView:(PromotionModel *)pModel {
    BOOL isNative = [pModel.page_url containsString:@"native"];
    WS(weakSelf);
    RescuePlanView *rescuePlanView = [[RescuePlanView alloc] initWithJumpBlock:^{
        // 跳转到原生页面
        if (isNative) {
            int type = [[[pModel.page_url componentsSeparatedByString:@"type="] lastObject] intValue];
            
        } else {
            // 跳转到H5页面
            [weakSelf.navigationController pushViewController:[[DsWebController alloc] initWithTitle:pModel.title link:pModel.page_url] animated:YES];
        }
    } imageUrl:pModel.image_url];
    [rescuePlanView show];
}

#pragma mark - 导航栏日间、黑夜模式
- (NaviStyle)navigationBarStyle {
    return [self.dk_manager.themeVersion isEqualToString:DKThemeVersionNormal] ? NaviStyleLight : NaviStyleDark;
}

#pragma mark - lazy
- (HomeTableView *)homeTV {
    if (!_homeTV) {
        _homeTV = [[HomeTableView alloc] init];
    }
    return _homeTV;
}

@end