WetterstationServer/models/station.py
2026-06-28 16:06:26 +02:00

35 lines
752 B
Python

from datetime import datetime, timezone
from typing import Optional
from sqlmodel import SQLModel, Field
def utc_now() -> datetime:
return datetime.now(timezone.utc)
class Station(SQLModel, table=True):
id: int = Field(default=None, primary_key=True)
mac: str = Field(unique=True)
name: Optional[str] = Field(default=None)
created_at: datetime = Field(default_factory=utc_now)
class StationCreateRequest(SQLModel):
name: str
mac: str
class StationCreateResponse(SQLModel):
id: int
name: str
class StationListResponse(SQLModel):
id: int
name: str
created_at: datetime
class StationUpdateRequest(SQLModel):
id: int
name: str
class StationUpdateResponse(SQLModel):
id: int
name: str