177 lines
5.2 KiB
Python
177 lines
5.2 KiB
Python
from pydantic import BaseModel
|
|
from typing import Optional, List
|
|
from datetime import datetime
|
|
|
|
|
|
class QcTaskCreate(BaseModel):
|
|
task_code: str
|
|
coil_no: Optional[str] = None
|
|
task_type: Optional[str] = None
|
|
scheme_name: Optional[str] = None
|
|
inspect_user: Optional[str] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class QcTaskUpdate(BaseModel):
|
|
coil_no: Optional[str] = None
|
|
task_type: Optional[str] = None
|
|
scheme_name: Optional[str] = None
|
|
status: Optional[int] = None
|
|
inspect_user: Optional[str] = None
|
|
inspect_time: Optional[datetime] = None
|
|
audit_user: Optional[str] = None
|
|
audit_time: Optional[datetime] = None
|
|
result: Optional[str] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class QcTaskItemOut(BaseModel):
|
|
id: int
|
|
task_id: int
|
|
item_name: str
|
|
item_type: Optional[str]
|
|
standard_value: Optional[float]
|
|
upper_limit: Optional[float]
|
|
lower_limit: Optional[float]
|
|
unit: Optional[str]
|
|
inspect_value: Optional[str]
|
|
is_qualified: Optional[int]
|
|
judge_result: Optional[str]
|
|
inspect_user: Optional[str]
|
|
inspect_time: Optional[datetime]
|
|
created_at: datetime
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
class QcTaskItemCreate(BaseModel):
|
|
task_id: int
|
|
item_name: str
|
|
item_type: Optional[str] = None
|
|
standard_value: Optional[float] = None
|
|
upper_limit: Optional[float] = None
|
|
lower_limit: Optional[float] = None
|
|
unit: Optional[str] = None
|
|
inspect_value: Optional[str] = None
|
|
is_qualified: Optional[int] = None
|
|
judge_result: Optional[str] = None
|
|
inspect_user: Optional[str] = None
|
|
inspect_time: Optional[datetime] = None
|
|
|
|
|
|
class QcTaskItemUpdate(BaseModel):
|
|
inspect_value: Optional[str] = None
|
|
is_qualified: Optional[int] = None
|
|
judge_result: Optional[str] = None
|
|
inspect_user: Optional[str] = None
|
|
inspect_time: Optional[datetime] = None
|
|
|
|
|
|
class QcTaskOut(BaseModel):
|
|
id: int
|
|
task_code: str
|
|
coil_no: Optional[str]
|
|
task_type: Optional[str]
|
|
scheme_name: Optional[str]
|
|
status: int
|
|
inspect_user: Optional[str]
|
|
inspect_time: Optional[datetime]
|
|
audit_user: Optional[str]
|
|
audit_time: Optional[datetime]
|
|
result: Optional[str]
|
|
remark: Optional[str]
|
|
created_at: datetime
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
class QcDefectBase(BaseModel):
|
|
coil_no: Optional[str] = None
|
|
seq_no: Optional[int] = None
|
|
defect_desc: Optional[str] = None
|
|
start_position: Optional[float] = None
|
|
end_position: Optional[float] = None
|
|
length_val: Optional[float] = None
|
|
upper_surface: Optional[bool] = False
|
|
lower_surface: Optional[bool] = False
|
|
side_op: Optional[bool] = False
|
|
side_middle: Optional[bool] = False
|
|
side_drive: Optional[bool] = False
|
|
is_main: Optional[bool] = False
|
|
image_url: Optional[str] = None
|
|
defect_code: Optional[str] = None
|
|
defect_type: Optional[str] = None
|
|
degree: Optional[str] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class QcDefectCreate(QcDefectBase):
|
|
production_line: Optional[str] = None
|
|
position: Optional[str] = None
|
|
plate_surface: Optional[str] = None
|
|
defect_rate: Optional[float] = None
|
|
defect_weight: Optional[float] = None
|
|
judge_level: Optional[str] = None
|
|
judge_by: Optional[str] = None
|
|
judge_time: Optional[datetime] = None
|
|
main_mark: Optional[int] = None
|
|
whole_coil_mark: Optional[int] = None
|
|
|
|
|
|
class QcDefectUpdate(BaseModel):
|
|
seq_no: Optional[int] = None
|
|
defect_desc: Optional[str] = None
|
|
start_position: Optional[float] = None
|
|
end_position: Optional[float] = None
|
|
length_val: Optional[float] = None
|
|
upper_surface: Optional[bool] = None
|
|
lower_surface: Optional[bool] = None
|
|
side_op: Optional[bool] = None
|
|
side_middle: Optional[bool] = None
|
|
side_drive: Optional[bool] = None
|
|
is_main: Optional[bool] = None
|
|
image_url: Optional[str] = None
|
|
defect_code: Optional[str] = None
|
|
defect_type: Optional[str] = None
|
|
degree: Optional[str] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class QcDefectBulkSave(BaseModel):
|
|
coil_no: str
|
|
defects: List[QcDefectCreate]
|
|
|
|
|
|
class QcDefectOut(BaseModel):
|
|
id: int
|
|
coil_no: Optional[str]
|
|
seq_no: Optional[int] = None
|
|
defect_desc: Optional[str] = None
|
|
start_position: Optional[float] = None
|
|
end_position: Optional[float] = None
|
|
length_val: Optional[float] = None
|
|
upper_surface: Optional[bool] = None
|
|
lower_surface: Optional[bool] = None
|
|
side_op: Optional[bool] = None
|
|
side_middle: Optional[bool] = None
|
|
side_drive: Optional[bool] = None
|
|
is_main: Optional[bool] = None
|
|
image_url: Optional[str] = None
|
|
production_line: Optional[str] = None
|
|
position: Optional[str] = None
|
|
plate_surface: Optional[str] = None
|
|
defect_code: Optional[str] = None
|
|
defect_type: Optional[str] = None
|
|
defect_rate: Optional[float] = None
|
|
defect_weight: Optional[float] = None
|
|
degree: Optional[str] = None
|
|
judge_level: Optional[str] = None
|
|
judge_by: Optional[str] = None
|
|
judge_time: Optional[datetime] = None
|
|
main_mark: Optional[int] = None
|
|
whole_coil_mark: Optional[int] = None
|
|
remark: Optional[str] = None
|
|
created_at: datetime
|
|
class Config:
|
|
from_attributes = True
|