SwiftMoyaNetWorkServiceCMS.swift 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. //
  2. // SwiftMoyaNetWorkServiceCMS.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/5/6.
  6. // Copyright © 2019 南鑫林. All rights reserved.
  7. //
  8. import UIKit
  9. import Moya
  10. import SwiftyJSON
  11. import ObjectMapper
  12. import Realm
  13. import RealmSwift
  14. class SwiftMoyaNetWorkServiceCMS: NSObject {
  15. private static let _sharedInstance = SwiftMoyaNetWorkServiceCMS()
  16. private override init() {} // 私有化init方法
  17. class func shared() -> SwiftMoyaNetWorkServiceCMS {
  18. return _sharedInstance
  19. }
  20. /// 数据回调
  21. typealias apiCallBack = (Any) -> (Void)
  22. /// 数据回调
  23. typealias apiFalseCallBack = () -> (Void)
  24. /// 获取模板名称
  25. ///
  26. /// - Parameter completion: 完成
  27. func cmsTemplateSetTemplateNameApi(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. SwiftProgressHUD.shared().showWait()
  33. SwiftMoyaNetWorkManager.shared.requestArray(CMSTemplateModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetTemplateName(parameters: parameters))) {
  34. (cmsTemplateModels) in
  35. SwiftProgressHUD.shared().hide()
  36. completion(cmsTemplateModels)
  37. }
  38. }
  39. /// 获取首页
  40. ///
  41. /// - Parameter completion: 完成
  42. func cmsTemplateSetPreviewApi(type:Int,completion: @escaping apiCallBack) {
  43. var parameters = Dictionary<String,Any>()
  44. SwiftProgressHUD.shared().showWait()
  45. let loacationModel = LocationModel.shared().getLocationModel()
  46. let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode)
  47. parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id")
  48. parameters.updateValue(type, forKey: "type")
  49. SwiftMoyaNetWorkManager.shared.request(CMSModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetPreview(parameters: parameters))) {
  50. (cmsModel) in
  51. SwiftProgressHUD.shared().hide()
  52. completion(cmsModel)
  53. }
  54. }
  55. /// 获取商品列表
  56. ///
  57. /// - Parameter completion: 完成
  58. func cmsTemplateSetProductListApi(subjectId:String = "",completion: @escaping apiCallBack) {
  59. var parameters = Dictionary<String,Any>()
  60. parameters.updateValue(subjectId, forKey: "subject_id")
  61. SwiftProgressHUD.shared().showWait()
  62. SwiftMoyaNetWorkManager.shared.requestArray(ProductSearchModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetProductList(parameters: parameters))) {
  63. (productSearchModels) in
  64. SwiftProgressHUD.shared().hide()
  65. completion(productSearchModels)
  66. }
  67. }
  68. }