//
|
// MineRealNameVC.swift
|
// OKProject
|
//
|
// Created by alvin_y on 2020/6/15.
|
// Copyright © 2020 yangwang. All rights reserved.
|
//
|
|
import UIKit
|
|
/// 实名认证
|
class MineRealNameVC: YYViewController {
|
|
/// 提交
|
@IBOutlet weak var button_submit: YYButton!
|
|
/// 身份证号码
|
@IBOutlet weak var textField_idCard: YYTextField!
|
|
/// 姓名
|
@IBOutlet weak var textField_name: YYTextField!
|
|
let viewModel = MineRealNameViewModel()
|
|
override func viewDidLoad() {
|
super.viewDidLoad()
|
|
// Do any additional setup after loading the view.
|
request()
|
}
|
|
|
//MARK: - UI
|
override func setupViews() {
|
super.setupViews()
|
navigationItem.title = "实名认证"
|
view.backgroundColor = UIColor.color(light: UIColor.color(hexString: "#F3F4F5"), dark: UIColor.color(hexString: "#F3F4F5"))
|
textField_idCard.delegate = self
|
textField_idCard.autocorrectionType = .no
|
}
|
|
//MARK: - 请求数据
|
func request() {
|
viewModel.queryRealName()
|
}
|
|
//MARK: - Rx
|
override func bindRx() {
|
super.bindRx()
|
textField_name.rx.text.orEmpty.bind(to: viewModel.name).disposed(by: disposeBag)
|
textField_idCard.rx.text.orEmpty.bind(to: viewModel.idcode).disposed(by: disposeBag)
|
|
|
button_submit.rx.tap.subscribe(onNext: {[unowned self] (_) in
|
self.viewModel.verified()
|
}).disposed(by: disposeBag)
|
|
viewModel.queryRealNameSubject
|
.subscribe(onNext: {[unowned self] (status) in
|
switch status{
|
case .loading:
|
self.show()
|
break
|
case .success(let model):
|
if let model: MineRealNameModel = model as? MineRealNameModel{
|
self.textField_name.text = model.name
|
self.textField_idCard.text = model.idcode
|
self.viewModel.name.accept(model.name)
|
self.viewModel.idcode.accept(model.idcode)
|
self.button_submit.isHidden = model.state == 2
|
}
|
self.hide()
|
break
|
case .error(let error):
|
self.hide()
|
alert(text: error.localizedDescription)
|
break
|
}
|
}).disposed(by: rx.disposeBag)
|
|
viewModel.requestSubject
|
.subscribe(onNext: {[unowned self] (status) in
|
switch status{
|
case .loading:
|
self.show()
|
break
|
case .success(_):
|
self.hide()
|
alert(text: "认证成功")
|
app.userInfo.verified = 2
|
app.userInfo.save()
|
self.viewModel.queryRealName()
|
break
|
case .error(let error):
|
self.hide()
|
alert(text: error.localizedDescription)
|
break
|
}
|
}).disposed(by: rx.disposeBag)
|
}
|
|
}
|
|
let set_number = NSCharacterSet.init(charactersIn: "0123456789")
|
let set_x = NSCharacterSet.init(charactersIn: "0123456789xX")
|
extension MineRealNameVC: UITextFieldDelegate
|
{
|
public func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
|
if string == ""{
|
return true
|
}
|
if textField.text?.length ?? 0 < 17{
|
let range: NSRange = (string as NSString).rangeOfCharacter(from: set_number as CharacterSet)
|
return range.length == 0 ? false : true
|
}else{
|
let range: NSRange = (string as NSString).rangeOfCharacter(from: set_x as CharacterSet)
|
return range.length == 0 ? false : true
|
}
|
}
|
}
|