16d15bcfbf
Check Cross-Plugin Imports / check (push) Has been cancelled
Migration 0139: Add folder_id column to report_templates for folder-based organization Backend: - ReportTemplate model: add folder_id field (nullable UUID) Frontend: - api/reports.ts: ReportTemplate interface updated with folder_id - Reports.tsx: Added ResizablePanel for template list (resizable left sidebar) - Reports.tsx: Added PluginToolbar registration with new-report button - Reports.tsx: Added useEffect import for toolbar registration tsc clean
29 lines
777 B
Python
29 lines
777 B
Python
"""Reports: folder_id column for folder-based sorting
|
|
|
|
Revision ID: 0139
|
|
Revises: 0138
|
|
Create Date: 2026-08-21
|
|
|
|
Adds folder_id to report_templates for folder-based organization.
|
|
"""
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
from sqlalchemy.dialects.postgresql import UUID as PGUUID
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = "0139"
|
|
down_revision = "0138"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.add_column("report_templates", sa.Column("folder_id", PGUUID(as_uuid=True), nullable=True))
|
|
op.create_index("ix_report_templates_folder", "report_templates", ["folder_id"])
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_index("ix_report_templates_folder", table_name="report_templates")
|
|
op.drop_column("report_templates", "folder_id")
|