Browse Source

发布完成

南鑫林 5 years ago
parent
commit
4153405426

+ 21 - 0
RainbowPlanet/RainbowPlanet/Manager/WebViewJavascriptBridgeManager/WebViewJavascriptBridgeManager.swift

@@ -14,6 +14,7 @@ import SwiftyMediator
 class WebViewJavascriptBridgeManager: NSObject {
     
     typealias CallDataClosure = (_ wbjbModel: WVJBModel) -> Void
+    var callDataClosure : CallDataClosure?
     
     static let shared : WebViewJavascriptBridgeManager = WebViewJavascriptBridgeManager()
     
@@ -69,6 +70,17 @@ class WebViewJavascriptBridgeManager: NSObject {
         bridge?.callHandler("h5", data: dictionary)
     }
     
+    /// 发布
+    ///
+    /// - Parameter bridge: 交互对象
+    func callHandlerPublish(bridge: WebViewJavascriptBridge?) {
+        //获取当前时间
+        var dictionary = Dictionary<String,Any>()
+        dictionary.updateValue("publish", forKey: "type")
+        dictionary.updateValue("", forKey: "params")
+        bridge?.callHandler("h5", data: dictionary)
+    }
+    
     
     /// 注册回调
     ///
@@ -155,6 +167,15 @@ class WebViewJavascriptBridgeManager: NSObject {
             UIViewController.topMost?.navigationController?.pushViewController(vc, animated: true)
         }
         
+        // 发布
+        if wvjbModel?.modelType  == .publish {
+            if wvjbModel?.params?.status != nil {
+                if let callDataClosure = callDataClosure {
+                    callDataClosure(wvjbModel!)
+                }
+            }
+        }
+        
         // 跳转原生
         if wvjbModel?.modelType  == .view {
             // 发布

+ 2 - 1
RainbowPlanet/RainbowPlanet/Model/WVJBModel/WVJBModel.swift

@@ -101,7 +101,7 @@ class WVJBParamsModel:NSObject,Mappable {
     var content : String?
     /// 关注
     var uid : Int?
-    /// 关注状态
+    /// 关注状态/发布状态
     var status : Int?
     /// 预览图片 数组
     var list : [String]?
@@ -177,6 +177,7 @@ class WVJBParamsModel:NSObject,Mappable {
         link <- map["link"]
         imgUrl <- map["imgUrl"]
         topic <- map["topic"]
+        status <- map["status"]
     }
 
 }

+ 20 - 2
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishArticle/ViewController/PublishArticleViewController.swift

@@ -38,8 +38,26 @@ class PublishArticleViewController: H5CommonViewController {
     
     override func setupData() {
         super.setupData()
-        publishButton.rx.tap.subscribe(onNext: { (_) in
-            
+        WebViewJavascriptBridgeManager.shared.callDataClosure = {
+            [weak self] wbjbModel in
+            switch (wbjbModel.params?.status ?? 0) {
+            case 1://1.未发布
+                SwiftProgressHUD.shared().hide()
+                break
+            case 2://2.发布中
+                SwiftProgressHUD.shared().showWait()
+                break
+            case 3://3.发布成功
+                BaseTabbarViewController.shared.v1.reloadSegmentedFollowView()
+                SwiftProgressHUD.shared().hide()
+                self?.navigationController?.popViewController(animated: true)
+                break
+            default :
+                break
+            }
+        }
+        publishButton.rx.tap.subscribe(onNext: { [weak self] (_) in
+            WebViewJavascriptBridgeManager.shared.callHandlerPublish(bridge: self?.bridge)
         }).disposed(by: disposeBag)
     }