123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217 |
- //
- // 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)
- /// 登录
- ///
- /// - Parameters:
- /// - mobile: 电话号码
- /// - password: 用户密码
- /// - completion: 回调
- func userLoginApi(mobile:String,password:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(password, forKey: "password")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(LoginModel.self ,target: MultiTarget(SwiftMoyaServiceUserApi.login(parameters: parameters))) { (loginModel) in
- LoginModel.shared().setLoginModel(loginModel: loginModel as! LoginModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- /// 登出
- ///
- /// - Parameters:
- /// - completion: 回调
- func userLogoutApi() {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(target: MultiTarget(SwiftMoyaServiceUserApi.logout(parameters: parameters))) { (data) in
- LoginModel.shared().removeLoginModel()
- kAppDelegate.setLoginController()
- SwiftProgressHUD.shared().hide()
- }
- }
- /// 刷新令牌
- ///
- /// - Parameters:
- /// - completion: 回调
- func userRefreshApi(completion: @escaping apiCallBack) {
- let parameters = Dictionary<String,Any>()
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(target: MultiTarget(SwiftMoyaServiceUserApi.refresh(parameters: parameters))) { (loginModel) in
- LoginModel.shared().setLoginModel(loginModel: loginModel as! LoginModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- /// 发送短信验证码
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - completion: 回调
- func userSendSmsApi(mobile:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(target: MultiTarget(SwiftMoyaServiceUserApi.sendSms(parameters: parameters))) { (rootModel) in
- let rootModel = rootModel as! RootModel
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- completion("")
- }
- }
- /// 微信注册/登录
- ///
- /// - 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().request(LoginModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.weiXinRegister(parameters: parameters))) { (loginModel) in
- LoginModel.shared().setLoginModel(loginModel: loginModel as! LoginModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- /// 手机注册/登录
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - sms_code: 短信验证码
- /// - completion: 回调
- func userMobileRegisterApi(mobile:String,sms_code:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(sms_code, forKey: "sms_code")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(LoginModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.mobileRegister(parameters: parameters))) { (loginModel) in
- LoginModel.shared().setLoginModel(loginModel: loginModel as! LoginModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- /// 手机密码登录
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - password: 密码
- /// - completion: 回调
- func userMobileLoginApi(mobile:String,password:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(password, forKey: "password")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(LoginModel.self,target: MultiTarget(SwiftMoyaServiceUserApi.mobileLogin(parameters: parameters))) { (loginModel) in
- LoginModel.shared().setLoginModel(loginModel: loginModel as! LoginModel)
- SwiftProgressHUD.shared().hide()
- completion("")
- }
- }
- /// 绑定微信
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - umLoginModel: 微信模型
- /// - completion: 回调
- func userBindWeixinApi(mobile:String,umLoginModel:UMLoginModel,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(umLoginModel.open_id, forKey: "open_id")
- parameters.updateValue(umLoginModel.union_id, forKey: "open_id")
- parameters.updateValue(umLoginModel.avatar, forKey: "open_id")
- parameters.updateValue(umLoginModel.username, forKey: "open_id")
- parameters.updateValue(umLoginModel.gender, forKey: "open_id")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(target: MultiTarget(SwiftMoyaServiceUserApi.bindWeixin(parameters: parameters))) { (rootModel) in
- let rootModel = rootModel as! RootModel
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- completion("")
- }
- }
- /// 绑定手机号
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - smsCode: 验证码
- /// - completion: 回调
- func userBindMobileApi(mobile:String,smsCode:String,completion: @escaping apiCallBack) {
- var parameters = Dictionary<String,Any>()
- parameters.updateValue(mobile, forKey: "mobile")
- parameters.updateValue(smsCode, forKey: "sms_code")
- SwiftProgressHUD.shared().showWait()
- SwiftMoyaNetWorkManager.shared().request(target: MultiTarget(SwiftMoyaServiceUserApi.bindMobile(parameters: parameters))) { (rootModel) in
- let rootModel = rootModel as! RootModel
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- completion("")
- }
- }
- /// 设置密码
- ///
- /// - Parameters:
- /// - mobile: 手机号
- /// - password: 密码
- /// - password_confirmation: 确认密码
- /// - completion: 回调
- func userSetPasswordApi(mobile:String,password:String,password_confirmation:String,completion: @escaping apiCallBack) {
- 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().request(target: MultiTarget(SwiftMoyaServiceUserApi.setPassword(parameters: parameters))) { (rootModel) in
- let rootModel = rootModel as! RootModel
- SwiftProgressHUD.shared().showText(rootModel.msg!)
- completion("")
- }
- }
- }
|