Browse Source

支付完成跳转流程

Chris 6 years ago
parent
commit
31e9096c5f

+ 22 - 4
RainbowPlanet/RainbowPlanet/Modules/ShoppingCartModule/ShoppingCartFinishPay/View/ShoppingCartFinishPayView.swift

@@ -10,6 +10,12 @@ import UIKit
 
 class ShoppingCartFinishPayView: BaseView {
     
+    typealias RepayTransBlock = () -> Void
+    var repayTransBlock : RepayTransBlock?
+    
+    typealias JumpTransBlock = (_ jType: PayJumpDes) -> Void
+    var jumpTransBlock : JumpTransBlock?
+    
     // 热销ModelArr
     var hotSaleModelArr : Array<ProductSearchModel>? {
         didSet {
@@ -66,12 +72,24 @@ extension ShoppingCartFinishPayView : UITableViewDelegate, UITableViewDataSource
         case 0:
             if (payStatus == true) {
                 // 支付成功
-                let cell = ShoppingCartPaySuccessCell.cellWith(tableView: tableView, indexPath: indexPath)
-                return cell
+                let sCell = ShoppingCartPaySuccessCell.cellWith(tableView: tableView, indexPath: indexPath)
+                sCell.jumpBlock = {
+                    [weak self] (jType) in
+                    if let jumpTransBlock = self?.jumpTransBlock {
+                        jumpTransBlock(jType)
+                    }
+                }
+                return sCell
             } else {
                 // 支付失败
-                let cell = ShoppingCartPayFailureCell.cellWith(tableView: tableView, indexPath: indexPath)
-                return cell
+                let fCell = ShoppingCartPayFailureCell.cellWith(tableView: tableView, indexPath: indexPath)
+                fCell.repayBlock = {
+                    [weak self] in
+                    if let repayTransBlock = self?.repayTransBlock {
+                        repayTransBlock()
+                    }
+                }
+                return fCell
             }            
         case 1:
             // 超值热卖

+ 10 - 6
RainbowPlanet/RainbowPlanet/Modules/ShoppingCartModule/ShoppingCartFinishPay/View/ShoppingCartPayFailureCell.swift

@@ -12,6 +12,11 @@ import RxCocoa
 
 class ShoppingCartPayFailureCell: UITableViewCell {
     
+    let disposeBag = DisposeBag()
+    
+    typealias RepayBlock = () -> Void
+    var repayBlock : RepayBlock?
+    
     override var frame: CGRect {
         get {
             return super.frame
@@ -119,12 +124,11 @@ class ShoppingCartPayFailureCell: UITableViewCell {
         jumpButton.titleLabel?.font = kRegularFont16
         jumpButton.cornerRadius = 18
         jumpButton.masksToBounds = true
-        //        jumpButton.rx.tap.subscribe(onNext: { [weak self] (data) in
-        //            //            if let forgetPasswordBlock = self?.forgetPasswordBlock {
-        //            //                forgetPasswordBlock()
-        //            //            }
-        //            print("点击了跳转到首页")
-        //        }).disposed(by: disposeBag)
+        jumpButton.rx.tap.subscribe(onNext: { [weak self] (data) in
+            if let repayBlock = self?.repayBlock {
+                repayBlock()
+            }
+        }).disposed(by: disposeBag)
         return jumpButton
     }()
     

+ 20 - 13
RainbowPlanet/RainbowPlanet/Modules/ShoppingCartModule/ShoppingCartFinishPay/View/ShoppingCartPaySuccessCell.swift

@@ -10,8 +10,18 @@ import UIKit
 import RxSwift
 import RxCocoa
 
+enum PayJumpDes {
+    case homePage
+    case checkOrder
+}
+
 class ShoppingCartPaySuccessCell: UITableViewCell {
     
+    let disposeBag = DisposeBag()
+    
+    typealias JumpBlock = (_ jType: PayJumpDes) -> Void
+    var jumpBlock : JumpBlock?
+    
     override var frame: CGRect {
         get {
             return super.frame
@@ -129,12 +139,11 @@ class ShoppingCartPaySuccessCell: UITableViewCell {
         jumpButton.titleLabel?.font = kRegularFont16
         jumpButton.cornerRadius = 18
         jumpButton.masksToBounds = true
-        //        jumpButton.rx.tap.subscribe(onNext: { [weak self] (data) in
-        //            //            if let forgetPasswordBlock = self?.forgetPasswordBlock {
-        //            //                forgetPasswordBlock()
-        //            //            }
-        //            print("点击了跳转到首页")
-        //        }).disposed(by: disposeBag)
+        jumpButton.rx.tap.subscribe(onNext: { [weak self] (data) in
+            if let jumpBlock = self?.jumpBlock {
+                jumpBlock(PayJumpDes.homePage)
+            }
+        }).disposed(by: disposeBag)
         return jumpButton
     }()
     
@@ -145,13 +154,11 @@ class ShoppingCartPaySuccessCell: UITableViewCell {
         orderButton.setTitleColor(k333333Color, for: UIControl.State.normal)
         orderButton.setImage(UIImage.imageWithColor(color: k333333Color), for: UIControl.State.normal)
         orderButton.titleLabel?.font = kRegularFont14
-        
-//        orderButton.rx.tap.subscribe(onNext: { [weak self] (data) in
-//            //            if let forgetPasswordBlock = self?.forgetPasswordBlock {
-//            //                forgetPasswordBlock()
-//            //            }
-//            print("点击了跳转到首页")
-//        }).disposed(by: disposeBag)
+        orderButton.rx.tap.subscribe(onNext: { [weak self] (data) in
+            if let jumpBlock = self?.jumpBlock {
+                jumpBlock(PayJumpDes.checkOrder)
+            }
+        }).disposed(by: disposeBag)
         return orderButton
     }()
     

+ 16 - 1
RainbowPlanet/RainbowPlanet/Modules/ShoppingCartModule/ShoppingCartFinishPay/ViewController/ShoppingCartFinishPayController.swift

@@ -11,7 +11,7 @@ import RxSwift
 
 class ShoppingCartFinishPayController: BaseViewController {
     
-    var payStatus: Bool? = false
+    var payStatus: Bool? = true
     
     var productSearchModelArray = Array<ProductSearchModel>()
     
@@ -54,6 +54,21 @@ class ShoppingCartFinishPayController: BaseViewController {
     private lazy var finishPayView: ShoppingCartFinishPayView = {
         let finishPayView = ShoppingCartFinishPayView()
         finishPayView.payStatus = payStatus
+        finishPayView.repayTransBlock = {
+            [weak self] in
+            print("点击了----重新支付")
+        }
+        finishPayView.jumpTransBlock = {
+            [weak self] (jType) in
+            switch jType {
+            case PayJumpDes.homePage:
+                self?.tabBarController?.selectedIndex = 0
+                self?.navigationController?.popToRootViewController(animated: false)
+            case PayJumpDes.checkOrder:
+                print("点击了----\(jType) --查看订单")
+            }
+        }
+        
         return finishPayView
     }()
     

+ 5 - 1
RainbowPlanet/RainbowPlanet/Modules/ShoppingCartModule/ShoppingCartPayOrder/ViewController/ShoppingCartPayOrderController.swift

@@ -74,7 +74,11 @@ class ShoppingCartPayOrderController: BaseViewController {
         orderPayView.totalProductPrice = self.totalProductPrice!
         orderPayView.commitOrderTransBlock = {
             [weak self] (paraMdl) in
-            self?.orderCreateApi(paraMdl: paraMdl)
+//            self?.orderCreateApi(paraMdl: paraMdl)
+            
+            // just test
+            let vc = ShoppingCartFinishPayController()
+            self?.navigationController?.pushViewController(vc, animated: true)
         }
         orderPayView.jumpNavBlock = {
             [weak self] (jumpType) in