Files
zkxw/backend/app/schemas/storage_occupancy.py
T
2026-05-22 11:43:41 +08:00

42 lines
1.4 KiB
Python

"""库位占用记录 schemas"""
from datetime import datetime
from typing import Optional
from pydantic import BaseModel, ConfigDict, Field
class OccupancyCreateBody(BaseModel):
"""手动入库请求"""
model_config = ConfigDict(populate_by_name=True)
slot_id: str = Field(..., alias="slotId")
item_type: str = Field("other", alias="itemType")
item_code: str = Field(..., alias="itemCode")
item_name: str = Field(..., alias="itemName")
item_source: str = Field("manual", alias="itemSource")
remark: Optional[str] = None
class OccupancyListQuery(BaseModel):
"""占用记录查询"""
model_config = ConfigDict(populate_by_name=True)
slot_id: str = Field(..., alias="slotId")
occupancy_status: Optional[str] = Field("stored", alias="occupancyStatus")
item_type: Optional[str] = Field(None, alias="itemType")
page: int = 1
page_size: int = Field(20, alias="pageSize")
class OccupancyHistoryQuery(BaseModel):
"""出入库历史查询"""
model_config = ConfigDict(populate_by_name=True)
slot_id: Optional[str] = Field(None, alias="slotId")
facility_node_id: Optional[str] = Field(None, alias="facilityNodeId")
item_type: Optional[str] = Field(None, alias="itemType")
start_date: Optional[str] = Field(None, alias="startDate")
end_date: Optional[str] = Field(None, alias="endDate")
page: int = 1
page_size: int = Field(20, alias="pageSize")