45 lines
1.3 KiB
Swift
45 lines
1.3 KiB
Swift
//
|
||
// UserService.swift
|
||
// QuickLocation
|
||
//
|
||
// Created by 八条 on 2026/5/28.
|
||
//
|
||
|
||
import RxSwift
|
||
import Moya
|
||
|
||
struct UserService {
|
||
static let disposeBag = DisposeBag()
|
||
|
||
/// 登录
|
||
/// - Parameters:
|
||
/// - type: weixin、phone、apple、onekey、device、alipay
|
||
/// - bind:1绑定 2解绑 为空是登录
|
||
static func login(type: String,
|
||
bind: String = "",
|
||
data: [String: Any]) -> Observable<UserLoginRespons> {
|
||
return APIProvider.request(token: UserAPI.login(type: type,
|
||
bind: bind,
|
||
data: data).multiTarget,
|
||
handle: false)
|
||
.map(UserLoginRespons.self)
|
||
.asObservable()
|
||
}
|
||
|
||
/// 用户信息
|
||
static func userInfo() -> Observable<ResponseModel> {
|
||
let api = UserAPI.userInfo.multiTarget
|
||
return APIProvider.request(token: api)
|
||
.map(ResponseModel.self)
|
||
.asObservable()
|
||
}
|
||
|
||
/// 退出登录
|
||
static func logout() -> Observable<ResponseModel> {
|
||
let api = UserAPI.logout.multiTarget
|
||
return APIProvider.request(token: api)
|
||
.map(ResponseModel.self)
|
||
.asObservable()
|
||
}
|
||
}
|