from src.core.database import Base
from sqlalchemy.orm import relationship
from sqlalchemy import Column, String, Integer, ForeignKey, Index


class Time(Base):
    __tablename__ = "times"

    id = Column(Integer, primary_key=True, autoincrement=True)
    nome = Column(String(150), nullable=False)
    descricao = Column(String(255), nullable=True)
    empresa_id = Column(String(36), ForeignKey("empresas.id"), nullable=False)

    empresa = relationship("Empresa", back_populates="times", lazy="selectin")

    usuarios = relationship(
        "Usuario",
        secondary="usuarios_times",
        back_populates="times",
        lazy="selectin")

    __table_args__ = (
        Index("idx_times_empresa_id", "empresa_id"),
    )
