Files
X25020501_card_book/core/routers/card/schema.py
2025-02-18 14:26:47 +08:00

42 lines
987 B
Python

# -*- coding = utf-8 -*-
# @Time : 2025/2/13 下午5:01
# @File : schema.py
# @Software : PyCharm
# @Author : xingc
# @Desc :
from typing import Optional, Literal
from pydantic import BaseModel, conint
from core.base.schema import SupportPlatformType, PlatformSourceType
class Card(BaseModel):
cert_number: str
card_year: conint(gt=0, le=2099)
card_brand: Optional[str] = None
card_score: Optional[float] = None
auto_score: Optional[float] = None
card_name: str
card_number: Optional[str] = None
card_type: Optional[str] = None
card_picture: Optional[dict] = {}
card_spare_picture: Optional[dict] = {}
source: SupportPlatformType
class UpdateCard(BaseModel):
purchase_price: float
display_price: float
class CardOut(Card, UpdateCard):
card_year: int
source: PlatformSourceType
purchase_price: Optional[float] = None
display_price: Optional[float] = None
class DeleteCardIn(BaseModel):
card_ids: list[int]