BindPhoneNumberViewController.swift 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. //
  2. // BindPhoneNumberViewController.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/3/22.
  6. // Copyright © 2019 南鑫林. All rights reserved.
  7. //
  8. import UIKit
  9. /// 跳转过来的类型
  10. ///
  11. /// - weixinlogin: 微信登录
  12. /// - accountSecuritySet: 账号安全设置
  13. /// - accountSecurityBindMobile: 账号安全手机绑定
  14. public enum BindPhoneNumberVCType {
  15. case weixinlogin
  16. case accountSecuritySet
  17. case accountSecurityBindMobile
  18. }
  19. class BindPhoneNumberViewController: BaseViewController {
  20. var bindPhoneNumberVCType : BindPhoneNumberVCType?
  21. override func viewDidLoad() {
  22. super.viewDidLoad()
  23. setupViews()
  24. setupLayouts()
  25. }
  26. override func setupViews() {
  27. view.addSubview(bindPhoneNumberView)
  28. }
  29. override func setupLayouts() {
  30. bindPhoneNumberView.snp.makeConstraints { (make) in
  31. make.top.equalTo(navigationBar.snp.bottom)
  32. make.left.right.bottom.equalToSuperview()
  33. }
  34. }
  35. private lazy var bindPhoneNumberView: BindPhoneNumberView = {
  36. let bindPhoneNumberView = BindPhoneNumberView()
  37. bindPhoneNumberView.sendSmSBlock = {
  38. (sendSmsButton,phoneNumber) in
  39. SwiftMoyaNetWorkServiceSMS.shared().smsSendSMSApi(mobile: phoneNumber, appNameType: AppNameType.app, sendType: SendType.ali, smsType: SMSType.account_bind, completion: {_ in
  40. sendSmsButton.countdown = true
  41. })
  42. }
  43. bindPhoneNumberView.loginBlock = {
  44. [weak self] (phoneNumber,sms,invitationCode) in
  45. SwiftMoyaNetWorkServiceUser.shared().userBindMobileApi(mobile: phoneNumber, smsCode: sms, unionId: UserModel.shared().getModel()?.unionId ?? "", openId: UserModel.shared().getModel()?.openId ?? "", invitationCode: invitationCode, completion: { [weak self] (data) -> (Void) in
  46. if self?.bindPhoneNumberVCType == .weixinlogin { //跳转性别
  47. // 设置友盟别名
  48. UMManager.shared.addAlias()
  49. if UserModel.shared().getModel()?.isNewMember == 1 {
  50. VirusViewModel.shared.registeredVirueRecordAddApi(completion: {
  51. self?.present(GenderSelectionViewController(), animated: true, completion: {
  52. })
  53. })
  54. }else if(UserModel.shared().getModel()?.gender == nil || UserModel.shared().getModel()?.gender == 0) {//设置性别话题
  55. self?.present(GenderSelectionViewController(), animated: true, completion: {
  56. })
  57. }else if UserModel.shared().getModel()?.isFollowSuggestTopic == 0 { //设置话题
  58. self?.present(TopicSelectionViewController(), animated: true, completion: {
  59. })
  60. }else {// 设置首页
  61. kAppDelegate.setTabbarController()
  62. self?.navigationController?.popToRootViewController(animated: false)
  63. }
  64. }else if self?.bindPhoneNumberVCType == .accountSecuritySet { //设置密码
  65. let vc = SetPasswordViewController()
  66. self?.navigationController?.pushViewController(vc, animated: true)
  67. }else if self?.bindPhoneNumberVCType == .accountSecurityBindMobile { //更换手机
  68. //友盟重置别名
  69. UMManager.shared.setAlias()
  70. NotificationCenter.default.post(name: NSNotification.Name(rawValue: "AccountSecurity"), object: nil)
  71. self?.navigationController?.popViewController(animated: true)
  72. }
  73. })
  74. }
  75. return bindPhoneNumberView
  76. }()
  77. }