Files
SCGL/backend/app/schemas/deduce_bom.py

29 lines
767 B
Python

"""齐套性推演接口 Schema"""
from pydantic import BaseModel, Field
from decimal import Decimal
class MaterialRequirementItem(BaseModel):
"""物料需求项"""
material_id: int = Field(alias="base_id")
material_name: str
spec_model: str | None
unit: str | None
required_quantity: Decimal = Field(ge=0)
current_stock: Decimal = Field(default=Decimal("0"))
shortage_quantity: Decimal = Field(ge=0)
is_shortage: bool
class Config:
from_attributes = True
populate_by_name = True
class DeduceBomResponse(BaseModel):
"""齐套性推演响应"""
target_base_id: int
target_quantity: int
is_shortage: bool
total_shortage_count: int
material_requirements: list[MaterialRequirementItem]