MineViewController.swift 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  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. unbindwx_button.isHidden = LocalManager.isCheckAccount()//解绑wx是否显示
  60. //跳修改密码
  61. update_password_button.rx.tap.subscribe ({ [unowned self] (_) in
  62. NYSwRouter.push(NYSwPushType.mine_uppassword.path)
  63. }).disposed(by: disposeBag)
  64. //退出
  65. quit_button.rx.tap.subscribe ({ [unowned self] (_) in
  66. LocalManager.userInfo.isLogin = false //设置已经登录
  67. print("退出登录成功")
  68. self.actionBackdo(quit_button)
  69. }).disposed(by: disposeBag)
  70. //切换身份
  71. switch_button.rx.tap.subscribe ({ [unowned self] (_) in
  72. NYSwRouter.push(NYSwPushType.mine_switchaccount.path)
  73. }).disposed(by: disposeBag)
  74. //解除绑定
  75. unbindwx_button.rx.tap.subscribe ({ [unowned self] (_) in
  76. self.loginService.unbiandUserRequest(idcard: LocalManager.userInfo.idcard, user_password: LocalManager.userInfo.password!, city: LocalManager.userInfo.city!).subscribe(onSuccess: {[unowned self] msgData in
  77. if msgData.data as! Int == 1 {
  78. NYTips.showMsg(txt: "解绑成功")
  79. }
  80. }, onError: { error in
  81. NYTips.hide()
  82. NYTips.showErr(txt: (error as! RequestError).errorDescription)
  83. print("%@",error)
  84. })
  85. .disposed(by: self.disposeBag)
  86. }).disposed(by: disposeBag)
  87. }
  88. //绑定-rx
  89. func biandView(){
  90. //用户头像
  91. self.user_icon_imageview.sd_setImage(with: LocalManager.userInfo.photoPath.urlValue, placeholderImage: LocalManager.userInfo.sex == "1" ? NYImage.Mine.usermale:NYImage.Mine.userfemale)
  92. //用户名
  93. self.user_name_label.text = LocalManager.userInfo.name
  94. //性别
  95. self.user_sex_imageview.image = UIImage(named: (LocalManager.userInfo.sex.hashValue==1 ? "男":"女"))
  96. //手机号
  97. self.phone_label.text = LocalManager.userInfo.mobile
  98. //身份证
  99. self.idcarid_label.text = LocalManager.userInfo.idcard
  100. //驾校名称
  101. self.schoolname_label.text = LocalManager.userInfo.schoolName
  102. //驾校地址
  103. self.school_address_label.text = LocalManager.userInfo.address
  104. //教练类型
  105. var className = "普通教练"
  106. switch LocalManager.userInfo.classType {
  107. case 0:
  108. className = "普通教练"
  109. break
  110. case 1:
  111. className = "教练管理"
  112. break
  113. case 2:
  114. className = "查询人员"
  115. break
  116. case 3:
  117. className = "查询管理"
  118. break
  119. default:
  120. className = "普通教练"
  121. }
  122. self.classType_button.setTitle(className, for: .normal)
  123. }
  124. }