MineViewController.swift 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. //
  2. // MineViewController.swift
  3. // JiaPeiManage
  4. //
  5. // Created by Ning.ge on 2023/6/13.
  6. //
  7. import UIKit
  8. import RxSwift
  9. import RxCocoa
  10. final class MineViewController: BaseViewController {
  11. // MARK: 服务属性
  12. private let cocahService: CoachServiceType = CoachService(networking: CoachNetworking())
  13. private let loginService: LoginServiceType = LoginService(networking: LoginNetworking())
  14. // MARK: UI属性
  15. // @IBOutlet weak var nav_top_layout: NSLayoutConstraint!
  16. //修改密码
  17. @IBOutlet weak var update_password_button: QMUIButton!
  18. //用户头像
  19. @IBOutlet weak var user_icon_imageview: UIImageView!
  20. //用户名
  21. @IBOutlet weak var user_name_label: UILabel!
  22. //性别
  23. @IBOutlet weak var user_sex_imageview: UIImageView!
  24. //手机号
  25. @IBOutlet weak var phone_label: UILabel!
  26. //身份证
  27. @IBOutlet weak var idcarid_label: UILabel!
  28. //驾校名称
  29. @IBOutlet weak var schoolname_label: UILabel!
  30. //驾校地址
  31. @IBOutlet weak var school_address_label: UILabel!
  32. //切换身份
  33. @IBOutlet weak var switch_button: UIButton!
  34. //退出登录
  35. @IBOutlet weak var quit_button: UIButton!
  36. //教练身份
  37. @IBOutlet weak var classType_button: UIButton!
  38. //解除绑定
  39. @IBOutlet weak var unbindwx_button: UIButton!
  40. override func viewDidLoad() {
  41. super.viewDidLoad()
  42. setupUI()
  43. biandView()
  44. }
  45. override func viewWillAppear(_ animated: Bool) {
  46. super.viewWillAppear(animated)
  47. self.cocahService.coachInfoRequest(id:String("\(LocalManager.userInfo.id)"), city: LocalManager.userInfo.city!)
  48. .subscribe(onSuccess: { userinfo in
  49. LocalManager.userInfo = userinfo
  50. self.biandView()
  51. }, onError: { error in
  52. })
  53. .disposed(by: disposeBag)
  54. }
  55. // MARK: 私有方法
  56. func setupUI(){
  57. if isIphoneX {self.nav_top_layout.constant = 24.f}
  58. self.view.backgroundColor = .db_theme
  59. //跳修改密码
  60. update_password_button.rx.tap.subscribe ({ [unowned self] (_) in
  61. NYSwRouter.push(NYSwPushType.mine_uppassword.path)
  62. }).disposed(by: disposeBag)
  63. //退出
  64. quit_button.rx.tap.subscribe ({ [unowned self] (_) in
  65. LocalManager.userInfo.isLogin = false //设置已经登录
  66. print("退出登录成功")
  67. self.actionBackdo(quit_button)
  68. }).disposed(by: disposeBag)
  69. //切换身份
  70. switch_button.rx.tap.subscribe ({ [unowned self] (_) in
  71. NYSwRouter.push(NYSwPushType.mine_switchaccount.path)
  72. }).disposed(by: disposeBag)
  73. //解除绑定
  74. unbindwx_button.rx.tap.subscribe ({ [unowned self] (_) in
  75. self.loginService.unbiandUserRequest(idcard: LocalManager.userInfo.idcard, user_password: LocalManager.userInfo.password!, city: LocalManager.userInfo.city!).subscribe(onSuccess: {[unowned self] msgData in
  76. if msgData.data as! Int == 1 {
  77. NYTips.showMsg(txt: "解绑成功")
  78. }
  79. }, onError: { error in
  80. NYTips.hide()
  81. NYTips.showErr(txt: (error as! RequestError).errorDescription)
  82. print("%@",error)
  83. })
  84. .disposed(by: self.disposeBag)
  85. }).disposed(by: disposeBag)
  86. }
  87. //绑定-rx
  88. func biandView(){
  89. //用户头像
  90. self.user_icon_imageview.sd_setImage(with: LocalManager.userInfo.photoPath.urlValue, placeholderImage: LocalManager.userInfo.sex == "1" ? NYImage.Mine.usermale:NYImage.Mine.userfemale)
  91. //用户名
  92. self.user_name_label.text = LocalManager.userInfo.name
  93. //性别
  94. self.user_sex_imageview.image = UIImage(named: (LocalManager.userInfo.sex.hashValue==1 ? "男":"女"))
  95. //手机号
  96. self.phone_label.text = LocalManager.userInfo.mobile
  97. //身份证
  98. self.idcarid_label.text = LocalManager.userInfo.idcard
  99. //驾校名称
  100. self.schoolname_label.text = LocalManager.userInfo.schoolName
  101. //驾校地址
  102. self.school_address_label.text = LocalManager.userInfo.address
  103. //教练类型
  104. var className = "普通教练"
  105. switch LocalManager.userInfo.classType {
  106. case 0:
  107. className = "普通教练"
  108. break
  109. case 1:
  110. className = "教练管理"
  111. break
  112. case 2:
  113. className = "查询人员"
  114. break
  115. case 3:
  116. className = "查询管理"
  117. break
  118. default:
  119. className = "普通教练"
  120. }
  121. self.classType_button.setTitle(className, for: .normal)
  122. }
  123. }