payment_provider.py 952 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # app/schemas/payment_provider.py
  2. from datetime import datetime
  3. from pydantic import BaseModel
  4. from typing import Optional, Dict, Any
  5. class VasPaymentProviderBase(BaseModel):
  6. name: Optional[str] = None
  7. channel: Optional[str] = None
  8. currency: Optional[str] = None
  9. icon: Optional[str] = None
  10. enabled: Optional[int] = None
  11. config: Optional[Dict[str, Any]] = None
  12. class VasPaymentProviderCreate(VasPaymentProviderBase):
  13. name: str
  14. channel: str
  15. currency: str
  16. class VasPaymentProviderUpdate(VasPaymentProviderBase):
  17. pass
  18. class VasPaymentProviderOut(VasPaymentProviderBase):
  19. id: int
  20. name: str
  21. channel: str
  22. currency: str
  23. created_at: datetime
  24. updated_at: datetime
  25. class Config:
  26. orm_mode = True
  27. class VasPaymentProviderSimpleOut(BaseModel):
  28. name: str
  29. # channel: str
  30. currency: str
  31. icon: Optional[str] = None
  32. class Config:
  33. orm_mode = True