Netra / backend /app /database /models.py
chikentikka's picture
basic architecture defined
5fdeef5
Raw
History Blame Contribute Delete
980 Bytes
from datetime import datetime
from sqlalchemy import DateTime, Float, Integer, String
from sqlalchemy.orm import Mapped, mapped_column
from app.database.db import Base
class Violation(Base):
__tablename__ = "violations"
id: Mapped[int] = mapped_column(Integer, primary_key=True)
image_path: Mapped[str] = mapped_column(String)
annotated_image_path: Mapped[str] = mapped_column(String)
violation_type: Mapped[str] = mapped_column(String, index=True)
severity: Mapped[str] = mapped_column(String, default="MEDIUM")
confidence: Mapped[float] = mapped_column(Float, default=0.0)
vehicle_type: Mapped[str] = mapped_column(String, default="unknown")
license_plate: Mapped[str | None] = mapped_column(String, nullable=True)
location: Mapped[str | None] = mapped_column(String, nullable=True)
status: Mapped[str] = mapped_column(String, default="pending")
timestamp: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow)