123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192 |
- //
- // SwiftMoyaNetWorkServiceConfig.swift
- // RainbowPlanet
- //
- // Created by 南鑫林 on 2019/4/26.
- // Copyright © 2019 南鑫林. All rights reserved.
- //
- import UIKit
- import Moya
- import SwiftyJSON
- import ObjectMapper
- class SwiftMoyaNetWorkServiceConfig: NSObject {
- private static let _sharedInstance = SwiftMoyaNetWorkServiceConfig()
-
- private override init() {} // 私有化init方法
-
- class func shared() -> SwiftMoyaNetWorkServiceConfig {
- return _sharedInstance
- }
-
- /// 前端config配置
- ///
- /// - Parameter completion: 回调
- func configApi(completion: @escaping successCallBack,fail:@escaping failCallback) {
- let parameters = Dictionary<String,Any>()
- SwiftMoyaNetWorkManager.shared.requestObject(ConfigModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configConfig(parameters: parameters)), completion: {(configModel) in
- ConfigModel.shared.saveObject(configModel: configModel as! ConfigModel)
- completion(configModel)
- }) {
- (loadingStatus) in
- fail(loadingStatus)
- }
- }
-
- /// 自提点列表
- ///
- /// - Parameters:
- /// - longitude: 经度
- /// - latitude: 纬度
- /// - page: 页数
- /// - completion: 完成
- func configPickupNodeIndexApi(longitude:String?,latitude:String?, page:Int = 1,completion: @escaping successCallBack) {
- var parameters = Dictionary<String,Any>()
- let loacationModel = LocationModel.shared().object()
- let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode)
- parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id")
- parameters.updateValue(longitude ?? "", forKey: "longitude")
- parameters.updateValue(latitude ?? "", forKey: "latitude")
- parameters.updateValue(page, forKey: "page")
-
-
- SwiftMoyaNetWorkManager.shared.requestObject(SelfMentionAddressListModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configPickupNodeIndex(parameters: parameters)), completion: {(selfMentionAddressListModel) in
-
- completion(selfMentionAddressListModel)
- }) {
- (loadingStatus) in
- }
- }
-
- /// 已开通城市列表
- ///
- /// - Parameters:
- /// - city_id: 城市Id
- /// - page: 页数
- /// - completion: 完成
- func configCityManagementIndexApi(page:Int = 1,completion: @escaping successCallBack) {
- var parameters = Dictionary<String,Any>()
- let loacationModel = LocationModel.shared().object()
- let baiduToCityModel = BaiduToCityFactory.shared.query(bjcityId: loacationModel!.cityCode)
- parameters.updateValue(baiduToCityModel.areaCode, forKey: "city_id")
- parameters.updateValue(page, forKey: "page")
-
-
- SwiftMoyaNetWorkManager.shared.requestObject(OpenCityListModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configCityManagementIndex(parameters: parameters)), completion: {
- (selfMentionAddressListModel) in
-
- completion(selfMentionAddressListModel)
- }) {
- (loadingStatus) in
- }
- }
-
- // MARK: 单图上传
- /// 单图上传
- ///
- /// - Parameters:
- /// - imageArray: 图片数据
- /// - completion: null
- func configUploadSingleImgApi(imageArray:Array<UIImage>, completion: @escaping successCallBack) {
-
- var multipartData = Array<Any>()
- let parameters = Dictionary<String,Any>()
- for (_,image) in imageArray.enumerated() {
- let data = image.jpegData(compressionQuality: 0.3)
- let today = Date()
- let formData = MultipartFormData(provider: .data(data!), name: "image",fileName: "\(today).png", mimeType: "image/png")
- multipartData.append(formData)
- }
-
- SwiftMoyaNetWorkManager.shared.requestObject(ImageUrlModel.self, target: MultiTarget(SwiftMoyaServiceConfigApi.configUploadSingleImg(parameters: parameters, dataArray: multipartData)), completion: { (imageUrlModel) in
- let imageUrlModel = imageUrlModel as! ImageUrlModel
-
- completion(imageUrlModel.url as Any)
- }) {
- (loadingStatus) in
- }
- }
-
- // MARK: 单图上传(无提示框)
- /// 单图上传
- ///
- /// - Parameters:
- /// - imageArray: 图片数据
- /// - completion: null
- func configUploadSingleImgWithoutHudApi(imageArray:Array<UIImage>, completion: @escaping successCallBack) {
-
- var multipartData = Array<Any>()
- let parameters = Dictionary<String,Any>()
- for (_,image) in imageArray.enumerated() {
- let data = image.jpegData(compressionQuality: 1)
- let today = Date()
- let formData = MultipartFormData(provider: .data(data!), name: "image",fileName: "\(today).png", mimeType: "image/png")
-
- multipartData.append(formData)
- }
- SwiftMoyaNetWorkManager.shared.requestObject(ImageUrlModel.self, target: MultiTarget(SwiftMoyaServiceConfigApi.configUploadSingleImg(parameters: parameters, dataArray: multipartData)), completion: { (imageUrlModel) in
- let imageUrlModel = imageUrlModel as! ImageUrlModel
- completion(imageUrlModel.url as Any)
- }) {
- (loadingStatus) in
- }
- }
-
- // MARK: 多图上传
- /// 多图上传
- ///
- /// - Parameters:
- /// - imageArray: 图片数据
- /// - completion: null
- func configUploadMultiImgApi(imageArray:Array<UIImage>, completion: @escaping successCallBack) {
-
- var multipartData = Array<Any>()
- let parameters = Dictionary<String,Any>()
- for (_,image) in imageArray.enumerated() {
- let data = image.jpegData(compressionQuality: 0.3)
- let today = Date()
- let formData = MultipartFormData(provider: .data(data!), name: "image[]",fileName: "\(today).png", mimeType: "image/png")
-
- multipartData.append(formData)
- }
-
- SwiftMoyaNetWorkManager.shared.requestAnyArray(target: MultiTarget(SwiftMoyaServiceConfigApi.configUploadMultiImg(parameters: parameters, dataArray: multipartData)), completion: { (imgUrlArr) in
-
- completion(imgUrlArr)
- }) {
- (loadingStatus) in
- }
- }
-
- // MARK: 邀请海报
- func configPosterInviteApi(completion: @escaping successCallBack) {
- let parameters = Dictionary<String,Any>()
-
- SwiftMoyaNetWorkManager.shared.requestAny(target: MultiTarget(SwiftMoyaServiceConfigApi.configPosterInvite(parameters: parameters)), completion: { (data) in
-
- completion(data)
- }) {
- (loadingStatus) in
- }
- }
-
-
- /// 系统升级接口
- ///
- /// - Parameter completion: <#completion description#>
- func configUpGradeApi(completion: @escaping successCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue("ios", forKey: "os")
- parameters.updateValue(AppInfo.clientBuildVersion, forKey: "version_code")
- SwiftMoyaNetWorkManager.shared.requestObject(UpdateVersionModel.self,target: MultiTarget(SwiftMoyaServiceConfigApi.configUpgrade(parameters: parameters)), completion: { (updateVersionModel) in
- UpdateVersionModel.shared.saveObject(model: updateVersionModel as? UpdateVersionModel ?? UpdateVersionModel())
- completion(updateVersionModel)
- }) {
- (loadingStatus) in
- }
- }
-
- }
|