2025-05-26 16:59:35 +09:00

37 lines
884 B
Python

# app/schemas/homework.py
from pydantic import BaseModel, constr, conint
from datetime import time, datetime
from typing import Optional
class HomeworkTypeCreate(BaseModel):
title: str
description: Optional[str] = None
reset_type: str
reset_time: Optional[time] = None
clear_count: Optional[int] = 0
class HomeworkTypeResponse(BaseModel):
id: int
title: str
description: Optional[str]
reset_type: str
reset_time: time
clear_count: int
created_at: datetime
class Config:
orm_mode = True
class HomeworkSelectableResponse(BaseModel):
homework_id: int
title: str
assigned: str # 'Y' or 'N'
reset_type: str
clear_count: int
class HomeworkTypeUpdateRequest(BaseModel):
name: constr(min_length=1)
description: str | None = None
repeat_type: constr(min_length=1)
repeat_count: conint(ge=1)