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

83 lines
2.2 KiB
Python
Raw Normal View History

from pydantic import BaseModel
from typing import Optional
from datetime import datetime
from app.models.material import CoilStatus
class CoilCreate(BaseModel):
coil_no: str
order_no: Optional[str] = None
steel_grade: Optional[str] = None
spec_thickness: Optional[float] = None
spec_width: Optional[float] = None
target_thickness: Optional[float] = None
target_width: Optional[float] = None
gross_weight: Optional[float] = None
net_weight: Optional[float] = None
inner_diameter: Optional[float] = None
plan_id: Optional[int] = None
remark: Optional[str] = None
class CoilUpdate(BaseModel):
order_no: Optional[str] = None
steel_grade: Optional[str] = None
spec_thickness: Optional[float] = None
spec_width: Optional[float] = None
target_thickness: Optional[float] = None
target_width: Optional[float] = None
gross_weight: Optional[float] = None
net_weight: Optional[float] = None
status: Optional[CoilStatus] = None
plan_id: Optional[int] = None
remark: Optional[str] = None
class CoilOut(BaseModel):
id: int
coil_no: str
order_no: Optional[str]
steel_grade: Optional[str]
spec_thickness: Optional[float]
spec_width: Optional[float]
target_thickness: Optional[float]
target_width: Optional[float]
gross_weight: Optional[float]
net_weight: Optional[float]
status: CoilStatus
plan_id: Optional[int]
created_at: datetime
class Config:
from_attributes = True
class TrackingCreate(BaseModel):
coil_no: str
position: Optional[str] = None
event_type: str
event_desc: Optional[str] = None
actual_thickness: Optional[float] = None
actual_width: Optional[float] = None
speed: Optional[float] = None
tension: Optional[float] = None
operator: Optional[str] = None
event_time: datetime
class TrackingOut(BaseModel):
id: int
coil_id: int
coil_no: str
position: Optional[str]
event_type: str
event_desc: Optional[str]
actual_thickness: Optional[float]
actual_width: Optional[float]
speed: Optional[float]
operator: Optional[str]
event_time: datetime
class Config:
from_attributes = True