invoices, order handling, db updates
This commit is contained in:
@@ -1,4 +1,13 @@
|
||||
from .orders import Order, OrderItem, OrderStatus
|
||||
from .products import Product, Category
|
||||
from .invoices import Invoice, InvoiceStatus
|
||||
|
||||
__all__ = ["Order", "OrderItem", "OrderStatus", "Product", "Category"]
|
||||
__all__ = [
|
||||
"Order",
|
||||
"OrderItem",
|
||||
"OrderStatus",
|
||||
"Product",
|
||||
"Category",
|
||||
"Invoice",
|
||||
"InvoiceStatus",
|
||||
]
|
||||
|
||||
24
db/models/invoices.py
Normal file
24
db/models/invoices.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from datetime import datetime
|
||||
from enum import Enum as E_cls
|
||||
from sqlalchemy import DateTime, func, Enum
|
||||
from sqlalchemy.orm import Mapped, mapped_column
|
||||
from sqlalchemy.dialects.postgresql import BIGINT
|
||||
|
||||
from db.base import Base
|
||||
|
||||
|
||||
class InvoiceStatus(E_cls):
|
||||
PENDING = "PENDING"
|
||||
PAID = "PAID"
|
||||
EXPIRED = "EXPIRED"
|
||||
|
||||
|
||||
class Invoice(Base):
|
||||
__tablename__ = "invoices"
|
||||
|
||||
id: Mapped[int] = mapped_column(autoincrement=True, primary_key=True)
|
||||
creator_id: Mapped[int] = mapped_column(BIGINT)
|
||||
amount: Mapped[int] = mapped_column(BIGINT)
|
||||
status: Mapped[InvoiceStatus] = mapped_column(Enum(InvoiceStatus))
|
||||
inline_message_id: Mapped[str] = mapped_column(nullable=True)
|
||||
created_at: Mapped[datetime] = mapped_column(DateTime, server_default=func.now())
|
||||
Reference in New Issue
Block a user