Fix test failures and workload/websocket behavior
This commit is contained in:
@@ -26,12 +26,16 @@ from app.models.task_dependency import TaskDependency, DependencyType
|
||||
from app.models.project_member import ProjectMember
|
||||
from app.models.project_template import ProjectTemplate
|
||||
|
||||
# Backward-compatible alias for older imports
|
||||
ScheduleTrigger = Trigger
|
||||
|
||||
__all__ = [
|
||||
"User", "Role", "Department", "Space", "Project", "TaskStatus", "Task", "WorkloadSnapshot",
|
||||
"Comment", "Mention", "Notification", "Blocker",
|
||||
"AuditLog", "AuditAlert", "AuditAction", "SensitivityLevel", "EVENT_SENSITIVITY", "ALERT_EVENTS",
|
||||
"EncryptionKey", "Attachment", "AttachmentVersion",
|
||||
"Trigger", "TriggerType", "TriggerLog", "TriggerLogStatus",
|
||||
"ScheduleTrigger",
|
||||
"ScheduledReport", "ReportType", "ReportHistory", "ReportHistoryStatus",
|
||||
"ProjectHealth", "RiskLevel", "ScheduleStatus", "ResourceStatus",
|
||||
"CustomField", "FieldType", "TaskCustomValue",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from sqlalchemy import Column, String, Text, Boolean, DateTime, Date, Numeric, Enum, ForeignKey
|
||||
from sqlalchemy.orm import relationship
|
||||
from sqlalchemy.orm import relationship, synonym
|
||||
from sqlalchemy.sql import func
|
||||
from app.core.database import Base
|
||||
import enum
|
||||
@@ -45,3 +45,6 @@ class Project(Base):
|
||||
|
||||
# Project membership for cross-department collaboration
|
||||
members = relationship("ProjectMember", back_populates="project", cascade="all, delete-orphan")
|
||||
|
||||
# Backward-compatible alias for older code/tests that use name instead of title
|
||||
name = synonym("title")
|
||||
|
||||
@@ -5,7 +5,7 @@ that can be used to quickly set up new projects.
|
||||
"""
|
||||
import uuid
|
||||
from sqlalchemy import Column, String, Text, Boolean, DateTime, ForeignKey, JSON
|
||||
from sqlalchemy.orm import relationship
|
||||
from sqlalchemy.orm import relationship, synonym
|
||||
from sqlalchemy.sql import func
|
||||
from app.core.database import Base
|
||||
|
||||
@@ -53,6 +53,10 @@ class ProjectTemplate(Base):
|
||||
# Relationships
|
||||
owner = relationship("User", foreign_keys=[owner_id])
|
||||
|
||||
# Backward-compatible aliases for older code/tests
|
||||
created_by = synonym("owner_id")
|
||||
default_statuses = synonym("task_statuses")
|
||||
|
||||
|
||||
# Default template data for system templates
|
||||
SYSTEM_TEMPLATES = [
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import uuid
|
||||
from sqlalchemy import Column, String, Integer, Enum, DateTime, ForeignKey, UniqueConstraint
|
||||
from sqlalchemy.orm import relationship
|
||||
from sqlalchemy.orm import relationship, synonym
|
||||
from sqlalchemy.sql import func
|
||||
from app.core.database import Base
|
||||
import enum
|
||||
@@ -34,7 +35,7 @@ class TaskDependency(Base):
|
||||
UniqueConstraint('predecessor_id', 'successor_id', name='uq_predecessor_successor'),
|
||||
)
|
||||
|
||||
id = Column(String(36), primary_key=True)
|
||||
id = Column(String(36), primary_key=True, default=lambda: str(uuid.uuid4()))
|
||||
predecessor_id = Column(
|
||||
String(36),
|
||||
ForeignKey("pjctrl_tasks.id", ondelete="CASCADE"),
|
||||
@@ -66,3 +67,7 @@ class TaskDependency(Base):
|
||||
foreign_keys=[successor_id],
|
||||
back_populates="predecessors"
|
||||
)
|
||||
|
||||
# Backward-compatible aliases for legacy field names
|
||||
task_id = synonym("successor_id")
|
||||
depends_on_task_id = synonym("predecessor_id")
|
||||
|
||||
Reference in New Issue
Block a user