from sqlalchemy import Column, Integer, String, Float, DateTime, ForeignKey from sqlalchemy.orm import relationship from datetime import datetime from app.db.database import Base class Order(Base): __tablename__ = "orders" id = Column(Integer, primary_key=True, index=True) customer_name = Column(String, index=True) customer_email = Column(String) total_amount = Column(Float) status = Column(String, default="pending") # pending, processing, shipped, delivered, cancelled created_at = Column(DateTime, default=datetime.utcnow) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow) class OrderCard(Base): __tablename__ = "order_cards" id = Column(Integer, primary_key=True, index=True) order_id = Column(Integer, ForeignKey("orders.id")) card_id = Column(Integer, ForeignKey("cards.id")) quantity = Column(Integer, default=1) price_at_time = Column(Float) # Price of the card when ordered created_at = Column(DateTime, default=datetime.utcnow)