//
|
// ChangeControllerVC.swift
|
// OKProject
|
//
|
// Created by Sweet on 2020/12/25.
|
// Copyright © 2020 yangwang. All rights reserved.
|
//
|
|
import UIKit
|
import IQKeyboardManager
|
class ChangeControllerVC: YYViewController {
|
var integral = 0
|
let userInfoViewModel = HomeLeftMenuViewModel()
|
var id = 0
|
var viewModel = PointsViewModel()
|
var addressFomrData = [String]()
|
@IBOutlet weak var remrkTF: IQTextView!
|
@IBOutlet weak var phoneTF: UITextField!
|
@IBOutlet weak var addressTF: UITextField!
|
@IBOutlet weak var areTF: UITextField!
|
@IBOutlet weak var nameTf: UITextField!
|
override func viewDidLoad() {
|
super.viewDidLoad()
|
title = "收件人信息"
|
nameTf.delegate = self
|
areTF.delegate = self
|
constrainsTextInputLength(length: 11, textField: phoneTF).disposed(by: disposeBag)
|
constrainsTextInputLength(length: 100, textView: remrkTF).disposed(by: disposeBag)
|
|
}
|
|
func loadUserInfo(){
|
userInfoViewModel.queryUserInfo()
|
userInfoViewModel.requestSubject
|
.subscribe(onNext: {[unowned self] (status) in
|
switch status{
|
case .loading:
|
break
|
case .success(let model):
|
guard let data = model as? UserInfoModel else{return}
|
app.userInfo.save(model: data)
|
alert(popup: .single, title: "提示", text: "兑换成功!", submitTitle: "确定", cancelTitle: "") {
|
for vc in (self.navigationController?.children)!{
|
if vc.isKind(of: MyPointsVC.classForCoder()) {
|
self.navigationController?.popToViewController(vc, animated: true)
|
}
|
}
|
} cancelClick: {
|
}
|
break
|
case .error(let error):
|
alert(text: error.localizedDescription)
|
break
|
}
|
}).disposed(by: rx.disposeBag)
|
}
|
@IBAction func commitAction(_ sender: Any) {
|
if nameTf.text!.isEmpty {
|
alert(text: "请输入收件人名称")
|
return
|
}
|
if areTF.text!.isEmpty {
|
alert(text: "请选择收件人地区")
|
return
|
}
|
if addressTF.text!.isEmpty {
|
alert(text: "请输入收件人地址")
|
return
|
}
|
if phoneTF.text!.isEmpty {
|
alert(text: "请输入收件人电话")
|
return
|
}
|
if !phoneTF.text!.isPhoneNum() {
|
alert(text: "请输入收件人正确电话")
|
return
|
}
|
|
alert(popup: .double, title: "提示", text: "是否确认兑换?", submitTitle: "确定", cancelTitle: "取消") {
|
self.change()
|
} cancelClick: {
|
}
|
|
}
|
func change(){
|
YYAlertKit.displayActivity()
|
let consigneeAddress = areTF.text!+addressTF.text!
|
viewModel.commitChange(consigneeAddress: consigneeAddress, consigneeName: nameTf.text!, consigneePhone: phoneTF.text!, goodsId:id , remark: remrkTF.text!).subscribe { (r) in
|
YYAlertKit.dismiss()
|
switch r {
|
case.success(_):
|
self.loadUserInfo()
|
break
|
case .failure(let error):
|
alert(text: error.localizedDescription)
|
break
|
}
|
} onError: { (error) in
|
alert(text: error.localizedDescription)
|
} onCompleted: {
|
|
} onDisposed: {
|
|
}
|
.disposed(by: disposeBag)
|
}
|
|
}
|
extension ChangeControllerVC:UITextFieldDelegate{
|
func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
|
if textField == areTF {
|
view.endEditing(true)
|
BRAddressPickerView.showAddressPicker(withDefaultSelected: addressFomrData, isAutoSelect: false, themeColor: ThemeColor) { (BRProvinceModel, BRCityModel, BRAreaModel) in
|
self.areTF.text = BRProvinceModel!.name + BRCityModel!.name + BRAreaModel!.name
|
self.addressFomrData = [BRProvinceModel!.name ,BRCityModel!.name ,BRAreaModel!.name]
|
}
|
return false
|
}
|
return true
|
}
|
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
|
if textField == nameTf {
|
let text = textField.text!
|
|
let len = text.count + string.count - range.length
|
|
return len<=12
|
}
|
return false
|
}
|
}
|