Files
shanxia2.0/backend/app/schemas/crm/supplier_info.py
T
2026-08-22 09:08:05 +08:00

77 lines
4.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""CRM 供方信息 Pydantic Schemas"""
from typing import List, Optional
from pydantic import BaseModel, ConfigDict, Field
class SupplierInfoListBody(BaseModel):
"""供方列表查询(分页)"""
model_config = ConfigDict(populate_by_name=True)
page: int = Field(default=1, ge=1, description="页码")
pageSize: int = Field(default=10, ge=1, le=500, description="每页条数")
supplier_name: Optional[str] = Field(default=None, alias="supplierName", description="供方名称")
status: Optional[str] = Field(default=None, description="状态(0正常 1停用)")
ids: Optional[List[str]] = Field(default=None, description="导出指定ID列表")
columns: Optional[List[str]] = Field(default=None, description="导出列(前端 visibleColumns)")
class SupplierInfoListAllBody(BaseModel):
"""供方全量列表(下拉,不分页)"""
model_config = ConfigDict(populate_by_name=True)
supplier_name: Optional[str] = Field(default=None, alias="supplierName", description="供方名称")
status: Optional[str] = Field(default=None, description="状态")
class SupplierInfoDetailBody(BaseModel):
id: str = Field(..., description="供方ID")
class SupplierInfoCreateBody(BaseModel):
model_config = ConfigDict(populate_by_name=True)
supplier_name: str = Field(..., alias="supplierName", description="供方名称")
short_name: Optional[str] = Field(default=None, alias="shortName", description="简称")
supplier_code: Optional[str] = Field(default=None, alias="supplierCode", description="编码")
supplier_address: Optional[str] = Field(default=None, alias="supplierAddress", description="单位地址")
legal_person: Optional[str] = Field(default=None, alias="legalPerson", description="法定代表人")
agent: Optional[str] = Field(default=None, description="代理人")
phone_fax: Optional[str] = Field(default=None, alias="phoneFax", description="电话/传真")
bank_name: Optional[str] = Field(default=None, alias="bankName", description="开户银行")
bank_account: Optional[str] = Field(default=None, alias="bankAccount", description="账号")
allow_toxic: Optional[int] = Field(default=0, alias="allowToxic", description="是否允许易制毒(0/1)")
allow_explosive: Optional[int] = Field(default=0, alias="allowExplosive", description="是否允许易制爆(0/1)")
status: Optional[str] = Field(default="0", description="状态(0正常 1停用)")
order_num: Optional[int] = Field(default=None, alias="orderNum", description="排序号")
remark: Optional[str] = Field(default=None, description="备注")
class SupplierInfoUpdateBody(BaseModel):
model_config = ConfigDict(populate_by_name=True)
id: str = Field(..., description="供方ID")
supplier_name: Optional[str] = Field(default=None, alias="supplierName", description="供方名称")
short_name: Optional[str] = Field(default=None, alias="shortName", description="简称")
supplier_code: Optional[str] = Field(default=None, alias="supplierCode", description="编码")
supplier_address: Optional[str] = Field(default=None, alias="supplierAddress", description="单位地址")
legal_person: Optional[str] = Field(default=None, alias="legalPerson", description="法定代表人")
agent: Optional[str] = Field(default=None, description="代理人")
phone_fax: Optional[str] = Field(default=None, alias="phoneFax", description="电话/传真")
bank_name: Optional[str] = Field(default=None, alias="bankName", description="开户银行")
bank_account: Optional[str] = Field(default=None, alias="bankAccount", description="账号")
allow_toxic: Optional[int] = Field(default=None, alias="allowToxic", description="是否允许易制毒(0/1)")
allow_explosive: Optional[int] = Field(default=None, alias="allowExplosive", description="是否允许易制爆(0/1)")
status: Optional[str] = Field(default=None, description="状态")
order_num: Optional[int] = Field(default=None, alias="orderNum", description="排序号")
remark: Optional[str] = Field(default=None, description="备注")
class SupplierInfoDeleteBody(BaseModel):
id: Optional[str] = Field(default=None, description="供方ID")
ids: Optional[List[str]] = Field(default=None, description="供方ID列表")