# /opt/docker/dev/service_finder/backend/app/models/organization.py import enum from sqlalchemy import Column, Integer, String, Boolean, Enum, DateTime, ForeignKey from sqlalchemy.orm import relationship from sqlalchemy.sql import func from app.db.base import Base class OrgType(str, enum.Enum): INDIVIDUAL = "individual" SERVICE = "service" FLEET_OWNER = "fleet_owner" CLUB = "club" class Organization(Base): __tablename__ = "organizations" __table_args__ = {"schema": "data"} id = Column(Integer, primary_key=True, index=True) name = Column(String, nullable=False) org_type = Column(Enum(OrgType), default=OrgType.INDIVIDUAL) owner_id = Column(Integer, ForeignKey("data.users.id"), nullable=True) # MASTER BOOK v1.2 kiegészítések is_active = Column(Boolean, default=True) # Csak cégek (nem INDIVIDUAL) esetén adható el a flotta is_transferable = Column(Boolean, default=True) # Hitelesítési adatok is_verified = Column(Boolean, default=False) # Türelmi idő vagy hitelesítés lejárata verification_expires_at = Column(DateTime(timezone=True), nullable=True) created_at = Column(DateTime(timezone=True), server_default=func.now()) updated_at = Column(DateTime(timezone=True), onupdate=func.now()) # Kapcsolatok vehicles = relationship("UserVehicle", back_populates="current_org") members = relationship("OrganizationMember", back_populates="organization")