feat: eliminar proyecto (logico), papelera para superadmin y orden por creacion
- DELETE /api/projects/🆔 eliminacion logica (deleted_at/deleted_by), mismo permiso que editar el proyecto. Popup de confirmacion antes de aplicarla. - Papelera (GET /api/projects?trash=true, POST /:id/restore, DELETE /:id/permanent) restringida al superadmin; el borrado fisico exige que el proyecto ya este en la papelera y arrastra actividades/comentarios/adjuntos por ON DELETE CASCADE. - Dashboard (KPIs, actividades pendientes/calendario, proyectos por estado) excluye proyectos eliminados logicamente. - Columna "Creado" en el listado de proyectos, ordenado por defecto de mas nuevo a mas antiguo (ListView admite initialSort ademas del orden por clic en cabecera que ya tenia). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -46,8 +46,13 @@
|
||||
- `GET /api/departments` (árbol) · `POST /api/departments` · `PUT /api/departments/:id` · `DELETE /api/departments/:id`
|
||||
|
||||
### Proyectos (`/api/projects`)
|
||||
- `GET /api/projects` (filtros: estado, responsable, prioridad) · `POST /api/projects`
|
||||
- `GET /api/projects` (filtros: estado, responsable, prioridad; `trash=true` = papelera, solo
|
||||
superadmin) · `POST /api/projects`
|
||||
- `GET /api/projects/:id` · `PUT /api/projects/:id`
|
||||
- `DELETE /api/projects/:id` — eliminación lógica (`deleted_at`/`deleted_by`), mismo permiso que
|
||||
editar el proyecto. `POST /api/projects/:id/restore` y `DELETE /api/projects/:id/permanent`
|
||||
(borrado físico, irreversible, arrastra actividades/comentarios/adjuntos) — ambos solo
|
||||
superadmin; `permanent` exige que el proyecto ya esté en la papelera (400 si no).
|
||||
- `POST /api/projects/:id/members` · `DELETE /api/projects/:id/members/:userId`
|
||||
|
||||
### Actividades (`/api/activities`)
|
||||
|
||||
Reference in New Issue
Block a user