Browse Source

接口封装

南鑫林 6 years ago
parent
commit
8ff878f605

+ 0 - 12
RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj

@@ -98,9 +98,6 @@
 		A7778C9922438F5D00C7C47A /* README.txt in Resources */ = {isa = PBXBuildFile; fileRef = A7778C9422438F5D00C7C47A /* README.txt */; };
 		A7778C9A22438F5D00C7C47A /* libWeChatSDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A7778C9622438F5D00C7C47A /* libWeChatSDK.a */; };
 		A7778C9C2243934A00C7C47A /* MineModule.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A7778C9B2243934A00C7C47A /* MineModule.xcassets */; };
-		A7778C9E2243937300C7C47A /* RegisterLoginModule.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A7778C9D2243937300C7C47A /* RegisterLoginModule.xcassets */; };
-		A7778CA02243938200C7C47A /* ShoppingCartModule.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A7778C9F2243938200C7C47A /* ShoppingCartModule.xcassets */; };
-		A7778CA22243939100C7C47A /* ShoppingMallModule.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A7778CA12243939100C7C47A /* ShoppingMallModule.xcassets */; };
 		A7778CA4224393A900C7C47A /* CommonModule.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A7778CA3224393A900C7C47A /* CommonModule.xcassets */; };
 		A7778CA72243A05400C7C47A /* IQKeyboardManagerSwiftManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7778CA62243A05400C7C47A /* IQKeyboardManagerSwiftManager.swift */; };
 		A7778CA92244904500C7C47A /* Extension+Gifu.GIFImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7778CA82244904500C7C47A /* Extension+Gifu.GIFImageView.swift */; };
@@ -251,9 +248,6 @@
 		A7778C9522438F5D00C7C47A /* WechatAuthSDK.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WechatAuthSDK.h; sourceTree = "<group>"; };
 		A7778C9622438F5D00C7C47A /* libWeChatSDK.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libWeChatSDK.a; sourceTree = "<group>"; };
 		A7778C9B2243934A00C7C47A /* MineModule.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = MineModule.xcassets; sourceTree = "<group>"; };
-		A7778C9D2243937300C7C47A /* RegisterLoginModule.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = RegisterLoginModule.xcassets; sourceTree = "<group>"; };
-		A7778C9F2243938200C7C47A /* ShoppingCartModule.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = ShoppingCartModule.xcassets; sourceTree = "<group>"; };
-		A7778CA12243939100C7C47A /* ShoppingMallModule.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = ShoppingMallModule.xcassets; sourceTree = "<group>"; };
 		A7778CA3224393A900C7C47A /* CommonModule.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = CommonModule.xcassets; sourceTree = "<group>"; };
 		A7778CA62243A05400C7C47A /* IQKeyboardManagerSwiftManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IQKeyboardManagerSwiftManager.swift; sourceTree = "<group>"; };
 		A7778CA82244904500C7C47A /* Extension+Gifu.GIFImageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Extension+Gifu.GIFImageView.swift"; sourceTree = "<group>"; };
@@ -1097,9 +1091,6 @@
 			children = (
 				A77F2C672231FB4A001BD3F6 /* Assets.xcassets */,
 				A7778C9B2243934A00C7C47A /* MineModule.xcassets */,
-				A7778C9D2243937300C7C47A /* RegisterLoginModule.xcassets */,
-				A7778C9F2243938200C7C47A /* ShoppingCartModule.xcassets */,
-				A7778CA12243939100C7C47A /* ShoppingMallModule.xcassets */,
 				A7778CA3224393A900C7C47A /* CommonModule.xcassets */,
 				A77F2C6C2231FB4A001BD3F6 /* Info.plist */,
 			);
@@ -1278,7 +1269,6 @@
 			buildActionMask = 2147483647;
 			files = (
 				A77F2CB82232010F001BD3F6 /* ShoppingCartViewController.xib in Resources */,
-				A7778C9E2243937300C7C47A /* RegisterLoginModule.xcassets in Resources */,
 				A77F2CB62232010F001BD3F6 /* MineViewController.xib in Resources */,
 				A7778C9722438F5D00C7C47A /* AlipaySDK.bundle in Resources */,
 				A75414F8224B4C1B002480B5 /* VerificationPhoneViewController.xib in Resources */,
@@ -1286,8 +1276,6 @@
 				A77F2C682231FB4A001BD3F6 /* Assets.xcassets in Resources */,
 				A7778C9C2243934A00C7C47A /* MineModule.xcassets in Resources */,
 				A7778C9922438F5D00C7C47A /* README.txt in Resources */,
-				A7778CA22243939100C7C47A /* ShoppingMallModule.xcassets in Resources */,
-				A7778CA02243938200C7C47A /* ShoppingCartModule.xcassets in Resources */,
 				A75414FE224B5F28002480B5 /* PasswordLoginViewController.xib in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;

BIN
RainbowPlanet/RainbowPlanet.xcworkspace/xcuserdata/nanxinlin.xcuserdatad/UserInterfaceState.xcuserstate


+ 1 - 1
RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/ThirdPartyLogin/ViewController/ThirdPartyLoginViewController.swift

@@ -72,7 +72,7 @@ class ThirdPartyLoginViewController: BaseViewController {
         weiXinLoginButton.layer.masksToBounds = true
         weiXinLoginButton.rx.tap.subscribe(onNext: { [weak self] in
             UMManager.shared().loginGetUserInfo(platformType: UMSocialPlatformType.wechatSession) { (loginModel) -> (Void) in
-                SwiftMoyaNetWorkServiceUser.shared().userWeiXinRegisterApi(open_id: loginModel.open_id, union_id: loginModel.union_id, avatar: loginModel.avatar, username: loginModel.union_id, gender: loginModel.gender, completion: { (data) -> (Void) in
+                SwiftMoyaNetWorkServiceUser.shared().userWeiXinRegisterApi(open_id: loginModel.open_id, union_id: loginModel.union_id, avatar: loginModel.avatar, username: loginModel.username, gender: loginModel.gender, completion: { (data) -> (Void) in
                     if self?.presentingViewController != nil {
                         self?.dismiss(animated: true, completion: {
                             kAppDelegate.setTabbarController()

+ 12 - 0
RainbowPlanet/RainbowPlanet/Service/Model/UserModel/LoginModel.swift

@@ -16,6 +16,8 @@ class LoginModel : NSObject, NSCoding, Mappable{
         return _sharedInstance
     }
 
+    var uid : Int?
+    var username : String?
 	var accessToken : String?
 	var avatarurl : String?
 	var gender : Int?
@@ -31,6 +33,8 @@ class LoginModel : NSObject, NSCoding, Mappable{
 
 	func mapping(map: Map)
 	{
+        uid <- map["uid"]
+        username <- map["username"]
 		accessToken <- map["access_token"]
 		avatarurl <- map["avatarurl"]
 		gender <- map["gender"]
@@ -46,6 +50,8 @@ class LoginModel : NSObject, NSCoding, Mappable{
     */
     @objc required init(coder aDecoder: NSCoder)
 	{
+         uid = aDecoder.decodeObject(forKey: "uid") as? Int
+         username = aDecoder.decodeObject(forKey: "username") as? String
          accessToken = aDecoder.decodeObject(forKey: "access_token") as? String
          avatarurl = aDecoder.decodeObject(forKey: "avatarurl") as? String
          gender = aDecoder.decodeObject(forKey: "gender") as? Int
@@ -61,6 +67,12 @@ class LoginModel : NSObject, NSCoding, Mappable{
     */
     @objc func encode(with aCoder: NSCoder)
 	{
+        if uid != nil{
+            aCoder.encode(uid, forKey: "uid")
+        }
+        if username != nil{
+            aCoder.encode(uid, forKey: "username")
+        }
 		if accessToken != nil{
 			aCoder.encode(accessToken, forKey: "access_token")
 		}

+ 1 - 1
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaNetWorkManager/ApiMacro.swift

@@ -15,7 +15,7 @@ let kProductSever = false
 // MARK: - 数据服务器
 public func kApiDataPrefix() -> String {
     if kDevelopSever /** 接口前缀-开发服务器*/ {
-        return "http://user-service.dev.caihongxingqiu.com" //办公室地址公网IP
+        return "http://user-service.dev.caihongxingqiu.com"
     } else if kTestSever /** 接口前缀-测试服务器*/{
         return ""
     }else if kProductSever /** 接口前缀-生产服务器*/ {

+ 83 - 0
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceUser/SwiftMoyaNetWorkServiceUser.swift

@@ -130,4 +130,87 @@ public class SwiftMoyaNetWorkServiceUser: NSObject {
             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("")
+        }
+    }
+
 }

+ 59 - 9
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceUser/SwiftMoyaServiceUserApi.swift

@@ -27,11 +27,29 @@ public let kSendSmsApi = "/api/send_sms"
 
 // MARK: - 微信注册/登录
 /// 微信注册/登录
-public let kWeiXinRegisterApi = "/api/weixin_register"
+public let kWeiXinRegisterApi = "/api/weixinRegister"
 
 // MARK: - 手机验证码注册/登录
 /// 手机验证码注册/登录
-public let kMobileRegisterApi = "/api/mobile_register"
+public let kMobileRegisterApi = "/api/mobileRegister"
+
+// MARK: - 手机密码登录
+/// 手机密码登录
+public let kMobileLoginApi = "/api/mobileLogin"
+
+// MARK: - 绑定微信
+/// 绑定微信
+public let kBindWeixinApi = "/api/bindWeixin"
+
+// MARK: - 绑定手机号码
+/// 绑定手机号码
+public let kBindMobileApi = "/api/bindMobile"
+
+// MARK: - 设置密码
+/// 设置密码
+public let kSetPasswordApi = "/api/SetPassword"
+
+
 
 /// 用户
 ///
@@ -41,6 +59,10 @@ public let kMobileRegisterApi = "/api/mobile_register"
 /// - sendSms: 发送短信验证码
 /// - weiXinRegister: 微信注册/登录
 /// - mobileRegister: 手机验证码注册/登录
+/// - mobileLogin: 手机密码登录
+/// - bindWeixin: 绑定微信
+/// - bindMobile: 绑定手机号码
+/// - setPassword: 设置密码
 public enum SwiftMoyaServiceUserApi {
     case login(parameters:Dictionary<String, Any>)
     case logout(parameters:Dictionary<String, Any>)
@@ -48,6 +70,10 @@ public enum SwiftMoyaServiceUserApi {
     case sendSms(parameters:Dictionary<String, Any>)
     case weiXinRegister(parameters:Dictionary<String, Any>)
     case mobileRegister(parameters:Dictionary<String, Any>)
+    case mobileLogin(parameters:Dictionary<String, Any>)
+    case bindWeixin(parameters:Dictionary<String, Any>)
+    case bindMobile(parameters:Dictionary<String, Any>)
+    case setPassword(parameters:Dictionary<String, Any>)
 }
 
 extension SwiftMoyaServiceUserApi: TargetType {
@@ -59,7 +85,11 @@ extension SwiftMoyaServiceUserApi: TargetType {
              .refresh,
              .sendSms,
              .weiXinRegister,
-             .mobileRegister
+             .mobileRegister,
+             .mobileLogin,
+             .bindWeixin,
+             .bindMobile,
+             .setPassword
             :
             return URL(string: kApiDataPrefix())!
         }
@@ -79,6 +109,14 @@ extension SwiftMoyaServiceUserApi: TargetType {
             return kWeiXinRegisterApi
         case .mobileRegister:
             return kMobileRegisterApi
+        case .mobileLogin:
+            return kMobileLoginApi
+        case .bindWeixin:
+            return kBindMobileApi
+        case .bindMobile:
+            return kBindMobileApi
+        case .setPassword:
+            return kSetPasswordApi
         }
     }
 
@@ -89,7 +127,11 @@ extension SwiftMoyaServiceUserApi: TargetType {
              .refresh,
              .sendSms,
              .weiXinRegister,
-             .mobileRegister
+             .mobileRegister,
+             .mobileLogin,
+             .bindWeixin,
+             .bindMobile,
+             .setPassword
             :
             return .post
         }
@@ -101,11 +143,15 @@ extension SwiftMoyaServiceUserApi: TargetType {
         case .login(let parameters),
              .sendSms(let parameters),
              .weiXinRegister(let parameters),
-             .mobileRegister(let parameters)
+             .mobileRegister(let parameters),
+             .mobileLogin(let parameters)
              :
             return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
         case .logout(var parameters),
-             .refresh(var parameters)
+             .refresh(var parameters),
+             .bindWeixin(var parameters),
+             .bindMobile(var parameters),
+             .setPassword(var parameters)
             :
             let sign = SwiftSign.shared().sign(parameters: parameters)
             parameters.updateValue(sign, forKey: "sign")
@@ -131,12 +177,16 @@ extension SwiftMoyaServiceUserApi: TargetType {
         case .login,
              .sendSms,
              .weiXinRegister,
-             .mobileRegister
+             .mobileRegister,
+             .mobileLogin
             :
             return ["Content-Type":"application/x-www-form-urlencoded"]
             case .logout,
-                 .refresh
-            :
+                 .refresh,
+                 .bindWeixin,
+                 .bindMobile,
+                 .setPassword
+                :
                 let token = LoginModel.shared().getLoginModel()?.token ?? ""
                 return ["Content-Type":"application/x-www-form-urlencoded","Authorization":token]
         }

+ 0 - 6
RainbowPlanet/RainbowPlanet/Supporting Files/RegisterLoginModule.xcassets/Contents.json

@@ -1,6 +0,0 @@
-{
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}

+ 0 - 6
RainbowPlanet/RainbowPlanet/Supporting Files/ShoppingCartModule.xcassets/Contents.json

@@ -1,6 +0,0 @@
-{
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}

+ 0 - 6
RainbowPlanet/RainbowPlanet/Supporting Files/ShoppingMallModule.xcassets/Contents.json

@@ -1,6 +0,0 @@
-{
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}