- 从物料跟踪页面移除订单号列和表单字段 - 从导航菜单移除PDI管理,添加设备巡检 - 新增InspectionLocation和InspectionRecord后端模型和API - 新增设备巡检前端页面(左侧点位列表,右侧设备和历史记录)
82 lines
3.0 KiB
Python
82 lines
3.0 KiB
Python
from pydantic import BaseModel
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
from app.models.pdi import L3Status, L2Status
|
|
|
|
|
|
class PDIRecordCreate(BaseModel):
|
|
coil_no: str
|
|
order_no: Optional[str] = None
|
|
customer: Optional[str] = None
|
|
steel_grade: Optional[str] = None
|
|
thickness: Optional[float] = None
|
|
width: Optional[float] = None
|
|
target_thickness: Optional[float] = None
|
|
target_width: Optional[float] = None
|
|
yield_strength: Optional[float] = None
|
|
tensile_strength: Optional[float] = None
|
|
elongation: Optional[float] = None
|
|
coil_weight: Optional[float] = None
|
|
inner_diameter: Optional[float] = None
|
|
outer_diameter: Optional[float] = None
|
|
process_route: Optional[str] = None
|
|
priority: Optional[int] = 3
|
|
l3_status: Optional[L3Status] = L3Status.pending
|
|
l2_status: Optional[L2Status] = L2Status.pending
|
|
send_time: Optional[datetime] = None
|
|
confirm_time: Optional[datetime] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class PDIRecordUpdate(BaseModel):
|
|
order_no: Optional[str] = None
|
|
customer: Optional[str] = None
|
|
steel_grade: Optional[str] = None
|
|
thickness: Optional[float] = None
|
|
width: Optional[float] = None
|
|
target_thickness: Optional[float] = None
|
|
target_width: Optional[float] = None
|
|
yield_strength: Optional[float] = None
|
|
tensile_strength: Optional[float] = None
|
|
elongation: Optional[float] = None
|
|
coil_weight: Optional[float] = None
|
|
inner_diameter: Optional[float] = None
|
|
outer_diameter: Optional[float] = None
|
|
process_route: Optional[str] = None
|
|
priority: Optional[int] = None
|
|
l3_status: Optional[L3Status] = None
|
|
l2_status: Optional[L2Status] = None
|
|
send_time: Optional[datetime] = None
|
|
confirm_time: Optional[datetime] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class PDIRecordOut(BaseModel):
|
|
id: int
|
|
coil_no: str
|
|
order_no: Optional[str]
|
|
customer: Optional[str]
|
|
steel_grade: Optional[str]
|
|
thickness: Optional[float]
|
|
width: Optional[float]
|
|
target_thickness: Optional[float]
|
|
target_width: Optional[float]
|
|
yield_strength: Optional[float]
|
|
tensile_strength: Optional[float]
|
|
elongation: Optional[float]
|
|
coil_weight: Optional[float]
|
|
inner_diameter: Optional[float]
|
|
outer_diameter: Optional[float]
|
|
process_route: Optional[str]
|
|
priority: Optional[int]
|
|
l3_status: Optional[L3Status]
|
|
l2_status: Optional[L2Status]
|
|
send_time: Optional[datetime]
|
|
confirm_time: Optional[datetime]
|
|
remark: Optional[str]
|
|
created_at: datetime
|
|
updated_at: Optional[datetime]
|
|
|
|
class Config:
|
|
from_attributes = True
|