// // KWMMineVC.m // iCemarose // // Created by HouWeiBin on 16/8/22. // Copyright © 2016年 kollway. All rights reserved. // #import "KWMMineVC.h" #import "KWMOrderVC.h" #import "KWMAboutUsVC.h" #import "KWMContactUsVC.h" #import "KWMShopCartVC.h" #import "KWMNewGiftCardVC.h" #import "KWMLoginVC.h" #import "KWMMineTitleView.h" #import "KWMFilterVC.h" #import "KWMSelectAddressVC.h" @interface KWMMineVC () @property (nonatomic) KWMMineTitleView *vTitle; @end @implementation KWMMineVC{ BOOL isLogin; } +(NSString *)kwmTag{ return @"KWMMineVC"; } - (void)viewDidDisappear:(BOOL)animated{ [super viewDidDisappear:animated]; [_vTitle removeFromSuperview]; } - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. CGFloat height = UI_SCREEN_HEITHT; if (height < 568) { _vIconHeight.constant = UI_SCREEN_HEITHT*140.0/667; }else{ _vIconHeight.constant = UI_SCREEN_HEITHT*160.0/667; } _loginBottom.constant = UI_SCREEN_HEITHT*40.0/667; } - (void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; [self.navigationController setNavigationBarHidden:NO]; [_vTitle removeFromSuperview]; } - (void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; _user = [KWMUserModel shareUser]; [self.navigationController setNavigationBarHidden:YES]; [self initHeaderView]; } - (void)initHeaderView{ _vTitle = [[KWMMineTitleView alloc] init]; // _vTitle = [[KWMMineTitleView alloc] initWithFrame:CGRectMake(0, 0, UI_SCREEN_WIDTH, 64)]; _vTitle.lbUserName.text = _user.status ? _user.name : @"未登录"; if (_user.status == 1) { [self.btnLogin setTitle:@"退出" forState:UIControlStateNormal]; [self.btnLogin setImage:[UIImage imageNamed:@"button_mine_log out"] forState:UIControlStateNormal]; }else{ [self.btnLogin setTitle:@"登录" forState:UIControlStateNormal]; [self.btnLogin setImage:[UIImage imageNamed:@"button_mine_login"] forState:UIControlStateNormal]; } [self.view addSubview:_vTitle]; [self initCustomTitleBarConstarints:_vTitle]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } -(void)awakeFromNib{ [super awakeFromNib]; self.title = @"我的"; } -(IBAction)onClickCurrency:(id)sender { [self performSegueWithIdentifier:@"MeToCurrency" sender:nil]; } -(void)onClickOrder:(id)sender{ if (!_user.status) { //登录 KWMLoginVC *loginVc = (KWMLoginVC *)[KWMBaseVC findControllerBy:[KWMLoginVC kwmTag] fromStoryboard:@"Login"]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:loginVc]; [self presentViewController:nav animated:YES completion:nil]; }else{ KWMOrderVC *orderVC = (KWMOrderVC *)[KWMBaseVC findControllerBy:[KWMOrderVC kwmTag] fromStoryboard:@"Mine"]; [self.navigationController pushViewController:orderVC animated:YES]; } } -(void)onClickGiftCards:(id)sender{ if (!_user.status) { //登录 KWMLoginVC *loginVc = (KWMLoginVC *)[KWMBaseVC findControllerBy:[KWMLoginVC kwmTag] fromStoryboard:@"Login"]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:loginVc]; [self presentViewController:nav animated:YES completion:nil]; }else{ KWMNewGiftCardVC *giftCardVC = (KWMNewGiftCardVC *)[KWMBaseVC findControllerBy:[KWMNewGiftCardVC kwmTag] fromStoryboard:@"Mine"]; [self.navigationController pushViewController:giftCardVC animated:YES]; } } -(void)onClickAboutUs:(id)sender{ KWMAboutUsVC *aboutVC = (KWMAboutUsVC *)[KWMBaseVC findControllerBy:[KWMAboutUsVC kwmTag] fromStoryboard:@"Mine"]; [self.navigationController pushViewController:aboutVC animated:YES]; } -(void)onClickContect:(id)sender{ KWMContactUsVC *contactVC = (KWMContactUsVC *)[KWMBaseVC findControllerBy:[KWMContactUsVC kwmTag] fromStoryboard:@"Mine"]; [self.navigationController pushViewController:contactVC animated:YES]; } -(IBAction)onClickAddress { if(!_user.status) { KWMLoginVC *loginVc = (KWMLoginVC *)[KWMBaseVC findControllerBy:[KWMLoginVC kwmTag] fromStoryboard:@"Login"]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:loginVc]; [self presentViewController:nav animated:YES completion:nil]; }else{ KWMSelectAddressVC *addressVC = (KWMSelectAddressVC *)[KWMBaseVC findControllerBy:[KWMSelectAddressVC kwmTag] fromStoryboard:@"ShopCart"]; addressVC.hidesBottomBarWhenPushed = YES; [self.navigationController pushViewController:addressVC animated:YES]; } } - (IBAction)onClickLogout:(id)sender { if (_user.status) { self.btnLogin.userInteractionEnabled = NO; _user.status = 0; [self requestLogoutAPI]; }else{ //登录 KWMLoginVC *loginVc = (KWMLoginVC *)[KWMBaseVC findControllerBy:[KWMLoginVC kwmTag] fromStoryboard:@"Login"]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:loginVc]; [self presentViewController:nav animated:YES completion:nil]; } } //登出API - (void)requestLogoutAPI{ self.client.customerToken = [BUYCustomerToken customerTokenWithJSONDictionary:[[NSUserDefaults standardUserDefaults] objectForKey:@"token"]]; [self showLoading]; [self.client logoutCustomerCallback:^(BUYStatus status, NSError * _Nullable error) { [self hideLoading]; if (error == nil && status) { }else if (error != nil){ //错误吐司并没有显示的意义,并且,如果是登陆超时,在吐司里还会跳转至登陆页面,所以建议注释 //[self showError:error]; } //不管有没有请求成功,删除本地保存的用户数据,因为请求失败并不影响用户的再次登陆 //请求此API可能是为了更新后台用户的登录状态显示 [self refreshLogout]; }]; } - (void)refreshLogout{ [_user logout]; [[KWMUserDao shareDao] setTags:nil]; [self showToast:@"已成功下线"]; _vTitle.lbUserName.text = @"未登录"; [self.btnLogin setTitle:@"登录" forState:UIControlStateNormal]; [self.btnLogin setImage:[UIImage imageNamed:@"button_mine_login"] forState:UIControlStateNormal]; } @end