123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- //
- // ShoppingCartPayOrderController.swift
- // RainbowPlanet
- //
- // Created by Christopher on 2019/5/9.
- // Copyright © 2019 RainbowPlanet. All rights reserved.
- // 购物车--订单支付
- import UIKit
- import RxSwift
- // 跳转类型
- enum WillJumpType {
- case expressAddInfo // 添加快递地址
- case expressManageInfo // 管理快递地址
- case selfAddInfo // 添加自提收货信息
- case selfPersonalInfo // 自提个人信息
- case selfAddressInfo // 自提地址信息
- }
- class ShoppingCartPayOrderController: BaseViewController {
-
- // 已选商品ModelArr
- var selListModelArr : Array<CartProductListModel>?
- // 全部已选总价
- var totalProductPrice: Int?
-
- override func viewDidLoad() {
- super.viewDidLoad()
- setupViews()
- setupLayouts()
- }
-
- override func viewWillAppear(_ animated: Bool) {
- setupData()
- }
-
- override func setupViews() {
- navigationBar.title = "订单支付"
- view.addSubview(orderPayView)
- }
-
- override func setupLayouts() {
- orderPayView.snp.makeConstraints { (make) in
- make.bottom.left.right.equalToSuperview()
- make.top.equalTo(kNavBarTotalHeight)
- }
- }
-
- override func setupData() {
- let deliverType = DeliveryMethodTypeModel.shared().getModel()?.deliveryMethodType
- orderPayView.deliverType = deliverType
-
- switch deliverType {
- case "1":
- self.userDefaultContactApi()
- case "2":
- // 获取默认快递信息
- self.userDefaultExpressApi()
- default:
- break
- }
-
- orderPayView.jumpNavBlock = {
- [weak self] (jumpType) in
- switch jumpType {
- case WillJumpType.expressAddInfo:
- let vc = EditExpressAddressViewController()
- self?.navigationController?.pushViewController(vc, animated: true)
- case WillJumpType.expressManageInfo:
- let vc = ExpressAddressListViewController()
- self?.navigationController?.pushViewController(vc, animated: true)
- case WillJumpType.selfAddInfo:
- let vc = EditSelfMentionContactsViewController()
- self?.navigationController?.pushViewController(vc, animated: true)
- case WillJumpType.selfPersonalInfo:
- let vc = SelfMentionContactsListViewController()
- self?.navigationController?.pushViewController(vc, animated: true)
- case WillJumpType.selfAddressInfo:
- let vc = SelfRecommendationViewController()
- self?.navigationController?.pushViewController(vc, animated: true)
- }
- }
-
- orderPayView.commitOrderTransBlock = {
- [weak self] (paraMdl) in
- if self?.selListModelArr != nil {
- self?.orderCreateApi(paraMdl: paraMdl)
- }
- }
- }
-
- private lazy var orderPayView: ShoppingCartOrderPayView = {
- let orderPayView = ShoppingCartOrderPayView()
- orderPayView.proListModelArr = self.selListModelArr
- orderPayView.totalProductPrice = self.totalProductPrice ?? 0
- return orderPayView
- }()
-
- /// 获取默认快递信息
- func userDefaultExpressApi() {
- SwiftMoyaNetWorkServiceUser.shared().userDefaultExpressApi { [weak self] (expressAddrModel) -> (Void) in
- self?.orderPayView.expressAddressMdl = expressAddrModel as? ExpressAddresModel
- }
- }
-
- // 获取默认用户自提信息
- func userDefaultContactApi() {
- SwiftMoyaNetWorkServiceUser.shared().userDefaultContactApi { [weak self] (contactModel) -> (Void) in
- self?.orderPayView.selfAddressInfoMdl = contactModel as? DefaultContactInfoModel
- }
- }
-
- // 创建订单
- func orderCreateApi(paraMdl: OrderCreateParameterModel) {
-
- SwiftMoyaNetWorkServiceOrder.shared().orderCreateApi(paraMdl: paraMdl) { (orderBackModel) -> (Void) in
- // 弹出支付方式View
- PayManagerPay.shared.payAlertView(orderPayModel: orderBackModel as! OrderCreateBackModel)
- }
- }
- }
|