import uuid from sqlalchemy import Column, String, ForeignKey, DateTime from sqlalchemy.sql import func from sqlalchemy.orm import relationship from app.core.database import Base class Department(Base): __tablename__ = "pjctrl_departments" id = Column(String(36), primary_key=True, default=lambda: str(uuid.uuid4())) name = Column(String(100), nullable=False) parent_id = Column(String(36), ForeignKey("pjctrl_departments.id"), nullable=True) created_at = Column(DateTime, server_default=func.now()) # Self-referential relationship parent = relationship("Department", remote_side=[id], backref="children")