Added post definitions

This commit is contained in:
Rick
2026-03-21 11:59:22 +01:00
parent ab0d0a4323
commit 0a51e6559e
4 changed files with 238 additions and 1 deletions

View File

@@ -6,7 +6,7 @@ from sqlmodel import (
Field,
)
from .base import RowId as RowIdType
from .base import RowId as RowIdType, VisitedCountType
from ..core.config import settings
@@ -120,3 +120,28 @@ class Birthday(BaseModel):
class Created(BaseModel):
created_at: datetime | None = Field(nullable=False, default_factory=lambda: datetime.now(settings.tz_info))
created_by: RowIdType | None = Field(default=None, nullable=True, foreign_key="user.id", ondelete="SET NULL")
class QuestionInfo(BaseModel):
question_file: str | None = Field(default=None, nullable=True, max_length=255)
answer_file: str | None = Field(default=None, nullable=True, max_length=255)
class TeamAmmounts(BaseModel):
min_teams: int = Field(default=None, nullable=True, ge=1)
max_teams: int = Field(default=None, nullable=True, ge=1)
class MaxPoints(BaseModel):
max_points: int = Field(default=None, nullable=True, ge=0)
class VisitedPoints(BaseModel):
visited_points: int | None = Field(
default=None,
ge=0,
description="Visited points for this place, None will disable this function",
)
visited_count_type: VisitedCountType = Field(
default=VisitedCountType.NONE,
)