SwiftMoyaNetWorkServiceConfig.swift 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. //
  2. // SwiftMoyaNetWorkServiceConfig.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/4/26.
  6. // Copyright © 2019 南鑫林. All rights reserved.
  7. //
  8. import UIKit
  9. import Moya
  10. import SwiftyJSON
  11. import ObjectMapper
  12. class SwiftMoyaNetWorkServiceConfig: NSObject {
  13. private static let _sharedInstance = SwiftMoyaNetWorkServiceConfig()
  14. private override init() {} // 私有化init方法
  15. class func shared() -> SwiftMoyaNetWorkServiceConfig {
  16. return _sharedInstance
  17. }
  18. /// 数据回调
  19. typealias apiCallBack = (Any) -> (Void)
  20. /// 自提点列表
  21. ///
  22. /// - Parameters:
  23. /// - longitude: 经度
  24. /// - latitude: 纬度
  25. /// - page: 页数
  26. /// - completion: 完成
  27. func configPickupNodeIndexApi(longitude:String?,latitude:String?, page:Int = 1,completion: @escaping apiCallBack) {
  28. var parameters = Dictionary<String,Any>()
  29. let loacationModel = LocationModel.shared().getLocationModel()
  30. let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode)
  31. parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id")
  32. parameters.updateValue(longitude ?? "", forKey: "longitude")
  33. parameters.updateValue(latitude ?? "", forKey: "latitude")
  34. parameters.updateValue(page, forKey: "page")
  35. SwiftProgressHUD.shared().showWait()
  36. SwiftMoyaNetWorkManager.shared().request(SelfMentionAddressListModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configPickupNodeIndex(parameters: parameters))) {(selfMentionAddressListModel) in
  37. SwiftProgressHUD.shared().hide()
  38. completion(selfMentionAddressListModel)
  39. }
  40. }
  41. /// 已开通城市列表
  42. ///
  43. /// - Parameters:
  44. /// - city_id: 城市Id
  45. /// - page: 页数
  46. /// - completion: 完成
  47. func configCityManagementIndexApi(page:Int = 1,completion: @escaping apiCallBack) {
  48. var parameters = Dictionary<String,Any>()
  49. let loacationModel = LocationModel.shared().getLocationModel()
  50. let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode)
  51. parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id")
  52. parameters.updateValue(page, forKey: "page")
  53. SwiftProgressHUD.shared().showWait()
  54. SwiftMoyaNetWorkManager.shared().request(OpenCityListModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configCityManagementIndex(parameters: parameters))) {
  55. (selfMentionAddressListModel) in
  56. SwiftProgressHUD.shared().hide()
  57. completion(selfMentionAddressListModel)
  58. }
  59. }
  60. }