payment_confirmation.py 810 B

123456789101112131415161718192021222324252627282930
  1. from pydantic import BaseModel
  2. from typing import Optional, Dict, Any, Literal, List
  3. from datetime import datetime
  4. class VasPaymentConfirmationBase(BaseModel):
  5. payment_id: int
  6. amount: int
  7. currency: str
  8. random_offset: int
  9. confirmed_at: datetime
  10. class VasPaymentConfirmationCreate(VasPaymentConfirmationBase):
  11. pass
  12. class VasPaymentConfirmationUpdate(BaseModel):
  13. status: Optional[Literal['confirmed', 'ignored']] = None
  14. admin_id: Optional[str] = None
  15. admin_confirmed_at: Optional[datetime] = None
  16. class VasPaymentConfirmationOut(VasPaymentConfirmationBase):
  17. id: int
  18. user_id: str
  19. status: str
  20. created_at: datetime
  21. admin_id: Optional[str] = None
  22. admin_confirmed_at: Optional[datetime] = None
  23. model_config = {
  24. "from_attributes": True
  25. }