| | |
| | | import JQTools |
| | | |
| | | class ProfileVC: BaseVC { |
| | | @IBOutlet weak var btn_userProfile: UIButton! |
| | | @IBOutlet weak var tf_username: UITextField! |
| | | @IBOutlet weak var label_contact: UILabel! |
| | | @IBOutlet weak var tf_gender: UITextField! |
| | | @IBOutlet weak var tf_birthday: UITextField! |
| | | @IBOutlet weak var label_address: UILabel! |
| | | @IBOutlet weak var label_vipDutime: UILabel! |
| | | @IBOutlet weak var view_vipExpired: UIView! |
| | | |
| | | private var profileImg:UIImage? |
| | | @IBOutlet weak var btn_userProfile: UIButton! |
| | | @IBOutlet weak var tf_username: UITextField! |
| | | @IBOutlet weak var label_contact: UILabel! |
| | | @IBOutlet weak var tf_gender: UITextField! |
| | | @IBOutlet weak var tf_birthday: UITextField! |
| | | @IBOutlet weak var label_address: UILabel! |
| | | @IBOutlet weak var label_vipDutime: UILabel! |
| | | @IBOutlet weak var view_vipExpired: UIView! |
| | | |
| | | override func viewDidLoad() { |
| | | super.viewDidLoad() |
| | | private var profileImg:UIImage? |
| | | |
| | | title = "个人信息" |
| | | override func viewDidLoad() { |
| | | super.viewDidLoad() |
| | | |
| | | tf_gender.delegate = self |
| | | tf_birthday.delegate = self |
| | | title = "个人信息" |
| | | |
| | | Services.userDetails().subscribe(onNext: {[weak self] data in |
| | | if let model = data.data{ |
| | | self?.tf_username.text = model.userName |
| | | self?.label_contact.text = model.userPhone |
| | | self?.tf_gender.text = model.sex |
| | | self?.tf_birthday.text = model.birthday |
| | | self?.label_address.text = model.address |
| | | self?.label_vipDutime.text = model.memberLifespan |
| | | self?.btn_userProfile.sd_setImage(with: URL(string: model.userImage), for: .normal,placeholderImage: UIImage(named: "btn_userProfile")) |
| | | self?.view_vipExpired.isHidden = model.isVip == 0 |
| | | } |
| | | tf_gender.delegate = self |
| | | tf_birthday.delegate = self |
| | | |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | Services.userDetails().subscribe(onNext: {[weak self] data in |
| | | if let model = data.data{ |
| | | self?.tf_username.text = model.userName |
| | | self?.label_contact.text = model.userPhone |
| | | self?.tf_gender.text = model.sex |
| | | self?.tf_birthday.text = model.birthday |
| | | self?.label_address.text = model.address |
| | | self?.label_vipDutime.text = model.memberLifespan |
| | | self?.btn_userProfile.sd_setImage(with: URL(string: model.userImage), for: .normal,placeholderImage: UIImage(named: "btn_userProfile")) |
| | | self?.view_vipExpired.isHidden = model.isVip == 0 |
| | | } |
| | | |
| | | override func setRx() { |
| | | tf_username.rx.controlEvent(.editingDidEnd).subscribe(onNext: {[weak self] () in |
| | | guard let weakSelf = self else { return } |
| | | if weakSelf.tf_username.isEmpty{ |
| | | alertError(msg: "请输入用户名称");return |
| | | } |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | |
| | | Services.updateInfo(birthday: nil, gender: nil, name: weakSelf.tf_username.text).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | override func setRx() { |
| | | tf_username.rx.controlEvent(.editingDidEnd).subscribe(onNext: {[weak self] () in |
| | | guard let weakSelf = self else { return } |
| | | if weakSelf.tf_username.isEmpty{ |
| | | alertError(msg: "请输入用户名称");return |
| | | } |
| | | |
| | | private func updateUserInfo(){ |
| | | Services.userDetails().subscribe(onNext: {data in |
| | | if let m = data.data{m.save()} |
| | | alertSuccess(msg: "修改成功") |
| | | NotificationCenter.default.post(name: UpdateWelfare_Noti, object: nil) |
| | | }) { error in |
| | | Services.updateInfo(birthday: nil, gender: nil, name: weakSelf.tf_username.text).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | |
| | | }.disposed(by: disposeBag) |
| | | } |
| | | private func updateUserInfo(){ |
| | | Services.userDetails().subscribe(onNext: {data in |
| | | if let m = data.data{m.save()} |
| | | alertSuccess(msg: "修改成功") |
| | | NotificationCenter.default.post(name: UpdateWelfare_Noti, object: nil) |
| | | }) { error in |
| | | |
| | | @IBAction func logoutAction(_ sender: UIButton) { |
| | | CommonAlertView.show(title: "提示", content: "确认退出当前账号?",cancelStr: "关闭",completeStr: nil,isSingle: false) { status in |
| | | if status{ |
| | | UserViewModel.clearToken() |
| | | app.needLogin() |
| | | } |
| | | } |
| | | } |
| | | }.disposed(by: disposeBag) |
| | | } |
| | | |
| | | @IBAction func logOffAction(_ sender: Any) { |
| | | let vc = LogOffVC() |
| | | push(vc: vc) |
| | | } |
| | | |
| | | @IBAction func logoutAction(_ sender: UIButton) { |
| | | CommonAlertView.show(title: "提示", content: "确认退出当前账号?",cancelStr: "关闭",completeStr: nil,isSingle: false) { status in |
| | | if status{ |
| | | UserViewModel.clearToken() |
| | | app.needLogin() |
| | | } |
| | | } |
| | | } |
| | | |
| | | @IBAction func updateProfileAction(_ sender: UIButton) { |
| | | JQ_ImagePickerTool.getSharedInstance().singleImage({ image in |
| | | self.profileImg = image |
| | | self.btn_userProfile.setImage(image, for: .normal) |
| | | image.uploadImgToService().subscribe { text in |
| | | Services.updateUserProfile(text).subscribe(onNext: {[weak self] _ in |
| | | guard let weakSelf = self else { return } |
| | | alertSuccess(msg: "修改成功") |
| | | self?.btn_userProfile.sd_setImage(with: URL(string: text), for: .normal,placeholderImage: UIImage(named: "btn_userProfile")) |
| | | Services.userDetails().subscribe(onNext: {data in |
| | | if let m = data.data{m.save()} |
| | | alertSuccess(msg: "修改成功") |
| | | NotificationCenter.default.post(name: UpdateWelfare_Noti, object: nil) |
| | | }) { error in |
| | | @IBAction func logOffAction(_ sender: Any) { |
| | | let vc = LogOffVC() |
| | | push(vc: vc) |
| | | } |
| | | |
| | | }.disposed(by: weakSelf.disposeBag) |
| | | }) { error in |
| | | alertError(msg: error.localizedDescription) |
| | | }.disposed(by: self.disposeBag) |
| | | } onError: { error in |
| | | alertError(msg: error.localizedDescription) |
| | | }.disposed(by: self.disposeBag) |
| | | }, clipSize: CGSize(width: JQ_ScreenW, height: JQ_ScreenW)) |
| | | } |
| | | |
| | | @IBAction func dismissAccountAction(_ sender: UIButton) { |
| | | @IBAction func updateProfileAction(_ sender: UIButton) { |
| | | JQ_ImagePickerTool.getSharedInstance().singleImage({ image in |
| | | self.profileImg = image |
| | | self.btn_userProfile.setImage(image, for: .normal) |
| | | image.uploadImgToService().subscribe { text in |
| | | Services.updateUserProfile(text).subscribe(onNext: {[weak self] _ in |
| | | guard let weakSelf = self else { return } |
| | | alertSuccess(msg: "修改成功") |
| | | self?.btn_userProfile.sd_setImage(with: URL(string: text), for: .normal,placeholderImage: UIImage(named: "btn_userProfile")) |
| | | Services.userDetails().subscribe(onNext: {data in |
| | | if let m = data.data{m.save()} |
| | | alertSuccess(msg: "修改成功") |
| | | NotificationCenter.default.post(name: UpdateWelfare_Noti, object: nil) |
| | | }) { error in |
| | | |
| | | } |
| | | }.disposed(by: weakSelf.disposeBag) |
| | | }) { error in |
| | | alertError(msg: error.localizedDescription) |
| | | }.disposed(by: self.disposeBag) |
| | | } onError: { error in |
| | | alertError(msg: error.localizedDescription) |
| | | }.disposed(by: self.disposeBag) |
| | | }, clipSize: CGSize(width: JQ_ScreenW, height: JQ_ScreenW)) |
| | | } |
| | | |
| | | @IBAction func dismissAccountAction(_ sender: UIButton) { |
| | | |
| | | } |
| | | } |
| | | |
| | | extension ProfileVC:UITextFieldDelegate{ |
| | | func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool { |
| | | view.endEditing(true) |
| | | if textField == tf_gender{ |
| | | let items = ["男","女"] |
| | | CommonAlertSheetView.show(items: items) {[weak self] index in |
| | | guard let weakSelf = self else { return } |
| | | guard textField.text != items[index] else {return} |
| | | textField.text = items[index] |
| | | var gender:GenderType! |
| | | func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool { |
| | | view.endEditing(true) |
| | | if textField == tf_gender{ |
| | | let items = ["男","女"] |
| | | CommonAlertSheetView.show(items: items) {[weak self] index in |
| | | guard let weakSelf = self else { return } |
| | | guard textField.text != items[index] else {return} |
| | | textField.text = items[index] |
| | | var gender:GenderType! |
| | | |
| | | if index == 0{ |
| | | gender = .man |
| | | }else{ |
| | | gender = .woman |
| | | if index == 0{ |
| | | gender = .man |
| | | }else{ |
| | | gender = .woman |
| | | } |
| | | |
| | | Services.updateInfo(birthday: nil, gender: gender.rawValue, name: nil).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | } |
| | | } |
| | | |
| | | if textField == tf_birthday{ |
| | | CommonDatePickerView.show(before: 60, after: 0, type: .YMD) {[weak self] year, month, day, _, _ in |
| | | guard let weakSelf = self else { return } |
| | | let date = String(format: "%ld-%02ld-%02ld", year!,month!,day!) |
| | | guard textField.text != date else {return} |
| | | textField.text = date |
| | | Services.updateInfo(birthday: textField.text, gender: nil, name: nil).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | } |
| | | } |
| | | return false |
| | | } |
| | | |
| | | Services.updateInfo(birthday: nil, gender: gender.rawValue, name: nil).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | } |
| | | } |
| | | |
| | | if textField == tf_birthday{ |
| | | CommonDatePickerView.show(before: 60, after: 0, type: .YMD) {[weak self] year, month, day, _, _ in |
| | | guard let weakSelf = self else { return } |
| | | let date = String(format: "%ld-%02ld-%02ld", year!,month!,day!) |
| | | guard textField.text != date else {return} |
| | | textField.text = date |
| | | Services.updateInfo(birthday: textField.text, gender: nil, name: nil).subscribe(onNext: {[weak self] data in |
| | | self?.updateUserInfo() |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | } |
| | | } |
| | | return false |
| | | } |
| | | } |