123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656 |
- //
- // SwiftMoyaNetWorkServiceUser.swift
- // RainbowPlanet
- //
- // Created by 南鑫林 on 2019/3/29.
- // Copyright © 2019 南鑫林. All rights reserved.
- //
- import Foundation
- import Moya
- import SwiftyJSON
- import ObjectMapper
- public class SwiftMoyaNetWorkServiceUser: NSObject {
- private static let sharedInstance = SwiftMoyaNetWorkServiceUser()
- private override init() {} // 私有化init方法
- public class func shared() -> SwiftMoyaNetWorkServiceUser {
- return sharedInstance
- }
-
- /// 数据回调
- typealias apiCallBack = (Any) -> (Void)
- // MARK: - 微信注册/登录
- /// 微信注册/登录
- ///
- /// - Parameters:
- /// - open_id: 微信 open_id
- /// - union_id: 微信 string
- /// - avatar: 头像
- /// - username: 昵称
- /// - gender: 性别 1男 2女
- /// - completion: 回调
- func userWeiXinRegisterApi(open_id:String,union_id:String,avatar:String,username:String,gender:Int,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(open_id, forKey: "open_id")
- parameters.updateValue(union_id, forKey: "union_id")
- parameters.updateValue(avatar, forKey: "avatar")
- parameters.updateValue(username, forKey: "username")
- parameters.updateValue(gender, forKey: "gender")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userWeiXinRegister(parameters: parameters))) { (userModel) in
- let userModel = userModel as! UserModel
- SwiftProgressHUD.shared().hide()
- completion(userModel as Any)
- }
- }
- // MARK: - 手机注册/登录
- /// 手机注册/登录
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - sms_code: 短信验证码
- /// - completion: 回调
- func userMobileRegisterApi(mobile:String,sms_code:String,invitationCode:String,completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(sms_code, forKey: "sms_code")
- parameters.updateValue(invitationCode, forKey: "invite_code")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userMobileRegister(parameters: parameters))) { (userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
-
- }
- // MARK: - 手机密码登录
- /// 手机密码登录
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - password: 密码
- /// - completion: 回调
- func userMobileLoginApi(mobile:String,password:String,completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(password, forKey: "password")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userMobileLogin(parameters: parameters))) { (userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- }
-
- // MARK: - 刷新令牌
- /// 刷新令牌
- ///
- /// - Parameters:
- /// - completion: 回调
- func userRefreshApi(completion: @escaping apiCallBack) {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userRefresh(parameters: parameters))) { (userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
-
- // MARK: - 登出
- /// 登出
- ///
- /// - Parameters:
- /// - completion: 回调
- func userLogoutApi() {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestAny(target: MultiTarget(SwiftMoyaServiceUserApi.userLogout(parameters: parameters))) { (data) in
- kAppDelegate.setLoginController()
- SwiftProgressHUD.shared().hide()
- }
- }
- // MARK: - 绑定手机号
- /// 绑定手机号
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - smsCode: 验证码
- /// - unionId: 微信unioId
- /// - openId: 微信openId
- /// - completion: 回调
- func userBindMobileApi(mobile:String,smsCode:String,unionId:String,openId:String,invitationCode:String,completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(smsCode, forKey: "sms_code")
- parameters.updateValue(unionId, forKey: "union_id")
- parameters.updateValue(openId, forKey: "open_id")
- parameters.updateValue(invitationCode, forKey: "invite_code")
-
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userBindMobile(parameters: parameters))) { (userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- }
-
- // MARK: - 检查是否绑定微信 绑定
- /// 检查是否绑定微信 绑定
- ///
- /// - Parameters:
- /// - umLoginModel: UMLoginModel
- /// - completion: 回调
- func userIsBindWeixinBindApi(umLoginModel:UMLoginModel,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(umLoginModel.union_id, forKey: "union_id")
- parameters.updateValue(umLoginModel.open_id, forKey: "open_id")
-
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userIsBindWeixin(parameters: parameters))) {
- [weak self] (rootModel) in
- if rootModel.code == 0 {
- SwiftProgressHUD.shared().hide()
- self?.userBindWeixinApi(mobile: UserModel.shared().getModel()?.mobile ?? "", umLoginModel: umLoginModel, completion: completion)
- }else if rootModel.code == 1 {
- SwiftProgressHUD.shared().hide()
- AlertSheetView.alert(title: rootModel.msg ?? "此微信号被其他账号绑定,是否要将此微信号绑定至本账号,并解绑另一起账号?", cancelTitle: "取消", sureTitle: "确认", cancelBlock: { (popupView, index, string) in
-
- }, confirmBlock: { (popupView, index, string) in
- AlertSheetView.alert(title: "确认后,原账号将无法以此微信登录,请确保原账号有其他登录方式,否则原账号将无法登录", cancelTitle: "取消", sureTitle: "确认", cancelBlock: { (popupView, index, string) in
-
- }, confirmBlock: {
- [weak self] (popupView, index, string) in
- self?.userBindWeixinApi(mobile: UserModel.shared().getModel()?.mobile ?? "", umLoginModel: umLoginModel, completion: completion)
- })
- })
- }else {
- SwiftProgressHUD.shared().showText(rootModel.msg ?? "信息有误")
- }
- }
- }
-
- // MARK: - 绑定手号
- /// 绑定手机号
- ///
- /// - Parameters:w
- /// - mobile: 手机号
- /// - umLoginModel: 微信模型
- /// - completion: 回调
- func userBindWeixinApi(mobile:String,umLoginModel:UMLoginModel,completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(umLoginModel.open_id, forKey: "open_id")
- parameters.updateValue(umLoginModel.union_id, forKey: "union_id")
- parameters.updateValue(umLoginModel.avatar, forKey: "avatar")
- parameters.updateValue(umLoginModel.username, forKey: "username")
- parameters.updateValue(umLoginModel.gender, forKey: "gender")
-
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userBindWeixin(parameters: parameters))) { (userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
-
- }
-
- // MARK: - 解绑微信
- /// 解绑微信
- ///
- /// - Parameters:
- /// - unionId: 微信unionId
- /// - openId: 微信openId
- /// - completion: 回调
- func userUnbindWeixinApi(completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- let userModel = UserModel.shared().getModel()
- parameters.updateValue(userModel!.unionId! as Any, forKey: "union_id")
- parameters.updateValue(userModel!.openId! as Any, forKey: "open_id")
- if userModel?.mobile == nil || userModel?.mobile == "" {
- SwiftProgressHUD.shared().showText("暂时不可以解绑,请先绑定手机号")
- }else {
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userUnbindWeixin(parameters: parameters))) {(userModel) in
- UserModel.shared().setModel(model: userModel as! UserModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- }
- // MARK: - 设置密码
- /// 设置密码
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - password: 密码
- /// - password_confirmation: 确认密码
- /// - completion: 回调
- func userSetPasswordApi(mobile:String,password:String,password_confirmation:String,completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(password, forKey: "password")
- parameters.updateValue(password_confirmation, forKey: "password_confirmation")
-
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userSetPassword(parameters: parameters))) {(rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- let userModel = UserModel.shared().getModel()
- let setPasswordModel = SetPasswordModel(JSONString: rootModel.data ?? "")
- userModel?.isPassword = setPasswordModel?.isPassword
- UserModel.shared().setModel(model: userModel!)
- completion("")
- }
- }
- }
- }
-
- // MARK: - 用户自提点,快递地址列表
- /// 用户自提点,快递地址列表
- ///
- /// - Parameters:
- /// - type: 0所有列表,1自提列表,2快递
- /// - city_id: 城市id
- /// - completion: 回调
- func userSelfAndExpressAddressListApi(type:Int,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- 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")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(AddressManagerListModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userSelfAddressList(parameters: parameters))) {(addressManagerListModel) in
- SwiftProgressHUD.shared().hide()
- completion(addressManagerListModel)
- }
- }
-
- // MARK: - (新增、编辑)快递地址
- /// 新增、编辑)快递地址
- ///
- /// - Parameters:
- /// - id: 表id 修改适合传
- /// - contactName: 收货人
- /// - contactMobile: 联系电话
- /// - provinceId: 省id
- /// - provinceName: 省份名称
- /// - cityId: 城市id
- /// - cityName: 城市名称
- /// - areaId: 区id
- /// - areaName: 区名称
- /// - address: 详细地址
- /// - zipcode: 邮政编码 710110
- /// - completion: 回调
- func userAddExpressAddressApi(expressAddresModel:ExpressAddresModel, completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: expressAddresModel.contactMobile ?? "") {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(expressAddresModel.id ?? "", forKey: "id")
- parameters.updateValue(expressAddresModel.contactName ?? "", forKey: "contact_name")
- parameters.updateValue(expressAddresModel.contactMobile ?? "", forKey: "contact_mobile")
- parameters.updateValue(expressAddresModel.provinceId ?? "", forKey: "province_id")
- parameters.updateValue(expressAddresModel.provinceName ?? "", forKey: "province_name")
- parameters.updateValue(expressAddresModel.cityId ?? "", forKey: "city_id")
- parameters.updateValue(expressAddresModel.cityName ?? "", forKey: "city_name")
- parameters.updateValue(expressAddresModel.areaId ?? "", forKey: "area_id")
- parameters.updateValue(expressAddresModel.areaName ?? "", forKey: "area_name")
- parameters.updateValue(expressAddresModel.address ?? "", forKey: "address")
-
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userAddExpressAddress(parameters: parameters))) {(rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
-
- }
-
- // MARK: - 设置(自提/快递)默认地址
- /// 设置(自提/快递)默认地址
- ///
- /// - Parameters:
- /// - id: 表id 修改适合传
- func userAddressIsDefaultApi(id:Int = 0,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(id, forKey: "id")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userAddressIsDefault(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
- // MARK: - 删除(自提/快递)地址
- /// 删除(自提/快递)地址
- ///
- /// - Parameters:
- /// - id: 地址Id
- func userAddressDeleteApi(id:Int = 0,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(id, forKey: "id")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userAddressDelete(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
- // MARK: - 自提点收货人列表
- /// 自提点收货人列表
- ///
- /// - Parameter completion: 成功回调
- func userExpreesContactsListApi(completion: @escaping apiCallBack) {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(ContactListModel.self, target: MultiTarget(SwiftMoyaServiceUserApi.userExpreesContactsList(parameters: parameters))) { (contactListModel) in
- SwiftProgressHUD.shared().hide()
- completion(contactListModel)
- }
- }
-
- // MARK: - 获取默认快递信息
- /// 获取默认快递信息
- ///
- /// - Parameter completion: 成功回调
- func userDefaultExpressApi(completion: @escaping apiCallBack) {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(ExpressAddresModel.self, target: MultiTarget(SwiftMoyaServiceUserApi.userDefaultExpress(parameters: parameters))) { (expressAddrModel) in
- SwiftProgressHUD.shared().hide()
- completion(expressAddrModel as Any)
- }
- }
-
- // MARK: - 获取默认快递信息
- /// 获取默认快递信息
- ///
- /// - Parameter completion: 成功回调
- func userDefaultContactApi(completion: @escaping apiCallBack) {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(SelfMentionContactsModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userDefaultContact(parameters: parameters))) {(contactMdl) in
- SwiftProgressHUD.shared().hide()
- completion(contactMdl as Any)
- }
- }
-
- // MARK: - 新增、编辑 自提地址收货人信息
- /// 新增、编辑 自提地址收货人信息
- ///
- /// - Parameters:
- /// - id: 收货人id
- /// - mobile: 手机号码
- /// - name: 用户名
- /// - completion: 完成
- func userSaveExpreesContactsApi(id:Int = 0,mobile:String = "",name:String = "",completion: @escaping apiCallBack) {
-
- if isMobileVerification(mobile: mobile) {
- if name.count <= 0 {
- SwiftProgressHUD.shared().showText("收货人信息不能为空")
- }else {
- var parameters = Dictionary<String,Any>()
- if id != 0 {
- parameters.updateValue(id, forKey: "id")
- }
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(name, forKey: "name")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userSaveExpreesContacts(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
- }
- }
-
- // MARK: - 删除自提点收货人信息
- /// 删除自提点收货人信息
- ///
- /// - Parameters:
- /// - id: 收货人id
- /// - completion: 完成
- func userDelExpreesContactsApi(id:Int = 0,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(id, forKey: "id")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userDelExpreesContacts(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
- // MARK: - 自提点收货人信息,设置默认
- /// 自提点收货人信息,设置默认
- ///
- /// - Parameters:
- /// - id: 收货人id
- /// - completion: 完成
- func userSetExpreesContactsDefaultApi(id:Int = 0,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(id, forKey: "id")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userSetExpreesContactsDefault(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
- // MARK: - 新增自提地址
- /// 新增自提地址
- ///
- /// - Parameters:
- /// - pickupNodeId: 自提点id
- /// - address: 详细地址
- /// - completion: 完成
- func userAddSelfAddressApi(cityId:Int = 0,cityName:String = "",pickupNodeId:Int = 0,address:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(cityId, forKey: "city_id")
- parameters.updateValue(cityName, forKey: "city_name")
- parameters.updateValue(pickupNodeId, forKey: "pickup_node_id")
- parameters.updateValue(address, forKey: "address")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userAddSelfAddress(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- completion("")
- }
- }
- }
-
- // MARK: - 设置用户配送方式
- /// 设置用户配送方式
- ///
- /// - Parameters:
- /// - deliveryMethodType: 0所有列表,1自提列表,2快递
- /// - completion: 返回
- func userSetDeliverTypeApi(deliveryMethodType:String = "2",completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(deliveryMethodType, forKey: "deliver_type")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestRootModel(target: MultiTarget(SwiftMoyaServiceUserApi.userSetDeliverType(parameters: parameters))) {
- (rootModel) in
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- if rootModel.code == 0 {
- // 设置成功更新本地存储数据
- let model = DeliveryMethodTypeModel.shared().getModel()
- model?.deliveryMethodType = deliveryMethodType
- DeliveryMethodTypeModel.shared().setModel(model: model!)
- completion("")
- }
- }
- }
-
- // MARK: - 修改用户性别
- /// 修改用户性别
- ///
- /// - Parameters:
- /// - gender: 0位置 1男 2女
- /// - completion: 回调
- func userGenderApi(gender:Int = 0,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(gender, forKey: "gender")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestAny(target: MultiTarget(SwiftMoyaServiceUserApi.userMemberUpdateGender(parameters: parameters))) { (data) in
- // 设置成功更新本地存储数据
- let model = UserModel.shared().getModel()
- model?.gender = gender
- UserModel.shared().setModel(model: model!)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
-
- // MARK: - 用户信息详情
- /// 用户信息详情
- ///
- /// - Parameter completion: 回调UserDetailModel
- func userMemberDetailApi(uid:Int,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(uid, forKey: "uid")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserDetailModel.self, target: MultiTarget(SwiftMoyaServiceUserApi.userMemberDetail(parameters: parameters))) { (userDetailModel) in
- SwiftProgressHUD.shared().hide()
- completion(userDetailModel)
- }
- }
-
- // MARK: - 更新用户信息详情
- /// 更新用户信息详情
- ///
- /// - Parameter completion: 回调UserDetailModel
- func userMemberDetailUpDateApi(avatar:String,userName:String,signature:String,completion: @escaping apiCallBack) {
- if avatar == "" {
- SwiftProgressHUD.shared().showText("头像不能为空")
- return
- }else if userName == "" {
- SwiftProgressHUD.shared().showText("昵称不能为空")
- return
- }
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(avatar, forKey: "avatar")
- parameters.updateValue(userName, forKey: "username")
- parameters.updateValue(signature, forKey: "signature")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestAny(target: MultiTarget(SwiftMoyaServiceUserApi.userMemberDetailUpDate(parameters: parameters))) { (data) in
- SwiftProgressHUD.shared().hide()
- let userModel = UserModel.shared().getModel()
- userModel?.avatarurl = avatar
- userModel?.username = userName
- UserModel.shared().setModel(model: userModel!)
- completion("")
- }
- }
-
- // MARK: - 用户关注列表
- /// 用户关注列表
- ///
- /// - Parameter completion: 回调UserDetailModel
- func userFollowsApi(uid:Int,page:Int = 1,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(uid, forKey: "uid")
- parameters.updateValue(page, forKey: "page")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserFollowsModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userFollows(parameters: parameters))) { (userFollowsModel) in
- SwiftProgressHUD.shared().hide()
- completion(userFollowsModel)
- }
- }
-
- // MARK: - 粉丝列表
- /// 粉丝列表
- ///
- /// - Parameter completion: 回调UserDetailModel
- func userFansApi(uid:Int,page:Int = 1,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(page, forKey: "page")
- parameters.updateValue(uid, forKey: "uid")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(UserFansModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userFans(parameters: parameters))) { (userFansModel) in
- SwiftProgressHUD.shared().hide()
- completion(userFansModel)
- }
- }
-
- // MARK: - 关注
- /// 关注
- ///
- /// - Parameters:
- /// - followUid: 被关注人id
- /// - completion: 回调
- func userFollowApi(followUid:Int,completion: @escaping apiCallBack) {
-
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(followUid, forKey: "follow_uid")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(FollowStatusModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userFollow(parameters: parameters))) { (followStatusModel) in
- SwiftProgressHUD.shared().showText("已关注")
- completion(followStatusModel)
- }
- }
-
- // MARK: - 取消关注
- /// 取消关注
- ///
- /// - Parameters:
- /// - followUid: 被取消关注人id
- /// - completion: 回调
- func userCancelFollowApi(followUid:Int,completion: @escaping apiCallBack) {
-
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(followUid, forKey: "follow_uid")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared.requestObject(FollowStatusModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.userCancelFollow(parameters: parameters))) { (followStatusModel) in
- SwiftProgressHUD.shared().showText("已取消关注")
- completion(followStatusModel)
- }
- }
- }
|