66 lines
1.5 KiB
Swift
66 lines
1.5 KiB
Swift
//
|
|
// SystemAPI.swift
|
|
// SHECommunity
|
|
//
|
|
// Created by 林 on 2024/11/27.
|
|
//
|
|
|
|
import Moya
|
|
internal import Alamofire
|
|
|
|
/// App通用API
|
|
enum SystemAPI {
|
|
/// 获取用户配置
|
|
case userConfig
|
|
|
|
/// 发送验证码
|
|
/// - Parameters:
|
|
/// - phone: 手机号
|
|
case sendCode(phone: String)
|
|
|
|
/// 充值内容
|
|
/// - Parameters:
|
|
/// - type: 类型 member
|
|
case rechargeInfo(type: String)
|
|
}
|
|
|
|
extension SystemAPI: MultiTargetProtocol {
|
|
|
|
var path: String {
|
|
switch self {
|
|
case .userConfig:
|
|
return "api/user/config"
|
|
case .sendCode:
|
|
return "api/user/sms/code"
|
|
case .rechargeInfo:
|
|
return "api/order/goods"
|
|
}
|
|
}
|
|
|
|
var method: Moya.Method {
|
|
switch self {
|
|
case .userConfig, .rechargeInfo:
|
|
return .get
|
|
case .sendCode:
|
|
return .post
|
|
}
|
|
}
|
|
|
|
var task: Moya.Task {
|
|
switch self {
|
|
case .userConfig:
|
|
return .requestParameters(parameters: parameters, encoding: URLEncoding())
|
|
|
|
case let .sendCode(phone):
|
|
var params = Parameters()
|
|
params["phone"] = phone
|
|
return .requestParameters(parameters: params, encoding: JSONEncoding())
|
|
|
|
case let .rechargeInfo(type):
|
|
var params = Parameters()
|
|
params["type"] = type
|
|
return .requestParameters(parameters: params, encoding: URLEncoding())
|
|
}
|
|
}
|
|
}
|