- 从物料跟踪页面移除订单号列和表单字段 - 从导航菜单移除PDI管理,添加设备巡检 - 新增InspectionLocation和InspectionRecord后端模型和API - 新增设备巡检前端页面(左侧点位列表,右侧设备和历史记录)
80 lines
2.0 KiB
Python
80 lines
2.0 KiB
Python
from pydantic import BaseModel
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
from app.models.equipment import EquipmentStatus
|
|
|
|
|
|
class EquipmentCreate(BaseModel):
|
|
code: str
|
|
name: str
|
|
category: Optional[str] = None
|
|
model: Optional[str] = None
|
|
manufacturer: Optional[str] = None
|
|
install_date: Optional[datetime] = None
|
|
location: Optional[str] = None
|
|
rated_power: Optional[float] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class EquipmentUpdate(BaseModel):
|
|
name: Optional[str] = None
|
|
category: Optional[str] = None
|
|
model: Optional[str] = None
|
|
location: Optional[str] = None
|
|
status: Optional[EquipmentStatus] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class EquipmentOut(BaseModel):
|
|
id: int
|
|
code: str
|
|
name: str
|
|
category: Optional[str]
|
|
model: Optional[str]
|
|
manufacturer: Optional[str]
|
|
install_date: Optional[datetime]
|
|
location: Optional[str]
|
|
status: EquipmentStatus
|
|
rated_power: Optional[float]
|
|
created_at: datetime
|
|
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
class MaintenanceCreate(BaseModel):
|
|
equipment_id: int
|
|
equipment_code: Optional[str] = None
|
|
maintenance_type: str
|
|
title: str
|
|
description: Optional[str] = None
|
|
start_time: datetime
|
|
end_time: Optional[datetime] = None
|
|
duration: Optional[float] = None
|
|
cost: Optional[float] = None
|
|
spare_parts: Optional[str] = None
|
|
technician: Optional[str] = None
|
|
approver: Optional[str] = None
|
|
next_maintenance: Optional[datetime] = None
|
|
result: Optional[str] = None
|
|
remark: Optional[str] = None
|
|
|
|
|
|
class MaintenanceOut(BaseModel):
|
|
id: int
|
|
equipment_id: int
|
|
equipment_code: Optional[str]
|
|
maintenance_type: str
|
|
title: str
|
|
description: Optional[str]
|
|
start_time: datetime
|
|
end_time: Optional[datetime]
|
|
duration: Optional[float]
|
|
cost: Optional[float]
|
|
technician: Optional[str]
|
|
result: Optional[str]
|
|
created_at: datetime
|
|
|
|
class Config:
|
|
from_attributes = True
|