// // SwiftMoyaNetWorkServiceCMS.swift // RainbowPlanet // // Created by 南鑫林 on 2019/5/6. // Copyright © 2019 南鑫林. All rights reserved. // import UIKit import Moya import SwiftyJSON import ObjectMapper import Realm import RealmSwift class SwiftMoyaNetWorkServiceCMS: NSObject { private static let _sharedInstance = SwiftMoyaNetWorkServiceCMS() private override init() {} // 私有化init方法 class func shared() -> SwiftMoyaNetWorkServiceCMS { return _sharedInstance } /// 数据回调 typealias apiCallBack = (Any) -> (Void) /// 数据回调 typealias apiFalseCallBack = () -> (Void) /// 获取模板名称 /// /// - Parameter completion: 完成 func cmsTemplateSetTemplateNameApi(completion: @escaping apiCallBack) { var parameters = Dictionary() let loacationModel = LocationModel.shared().getLocationModel() let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode) parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id") SwiftProgressHUD.shared().showWait() SwiftMoyaNetWorkManager.shared.requestArray(CMSTemplateModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetTemplateName(parameters: parameters))) { (cmsTemplateModels) in SwiftProgressHUD.shared().hide() completion(cmsTemplateModels) } } /// 获取首页 /// /// - Parameter completion: 完成 func cmsTemplateSetPreviewApi(type:Int,completion: @escaping apiCallBack) { var parameters = Dictionary() SwiftProgressHUD.shared().showWait() let loacationModel = LocationModel.shared().getLocationModel() let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode) parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id") parameters.updateValue(type, forKey: "type") SwiftMoyaNetWorkManager.shared.request(CMSModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetPreview(parameters: parameters))) { (cmsModel) in SwiftProgressHUD.shared().hide() completion(cmsModel) } } /// 获取商品列表 /// /// - Parameter completion: 完成 func cmsTemplateSetProductListApi(subjectId:String = "",completion: @escaping apiCallBack) { var parameters = Dictionary() parameters.updateValue(subjectId, forKey: "subject_id") SwiftProgressHUD.shared().showWait() SwiftMoyaNetWorkManager.shared.requestArray(ProductSearchModel.self,target: MultiTarget(SwiftMoyaServiceCMSApi.cmsTemplateSetProductList(parameters: parameters))) { (productSearchModels) in SwiftProgressHUD.shared().hide() completion(productSearchModels) } } }