|
|
|
//
|
|
|
|
// LoginViewController.m
|
|
|
|
// LekangGuard
|
|
|
|
//
|
|
|
|
// Created by ecell on 2022/10/8.
|
|
|
|
//
|
|
|
|
|
|
|
|
#import "LoginViewController.h"
|
|
|
|
#import "AppDelegate.h"
|
|
|
|
#import "EmailLoginViewController.h"
|
|
|
|
#import "commWebViewController.h"
|
|
|
|
#import "RegisterViewController.h"
|
|
|
|
#import <WXApi.h>
|
|
|
|
|
|
|
|
@interface LoginViewController ()<UITextViewDelegate,UIScrollViewDelegate>
|
|
|
|
|
|
|
|
|
|
|
|
@property (nonatomic ,strong) UIScrollView *scrollView;
|
|
|
|
@property (nonatomic ,strong) UIPageControl *pageControl;
|
|
|
|
|
|
|
|
/// 用户协议按钮
|
|
|
|
@property (nonatomic ,weak) UIButton *agreementBtn;
|
|
|
|
|
|
|
|
/// 密码View
|
|
|
|
@property (nonatomic ,weak) UIView *passView;
|
|
|
|
|
|
|
|
/// 手机号TextField
|
|
|
|
@property (nonatomic ,weak) UITextField *phoneField;
|
|
|
|
|
|
|
|
/// 密码TextField
|
|
|
|
@property (nonatomic ,weak) UITextField *passField;
|
|
|
|
|
|
|
|
/// 记住密码按钮
|
|
|
|
@property (nonatomic ,weak) UIButton *rememberPassBtn;
|
|
|
|
|
|
|
|
/// 是否记得密码
|
|
|
|
@property (nonatomic ,assign) BOOL isRememberPWD;
|
|
|
|
|
|
|
|
/// 登录
|
|
|
|
@property (nonatomic ,weak) UIButton *loginBtn;
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
@implementation LoginViewController
|
|
|
|
|
|
|
|
- (void)viewDidLoad {
|
|
|
|
[super viewDidLoad];
|
|
|
|
// Do any additional setup after loading the view.
|
|
|
|
self.view.backgroundColor = KKWhiteColorColor;
|
|
|
|
self.zx_navBarBackgroundColor = KKClearColor;
|
|
|
|
|
|
|
|
UIImageView *logoBgImg = [UICommon ui_imageView:CGRectZero fileName:@"login_bg"];
|
|
|
|
[self.view addSubview:logoBgImg];
|
|
|
|
[logoBgImg mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.top.equalTo(self.view);
|
|
|
|
make.left.right.equalTo(self.view);
|
|
|
|
make.height.mas_equalTo(logoBgImg.image.size.height);
|
|
|
|
}];
|
|
|
|
|
|
|
|
UIImageView *logoImg = [UICommon ui_imageView:CGRectZero fileName:@"login_logo"];
|
|
|
|
[self.view addSubview:logoImg];
|
|
|
|
[logoImg mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerX.equalTo(self.view);
|
|
|
|
make.top.equalTo(self.view).offset(Adapted(97));
|
|
|
|
make.size.mas_equalTo(logoImg.image.size);
|
|
|
|
}];
|
|
|
|
|
|
|
|
for (int i = 0; i < 2; i++)
|
|
|
|
{
|
|
|
|
UIView *bgView = [UICommon ui_view:CGRectZero backgroundColor:KKClearColor cornerRadius:0 borderWidth:0 borderColor:KKClearColor];
|
|
|
|
if (i == 1) self.passView = bgView;
|
|
|
|
[self.view addSubview:bgView];
|
|
|
|
[bgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.right.equalTo(self.view).inset(35);
|
|
|
|
make.top.equalTo(logoImg.mas_bottom).offset(189+i*Adapted(62));
|
|
|
|
make.height.mas_equalTo(Adapted(62));
|
|
|
|
|
|
|
|
}];
|
|
|
|
|
|
|
|
UIImageView *leftImg = [UICommon ui_imageView:CGRectZero fileName:i == 0 ? @"login_phone_icon" : @"login_password_icon"];
|
|
|
|
[bgView addSubview:leftImg];
|
|
|
|
[leftImg mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.equalTo(bgView).offset(0);
|
|
|
|
make.centerY.equalTo(bgView);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(leftImg.image.size.width), Adapted(leftImg.image.size.height)));
|
|
|
|
}];
|
|
|
|
|
|
|
|
/// 密码可视或不可视按钮
|
|
|
|
UIButton *rightBtn;
|
|
|
|
if (i == 1)
|
|
|
|
{
|
|
|
|
rightBtn = [UICommon ui_buttonSimple:CGRectZero font:Font_(0) normalColor:KKClearColor normalText:@"" click:^(UIButton *sender) {
|
|
|
|
[sender setSelected:!sender.isSelected];
|
|
|
|
self.passField.secureTextEntry = !sender.isSelected;
|
|
|
|
}];
|
|
|
|
[rightBtn setImage:[UIImage imageNamed:@"login_password_icon_hidden"] forState:UIControlStateNormal];
|
|
|
|
[rightBtn setImage:[UIImage imageNamed:@"login_password_icon_show"] forState:UIControlStateSelected];
|
|
|
|
[bgView addSubview:rightBtn];
|
|
|
|
[rightBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerY.equalTo(bgView);
|
|
|
|
make.right.equalTo(bgView.mas_right);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(22), Adapted(22)));
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
UITextField *textfield = [UICommon ui_textField:CGRectZero textColor:KKTextBlackColor backColor:KKClearColor font:FontADA_(15) maxTextNum:i == 0 ? 11 : 16 placeholderColor:KKGrey143 placeholder:i == 0 ? GJText(@"请输入手机号") : GJText(@"请输入密码") toMaxNum:^(UITextField *textField) {
|
|
|
|
|
|
|
|
} change:^(UITextField *textField) {
|
|
|
|
|
|
|
|
}];
|
|
|
|
if (i == 0)
|
|
|
|
{
|
|
|
|
textfield.keyboardType = UIKeyboardTypePhonePad;
|
|
|
|
self.phoneField = textfield;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
textfield.secureTextEntry = YES;
|
|
|
|
self.passField = textfield;
|
|
|
|
}
|
|
|
|
[bgView addSubview:textfield];
|
|
|
|
|
|
|
|
[textfield mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.equalTo(leftImg.mas_right).offset(15);
|
|
|
|
if (i == 0)
|
|
|
|
make.right.equalTo(bgView).inset(15);
|
|
|
|
else
|
|
|
|
make.right.equalTo(rightBtn.mas_left).inset(15);
|
|
|
|
make.centerY.equalTo(bgView);
|
|
|
|
make.height.mas_equalTo(Adapted(44));
|
|
|
|
}];
|
|
|
|
|
|
|
|
UIImageView *line = [UIImageView new];
|
|
|
|
line.backgroundColor = KKLineColor;
|
|
|
|
[bgView addSubview:line];
|
|
|
|
[line mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.right.equalTo(bgView);
|
|
|
|
make.bottom.equalTo(bgView.mas_bottom);
|
|
|
|
make.height.mas_equalTo(0.5);
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
/// 登录
|
|
|
|
UIButton *loginBtn = [UICommon ui_buttonSimple:CGRectZero font:FontADA_(16) normalColor:KKWhiteColorColor normalText:GJText(@"登录") click:^(UIButton *btn) {
|
|
|
|
// btn.selected = !btn.selected;
|
|
|
|
[self UserLogin];
|
|
|
|
}];
|
|
|
|
[loginBtn setBackgroundImage:ImageName_(@"login_button_bg_no") forState:UIControlStateNormal];
|
|
|
|
[loginBtn setBackgroundImage:ImageName_(@"login_button_bg_select") forState:UIControlStateSelected];
|
|
|
|
[loginBtn setTitle:@"登录中" forState:UIControlStateSelected];
|
|
|
|
self.loginBtn = loginBtn;
|
|
|
|
[self.view addSubview:loginBtn];
|
|
|
|
[loginBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.top.equalTo(self.passView.mas_bottom).offset(Adapted(40));
|
|
|
|
make.centerX.equalTo(self.view);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(230), Adapted(45)));
|
|
|
|
}];
|
|
|
|
|
|
|
|
UIImageView *line = [UIImageView new];
|
|
|
|
line.backgroundColor = KKMainColor;
|
|
|
|
[self.view addSubview:line];
|
|
|
|
[line mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerX.equalTo(self.view);
|
|
|
|
make.top.equalTo(loginBtn.mas_bottom).offset(Adapted(25));
|
|
|
|
make.size.mas_equalTo(CGSizeMake(1, 16));
|
|
|
|
}];
|
|
|
|
|
|
|
|
/// 立即注册
|
|
|
|
UIButton *registerBtn = [UICommon ui_buttonSimple:CGRectZero font:FontADA_(16) normalColor:KKMainColor normalText:GJText(@"注册账号") click:^(UIButton *sender) {
|
|
|
|
|
|
|
|
RegisterViewController *vc = [RegisterViewController new];
|
|
|
|
vc.navTitle = @"注册";
|
|
|
|
vc.isViewType = 0;
|
|
|
|
vc.isRegisterSuccess = ^{
|
|
|
|
//[self aucnTexg];
|
|
|
|
};
|
|
|
|
[self.navigationController pushViewController:vc animated:YES];
|
|
|
|
}];
|
|
|
|
[self.view addSubview:registerBtn];
|
|
|
|
|
|
|
|
CGRect rect1 = [UICommon GetTextWidth:registerBtn.currentTitle ViewHeight:30 fontSize:FontADA_(16) type:@"w"];
|
|
|
|
[registerBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.equalTo(line.mas_right).offset(3);
|
|
|
|
make.centerY.equalTo(line);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(rect1.size.width+5), 16.5));
|
|
|
|
}];
|
|
|
|
|
|
|
|
/// 忘记密码
|
|
|
|
UIButton *forgetBtn = [UICommon ui_buttonSimple:CGRectZero font:FontADA_(16) normalColor:KKMainColor normalText:GJText(@"忘记密码") click:^(UIButton *sender) {
|
|
|
|
RegisterViewController *vc = [RegisterViewController new];
|
|
|
|
vc.navTitle = @"忘记密码";
|
|
|
|
vc.isViewType = 1;
|
|
|
|
[self.navigationController pushViewController:vc animated:YES];
|
|
|
|
}];
|
|
|
|
[self.view addSubview:forgetBtn];
|
|
|
|
CGRect rect = [UICommon GetTextWidth:forgetBtn.currentTitle ViewHeight:30 fontSize:FontADA_(16) type:@"w"];
|
|
|
|
[forgetBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.right.equalTo(line.mas_left).inset(3);
|
|
|
|
make.centerY.equalTo(line);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(rect.size.width+5), 16.5));
|
|
|
|
}];
|
|
|
|
|
|
|
|
|
|
|
|
UIImageView *line1 = [UIImageView new];
|
|
|
|
line1.backgroundColor = KKLineColor;
|
|
|
|
[self.view addSubview:line1];
|
|
|
|
[line1 mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.right.equalTo(self.view).inset(35);
|
|
|
|
make.top.equalTo(line.mas_bottom).offset(Adapted(65));
|
|
|
|
make.height.mas_equalTo(1);
|
|
|
|
}];
|
|
|
|
|
|
|
|
UILabel *otherLabel = [UICommon ui_label:CGRectZero lines:0 align:NSTextAlignmentCenter font:FontADA_(10) textColor:KKGrey133 text:@"其他方式登录" Radius:0];
|
|
|
|
otherLabel.backgroundColor = KKWhiteColorColor;
|
|
|
|
[self.view addSubview:otherLabel];
|
|
|
|
[otherLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerX.equalTo(self.view);
|
|
|
|
make.centerY.equalTo(line1);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(104.5, 14));
|
|
|
|
}];
|
|
|
|
|
|
|
|
NSArray *btnTitleArr = [WXApi isWXAppInstalled] ? @[@"微信",@"验证码"] : @[@"验证码"];
|
|
|
|
NSArray *btnImageArr = [WXApi isWXAppInstalled] ? @[@"login_wechatBtn",@"login_codeBtn"] : @[@"login_codeBtn"];
|
|
|
|
for (int i = 0; i < btnTitleArr.count; i++)
|
|
|
|
{
|
|
|
|
UIButton *btn = [UICommon ui_buttonSimple:CGRectZero font:FontADA_(10) normalColor:KKGrey133 normalText:btnTitleArr[i] click:^(UIButton *b) {
|
|
|
|
if ([b.currentTitle isEqualToString:@"微信"])
|
|
|
|
{
|
|
|
|
[self WXAccredit];
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
}];
|
|
|
|
btn.size = CGSizeMake(50, 75);
|
|
|
|
[btn setImage:ImageName_(btnImageArr[i]) forState:UIControlStateNormal];
|
|
|
|
[UICommon setTitleAndImage:btn :1.2];
|
|
|
|
[self.view addSubview:btn];
|
|
|
|
[btn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
if (btnTitleArr.count == 1)
|
|
|
|
make.centerX.equalTo(self.view);
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if (i == 0)
|
|
|
|
make.right.equalTo(self.view.mas_centerX).inset(Adapted(21));
|
|
|
|
else
|
|
|
|
make.left.equalTo(self.view.mas_centerX).offset(Adapted(21));
|
|
|
|
}
|
|
|
|
make.top.equalTo(otherLabel.mas_bottom).offset(Adapted(25));
|
|
|
|
make.size.mas_equalTo(CGSizeMake(50, 75));
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UITextView *agreementView = [[UITextView alloc] init];
|
|
|
|
agreementView.backgroundColor = [UIColor clearColor];
|
|
|
|
agreementView.delegate = self;
|
|
|
|
agreementView.editable = NO;
|
|
|
|
agreementView.contentSize = CGSizeMake(0, 0);
|
|
|
|
//去除配置 可自定义链接样式
|
|
|
|
agreementView.linkTextAttributes = @{};
|
|
|
|
// lable.text = @"点击“注册”即表示你同意《用户服务协议》";
|
|
|
|
NSString * userAgreement = GJText(@"《用户服务协议》");
|
|
|
|
NSString * privacyPolicy = GJText(@"《隐私政策》");
|
|
|
|
NSString * allStr = [NSString stringWithFormat:GJText(@"登录即代表同意%@和%@并使用本机号码登录"),userAgreement,privacyPolicy];
|
|
|
|
NSMutableAttributedString * attributedStr = [[NSMutableAttributedString alloc] initWithString:allStr];
|
|
|
|
|
|
|
|
[attributedStr addAttribute:NSForegroundColorAttributeName value:KKMainColor range:[allStr rangeOfString:userAgreement]];
|
|
|
|
[attributedStr addAttribute:NSLinkAttributeName value:AccoutXieYiURLStr range:[allStr rangeOfString:userAgreement]];
|
|
|
|
|
|
|
|
[attributedStr addAttribute:NSForegroundColorAttributeName value:KKMainColor range:[allStr rangeOfString:privacyPolicy]];
|
|
|
|
[attributedStr addAttribute:NSLinkAttributeName value:PrivacyPolicyURLStr range:[allStr rangeOfString:privacyPolicy]];
|
|
|
|
|
|
|
|
[attributedStr addAttribute:NSForegroundColorAttributeName value:KKGrey121 range:[allStr rangeOfString:GJText(@"登录即代表同意")]];
|
|
|
|
[attributedStr addAttribute:NSForegroundColorAttributeName value:KKGrey121 range:[allStr rangeOfString:GJText(@"和")]];
|
|
|
|
[attributedStr addAttribute:NSForegroundColorAttributeName value:KKGrey121 range:[allStr rangeOfString:GJText(@"并使用本机号码登录")]];
|
|
|
|
|
|
|
|
agreementView.attributedText = attributedStr;
|
|
|
|
agreementView.textAlignment = NSTextAlignmentLeft;
|
|
|
|
agreementView.font = FontADA_(10);
|
|
|
|
[self.view addSubview:agreementView];
|
|
|
|
[agreementView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.left.equalTo(self.view).offset(60.5);
|
|
|
|
make.bottom.equalTo(self.view.mas_bottom).inset(iPhoneX_TabbarSafeBottomMargin > 0 ? iPhoneX_TabbarSafeBottomMargin : 34);
|
|
|
|
make.height.offset(38);
|
|
|
|
make.width.offset(SCREEN_WIDTH-60.5-22);
|
|
|
|
}];
|
|
|
|
|
|
|
|
UIButton *agreementBtn = [UICommon ui_buttonSimple:CGRectZero font:FontADA_(16) normalColor:KKWhiteColorColor normalText:@"" click:^(UIButton *btn) {
|
|
|
|
btn.selected = !btn.selected;
|
|
|
|
}];
|
|
|
|
[agreementBtn setImage:ImageName_(@"login_no_the_selected_icon") forState:UIControlStateNormal];
|
|
|
|
[agreementBtn setImage:ImageName_(@"login_the_selected_icon") forState:UIControlStateSelected];
|
|
|
|
self.agreementBtn = agreementBtn;
|
|
|
|
[self.view addSubview:agreementBtn];
|
|
|
|
[agreementBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerY.equalTo(agreementView.mas_centerY);
|
|
|
|
make.left.equalTo(self.view).offset(40);
|
|
|
|
make.size.mas_equalTo(CGSizeMake(Adapted(13), Adapted(13)));
|
|
|
|
}];
|
|
|
|
|
|
|
|
[self aucnTexg];
|
|
|
|
|
|
|
|
|
|
|
|
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
|
|
|
|
if (![userDefaults objectForKey:@"启动次数"])
|
|
|
|
{
|
|
|
|
// [userDefaults setObject:@"不止一次" forKey:@"启动次数"];
|
|
|
|
// [userDefaults synchronize];
|
|
|
|
|
|
|
|
self.scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];
|
|
|
|
self.scrollView.pagingEnabled = YES;
|
|
|
|
self.scrollView.contentSize = CGSizeMake(CGRectGetWidth(self.scrollView.frame) * 4, CGRectGetHeight(self.scrollView.frame));
|
|
|
|
self.scrollView.delegate = self;
|
|
|
|
self.scrollView.showsVerticalScrollIndicator = NO;
|
|
|
|
self.scrollView.showsHorizontalScrollIndicator = NO;
|
|
|
|
self.scrollView.backgroundColor = [UIColor whiteColor];
|
|
|
|
|
|
|
|
[self.view addSubview:self.scrollView];
|
|
|
|
|
|
|
|
self.pageControl = [[UIPageControl alloc] init];
|
|
|
|
self.pageControl.numberOfPages = 4;
|
|
|
|
self.pageControl.pageIndicatorTintColor = [KKMainColor colorWithAlphaComponent:0.3];
|
|
|
|
self.pageControl.currentPageIndicatorTintColor = KKMainColor;
|
|
|
|
[self.view addSubview:self.pageControl];
|
|
|
|
[self.pageControl mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
|
make.centerX.equalTo(self.scrollView.mas_centerX);
|
|
|
|
make.bottom.equalTo(self.scrollView.mas_bottom).offset(-10);
|
|
|
|
}];
|
|
|
|
|
|
|
|
NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0];
|
|
|
|
NSArray *array = [language componentsSeparatedByString:@"-"];
|
|
|
|
NSString *currentLanguage = array[0];
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
{
|
|
|
|
UIImage *image = [currentLanguage isEqualToString:@"zh"] ? ImageName_(F(@"q-zh-%d", i+1)) : ImageName_(F(@"q-en-%d", i+1));
|
|
|
|
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(CGRectGetWidth(self.scrollView.frame) * i,
|
|
|
|
0,
|
|
|
|
CGRectGetWidth(self.scrollView.frame),
|
|
|
|
CGRectGetHeight(self.scrollView.frame))];
|
|
|
|
imageView.image = image;
|
|
|
|
[self.scrollView addSubview:imageView];
|
|
|
|
|
|
|
|
if (i == 3)
|
|
|
|
{
|
|
|
|
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
|
|
|
|
// [btn setImage:[myHelper getImageWithName:@"立即体验按钮"] forState:UIControlStateNormal];
|
|
|
|
[btn setTitleColor:KKMainColor forState:UIControlStateNormal];
|
|
|
|
btn.frame = CGRectMake(SCREEN_WIDTH*3 + SCREEN_WIDTH/4, SCREEN_HEIGHT-45-30, SCREEN_WIDTH/2, 45);
|
|
|
|
[btn setTitle:GJText(@"开始体验") forState:0];
|
|
|
|
btn.layer.masksToBounds = YES;
|
|
|
|
btn.layer.cornerRadius = btn.height/2.0;
|
|
|
|
[btn setBackgroundColor:KKMainColor];
|
|
|
|
[btn setTitleColor:[UIColor whiteColor] forState:0];
|
|
|
|
|
|
|
|
[btn addTarget:self action:@selector(removeScrollView)forControlEvents:UIControlEventTouchUpInside];
|
|
|
|
[self.scrollView addSubview:btn];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/// 微信登录跳转微信授权
|
|
|
|
- (void)WXAccredit
|
|
|
|
{
|
|
|
|
[[APHandleManager sharedManager] authorizationWachat:^(NSDictionary *authInfo) {
|
|
|
|
|
|
|
|
NSLog(@"%@",authInfo);
|
|
|
|
[self WXLogin:authInfo];
|
|
|
|
} failure:^(HandleStatus code) {
|
|
|
|
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma mark 微信授权后调用本地微信登录解救
|
|
|
|
/// 微信授权后调用本地微信登录解救
|
|
|
|
- (void)WXLogin:(NSDictionary *)authInfo
|
|
|
|
{
|
|
|
|
[UICommon MessageUpload:@"加载中"];
|
|
|
|
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
|
|
|
|
[parameters setValue:authInfo[@"city"] forKey:@"city"];
|
|
|
|
[parameters setValue:authInfo[@"country"] forKey:@"country"];
|
|
|
|
[parameters setValue:authInfo[@"headimgurl"] forKey:@"headimgurl"];
|
|
|
|
[parameters setValue:authInfo[@"nickname"] forKey:@"nickname"];
|
|
|
|
[parameters setValue:authInfo[@"openid"] forKey:@"openid"];
|
|
|
|
[parameters setValue:authInfo[@"privilege"] forKey:@"privilege"];
|
|
|
|
[parameters setValue:authInfo[@"province"] forKey:@"province"];
|
|
|
|
[parameters setValue:authInfo[@"sex"] forKey:@"sex"];
|
|
|
|
[parameters setValue:authInfo[@"unionid"] forKey:@"unionid"];
|
|
|
|
[[[APIManager sharedManager] APPOST:WechatLogin_URL parameters:parameters isJson:YES resultClass:LoginModel.class] subscribeNext:^(id _Nullable x) {
|
|
|
|
[UICommon HidenLoading];
|
|
|
|
AppDelegate *app = (AppDelegate *)[UIApplication sharedApplication].delegate;
|
|
|
|
[app showRootViewController];
|
|
|
|
|
|
|
|
} error:^(NSError * _Nullable error) {
|
|
|
|
NSDictionary *dic = error.userInfo;
|
|
|
|
if ([dic[@"detail"] intValue] == 302)
|
|
|
|
{
|
|
|
|
RegisterViewController *vc = [[RegisterViewController alloc] init];
|
|
|
|
vc.navTitle = @"绑定手机号";
|
|
|
|
vc.isViewType = 2;
|
|
|
|
vc.authInfo = parameters;
|
|
|
|
[self.navigationController pushViewController:vc animated:YES];
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
[UICommon MessageErrorText:dic[NSLocalizedDescriptionKey]];
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
#pragma mark 登录
|
|
|
|
/// 登录
|
|
|
|
- (void)UserLogin
|
|
|
|
{
|
|
|
|
self.loginBtn.selected = NO;
|
|
|
|
if (!self.phoneField.text || self.phoneField.text.length != 11)
|
|
|
|
{
|
|
|
|
[UICommon MessageErrorText:GJText(@"请输入正确的手机号")];
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
else if (self.passField.text.length < 6)
|
|
|
|
{
|
|
|
|
[UICommon MessageErrorText:GJText(@"密码为6~16位字符内")];
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
if (!self.agreementBtn.selected)
|
|
|
|
{
|
|
|
|
[UICommon MessageErrorText:GJText(@"请同意用户服务协议和隐私政策")];
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
self.loginBtn.selected = YES;
|
|
|
|
self.loginBtn.enabled = NO;
|
|
|
|
[UICommon MessageUpload:@"登录中"];
|
|
|
|
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
|
|
|
|
[parameters setValue:self.phoneField.text forKey:@"phone"];
|
|
|
|
[parameters setValue:self.passField.text forKey:@"password"];
|
|
|
|
[[[APIManager sharedManager] APPOST:UserLogin_URL parameters:parameters isJson:YES resultClass:LoginModel.class] subscribeNext:^(id _Nullable x) {
|
|
|
|
NSMutableDictionary *userDic = [NSMutableDictionary dictionary];
|
|
|
|
[userDic setValue:self.phoneField.text forKey:@"phone"];
|
|
|
|
[userDic setValue:self.isRememberPWD ? self.passField.text : @"" forKey:@"password"];
|
|
|
|
[userDic setValue:self.isRememberPWD ? @"1" : @"0" forKey:@"isRememberPWD"];
|
|
|
|
// [userDic setValue:self.countryCodeLabel.text forKey:@"code"];
|
|
|
|
// [userDic setValue:self.countryTitleLabel.text forKey:@"gj"];
|
|
|
|
YYCache *userCache = [YYCache cacheWithName:UserCacheName];
|
|
|
|
[userCache setObject:userDic forKey:UserCacheKey];
|
|
|
|
|
|
|
|
AppDelegate *app = (AppDelegate *)[UIApplication sharedApplication].delegate;
|
|
|
|
[app showRootViewController];
|
|
|
|
self.loginBtn.enabled = YES;
|
|
|
|
self.loginBtn.selected = NO;
|
|
|
|
|
|
|
|
} error:^(NSError * _Nullable error) {
|
|
|
|
self.loginBtn.enabled = YES;
|
|
|
|
self.loginBtn.selected = NO;
|
|
|
|
NSDictionary *dic = error.userInfo;
|
|
|
|
[UICommon MessageErrorText:dic[NSLocalizedDescriptionKey]];
|
|
|
|
}];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma mark UITextViewDelegate
|
|
|
|
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange
|
|
|
|
{
|
|
|
|
|
|
|
|
if ([URL.absoluteString containsString:AccoutXieYiURLStr])
|
|
|
|
{
|
|
|
|
commWebViewController *vc = [commWebViewController new];
|
|
|
|
vc.url = AccoutXieYiURLStr;
|
|
|
|
vc.navTitle = GJText(@"用户协议");
|
|
|
|
[self.navigationController pushViewController:vc animated:YES];
|
|
|
|
return NO;
|
|
|
|
}
|
|
|
|
else if ([URL.absoluteString containsString:PrivacyPolicyURLStr])
|
|
|
|
{
|
|
|
|
commWebViewController *vc = [commWebViewController new];
|
|
|
|
vc.url = AccoutXieYiURLStr;
|
|
|
|
vc.navTitle = GJText(@"隐私政策");
|
|
|
|
[self.navigationController pushViewController:vc animated:YES];
|
|
|
|
return NO;
|
|
|
|
}
|
|
|
|
return YES;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
|
|
|
|
{
|
|
|
|
int page = scrollView.contentOffset.x / scrollView.frame.size.width;
|
|
|
|
//NSLog(@"%d", page);
|
|
|
|
//NSLog(@"%f", scrollView.contentOffset.x);
|
|
|
|
|
|
|
|
// 设置页码
|
|
|
|
self.pageControl.currentPage = page;
|
|
|
|
if (/*scrollView.contentOffset.x > ScreenWidth*/ page==3 ){ // update by lsz 2021-7-23
|
|
|
|
[self.pageControl setHidden: YES];
|
|
|
|
}else{
|
|
|
|
[self.pageControl setHidden: NO];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)removeScrollView
|
|
|
|
{
|
|
|
|
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
|
|
|
|
[userDefaults setObject:@"不止一次" forKey:@"启动次数"];
|
|
|
|
[userDefaults synchronize];
|
|
|
|
[self.scrollView removeFromSuperview];
|
|
|
|
[self.pageControl removeFromSuperview];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// 如果有账号缓存,填充账号密码
|
|
|
|
- (void)aucnTexg
|
|
|
|
{
|
|
|
|
kWeakSelf(self)
|
|
|
|
YYCache *yyCache = [YYCache cacheWithName:UserCacheName];
|
|
|
|
BOOL isContains = [yyCache containsObjectForKey:UserCacheKey];
|
|
|
|
if (isContains)
|
|
|
|
{
|
|
|
|
NSDictionary *dic = (NSDictionary *)[yyCache objectForKey:UserCacheKey];
|
|
|
|
weakself.phoneField.text = dic[@"phone"];
|
|
|
|
weakself.passField.text = dic[@"password"];
|
|
|
|
// weakself.countryCodeLabel.text = dic[@"code"];
|
|
|
|
// weakself.countryTitleLabel.text = dic[@"gj"];
|
|
|
|
NSString *is = dic[@"isRememberPWD"];
|
|
|
|
[weakself.rememberPassBtn setSelected:[is isEqualToString:@"1"] ? YES : NO];
|
|
|
|
weakself.isRememberPWD = [is isEqualToString:@"1"] ? YES : NO;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
#pragma mark - Navigation
|
|
|
|
|
|
|
|
// In a storyboard-based application, you will often want to do a little preparation before navigation
|
|
|
|
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
|
|
|
|
// Get the new view controller using [segue destinationViewController].
|
|
|
|
// Pass the selected object to the new view controller.
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
|
|
|
|
@end
|