| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- """Pydantic schemas - 商品参数值"""
- from pydantic import BaseModel, Field, ConfigDict
- from typing import Optional, List
- from datetime import datetime
- class ProductParameterValueBase(BaseModel):
- """商品参数值基础字段"""
- model_config = ConfigDict(populate_by_name=True)
- product_id: str = Field(..., description="商品ID", alias="productId")
- parameter_id: str = Field(..., description="参数ID", alias="parameterId")
- param_value: Optional[str] = Field(None, description="参数值", alias="paramValue")
- class ProductParameterValueCreate(ProductParameterValueBase):
- """创建商品参数值请求"""
- pass
- class ProductParameterValueUpdate(BaseModel):
- """更新商品参数值请求"""
- model_config = ConfigDict(populate_by_name=True)
- param_value: Optional[str] = Field(None, description="参数值", alias="paramValue")
- class ProductParameterValueBatchSave(BaseModel):
- """批量保存商品参数值请求"""
- model_config = ConfigDict(populate_by_name=True)
- product_id: str = Field(..., description="商品ID", alias="productId")
- values: List[ProductParameterValueCreate] = Field(..., description="参数值列表")
- class ProductParameterValueResponse(BaseModel):
- """商品参数值响应"""
- id: str
- product_id: str
- parameter_id: str
- parameter_name: Optional[str] = None
- parameter_code: Optional[str] = None
- param_type: Optional[str] = None
- param_value: Optional[str] = None
- sort_order: int
- create_at: datetime
- create_by: Optional[str] = None
- create_name: Optional[str] = None
- update_at: Optional[datetime] = None
- class Config:
- from_attributes = True
- class ProductParameterValueListResponse(BaseModel):
- """商品参数值列表响应"""
- list: List[ProductParameterValueResponse]
- total: int
- class ProductParameterValueWithParameterResponse(BaseModel):
- """带参数信息的商品参数值响应"""
- id: str
- product_id: str
- parameter_id: str
- parameter_name: str
- parameter_code: str
- param_type: str
- options: Optional[str] = None
- placeholder: Optional[str] = None
- param_value: Optional[str] = None
- sort_order: int
- class Config:
- from_attributes = True
|