南鑫林 5 rokov pred
rodič
commit
05ee2b6206

+ 11 - 6
RainbowPlanet/RainbowPlanet/Base/BaseTabbarViewController/BaseTabbarViewController.swift

@@ -10,6 +10,7 @@ import UIKit
 import Lottie
 import ESTabBarController_swift
 import PPBadgeViewSwift
+import SwiftyMediator
 
 class BaseTabbarViewController: NSObject {
 
@@ -182,13 +183,17 @@ class BaseTabbarViewController: NSObject {
     /// 跳转到VC
     func pushPublishVC() {
         if BaseTabbarViewController.shared.v1.navigationBarbgView.isHidden {
-//            let pickVc = PublishViewController()
-////            let  pickVc = PublishNewViewController()
-//            let nav = BaseNavigationViewController.init(rootViewController: pickVc)
-//            nav.modalPresentationStyle = .fullScreen
-//            BaseTabbarViewController.shared.esTabBarController.present(nav, animated: true, completion: nil)
             PublishNewPopView.show(imageStrs: ["publish_btn_picture","publish_btn_video","publish_btn_photo","publish_btn_article"], titles: ["相册","视频","拍照","文章"], columnCount: 4) { (index) in
-                
+                if index != 3 {
+                    let pickVc = PublishViewController()
+                    pickVc.index = index
+                    //            let  pickVc = PublishNewViewController()
+                    let nav = BaseNavigationViewController.init(rootViewController: pickVc)
+                    nav.modalPresentationStyle = .fullScreen
+                    BaseTabbarViewController.shared.esTabBarController.present(nav, animated: true, completion: nil)
+                }else {
+                    Mediator.push(H5RouterModuleType.pushPostArticle)
+                }
             }
         } else {
             SwiftProgressHUD.shared().showText("内容上传中,请稍等", textAlignment: .center)

+ 16 - 6
RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessageList/ViewController/MessageListController.swift

@@ -98,12 +98,22 @@ extension MessageListController {
             case .follow?:
                 DIYEmptyView.emptyNoDataActionTableView(tableView: self?.tableView, imageStr: .seven, detailStr: .seven, btnTitleStr: .four, btnClickBlock: {
                     if BaseTabbarViewController.shared.v1.navigationBarbgView.isHidden {
-                        let pickVc = PublishViewController()
-                        let nav = BaseNavigationViewController.init(rootViewController: pickVc)
-                        nav.modalPresentationStyle = .fullScreen
-                        self?.tabBarController?.present(nav, animated: true, completion: {
-                            self?.navigationController?.popToRootViewController(animated: false)
-                        })
+                        PublishNewPopView.show(imageStrs: ["publish_btn_picture","publish_btn_video","publish_btn_photo","publish_btn_article"], titles: ["相册","视频","拍照","文章"], columnCount: 4) { [weak self] (index) in
+                            if index != 3 {
+                                let pickVc = PublishViewController()
+                                pickVc.index = index
+                                //  let  pickVc = PublishNewViewController()
+                                let nav = BaseNavigationViewController.init(rootViewController: pickVc)
+                                nav.modalPresentationStyle = .fullScreen
+                                self?.tabBarController?.present(nav, animated: true, completion: {
+                                    [weak self] in
+                                    self?.navigationController?.popToRootViewController(animated: false)
+                                })
+                            }else {
+                                Mediator.push(H5RouterModuleType.pushPostArticle)
+                                self?.navigationController?.popToRootViewController(animated: false)
+                            }
+                        }
                     } else {
                         SwiftProgressHUD.shared().showText("内容上传中,请稍等", textAlignment: .center)
                     }

+ 16 - 7
RainbowPlanet/RainbowPlanet/Modules/MineModule/MyFollowAndFan/ViewController/MyFollowAndFanViewController.swift

@@ -138,13 +138,22 @@ extension MyFollowAndFanViewController {
             DIYEmptyView.emptyNoDataActionTableView(tableView: self?.tableView, imageStr: .seven, detailStr: .seven, btnTitleStr: .four, btnClickBlock: {
                 [weak self] in
                 if BaseTabbarViewController.shared.v1.navigationBarbgView.isHidden {
-                    let pickVc = PublishViewController()
-                    let nav = BaseNavigationViewController.init(rootViewController: pickVc)
-                    nav.modalPresentationStyle = .fullScreen
-                    self?.tabBarController?.present(nav, animated: true, completion: {
-                        [weak self] in
-                        self?.navigationController?.popToRootViewController(animated: false)
-                    })
+                    PublishNewPopView.show(imageStrs: ["publish_btn_picture","publish_btn_video","publish_btn_photo","publish_btn_article"], titles: ["相册","视频","拍照","文章"], columnCount: 4) { [weak self] (index) in
+                        if index != 3 {
+                            let pickVc = PublishViewController()
+                            pickVc.index = index
+                            //  let  pickVc = PublishNewViewController()
+                            let nav = BaseNavigationViewController.init(rootViewController: pickVc)
+                            nav.modalPresentationStyle = .fullScreen
+                            self?.tabBarController?.present(nav, animated: true, completion: {
+                                [weak self] in
+                                self?.navigationController?.popToRootViewController(animated: false)
+                            })
+                        }else {
+                            Mediator.push(H5RouterModuleType.pushPostArticle)
+                            self?.navigationController?.popToRootViewController(animated: false)
+                        }
+                    }
                 } else {
                     SwiftProgressHUD.shared().showText("内容上传中,请稍等", textAlignment: .center)
                 }

+ 14 - 5
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishViewController.swift

@@ -22,6 +22,8 @@ class PublishViewController: BaseViewController {
         NXLLog("deinit")
     }
     
+    var index : Int = 0
+    
     // 视频选择页参数配置类
     var mediaConfig: AliyunMediaConfig {
         //默认配置
@@ -83,11 +85,17 @@ class PublishViewController: BaseViewController {
     private lazy var segmentedView: JXSegmentedView = {
         let segmentedView = JXSegmentedView()
         segmentedView.delegate = self
-        segmentedView.dataSource = segmentedDataSourceAlbum
+        if index == 0 {
+            segmentedView.dataSource = segmentedDataSourceAlbum
+            statusBarStyle = .default
+        }else {
+            segmentedView.dataSource = segmentedDataSourceVideo
+            statusBarStyle = .lightContent
+        }
         segmentedView.indicators = [indicator]
         segmentedView.contentScrollView = listContainerView.scrollView
-        segmentedView.selectItemAt(index: 0)
-        segmentedView.defaultSelectedIndex = 0
+        segmentedView.selectItemAt(index: index)
+        segmentedView.defaultSelectedIndex = index
         return segmentedView
     }()
     
@@ -104,7 +112,7 @@ class PublishViewController: BaseViewController {
         segmentedDataSource.titleSelectedFont = kBoldFont22
         segmentedDataSource.isTitleStrokeWidthEnabled = true
         //reloadData(selectedIndex:)方法一定要调用,方法内部会刷新数据源数组
-        segmentedDataSource.reloadData(selectedIndex: 0)
+        segmentedDataSource.reloadData(selectedIndex: index)
         
         return segmentedDataSource
     }()
@@ -120,6 +128,7 @@ class PublishViewController: BaseViewController {
         segmentedDataSource.titleSelectedFont = kBoldFont22
         segmentedDataSource.isTitleStrokeWidthEnabled = true
         //reloadData(selectedIndex:)方法一定要调用,方法内部会刷新数据源数组
+        segmentedDataSource.reloadData(selectedIndex: index)
         
         return segmentedDataSource
     }()
@@ -138,7 +147,7 @@ class PublishViewController: BaseViewController {
     private lazy var listContainerView: JXSegmentedListContainerView = {
         let listContainerView = JXSegmentedListContainerView(dataSource: self)
 //        listContainerView.didAppearPercent = 0.01
-        listContainerView.defaultSelectedIndex = 0
+        listContainerView.defaultSelectedIndex = index
         listContainerView.scrollView.isScrollEnabled = false
         return listContainerView
     }()

+ 6 - 0
RainbowPlanet/RainbowPlanet/Router/H5RouterModuleType.swift

@@ -25,6 +25,7 @@ import SwiftyMediator
 /// - pushActivityId: 兑换活动
 /// - pushOffline: 活动列表
 /// - pushOfflineDetail: 活动详情
+/// - pushPostArticle: 发布文章
 
 
 public enum H5RouterModuleType: MediatorTargetType {
@@ -42,6 +43,7 @@ public enum H5RouterModuleType: MediatorTargetType {
     case pushActivityId(id:String)
     case pushOffline
     case pushOfflineDetail(id:String)
+    case pushPostArticle
 }
 
 extension H5RouterModuleType: MediatorSourceType {
@@ -103,6 +105,10 @@ extension H5RouterModuleType: MediatorSourceType {
             let vc = H5CommonViewController()
             vc.URLString = kH5OfflineDetailIdUrl + id
             return vc
+        case .pushPostArticle: //发布文章
+            let vc = H5CommonViewController()
+            vc.URLString = kH5PostArticleUrl
+            return vc
         }
     }
 }

+ 0 - 6
RainbowPlanet/RainbowPlanet/Router/PublishRouterModuleType.swift

@@ -12,7 +12,6 @@ import SwiftyMediator
 /// 推荐音乐
 public enum PublishRouterModuleType: MediatorTargetType {
     case pushMucisChooseView
-    case presentPublish
 }
 
 extension PublishRouterModuleType: MediatorSourceType {
@@ -21,11 +20,6 @@ extension PublishRouterModuleType: MediatorSourceType {
         case .pushMucisChooseView:
             let vc = PublishRecommendMusicController()
             return vc
-        case .presentPublish:
-            let vc = PublishViewController()
-            let nav = BaseNavigationViewController.init(rootViewController: vc)
-            nav.modalPresentationStyle = .fullScreen
-            return nav
         }
     }
 }

+ 3 - 0
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceManger/SwiftMoyaNetWorkManager/SwiftMoyaNetWorkH5Manager.swift

@@ -74,3 +74,6 @@ let kH5OfflineUrl = kApiH5Prefix() + "/offline"
 
 /// 活动详情
 let kH5OfflineDetailIdUrl = kApiH5Prefix() + "/offlineDetail?id="
+
+/// 发布文章
+let kH5PostArticleUrl = kApiH5Prefix() + "/offline"