Spaces:
Paused
Paused
| from enum import Enum | |
| from pydantic import BaseModel, Field | |
| from datetime import datetime | |
| from typing import Optional | |
| class PaymentMethod(str, Enum): | |
| CASH = "cash" | |
| CARD = "card" | |
| class PaymentStatus(str, Enum): | |
| PENDING = "pending" | |
| PROCESSING = "processing" | |
| COMPLETED = "completed" | |
| FAILED = "failed" | |
| class Payment(BaseModel): | |
| id: Optional[int] = None | |
| order_id: int | |
| amount: float = Field(..., gt=0) | |
| method: PaymentMethod | |
| status: PaymentStatus = PaymentStatus.PENDING | |
| transaction_id: Optional[str] = None | |
| created_at: datetime = Field(default_factory=datetime.utcnow) | |
| updated_at: Optional[datetime] = None | |