Spaces:
Sleeping
Sleeping
File size: 722 Bytes
b2be963 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | from datetime import datetime, timezone
from sqlalchemy import Column, Integer, String, Text, Boolean, DateTime, JSON
from app.db.base import Base
class Notification(Base):
__tablename__ = "notifications"
id = Column(Integer, primary_key=True, autoincrement=True)
type = Column(String(50), nullable=False) # checkout_shipping, checkout_payment, checkout_complete
title = Column(String(255), nullable=False)
message = Column(Text, nullable=True)
data = Column(JSON, nullable=True) # extra context (cart total, city, etc.)
is_read = Column(Boolean, default=False, nullable=False)
created_at = Column(DateTime, default=lambda: datetime.now(timezone.utc), nullable=False)
|