from sqlalchemy import Column, Integer, String, Boolean, Float, DateTime from sqlalchemy.orm import relationship from sqlalchemy.sql import func from app.db.base import Base class Cryptocurrency(Base): __tablename__ = "cryptocurrencies" id = Column(Integer, primary_key=True, index=True) symbol = Column(String, unique=True, index=True, nullable=False) # e.g., BTC, ETH, USDT name = Column(String, nullable=False) # e.g., Bitcoin, Ethereum, Tether is_active = Column(Boolean, default=True) min_trade_amount = Column(Float, default=0.00001) max_trade_amount = Column(Float, default=1000000.0) precision = Column(Integer, default=8) # decimal places created_at = Column(DateTime, server_default=func.now()) # Relationships wallets = relationship("Wallet", back_populates="cryptocurrency") advertisements = relationship("Advertisement", back_populates="cryptocurrency") orders = relationship("Order", back_populates="cryptocurrency")