123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- //
- // SelfRecommendationViewController.swift
- // RainbowPlanet
- //
- // Created by 南鑫林 on 2019/4/19.
- // Copyright © 2019 南鑫林. All rights reserved.
- //
- import UIKit
- class SelfRecommendationViewController: BaseViewController {
- /// 纬度
- var latitude : String = LocationModel.shared().getLocationModel()?.latitude ?? "34.20840377740726"
- /// 经度
- var longitude : String = LocationModel.shared().getLocationModel()?.longitude ?? "108.96265686107972"
-
- var selfMentionAddressArray = Array<SelfMentionAddressModel>()
-
- typealias DidSelectClosure = () -> Void
- var didSelectClosure : DidSelectClosure?
-
-
- override func viewDidLoad() {
- super.viewDidLoad()
- navigationBar.title = "自提点推荐"
- setupViews()
- setupLayouts()
- setupData()
- }
-
- override func setupViews() {
- view.addSubview(selfRecommendationView)
-
- }
-
- override func setupLayouts() {
- selfRecommendationView.snp.makeConstraints { (make) in
- make.top.equalTo(navigationBar.snp.bottom)
- make.left.right.bottom.equalToSuperview()
- }
- }
-
- override func setupData() {
- self.selfRecommendationView.collectionView.addHeaderWithHeader(withBeginRefresh: true, animation: false) {
- [weak self] (page) in
- self?.configPickupNodeIndexApi( page: page)
- }
- self.selfRecommendationView.collectionView.addFooterWithWithHeader(withAutomaticallyRefresh: true) {
- [weak self] (page) in
- self?.configPickupNodeIndexApi(page:page)
- }
- }
-
- private lazy var selfRecommendationView: SelfRecommendationView = {
- let selfRecommendationView = SelfRecommendationView()
- selfRecommendationView.goShoppingBlock = { //去首页快递
- [weak self] in
- let deliveryMethodTypeModel = DeliveryMethodTypeModel.shared().getModel()
- if deliveryMethodTypeModel?.deliveryMethodType?.isEmpty ?? true {
- self?.tabbarController(deliveryMethodType: "0")
- }else {
- self?.tabbarController(deliveryMethodType: deliveryMethodTypeModel?.deliveryMethodType ?? "0")
- }
- }
- selfRecommendationView.didSelectGoShoppingBlock = { //去首页自提
- [weak self] indexPath in
- let selfMentionAddressModel = self?.selfMentionAddressArray[indexPath.row]
- self?.userAddSelfAddressApi(cityId:selfMentionAddressModel?.cityId ?? 0,cityName: selfMentionAddressModel?.cityName ?? "",pickupNodeId:selfMentionAddressModel?.id ?? 0, address: selfMentionAddressModel?.address ?? "")
-
- }
- selfRecommendationView.changeLocationBlock = {
- [weak self] in
- let vc = AddressPOIViewController()
- vc.didSelectBlock = {
- [weak self] (latitude:String,longitude:String,address:String) in
- selfRecommendationView.locationAddress = address
- self?.latitude = latitude
- self?.longitude = longitude
- self?.selfRecommendationView.collectionView.scrollsToTop = true
- self?.configPickupNodeIndexApi(page:1)
- }
- self?.navigationController?.pushViewController(vc, animated: true)
-
- }
- return selfRecommendationView
- }()
-
- private func tabbarController(deliveryMethodType:String) {
- let model = DeliveryMethodTypeModel.shared().getModel()
- model?.deliveryMethodType = deliveryMethodType
- DeliveryMethodTypeModel.shared().setModel(model: model!)
- if self.presentingViewController != nil {
- self.dismiss(animated: false, completion: {
- kAppDelegate.setTabbarController()
- })
- } else {
- kAppDelegate.setTabbarController()
- }
- }
-
-
- /// 加载数据
- ///
- /// - Parameter page: 分页
- func configPickupNodeIndexApi(page:Int) {
- SwiftMoyaNetWorkServiceConfig.shared().configPickupNodeIndexApi(longitude: longitude, latitude: latitude,page: page) {
- [weak self] (selfMentionAddressListModel) -> (Void) in
- let selfMentionAddressListModel = selfMentionAddressListModel as? SelfMentionAddressListModel
- if selfMentionAddressListModel?.pagination?.currentPage ?? 1 <= selfMentionAddressListModel?.pagination?.totalPages ?? 1 {
- if selfMentionAddressListModel?.pagination?.currentPage == 1{
- self?.selfMentionAddressArray.removeAll()
- }
- self?.selfMentionAddressArray = (self?.selfMentionAddressArray)! + (selfMentionAddressListModel?.data!)!
- self?.selfRecommendationView.selfMentionAddressArray = self?.selfMentionAddressArray
- }else {
- self?.selfRecommendationView.collectionView.endFooterNoMoreData()
- }
- }
- }
-
-
- /// 新增自提地址
- ///
- /// - Parameters:
- /// - pickupNodeId: 自提点id
- /// - address: 详细地址
- func userAddSelfAddressApi(cityId:Int = 0,cityName:String = "",pickupNodeId:Int = 0,address:String) {
- SwiftMoyaNetWorkServiceUser.shared().userAddSelfAddressApi(cityId: cityId, cityName: cityName, pickupNodeId: pickupNodeId, address: address) {
- [weak self] (data) -> (Void) in
- let deliveryMethodTypeModel = DeliveryMethodTypeModel.shared().getModel()
- if deliveryMethodTypeModel?.deliveryMethodType?.isEmpty ?? true {
- self?.tabbarController(deliveryMethodType: "1")
- }else {
- if let didSelectClosure = self?.didSelectClosure {
- didSelectClosure()
- }
- self?.navigationController?.popViewController(animated: true)
- }
- }
- }
-
-
- }
|