This commit is contained in:
2025-12-18 21:13:49 +03:00
parent 84b934036b
commit 030af7ca83
45 changed files with 3106 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
from datetime import datetime
from typing import Optional
from pydantic import BaseModel
class VehicleBase(BaseModel):
name: str
type: str = "car"
class VehicleCreate(VehicleBase):
pass
class VehicleUpdate(BaseModel):
name: Optional[str] = None
type: Optional[str] = None
class VehicleResponse(VehicleBase):
id: int
created_at: datetime
class Config:
from_attributes = True
class LastPosition(BaseModel):
lat: float
lon: float
speed: float
heading: float
timestamp: datetime
class VehicleWithPosition(VehicleResponse):
last_position: Optional[LastPosition] = None
status: str = "unknown" # moving, stopped, offline