Files
pickling-mes/backend/app/schemas/plan.py

49 lines
1.2 KiB
Python
Raw Normal View History

from pydantic import BaseModel
from typing import Optional
from datetime import datetime
from app.models.plan import PlanStatus
class PlanCreate(BaseModel):
plan_no: str
plan_date: datetime
shift: Optional[str] = None
plan_quantity: int = 0
plan_weight: float = 0
steel_grade: Optional[str] = None
spec_range: Optional[str] = None
priority: int = 5
remark: Optional[str] = None
class PlanUpdate(BaseModel):
plan_date: Optional[datetime] = None
shift: Optional[str] = None
plan_quantity: Optional[int] = None
plan_weight: Optional[float] = None
actual_quantity: Optional[int] = None
actual_weight: Optional[float] = None
status: Optional[PlanStatus] = None
priority: Optional[int] = None
remark: Optional[str] = None
class PlanOut(BaseModel):
id: int
plan_no: str
plan_date: datetime
shift: Optional[str]
plan_quantity: int
plan_weight: float
actual_quantity: int
actual_weight: float
status: PlanStatus
steel_grade: Optional[str]
spec_range: Optional[str]
priority: int
created_by: Optional[str]
created_at: datetime
class Config:
from_attributes = True