"""Request model""" from sqlalchemy import Column, Integer, String, ForeignKey, DateTime from sqlalchemy.sql import func from sqlalchemy.orm import relationship from enum import Enum as PyEnum from ..database import Base class RequestStatus(str, PyEnum): NEW = "new" IN_PROGRESS = "in_progress" COMPLETED = "completed" REJECTED = "rejected" class RequestPriority(str, PyEnum): LOW = "low" MEDIUM = "medium" HIGH = "high" class Request(Base): __tablename__ = "requests" id = Column(Integer, primary_key=True, index=True) title = Column(String, nullable=False) description = Column(String, nullable=False) status = Column(String, nullable=False, default=RequestStatus.NEW) priority = Column(String, nullable=False) employee_id = Column(Integer, ForeignKey("employees.id")) created_at = Column(DateTime(timezone=True), server_default=func.now()) updated_at = Column(DateTime(timezone=True), onupdate=func.now()) # Определяем отношение к Employee employee = relationship("Employee", back_populates="requests")