schema.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. from typing import Optional
  2. from datetime import datetime
  3. from pydantic import BaseModel, Field, ConfigDict
  4. from app.plugin.module_payment.account.schema import AccountTransferSchema
  5. class OpenTransferSchema(AccountTransferSchema):
  6. third_biz_no: Optional[str] = Field(default=None, description="三方订单号")
  7. api_key: Optional[str] = Field(default=None, description="API Key")
  8. class OpenConfOutSchema(BaseModel):
  9. """开放配置响应模型"""
  10. model_config = ConfigDict(from_attributes=True)
  11. id: int = Field(description="配置ID")
  12. app_id: str = Field(description="应用ID")
  13. gateway_url: Optional[str] = Field(default=None, description="平台网关地址")
  14. notify_url: Optional[str] = Field(default=None, description="异步通知地址")
  15. return_url: Optional[str] = Field(default=None, description="同步返回地址")
  16. status: str = Field(description="状态")
  17. description: Optional[str] = Field(default=None, description="配置描述")
  18. created_time: Optional[datetime] = Field(default=None, description="创建时间")
  19. updated_time: Optional[datetime] = Field(default=None, description="更新时间")
  20. class OpenConfUpdateSchema(BaseModel):
  21. """开放配置更新模型(前端只允许配置回调地址)"""
  22. notify_url: Optional[str] = Field(default=None, description="异步通知地址")
  23. return_url: Optional[str] = Field(default=None, description="同步返回地址")
  24. class OpenTransferOutSchema(BaseModel):
  25. """开放转账响应模型"""
  26. status: Optional[str] = Field(default=None, description="转账状态")
  27. order_no: Optional[str] = Field(default=None, description="支付宝转账单号")
  28. third_biz_no: Optional[str] = Field(default=None, description="三方订单号")
  29. class OpenTransferQuerySchema(BaseModel):
  30. third_biz_no: str = Field(description="三方订单号")