Implement transaction handling
This commit is contained in:
parent
161c6aa027
commit
a65dee8962
16 changed files with 331 additions and 94 deletions
|
@ -1,4 +1,5 @@
|
|||
from datetime import datetime
|
||||
from decimal import Decimal
|
||||
from typing import Optional
|
||||
from uuid import UUID
|
||||
from pydantic import BaseModel
|
||||
|
@ -8,12 +9,14 @@ from app.schemas.connector import Connector
|
|||
from ocpp.v201.enums import ResetType, ResetStatusType
|
||||
|
||||
class ChargePointBase(BaseModel):
|
||||
friendly_name: str
|
||||
identity: str
|
||||
is_active: bool
|
||||
price: Decimal
|
||||
|
||||
class ChargePointUpdate(BaseModel):
|
||||
friendly_name: Optional[str] = None
|
||||
identity: Optional[str] = None
|
||||
is_active: Optional[bool] = None
|
||||
price: Optional[Decimal]= None
|
||||
|
||||
class ChargePointCreate(ChargePointBase):
|
||||
pass
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
from datetime import datetime
|
||||
from typing import Optional
|
||||
from uuid import UUID
|
||||
from pydantic import BaseModel
|
||||
|
@ -22,4 +23,13 @@ class IdToken(IdTokenBase):
|
|||
id: UUID
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
from_attributes = True
|
||||
|
||||
class IdTokenLearnBase(BaseModel):
|
||||
user_id: UUID
|
||||
|
||||
class IdTokenLearnRequest(IdTokenLearnBase):
|
||||
until: Optional[datetime] = None
|
||||
|
||||
class IdTokenLearnResponse(IdTokenLearnBase):
|
||||
until: datetime
|
|
@ -1,5 +1,7 @@
|
|||
from datetime import datetime
|
||||
from decimal import Decimal
|
||||
import enum
|
||||
from typing import Optional
|
||||
from uuid import UUID
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
@ -46,9 +48,9 @@ class MeterValue(BaseModel):
|
|||
id: UUID
|
||||
timestamp: datetime
|
||||
measurand: Measurand
|
||||
phase_type: PhaseType
|
||||
unit: str
|
||||
value: float
|
||||
phase_type: Optional[PhaseType] = None
|
||||
unit: Optional[str] = None
|
||||
value: Decimal
|
||||
transaction_id: str
|
||||
|
||||
class Config:
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
from datetime import datetime
|
||||
from decimal import Decimal
|
||||
import enum
|
||||
from typing import Optional
|
||||
from uuid import UUID
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
@ -31,15 +33,16 @@ class TransactionEventTriggerReason(enum.Enum):
|
|||
RESET_COMMAND = "ResetCommand"
|
||||
|
||||
class Transaction(BaseModel):
|
||||
id: UUID
|
||||
id: str
|
||||
status: TransactionStatus
|
||||
started_at: datetime
|
||||
ended_at: datetime
|
||||
meter_start: float
|
||||
meter_end: float
|
||||
end_reason: TransactionEventTriggerReason
|
||||
connector_id: str
|
||||
id_token_id: str
|
||||
ended_at: Optional[datetime] = None
|
||||
meter_start: Decimal
|
||||
meter_end: Optional[Decimal] = None
|
||||
end_reason: Optional[TransactionEventTriggerReason] = None
|
||||
price: Decimal
|
||||
user_id: Optional[UUID] = None
|
||||
chargepoint_id: UUID
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
Loading…
Add table
Add a link
Reference in a new issue