from sqlalchemy import Column, Date, Integer, String, Boolean, DateTime, Numeric, Enum

from models.base import Base, TimestampMixin

class GiftCard(Base, TimestampMixin):
    __tablename__ = 'gift_cards'
    
    id = Column(Integer, primary_key=True)
    code = Column(String(12), unique=True, nullable=False)
    amount = Column(Numeric(10, 2), nullable=False)
    validate_date = Column(Date, nullable=False)  # dd-mm-yyyy format
    is_active = Column(Boolean, default=True)
    is_used = Column(Boolean, default=False)
    is_used_by = Column(Integer, nullable=True)  # User ID who used the gift card
    user_type = Column(String, nullable=True)
