Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Foundation
- struct RoamingChargingSessionApi: Codable {
- let id: Int
- let sessionId: Int
- let locationId: Int
- let evseId: Int
- let connectorId: Int
- let payment: RatePaymentApi
- let clientId: Int
- let amount: Money
- let power: Double
- let currentPower: Double
- let batteryPercent: Int
- let reservedAt: Int?
- let reservationExpiresAt: Int?
- let startedAt: Int?
- let finishAt: Int?
- let state: ChargingSessionApi.ChargingSessionStateApi
- let completed: Bool
- let chargingConnectorType: ConnectorTypeApi
- let chargingConnectorPower: Int
- let invoceLink: String?
- let limitAmount: Int?
- let limitEnergy: Int?
- let limitFinishAt: Int?
- let limitBatteryPercent: Int?
- enum CodingKeys: String, CodingKey {
- case id
- case sessionId = "session_id"
- case locationId = "location_id"
- case evseId = "evse_id"
- case connectorId = "connector_id"
- case payment
- case clientId = "client_id"
- case amount
- case power
- case currentPower = "current_power"
- case batteryPercent = "battery_percent"
- case reservedAt = "reserved_at"
- case reservationExpiresAt = "reservation_expires_at"
- case startedAt = "started_at"
- case finishAt = "finish_at"
- case state
- case completed
- case chargingConnectorType = "charging_connector_type"
- case chargingConnectorPower = "charging_connector_power"
- case invoceLink = "invoice_link"
- case limitAmount = "limit_amount"
- case limitEnergy = "limit_energy"
- case limitFinishAt = "limit_finish_at"
- case limitBatteryPercent = "limit_battery_percent"
- }
- func toChargingSessionApi() -> ChargingSessionApi {
- return ChargingSessionApi(
- id: id,
- chargingPointId: locationId,
- chargingStationId: 0,
- chargingConnectorId: connectorId,
- reservationId: 0,
- chargingRateId: 0,
- payment: payment,
- clientId: clientId,
- amount: amount,
- paid: false,
- paidAt: nil,
- power: power,
- currentPower: currentPower,
- batteryPercent: batteryPercent,
- reservedAt: reservedAt,
- reservationExpiresAt: reservationExpiresAt,
- startedAt: startedAt,
- finishAt: finishAt,
- state: state,
- completed: completed,
- chargingPointName: "location.name",
- chargingPointAddress: "location.address",
- chargingPointCoordinates: [],
- chargingConnectorName: "connector.name",
- chargingConnectorType: chargingConnectorType,
- chargingConnectorPower: chargingConnectorPower,
- invoceLink: invoceLink,
- limitAmount: limitAmount,
- limitEnergy: limitEnergy,
- limitFinishAt: limitFinishAt,
- limitBatteryPercent: limitBatteryPercent)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement