无故事王国
2023-10-10 a1ac0f1634ff0bd8f04259fc4cf7ebabd8c8c82d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
//
//  LoginRegOrForgotVC.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/8.
//
 
import UIKit
import QMUIKit
import JQTools
 
class LoginRegOrForgotVC: BaseVC {
 
 
    private var type:GetSMSCodeType!
 
    @IBOutlet weak var tf_phone: QMUITextField!
    @IBOutlet weak var tf_code: QMUITextField!
    @IBOutlet weak var tf_pwd: QMUITextField!
    
    required init(type:GetSMSCodeType) {
        super.init(nibName: nil, bundle: nil)
        self.type = type
    }
    
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
 
    override func viewDidLoad() {
        super.viewDidLoad()
        title = type.titleStr
        tf_pwd.maximumTextLength = 18
    }
 
    @IBAction func eyeAction(_ sender: UIButton) {
        sender.isSelected = !sender.isSelected
        tf_pwd.isSecureTextEntry = !sender.isSelected
    }
 
    @IBAction func completeAction(_ sender: UIButton) {
        guard !tf_phone.text!.isEmpty else {alertError(msg: tf_phone.placeholder!);return}
        guard tf_phone.text!.jq_isPhone else {alertError(msg: "请输入正确的手机号");return}
        guard !tf_code.text!.isEmpty else {alertError(msg: tf_code.placeholder!);return}
        guard !tf_pwd.text!.isEmpty else {alertError(msg: tf_pwd.placeholder!);return}
        guard tf_pwd.text!.jq_isComplexPassword else {alertError(msg: "请输入6-18位包含数字和字母的密码");return}
 
 
        let phone = tf_phone.text!
        let pwd = tf_pwd.text!
        let code = tf_code.text!
 
        switch type{
            case .register:
                Services.register(phone: phone, password: pwd, code: code).subscribe(onNext: { result in
                    alertSuccess(msg: "注册成功")
                    DispatchQueue.main.asyncAfter(wallDeadline: .now()+1) {
                        app.registerAndLoginSuccess()
                    }
                }).disposed(by: disposeBag)
            case .forgotPwd:
                Services.forgetPwd(phone: phone, password: pwd, code: code).subscribe(onNext: { result in
                    alertSuccess(msg: "修改成功")
                    DispatchQueue.main.asyncAfter(wallDeadline: .now()+1) {
                        self.navigationController?.popViewController()
                    }
                }).disposed(by: disposeBag)
            case .updatePwd:
                Services.updatePwd(phone: phone, password: pwd, code: code).subscribe(onNext: { result in
                    alertSuccess(msg: "修改成功")
                    DispatchQueue.main.asyncAfter(wallDeadline: .now()+1) {
                        self.navigationController?.popViewController()
                    }
                }).disposed(by: disposeBag)
            default:break
        }
    }
 
    @IBAction func getCodeAction(_ sender: UIButton) {
        guard !tf_phone.text!.isEmpty else {alertError(msg: tf_phone.placeholder!);return}
        guard tf_phone.text!.jq_isPhone else {alertError(msg: "请输入正确的手机号");return}
        Services.getSMSCode(phone: tf_phone.text!, type: type).subscribe(onNext: {result in
            sender.openCountDown()
        }).disposed(by: disposeBag)
    }
 
    override var preferredStatusBarStyle: UIStatusBarStyle{
        return .default
    }
 
}