Реализована возможность изменения проектов
- Добавлено поле deleted в таблицу projects (миграция 007) - Изменена иконка перехода на экран проектов (список вместо звезды) - Заменен крестик на троеточие в списке проектов - Добавлено модальное окно с кнопками 'Перенести' и 'Удалить' - Реализован экран переноса проекта с выбором существующего или созданием нового - Добавлены API endpoints: /project/move и /project/delete - При переносе проекта обновляются nodes и weekly_goals с обработкой конфликтов - При удалении проекта удаляются все связанные weekly_goals - Добавлена фильтрация удаленных проектов во всех SQL запросах - Обновлена materialized view для исключения удаленных проектов
This commit is contained in:
@@ -34,6 +34,8 @@ LEFT JOIN
|
||||
1, 2, 3
|
||||
) agg
|
||||
ON p.id = agg.project_id
|
||||
WHERE
|
||||
p.deleted = FALSE
|
||||
ORDER BY
|
||||
p.id, agg.report_year, agg.report_week
|
||||
WITH DATA;
|
||||
|
||||
13
play-life-backend/migrations/007_add_deleted_to_projects.sql
Normal file
13
play-life-backend/migrations/007_add_deleted_to_projects.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
-- Migration: Add deleted field to projects table
|
||||
-- This script adds a deleted boolean field to mark projects as deleted (soft delete)
|
||||
|
||||
-- Add deleted column to projects table
|
||||
ALTER TABLE projects
|
||||
ADD COLUMN IF NOT EXISTS deleted BOOLEAN NOT NULL DEFAULT FALSE;
|
||||
|
||||
-- Create index on deleted column for better query performance
|
||||
CREATE INDEX IF NOT EXISTS idx_projects_deleted ON projects(deleted);
|
||||
|
||||
-- Add comment for documentation
|
||||
COMMENT ON COLUMN projects.deleted IS 'Soft delete flag: TRUE if project is deleted, FALSE otherwise';
|
||||
|
||||
Reference in New Issue
Block a user