|
|
@@ -0,0 +1,296 @@
|
|
|
+//
|
|
|
+// YRRegisterVC.m
|
|
|
+// UU_Ent
|
|
|
+//
|
|
|
+// Created by huangyp-pc on 2019/5/6.
|
|
|
+// Copyright © 2019 UAS. All rights reserved.
|
|
|
+//
|
|
|
+
|
|
|
+#import "YRRegisterVC.h"
|
|
|
+#import "LeftViewTF.h"
|
|
|
+#import "YRPwdLevelView.h"
|
|
|
+
|
|
|
+@interface YRRegisterVC ()<UITextFieldDelegate>
|
|
|
+@property (nonatomic,strong) UIScrollView *scrollView;
|
|
|
+@property (nonatomic,strong) UITextField *nameTF;
|
|
|
+@property (nonatomic,strong) UITextField *telTF;
|
|
|
+@property (nonatomic,strong) UITextField *pwTF;
|
|
|
+@property (nonatomic,strong) UITextField *cPwTF;
|
|
|
+@property (nonatomic,strong) UITextField *emailTF;
|
|
|
+@property (nonatomic,strong) UIButton *registerBtn;
|
|
|
+@property (nonatomic,strong) YRPwdLevelView *pwLevel;
|
|
|
+@end
|
|
|
+
|
|
|
+@implementation YRRegisterVC
|
|
|
+
|
|
|
+- (void)viewDidLoad {
|
|
|
+ [super viewDidLoad];
|
|
|
+ // Do any additional setup after loading the view.
|
|
|
+ self.title = @"个人注册";
|
|
|
+ self.view.backgroundColor = [UIColor whiteColor];
|
|
|
+}
|
|
|
+
|
|
|
+#pragma mark --- 注册操作
|
|
|
+-(void)personRegister
|
|
|
+{
|
|
|
+ [self.view endEditing:YES];
|
|
|
+ [MBProgressHUD showHUDAddedTo:self.view animated:YES];
|
|
|
+
|
|
|
+ NSString *name = FORMAT(@"%@",_nameTF.text);
|
|
|
+ NSString *tel = FORMAT(@"%@",_telTF.text);
|
|
|
+ NSString *pw = FORMAT(@"%@",_pwTF.text);
|
|
|
+ NSString *cPw = FORMAT(@"%@",_cPwTF.text);
|
|
|
+ NSString *email = FORMAT(@"%@",_emailTF.text);
|
|
|
+
|
|
|
+// if (name.length == 0 || tel.length == 0 || pw.length == 0 || cPw.length == 0) {
|
|
|
+// [MBProgressHUD hideHUDForView:self.view animated:YES];
|
|
|
+// [YRShowMessageFromNavi showDropViewWithMessage:@"请填写完整资料" ToNavi:self.navigationController withColor:nil];
|
|
|
+// return;
|
|
|
+// }
|
|
|
+//
|
|
|
+// if (![pw isEqualToString:cPw]) {
|
|
|
+// [MBProgressHUD hideHUDForView:self.view animated:YES];
|
|
|
+// [YRShowMessageFromNavi showDropViewWithMessage:@"确认密码不一致" ToNavi:self.navigationController withColor:nil];
|
|
|
+// return;
|
|
|
+// }
|
|
|
+
|
|
|
+ if (![NSString isEmail:email]) {
|
|
|
+ [MBProgressHUD hideHUDForView:self.view animated:YES];
|
|
|
+ [YRShowMessageFromNavi showDropViewWithMessage:@"请填写正确邮箱" ToNavi:self.navigationController withColor:nil];
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ [GRPCCall useInsecureConnectionsForHost:kHostAddress];
|
|
|
+
|
|
|
+ AccountService *client = [[AccountService alloc]initWithHost:kHostAddress];
|
|
|
+
|
|
|
+ AccountSignupRequest *request = [AccountSignupRequest message];
|
|
|
+
|
|
|
+ request.mobile = tel;
|
|
|
+ request.password = pw;
|
|
|
+ request.realname = name;
|
|
|
+ request.sex = AccountInfo_Sex_Male;
|
|
|
+ request.email = email;
|
|
|
+
|
|
|
+ [client signupWithRequest:request handler:^(AccountSignupResponse * _Nullable response, NSError * _Nullable error) {
|
|
|
+
|
|
|
+ [MBProgressHUD hideHUDForView:self.view animated:YES];
|
|
|
+
|
|
|
+ if (response.responseHeader.success) {
|
|
|
+
|
|
|
+ [YRShowMessageFromNavi showDropViewWithMessage:@"注册成功" ToNavi:self.navigationController withColor:nil];
|
|
|
+
|
|
|
+ [self.navigationController popViewControllerAnimated:YES];
|
|
|
+
|
|
|
+ }else{
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }];
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+#pragma mark --- 修改页面 密码强弱
|
|
|
+-(void)changePwLevelUI:(NSString *)text
|
|
|
+{
|
|
|
+ if (text.length == 0) {
|
|
|
+ _pwLevel.level = 0;
|
|
|
+ [_pwLevel mas_updateConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.height.mas_equalTo(0);
|
|
|
+ }];
|
|
|
+ }else{
|
|
|
+ NSInteger num = [NSString juguePasswordLevelWith:text];
|
|
|
+ _pwLevel.level = num;
|
|
|
+
|
|
|
+ [_pwLevel mas_updateConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.height.mas_equalTo(33);
|
|
|
+ }];
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+#pragma mark --- UITextFieldDelegate
|
|
|
+- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
|
|
|
+{
|
|
|
+ if ([string isEqualToString:@"\n"]){ //判断输入的字是否是回车,即按下return
|
|
|
+ //在这里做你响应return键的代码
|
|
|
+ [textField resignFirstResponder];
|
|
|
+ return NO; //这里返回NO,就代表return键值失效,即页面上按下return,不会出现换行,如果为yes,则输入页面会换行
|
|
|
+ }
|
|
|
+
|
|
|
+ if (textField == _pwTF) {
|
|
|
+ NSString *allText = [textField.text stringByReplacingCharactersInRange:range withString:string];
|
|
|
+ [self changePwLevelUI:allText];
|
|
|
+ }
|
|
|
+
|
|
|
+ return YES;
|
|
|
+}
|
|
|
+
|
|
|
+#pragma mark --- 创建UI
|
|
|
+-(void)setUpUI
|
|
|
+{
|
|
|
+ [self.view addSubview:self.scrollView];
|
|
|
+ [self.scrollView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.top.left.right.equalTo(self.view);
|
|
|
+ make.width.mas_equalTo(self_width);
|
|
|
+ make.height.mas_equalTo(self_height);
|
|
|
+ }];
|
|
|
+
|
|
|
+ _nameTF = [LeftViewTF new];
|
|
|
+ _nameTF.borderStyle = UITextBorderStyleRoundedRect;
|
|
|
+ UIImageView *nameImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 18, 18)];
|
|
|
+ nameImage.image = [UIImage imageNamed:@"UU_newPersonalRegister"];
|
|
|
+ _nameTF.leftView = nameImage;
|
|
|
+ _nameTF.leftViewMode = UITextFieldViewModeAlways;
|
|
|
+ _nameTF.placeholder = @"姓名";
|
|
|
+ _nameTF.font = FONT_SIZE(14);
|
|
|
+ _nameTF.returnKeyType = UIReturnKeyDone;
|
|
|
+ _nameTF.delegate = self;
|
|
|
+ [self.scrollView addSubview:_nameTF];
|
|
|
+
|
|
|
+ _telTF = [LeftViewTF new];
|
|
|
+ _telTF.borderStyle = UITextBorderStyleRoundedRect;
|
|
|
+ UIImageView *telImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 14.3, 20)];
|
|
|
+ telImage.image = [UIImage imageNamed:@"UU_newRegisterTel"];
|
|
|
+ _telTF.leftView = telImage;
|
|
|
+ _telTF.leftViewMode = UITextFieldViewModeAlways;
|
|
|
+ _telTF.placeholder = @"手机号";
|
|
|
+ _telTF.font = FONT_SIZE(14);
|
|
|
+ _telTF.returnKeyType = UIReturnKeyDone;
|
|
|
+ _telTF.delegate = self;
|
|
|
+ [self.scrollView addSubview:_telTF];
|
|
|
+
|
|
|
+ _pwTF = [LeftViewTF new];
|
|
|
+ _pwTF.borderStyle = UITextBorderStyleRoundedRect;
|
|
|
+ UIImageView *pwImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 16, 18)];
|
|
|
+ pwImage.image = [UIImage imageNamed:@"UU_newRegisterPw"];
|
|
|
+ _pwTF.leftView = pwImage;
|
|
|
+ _pwTF.leftViewMode = UITextFieldViewModeAlways;
|
|
|
+ _pwTF.placeholder = @"密码";
|
|
|
+ _pwTF.font = FONT_SIZE(14);
|
|
|
+ _pwTF.delegate = self;
|
|
|
+ _pwTF.secureTextEntry = YES;
|
|
|
+ _pwTF.returnKeyType = UIReturnKeyDone;
|
|
|
+ [self.scrollView addSubview:_pwTF];
|
|
|
+
|
|
|
+ _cPwTF = [LeftViewTF new];
|
|
|
+ _cPwTF.borderStyle = UITextBorderStyleRoundedRect;
|
|
|
+ UIImageView *cPwImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 16, 18)];
|
|
|
+ cPwImage.image = [UIImage imageNamed:@"UU_newRegisterPw"];
|
|
|
+ _cPwTF.leftView = cPwImage;
|
|
|
+ _cPwTF.leftViewMode = UITextFieldViewModeAlways;
|
|
|
+ _cPwTF.placeholder = @"确认密码";
|
|
|
+ _cPwTF.font = FONT_SIZE(14);
|
|
|
+ _cPwTF.returnKeyType = UIReturnKeyDone;
|
|
|
+ _cPwTF.delegate = self;
|
|
|
+ _cPwTF.secureTextEntry = YES;
|
|
|
+ [self.scrollView addSubview:_cPwTF];
|
|
|
+
|
|
|
+ _emailTF = [LeftViewTF new];
|
|
|
+ _emailTF.borderStyle = UITextBorderStyleRoundedRect;
|
|
|
+ UIImageView *emailImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 18, 16)];
|
|
|
+ emailImage.image = [UIImage imageNamed:@"UU_newForgetPwEmail"];
|
|
|
+ _emailTF.leftView = emailImage;
|
|
|
+ _emailTF.leftViewMode = UITextFieldViewModeAlways;
|
|
|
+ _emailTF.placeholder = @"邮箱";
|
|
|
+ _emailTF.font = FONT_SIZE(14);
|
|
|
+ _emailTF.returnKeyType = UIReturnKeyDone;
|
|
|
+ _emailTF.delegate = self;
|
|
|
+ [self.scrollView addSubview:_emailTF];
|
|
|
+
|
|
|
+ UILabel *lbl = [UILabel new];
|
|
|
+ lbl.text = @"*密码须为8-20字符的英文、数字混合";
|
|
|
+ lbl.textColor = HexColor(@"#D11010");
|
|
|
+ lbl.font = FONT_SIZE(12);
|
|
|
+ [self.scrollView addSubview:lbl];
|
|
|
+
|
|
|
+ _pwLevel = [YRPwdLevelView new];
|
|
|
+ _pwLevel.level = 0;
|
|
|
+ [self.scrollView addSubview:_pwLevel];
|
|
|
+
|
|
|
+ _registerBtn = [UIButton new];
|
|
|
+ _registerBtn.backgroundColor = HexColor(@"#33A2EE");
|
|
|
+ _registerBtn.layer.masksToBounds = YES;
|
|
|
+ _registerBtn.layer.cornerRadius = 5;
|
|
|
+ [_registerBtn setTitle:@"注册" forState:UIControlStateNormal];
|
|
|
+ [_registerBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
|
|
|
+ _registerBtn.titleLabel.font = FONT_SIZE(18);
|
|
|
+ [self.scrollView addSubview:_registerBtn];
|
|
|
+ [_registerBtn addTarget:self action:@selector(personRegister) forControlEvents:UIControlEventTouchUpInside];
|
|
|
+
|
|
|
+ [_nameTF mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.top.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_telTF mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.nameTF.mas_bottom).offset(10);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [lbl mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(24);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.telTF.mas_bottom).offset(19);
|
|
|
+ make.height.mas_equalTo(17);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_pwTF mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(lbl.mas_bottom).offset(12);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_pwLevel mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(24);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.pwTF.mas_bottom).offset(4);
|
|
|
+ make.height.mas_equalTo(0);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_cPwTF mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.pwLevel.mas_bottom).offset(10);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_emailTF mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.cPwTF.mas_bottom).offset(10);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+
|
|
|
+ [_registerBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.equalTo(self.scrollView).offset(20);
|
|
|
+ make.right.equalTo(self.view).offset(-20);
|
|
|
+ make.top.equalTo(self.emailTF.mas_bottom).offset(31);
|
|
|
+ make.height.mas_equalTo(40);
|
|
|
+ }];
|
|
|
+}
|
|
|
+
|
|
|
+#pragma mark --- lazy
|
|
|
+-(UIScrollView *)scrollView{
|
|
|
+ if (!_scrollView) {
|
|
|
+ _scrollView = [[UIScrollView alloc]initWithFrame:self.view.frame];
|
|
|
+ _scrollView.backgroundColor = RGB(242, 242, 242, 1);
|
|
|
+ }
|
|
|
+ return _scrollView;
|
|
|
+}
|
|
|
+
|
|
|
+//#pragma mark --- 返回
|
|
|
+//-(void)backAction
|
|
|
+//{
|
|
|
+//
|
|
|
+// [self.navigationController popViewControllerAnimated:YES];
|
|
|
+//}
|
|
|
+
|
|
|
+@end
|