Files
choriosity-anmeldung/app/models.py
2025-05-26 20:43:35 +02:00

50 lines
1.0 KiB
Python

import uuid
from pydantic import EmailStr
from sqlmodel import Field, SQLModel
from enum import Enum
from datetime import date, datetime
from sqlalchemy.sql import func
from app.core.config import settings
from datetime import datetime
class VoiceEnum(str, Enum):
base = "Bass"
tenor = "Tenor"
alto = "Alt"
soprano = "Sopran"
men = "Bass oder Tenor"
women = "Alt oder Sopran"
class PeriodEnum(str, Enum):
halfyear = "1/2 Jahr"
year = "1/2 - 1 Jahr"
twoyears = "1 - 2 Jahre"
longterm = "mehr als zwei Jahre"
class RegistrationBase(SQLModel):
email: EmailStr = Field(max_length=255)
first_name: str
last_name: str
birthday: date
voice: VoiceEnum
duration: PeriodEnum
number_of_attempts: int
class RegistrationCreate(RegistrationBase):
pass
class Registration(RegistrationBase, table=True):
id: uuid.UUID = Field(default_factory=uuid.uuid4, primary_key=True)
timestamp: datetime = Field(default_factory=lambda : datetime.now(tz=settings.TZ))