// // DrivingAPI.swift // QuickLocation // // Created by 八条 on 2026/6/30. // import Moya import SwiftyUserDefaults internal import Alamofire /// 驾驶事件API enum DrivingAPI { /// 驾驶事件 case drivingEvents(user_id: String, start_time: String, end_time: String) /// 轨迹回放 case playback(user_id: String, date: String) } extension DrivingAPI: MultiTargetProtocol { var path: String { switch self { case .drivingEvents: return "mapi/driving-events/stats" case .playback: return "mapi/trips/playback" } } var method: Moya.Method { switch self { case .drivingEvents, .playback: return .get default: return .post } } var suppressResponseLog: Bool { switch self { case .playback: return true default: return false } } var task: Moya.Task { switch self { case let .drivingEvents(user_id, start_time, end_time): var params = Parameters() params["user_id"] = user_id params["start_time"] = start_time params["end_time"] = end_time return .requestParameters(parameters: params, encoding: URLEncoding()) case let .playback(user_id, date): var params = Parameters() params["user_id"] = user_id params["date"] = date params["simplify"] = true return .requestParameters(parameters: params, encoding: URLEncoding()) } } }