30 lines
695 B
Python
30 lines
695 B
Python
from pydantic import BaseModel, Field
|
|
|
|
|
|
class OrderItemInput(BaseModel):
|
|
product_id: int | None = None
|
|
product_name: str
|
|
specification: str
|
|
unit: str
|
|
quantity: float = Field(default=0, ge=0)
|
|
sale_price: float = Field(default=0, ge=0)
|
|
cost_price: float = Field(default=0, ge=0)
|
|
|
|
|
|
class OrderCreateRequest(BaseModel):
|
|
customer_name: str
|
|
customer_mobile: str
|
|
salesman_id: int
|
|
order_source: str | None = None
|
|
delivery_type: str | None = None
|
|
factory_id: int | None = None
|
|
remark: str | None = None
|
|
items: list[OrderItemInput] = []
|
|
|
|
|
|
class OrderSummary(BaseModel):
|
|
id: int
|
|
order_no: str
|
|
customer_name: str
|
|
order_status: str
|