123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258 |
- //
- // LoginForgotC.m
- // westkissMob
- //
- // Created by 王猛 on 2022/9/6.
- //
- #import "LoginForgotC.h"
- #import "APPassForgetCodeV.h"
- #import "APPassForgetEmailV.h"
- #import "APPassForgetNewPassV.h"
- @interface LoginForgotC ()
- @property (nonatomic, copy) NSString *email;
- @property (nonatomic, copy) NSString *code;
- @property (nonatomic, copy) NSString *pass;
- // 0:emailV 1:codeV 2:passV
- @property (nonatomic, assign) NSInteger showType;
- @property (nonatomic , strong) UIScrollView *scrollview;
- @property (nonatomic, strong) APPassForgetEmailV *emailV;
- @property (nonatomic, strong) APPassForgetCodeV *codeV;
- @property (nonatomic, strong) APPassForgetNewPassV *passV;
- @end
- @implementation LoginForgotC
- - (void)viewDidLoad {
- [super viewDidLoad];
- [self addSubV];
- [self setVAction];
- self.showType = 0;
- [self setShowViewState];
- self.view.backgroundColor = _FFF8F9;
- }
- - (void)setVAction {
- __weak typeof(self) weakSelf = self;
- self.emailV.btnClick = ^(NSString *emailAddr){
- [weakSelf.view endEditing:true];
- weakSelf.email = emailAddr;
-
- [weakSelf showEmailTipAlert];
- };
- self.codeV.resendBtnClick = ^{
- [weakSelf.view endEditing:true];
- [weakSelf reqNet_forgotPassWord];
- };
- self.codeV.noReceiveClick = ^{
- [weakSelf.view endEditing:true];
- weakSelf.showType = 0;
- [weakSelf setShowViewState];
- };
- self.codeV.subBtnClick = ^(NSString *codeStr){
- [weakSelf.view endEditing:true];
- weakSelf.code = codeStr;
- weakSelf.showType = 2;
- [weakSelf setShowViewState];
- };
-
- self.passV.btnClick = ^(NSString * _Nonnull passStr) {
- [weakSelf.view endEditing:true];
- weakSelf.pass = passStr;
- [weakSelf reqNet_reSetPassWord];
- };
- }
- - (void)addSubV{
- self.customNavBar.hidden = true;
- self.navigationController.navigationBar.hidden = YES;
- [self.view addSubview:self.scrollview];
- UIButton *closeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [closeBtn setImage:[UIImage imageNamed:@"login_close_black"] forState:UIControlStateNormal];
- [closeBtn addTarget:self action:@selector(action_back) forControlEvents:UIControlEventTouchUpInside];
- [self.view addSubview:closeBtn];
- [closeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.equalTo(@(IPHONEX ? 44 : 20));
- make.centerX.equalTo(self.view);
- make.width.height.equalTo(@50);
- }];
-
-
- UIImage *logoImg = [UIImage imageNamed:@"name_icon"];
- UIImageView *bottomImgV = [[UIImageView alloc]initWithImage:logoImg];
- [self.view addSubview:bottomImgV];
- [bottomImgV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.bottom.equalTo(self.view.mas_safeAreaLayoutGuideBottom).offset(-25);
- make.centerX.equalTo(self.view);
- make.width.equalTo(@104);
- make.height.equalTo(@32);
- }];
-
- [self.scrollview mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.equalTo(closeBtn.mas_bottom);
- make.leading.trailing.equalTo(self.view);
- make.bottom.equalTo(bottomImgV.mas_top);
- }];
-
- [self.scrollview addSubview:self.emailV];
- [self.scrollview addSubview:self.passV];
- [self.scrollview addSubview:self.codeV];
- [self.emailV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.edges.equalTo(self.scrollview);
- make.width.equalTo(self.view);
- }];
- [self.passV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.edges.equalTo(self.scrollview);
- make.width.equalTo(self.view);
- }];
- [self.codeV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.edges.equalTo(self.scrollview);
- make.width.equalTo(self.view);
- }];
-
- }
- - (void)showEmailTipAlert {
- NSString *tipStr = [NSString stringWithFormat:@"Please check the verification code by %@.", self.email];
- UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"" message:tipStr preferredStyle:UIAlertControllerStyleAlert];
- __weak typeof(self) weakSelf = self;
- UIAlertAction *sureAc = [UIAlertAction actionWithTitle:@"Confirm" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
- [alert dismissViewControllerAnimated:true completion:nil];
- [weakSelf reqNet_forgotPassWord];
- }];
- [alert addAction:sureAc];
- [self presentViewController:alert animated:true completion:nil];
- }
- - (void)setShowViewState {
- switch (self.showType) {
- case 1:
- self.passV.hidden = true;
- self.codeV.hidden = false;
- self.emailV.hidden = true;
- break;
- case 2:
- self.passV.hidden = false;
- self.codeV.hidden = true;
- self.emailV.hidden = true;
- break;
- default:
- self.passV.hidden = true;
- self.codeV.hidden = true;
- self.emailV.hidden = false;
- break;
- }
- }
- -(void)action_back{
- if (self.showType == 1) {
- self.showType = 0;
- [self setShowViewState];
- return;
- }
- if (self.showType == 2) {
- self.showType = 1;
- [self setShowViewState];
- return;
- }
- [self.navigationController popViewControllerAnimated:YES];
- }
- -(void)action_submitClick{
- if (![Current_normalTool xxx_isValidateEmail:self.email]) {
- [self.view makeToast:@"Please prvide an email address." duration:2 position:CSToastPositionCenter];
- return;
- }
- [self reqNet_forgotPassWord];
- }
- #pragma mark - **************** reqNet ****************
- -(void)reqNet_forgotPassWord{
- if (self.email == nil || self.email.isEmpty) {
- return;
- }
- __weak typeof(self) weakSelf = self;
- [ASNetTools.shared postWithPath:postEmailCode param:@{@"email":self.email} success:^(id _Nonnull json) {
- if (weakSelf.showType != 1) {
- weakSelf.codeV.emailAddr = self.email;
- weakSelf.showType = 1;
- [weakSelf setShowViewState];
- }
- } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) {
- [self.view makeToast:msg duration:2 position:CSToastPositionCenter];
- }];
-
-
- }
- -(void)reqNet_reSetPassWord{
- if (self.email == nil || self.email.isEmpty) {
- return;
- }
- __weak typeof(self) weakSelf = self;
- NSMutableDictionary *param = [NSMutableDictionary dictionary];
- [param setValue:self.email forKey:@"email"];
- [param setValue:self.code forKey:@"code"];
- [param setValue:self.pass forKey:@"newPassword"];
- [ASNetTools.shared postWithPath:postResetPass param:param success:^(id _Nonnull json) {
- [[UIApplication sharedApplication].windows.firstObject makeToast:@"Success"];
- [weakSelf.navigationController popViewControllerAnimated:YES];
- } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) {
- [weakSelf.view makeToast:msg duration:2 position:CSToastPositionCenter];
- if ([code isEqualToString:@"100"]) {
- weakSelf.showType = 1;
- weakSelf.pass = @"";
- [weakSelf.passV clearPass];
- [weakSelf setShowViewState];
- }
- }];
-
-
- }
- - (UIScrollView *)scrollview {
- if (!_scrollview) {
- _scrollview = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)];
- }
- return _scrollview;
- }
- - (APPassForgetCodeV *)codeV {
- if (!_codeV) {
- APPassForgetCodeV *v = [[APPassForgetCodeV alloc] initWithFrame:self.scrollview.bounds];
- _codeV = v;
- }
- return _codeV;
- }
- - (APPassForgetEmailV *)emailV {
- if (!_emailV) {
- APPassForgetEmailV *v = [[APPassForgetEmailV alloc] initWithFrame:self.scrollview.bounds];
- _emailV = v;
- }
- return _emailV;
- }
- - (APPassForgetNewPassV *)passV {
- if (!_passV) {
- APPassForgetNewPassV *v = [[APPassForgetNewPassV alloc] initWithFrame:self.scrollview.bounds];
- _passV = v;
- }
- return _passV;
- }
- @end
|