22 lines
606 B
Python
22 lines
606 B
Python
from pydantic import BaseModel, Field, EmailStr
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
|
|
|
|
class ScheduleIn(BaseModel):
|
|
resume_id: str
|
|
candidate_email: EmailStr
|
|
candidate_name: str
|
|
interview_date: str # ISO string or YYYY-MM-DD
|
|
interview_time: str # HH:MM AM/PM
|
|
interview_type: str = "Technical" # Technical, HR, etc.
|
|
meeting_link: Optional[str] = None
|
|
notes: Optional[str] = None
|
|
|
|
|
|
class ScheduleOut(ScheduleIn):
|
|
id: str
|
|
user_id: str
|
|
status: str = "Scheduled" # Scheduled, Completed, Cancelled
|
|
created_at: datetime
|
|
updated_at: datetime
|