from sqlalchemy import Column, String, Integer, Float, Boolean, DateTime from sqlalchemy.dialects.postgresql import UUID from datetime import datetime from app.database import Base import uuid class CreditPackage(Base): __tablename__ = "credit_packages" id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) name = Column(String(100), nullable=False) name_en = Column(String(100), nullable=False) credits = Column(Integer, nullable=False) price = Column(Float, nullable=False) price_usd = Column(Float) original_price = Column(Float) is_active = Column(Boolean, default=True) sort_order = Column(Integer, default=0) created_at = Column(DateTime, default=datetime.utcnow) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow) class SubscriptionPlan(Base): __tablename__ = "subscription_plans" id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) name = Column(String(100), nullable=False) name_en = Column(String(100), nullable=False) credits_per_month = Column(Integer, nullable=False) price = Column(Float, nullable=False) price_usd = Column(Float) duration_days = Column(Integer, default=30) is_active = Column(Boolean, default=True) sort_order = Column(Integer, default=0) created_at = Column(DateTime, default=datetime.utcnow) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)