| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- """Pydantic schemas - 市场物料管理"""
- from pydantic import BaseModel, Field
- from typing import Optional, List
- from datetime import datetime
- class MyMaterialUsageQuery(BaseModel):
- """我的物料领用记录查询参数"""
- keyword: Optional[str] = Field(None, description="关键词搜索")
- material_id: Optional[str] = Field(None, description="物料ID")
- material_type: Optional[str] = Field(None, description="物料类型")
- change_type: Optional[str] = Field(None, description="变动类型")
- start_time: Optional[str] = Field(None, description="开始日期 YYYY-MM-DD")
- end_time: Optional[str] = Field(None, description="结束日期 YYYY-MM-DD")
- class MaterialUsageResponse(BaseModel):
- """物料领用记录响应"""
- id: str
- materialId: Optional[str] = None
- materialCode: Optional[str] = None
- materialName: Optional[str] = None
- batchId: Optional[str] = None
- stockInNo: Optional[str] = None
- stockInDate: Optional[str] = None
- catalogNo: Optional[str] = None
- batchNo: Optional[str] = None
- manufacturer: Optional[str] = None
- unitPrice: Optional[float] = None
- amount: Optional[float] = None
- changeType: Optional[str] = None
- changeQty: Optional[float] = None
- usageUnit: Optional[str] = None
- stockBefore: Optional[float] = None
- stockAfter: Optional[float] = None
- receiver: Optional[str] = None
- receiverName: Optional[str] = None
- purpose: Optional[str] = None
- sourceType: Optional[str] = None
- requisitionStatus: Optional[str] = Field(None, description="领用状态: open/closed")
- useTime: Optional[str] = None
- remark: Optional[str] = None
- createBy: Optional[str] = None
- createByName: Optional[str] = None
- createTime: Optional[str] = None
- updateTime: Optional[str] = None
- class Config:
- from_attributes = True
- class MyMaterialUsageListResponse(BaseModel):
- """我的物料领用记录列表响应"""
- items: List[MaterialUsageResponse]
- total: int
- page: int
- pageSize: int
- totalPages: int
|