from sqlalchemy import Column, Integer, String, ForeignKey, TIMESTAMP
from sqlalchemy.orm import relationship


from app.db.session import Base


class MeetingInfo(Base):
    __tablename__ = "meetings_info"

    id = Column(String, primary_key=True, index=True)
    initiator_id = Column(String, ForeignKey("tenantslink_users.id"))
    room_id = Column(String, ForeignKey("meeting_rooms_info.id"))
    start_time = Column(TIMESTAMP)
    end_time = Column(TIMESTAMP)
    topic = Column(String)
    status = Column()

    initiator = relationship("TenantslinkUser", back_populates="meetings_info")
    room = relationship("MeetingRoom", back_populates="meetings_info")


class MeetingRoom(Base):
    __tablename__ = "meeting_rooms_info"

    id = Column(String, primary_key=True, index=True)
    name = Column(String)
    location = Column(String)
    category = Column(String)
    seat_count = Column(Integer)


class MeetingAttendee(Base):
    __tablename__ = "meeting_attendees"

    meeting_id = Column(String, index=True)
    user_id = Column(String, index=True)


class TenantslinkUser(Base):
    __tablename__ = "tenantslink_users"

    id = Column(String, primary_key=True, index=True)
    name = Column(String)