Browse Source

修复了微信登录,tabbar

南鑫林 5 years ago
parent
commit
a0fe046c46

+ 1 - 0
RainbowPlanet/RainbowPlanet/AppDelegate/AppDelegate+Window.swift

@@ -97,6 +97,7 @@ extension AppDelegate {
         LoginNowView.initLoginNowView()
         // 退出登录
         NotificationCenter.default.post(name: NSNotification.Name("loginOut"), object: nil)
+        BaseTabbarViewController.shared.setLoginOutTabBarItem()
     }
     
     /// 登录

+ 12 - 7
RainbowPlanet/RainbowPlanet/Base/BaseTabbarViewController/BaseTabbarViewController.swift

@@ -115,15 +115,10 @@ class BaseTabbarViewController: NSObject {
         v3.tabBarItem.imageInsets =  UIEdgeInsets(top: 4, left: 0, bottom: -4, right: 0);
         
         if UserModel.isTokenNil() {
-
-            v4.tabBarItem = ESTabBarItem.init(BaseTabBarItemContentView(), title: "消息", image: UIImage(named: "tabbar_massage")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
-            v5.tabBarItem = ESTabBarItem.init(BaseTabBarItemContentView(), title: "我的", image: UIImage(named: "tabbar_my")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
-
+            setLoginOutTabBarItem()
         }else {
-            v4.tabBarItem = ESTabBarItem.init(lottieAnimateContentView4, title: "消息", image: UIImage(named: "tabbar_massage")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
-            v5.tabBarItem = ESTabBarItem.init(lottieAnimateContentView5, title: "我的", image: UIImage(named: "tabbar_my")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
+            setLoginTabBarItem()
         }
-        
 
         let n1 = BaseNavigationViewController.init(rootViewController: v1)
         let n2 = BaseNavigationViewController.init(rootViewController: v2)
@@ -151,6 +146,16 @@ class BaseTabbarViewController: NSObject {
         return esTabBarController
     }
     
+    func setLoginTabBarItem() {
+        v4.tabBarItem = ESTabBarItem.init(lottieAnimateContentView4, title: "消息", image: UIImage(named: "tabbar_massage")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
+        v5.tabBarItem = ESTabBarItem.init(lottieAnimateContentView5, title: "我的", image: UIImage(named: "tabbar_my")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage: nil)
+    }
+    
+    func setLoginOutTabBarItem() {
+        v4.tabBarItem = ESTabBarItem.init(BaseTabBarItemContentView(), title: "消息", image: UIImage(named: "tabbar_massage")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage:nil)
+        v5.tabBarItem = ESTabBarItem.init(BaseTabBarItemContentView(), title: "我的", image: UIImage(named: "tabbar_my")?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal), selectedImage:nil)
+    }
+    
     /// 跳转到VC
     func pushPublishVC() {
         if BaseTabbarViewController.shared.v1.navigationBarbgView.isHidden {

+ 5 - 0
RainbowPlanet/RainbowPlanet/Manager/RegisterLoginManager/RegisterLoginManager.swift

@@ -7,6 +7,7 @@
 //
 
 import UIKit
+import ESTabBarController_swift
 
 class RegisterLoginManager: NSObject {
 
@@ -23,12 +24,14 @@ class RegisterLoginManager: NSObject {
                             NotificationCenter.default.post(name: NSNotification.Name("login"), object: nil)
                             LoginNowView.removeLoginNowView()
                             kAppDelegate.setData()
+                            BaseTabbarViewController.shared.setLoginTabBarItem()
                         })
                 }else {
                     vc?.dismiss(animated: false, completion: {
                         NotificationCenter.default.post(name: NSNotification.Name("login"), object: nil)
                         LoginNowView.removeLoginNowView()
                         kAppDelegate.setData()
+                        BaseTabbarViewController.shared.setLoginTabBarItem()
                     })
                 }
                 
@@ -37,6 +40,8 @@ class RegisterLoginManager: NSObject {
                 NotificationCenter.default.post(name: NSNotification.Name("login"), object: nil)
                 LoginNowView.removeLoginNowView()
                 kAppDelegate.setData()
+                BaseTabbarViewController.shared.setLoginTabBarItem()
+
             }
         }
     }

+ 16 - 13
RainbowPlanet/RainbowPlanet/Manager/UMManager/UMManager.swift

@@ -396,26 +396,29 @@ extension UMManager {
     /// 第三方登录
     ///
     /// - Parameter platformType: 平台
-    func loginGetUserInfo(platformType: UMSocialPlatformType,callBack: @escaping (UMLoginModel) -> (Void)) {
+    func loginGetUserInfo(platformType: UMSocialPlatformType,currentViewController:UIViewController,callBack: @escaping (UMLoginModel) -> (Void)) {
         
         if !AlamofireReachabilityManager.shared.isNetworkConnect() {
             return
         }
-        let isInstall = UMSocialManager.default()?.isInstall(platformType)
-        if isInstall!  { //验证
-            getUserInfo(platformType: platformType, callBack: callBack)
-        }else {
-            if platformType == .wechatSession {
-                SwiftProgressHUD.shared().showText("微信未安装\n请您安装微信程序")
-            }else{
-                getUserInfo(platformType: platformType, callBack: callBack)
-            }
-        }
+//        let isInstall = UMSocialManager.default()?.isInstall(platformType)
+//        if isInstall!  { //验证
+//            getUserInfo(platformType: platformType, callBack: callBack)
+//        }else {
+//            if platformType == .wechatSession {
+//                SwiftProgressHUD.shared().showText("微信未安装\n请您安装微信程序")
+//            }else{
+//                getUserInfo(platformType: platformType, callBack: callBack)
+//            }
+//        }
+        getUserInfo(platformType: platformType,currentViewController:currentViewController, callBack: callBack)
+
     }
 }
 
-func getUserInfo(platformType: UMSocialPlatformType,callBack: @escaping (UMLoginModel) -> (Void)) {
-    UMSocialManager.default().getUserInfo(with: platformType, currentViewController: nil) { result, error in
+func getUserInfo(platformType: UMSocialPlatformType,currentViewController:UIViewController,callBack: @escaping (UMLoginModel) -> (Void)) {
+    
+    UMSocialManager.default().getUserInfo(with: platformType, currentViewController: currentViewController) { result, error in
         
         if error != nil {
             SwiftProgressHUD.shared().showText("授权失败,请重新登录")

+ 2 - 2
RainbowPlanet/RainbowPlanet/Modules/MineModule/AccountSecurity/ViewController/AccountSecurityViewController.swift

@@ -103,7 +103,7 @@ class AccountSecurityViewController: BaseViewController {
         
         if loginType == .weixin {
             if userModel?.bindWeixinUserModel?.unionId == nil ||  userModel?.bindWeixinUserModel?.unionId == "" { //绑定微信
-                UMManager.shared.loginGetUserInfo(platformType: UMSocialPlatformType.wechatSession) {
+                UMManager.shared.loginGetUserInfo(platformType: UMSocialPlatformType.wechatSession, currentViewController: self) {
                     [weak self] (wxLoginModel) -> (Void) in
                     SwiftMoyaNetWorkServiceUser.shared().userIsBindTripartiteBindApi(loginType:loginType,umLoginModel: wxLoginModel, completion: { [weak self] (data) -> (Void) in
                         NotificationCenter.default.post(name: NSNotification.Name(rawValue: "WVJBRefresh"), object: WVJBRefreshModelType.task)
@@ -120,7 +120,7 @@ class AccountSecurityViewController: BaseViewController {
             }
         }else if loginType == .qq {
             if userModel?.bindQQUserModel?.unionId == nil ||  userModel?.bindQQUserModel?.unionId == "" { //绑定QQ
-                UMManager.shared.loginGetUserInfo(platformType: UMSocialPlatformType.QQ) { [weak self] (wxLoginModel) -> (Void) in
+                UMManager.shared.loginGetUserInfo(platformType: UMSocialPlatformType.QQ, currentViewController: self) { [weak self] (wxLoginModel) -> (Void) in
                     SwiftMoyaNetWorkServiceUser.shared().userIsBindTripartiteBindApi(loginType:loginType,umLoginModel: wxLoginModel, completion: { [weak self] (data) -> (Void) in
                         NotificationCenter.default.post(name: NSNotification.Name(rawValue: "WVJBRefresh"), object: WVJBRefreshModelType.task)
 

+ 32 - 4
RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/RegisterLogin/ViewController/RegisterLoginViewController.swift

@@ -40,6 +40,7 @@ class RegisterLoginViewController: BaseViewController {
         view.addSubview(mobileLoginButton)
         view.addSubview(weixinLoginButton)
         view.addSubview(QQLoginButton)
+        view.addSubview(agreementLabel)
         view.insertSubview(navigationBar, aboveSubview: playerView)
         view.insertSubview(navigationBar, aboveSubview: bgView)
 
@@ -66,7 +67,7 @@ class RegisterLoginViewController: BaseViewController {
 
         
         mobileLoginButton.snp.makeConstraints { (make) in
-            make.bottom.equalTo(weixinLoginButton.snp.top).offset(-20)
+            make.bottom.equalTo(QQLoginButton.snp.top).offset(-20)
             make.left.equalTo(30)
             make.right.equalTo(-30)
             make.height.equalTo(48)
@@ -74,19 +75,35 @@ class RegisterLoginViewController: BaseViewController {
         mobileLoginButton.layoutButton(edgeInsetsStyle: ButtonEdgeInsetsStyle.left, imageTitleSpace: 5)
         
         weixinLoginButton.snp.makeConstraints { (make) in
-            make.bottom.equalTo(-40)
+            make.bottom.equalTo(agreementLabel.snp.top).offset(-15)
+
             make.centerX.equalToSuperview().offset(-30)
         }
         QQLoginButton.snp.makeConstraints { (make) in
-            make.bottom.equalTo(-40)
+            make.bottom.equalTo(agreementLabel.snp.top).offset(-15)
             make.centerX.equalToSuperview().offset(30)
         }
         
+        agreementLabel.snp.makeConstraints { (make) in
+            make.bottom.equalTo(-(kSafeTabBarHeight+20))
+            make.centerX.equalToSuperview()
+        }
+        
         
     }
     
     override func setupData() {
         player.play()
+        
+        agreementLabel.addClickText("由你用户协议", attributeds: [NSAttributedString.Key.font:kRegularFont13 as Any,NSAttributedString.Key.foregroundColor:kffffffColor,NSAttributedString.Key.underlineStyle:NSUnderlineStyle.single.rawValue,NSAttributedString.Key.underlineColor:kffffffColor], transmitBody: nil) {
+            (data) in
+            Mediator.push(H5RouterModuleType.pushContentId6)
+        }
+        agreementLabel.addClickText("隐私条款", attributeds: [NSAttributedString.Key.font:kRegularFont13 as Any,NSAttributedString.Key.foregroundColor:kffffffColor,NSAttributedString.Key.underlineStyle:NSUnderlineStyle.single.rawValue,NSAttributedString.Key.underlineColor:kffffffColor], transmitBody: nil) {
+            (data) in
+            Mediator.push(H5RouterModuleType.pushContentId11)
+        }
+        
         navigationBar.onClickLeftButton = {
             [weak self] in
             //移除本地用户信息
@@ -165,6 +182,17 @@ class RegisterLoginViewController: BaseViewController {
         return QQLoginButton
     }()
     
+    private lazy var agreementLabel: FMLinkLabel = {
+        let agreementLabel = FMLinkLabel()
+        agreementLabel.numberOfLines = 0
+        agreementLabel.textColor = kbbbbbbColor
+        agreementLabel.font = kRegularFont12
+        agreementLabel.isUserInteractionEnabled = true
+        agreementLabel.text =  "登录即表示你已阅读并同意 由你用户协议 和 隐私条款"
+        agreementLabel.textAlignment = .center
+        return agreementLabel
+    }()
+    
     private lazy var playerView: UIView = {
         let playerView = UIView()
         return playerView
@@ -200,7 +228,7 @@ class RegisterLoginViewController: BaseViewController {
     //第三方登录
     func tripartiteLogin(platformType:UMSocialPlatformType,loginType:LoginType) {
         
-        UMManager.shared.loginGetUserInfo(platformType: platformType) {
+        UMManager.shared.loginGetUserInfo(platformType: platformType, currentViewController: self) {
             [weak self] (userModel) -> (Void) in
             let wxLoginModel = userModel
             SwiftMoyaNetWorkServiceUser.shared().userTripartiteRegisterTLoginApi(loginType:loginType,open_id: wxLoginModel.open_id, union_id: wxLoginModel.union_id, avatar: wxLoginModel.avatar, username: wxLoginModel.username, gender: wxLoginModel.gender, completion: {

+ 6 - 11
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceManger/SwiftMoyaNetWorkManager/ApiMacro.swift

@@ -11,14 +11,9 @@ import Foundation
 /// Service
 let kPersonalService = false
 let kDevelopSever = false
-let kBetaSever = false
-let kProductSever = true
+let kBetaSever = true
+let kProductSever = false
 
-/// h5Service
-let kH5PersonalService = false
-let kH5DevelopSever = false
-let kH5BetaSever = false
-let kH5ProductSever = true
 
 // MARK: - 数据服务器
 public func kApiDataPrefix() -> String {
@@ -56,13 +51,13 @@ public func kApiVirusPrefix() -> String {
 
 // MARK: - H5
 public func kApiH5Prefix() -> String {
-    if kH5PersonalService /** 接口前缀-个人服务器*/ {
+    if kPersonalService /** 接口前缀-个人服务器*/ {
         return "http://192.168.23.238:8820"
-    }else if kH5DevelopSever /** 接口前缀-开发服务器*/ {
+    }else if kDevelopSever /** 接口前缀-开发服务器*/ {
         return "http://h5.dev.caihongxingqiu.com"
-    } else if kH5BetaSever /** 接口前缀-测试服务器*/{
+    } else if kBetaSever /** 接口前缀-测试服务器*/{
         return "http://h5.beta.caihongxingqiu.com"
-    }else if kH5ProductSever /** 接口前缀-生产服务器*/ {
+    }else if kProductSever /** 接口前缀-生产服务器*/ {
         return "http://h5.uptoyo.com"
     }else {
         return ""

+ 1 - 11
RainbowPlanet/RainbowPlanet/Supporting Files/Info.plist

@@ -87,7 +87,7 @@
 		</dict>
 	</array>
 	<key>CFBundleVersion</key>
-	<string>2</string>
+	<string>3</string>
 	<key>LSApplicationQueriesSchemes</key>
 	<array>
 		<string>wechat</string>
@@ -207,18 +207,12 @@
 	</dict>
 	<key>NSAppleMusicUsageDescription</key>
 	<string>App需要您的同意,才能访问媒体资料库</string>
-	<key>NSBluetoothPeripheralUsageDescription</key>
-	<string>App需要您的同意,才能访问蓝牙</string>
 	<key>NSCalendarsUsageDescription</key>
 	<string>App需要您的同意,才能访问日历</string>
 	<key>NSCameraUsageDescription</key>
 	<string>App需要您的同意,才能访问相册</string>
 	<key>NSContactsUsageDescription</key>
 	<string>App需要您的同意,才能访问通信录</string>
-	<key>NSHealthShareUsageDescription</key>
-	<string>App需要您的同意,才能访问健康分享</string>
-	<key>NSHealthUpdateUsageDescription</key>
-	<string>App需要您的同意,才能访问健康更新 </string>
 	<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
 	<string>你的位置信息将帮助彩虹星球展示离你最近的门店</string>
 	<key>NSLocationAlwaysUsageDescription</key>
@@ -229,14 +223,10 @@
 	<string>你的位置信息将帮助彩虹星球展示离你最近的门店</string>
 	<key>NSMicrophoneUsageDescription</key>
 	<string>App需要您的同意,才能访问麦克风</string>
-	<key>NSMotionUsageDescription</key>
-	<string>App需要您的同意,才能访问运动与健身</string>
 	<key>NSPhotoLibraryAddUsageDescription</key>
 	<string>App需要您的同意,才能保存图像和视频到您的相册</string>
 	<key>NSPhotoLibraryUsageDescription</key>
 	<string>App需要您的同意,才能访问相机</string>
-	<key>NSRemindersUsageDescription</key>
-	<string>App需要您的同意,才能访问提醒事项</string>
 	<key>UIBackgroundModes</key>
 	<array>
 		<string>remote-notification</string>