# -*- 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]