from datetime import date
from typing import Optional

from pydantic import BaseModel, model_validator

from core.config import get_db
from models import Attendance


class AttendanceBaseSchema(BaseModel):
    participant_id: int
    course_id: int
    staff_id: int
    attendance_status: str
    remarks: Optional[str] = None
    attendance_date: date


class AttendanceCreateSchema(AttendanceBaseSchema):
    pass

class AttendanceFilterSchema(BaseModel):
    participant_id: int
    course_id: Optional[int] = None
    participant_name: Optional[str] = None
