jsdw_ios/QuickLocation/API/SystemAPI.swift

73 lines
1.7 KiB
Swift

//
// SystemAPI.swift
// SHECommunity
//
// Created by on 2024/11/27.
//
import Moya
internal import Alamofire
/// AppAPI
enum SystemAPI {
///
case userConfig
///
/// - Parameters:
/// - phone:
case sendCode(phone: String)
///
case wechatService
/// SOS
case sos(enable: Bool)
}
extension SystemAPI: MultiTargetProtocol {
var path: String {
switch self {
case .userConfig:
return "api/user/config"
case .sendCode:
return "api/user/sms/code"
case .wechatService:
return "api/weixin/service"
case .sos:
return "mapi/sos/operate"
}
}
var method: Moya.Method {
switch self {
case .userConfig, .wechatService:
return .get
case .sendCode, .sos:
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 .wechatService:
return .requestParameters(parameters: parameters, encoding: URLEncoding())
case let .sos(enable):
var params = Parameters()
params["enable"] = enable
return .requestParameters(parameters: params, encoding: JSONEncoding())
}
}
}