from pydantic import BaseModel from typing import Optional from datetime import datetime, date, time from app.models.attendance import AttendanceStatus class AttendanceRecordBase(BaseModel): employee_id: int date: date clock_in: Optional[time] = None clock_out: Optional[time] = None status: AttendanceStatus = AttendanceStatus.PRESENT notes: Optional[str] = None class AttendanceRecordCreate(AttendanceRecordBase): pass class AttendanceRecordUpdate(BaseModel): clock_in: Optional[time] = None clock_out: Optional[time] = None status: Optional[AttendanceStatus] = None notes: Optional[str] = None class AttendanceRecord(AttendanceRecordBase): id: int hours_worked: Optional[str] = None created_at: datetime updated_at: Optional[datetime] = None class Config: from_attributes = True