"""
Modèle SQLAlchemy pour les réservations de stock
"""
from sqlalchemy import Column, Integer, String, ForeignKey
from datetime import datetime
from app.database import Base


class ReservationStock(Base):
    __tablename__ = "reservations_stock"

    id = Column(Integer, primary_key=True, index=True)
    article_id = Column(Integer, ForeignKey("articles.id"), nullable=False, index=True)
    projet_id = Column(Integer, ForeignKey("projets.id", ondelete="CASCADE"), nullable=False, index=True)
    quantite = Column(Integer, nullable=False)
    date_creation = Column(String, default=lambda: datetime.utcnow().isoformat())

    def __repr__(self):
        return f"<ReservationStock projet={self.projet_id} article={self.article_id} qte={self.quantite}>"