docs(manual): portada + índice navegable + huecos de captura; copia en inglés (MANUAL.en.md)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-18 16:50:39 +02:00
parent 4f66175406
commit 9c164bb7ef
2 changed files with 634 additions and 17 deletions
+87 -17
View File
@@ -1,31 +1,50 @@
# Manual de ConstruProgress
<!--
Portada / índice: este documento está pensado para convertirse a Word.
- Para generar el .docx conservando títulos e índice navegable:
pandoc docs/MANUAL.md -o docs/Manual.docx --toc --toc-depth=3
- Los bloques "📷 Captura:" son huecos donde insertar la imagen correspondiente.
-->
**Aplicación de seguimiento de obra — MAI Group / RTE International**
<div align="center">
# ConstruProgress
## Manual de la aplicación
**Sistema de seguimiento de obra**
MAI Group · RTE International
📷 *Captura: portada / logotipo de la aplicación (`public/images/logo-rte.png`).*
| | |
|---|---|
| Versión del documento | 1.0 |
| Fecha | Junio 2026 |
| Ámbito | Aplicación web + API para la app móvil |
| Idioma | Español (versión en inglés: `MANUAL.en.md`) |
> Documento de origen en Markdown (`docs/MANUAL.md`). Para obtener el Word:
> `pandoc docs/MANUAL.md -o docs/Manual.docx`, o copiar/pegar en `Manual.docx`.
</div>
<div style="page-break-after: always;"></div>
---
## Índice
1. Introducción y conceptos
2. Requisitos del sistema
3. Instalación y despliegue
4. Acceso y primeros pasos
5. Roles y permisos
6. Manual de uso por secciones
7. Flujos de trabajo típicos
8. API (app móvil)
9. Mantenimiento, copias de seguridad y actualización
10. Resolución de problemas (FAQ)
11. Anexos
1. [Introducción y conceptos](#1-introducción-y-conceptos)
2. [Requisitos del sistema](#2-requisitos-del-sistema)
3. [Instalación y despliegue](#3-instalación-y-despliegue)
4. [Acceso y primeros pasos](#4-acceso-y-primeros-pasos)
5. [Roles y permisos](#5-roles-y-permisos)
6. [Manual de uso por secciones](#6-manual-de-uso-por-secciones)
7. [Flujos de trabajo típicos](#7-flujos-de-trabajo-típicos)
8. [API (app móvil)](#8-api-app-móvil)
9. [Mantenimiento, copias de seguridad y actualización](#9-mantenimiento-copias-de-seguridad-y-actualización)
10. [Resolución de problemas (FAQ)](#10-resolución-de-problemas-faq)
11. [Anexos](#11-anexos)
<div style="page-break-after: always;"></div>
---
@@ -39,6 +58,8 @@ registrar inspecciones con plantillas, gestionar incidencias (con tareas, coment
y fotos) y generar informes. Está preparada además para alimentar una **app móvil que
trabaja sin conexión** en campo y sincroniza al recuperar red.
📷 *Captura: panel principal (dashboard) con el resumen general.*
## 1.2 Conceptos clave (glosario)
| Término | Significado |
@@ -62,6 +83,8 @@ trabaja sin conexión** en campo y sincroniza al recuperar red.
- **Permisos:** spatie/laravel-permission.
- **API móvil:** Laravel Sanctum (tokens), sincronización offline-first.
<div style="page-break-after: always;"></div>
---
# 2. Requisitos del sistema
@@ -78,6 +101,8 @@ trabaja sin conexión** en campo y sincroniza al recuperar red.
**Cliente (navegador)**
- Navegador moderno (Chrome, Edge, Firefox, Safari) con JavaScript activado.
<div style="page-break-after: always;"></div>
---
# 3. Instalación y despliegue
@@ -169,10 +194,14 @@ php artisan migrate --force
php artisan config:cache && php artisan route:cache && php artisan view:cache
```
<div style="page-break-after: always;"></div>
---
# 4. Acceso y primeros pasos
📷 *Captura: pantalla de inicio de sesión (login) con el conmutador de idioma.*
## 4.1 Inicio de sesión
Accede a `https://tudominio.com/login` con tu email y contraseña. Tras la instalación,
el seeder crea un administrador inicial (**admin@email.com**) — **cambia su contraseña**
@@ -191,6 +220,8 @@ La aplicación está disponible en **Español** e **Inglés**. Cambia el idioma
conmutador de banderas (🇪🇸/🇬🇧) de la cabecera. Cada usuario tiene además un **idioma por
defecto** configurable al crear/editar el usuario.
<div style="page-break-after: always;"></div>
---
# 5. Roles y permisos
@@ -209,6 +240,8 @@ defecto** configurable al crear/editar el usuario.
> Para que un rol no-Admin use módulos nuevos (fases, incidencias, asignaciones…),
> asígnale los permisos correspondientes.
📷 *Captura: matriz de permisos en la edición de un rol.*
## 5.2 Catálogo de permisos (por sección)
- **Proyectos:** ver, crear, editar, eliminar, exportar.
@@ -228,6 +261,8 @@ Al asignar **usuarios** a un proyecto se elige su papel: *Supervisor, Consultor,
Cliente, Observador*. Al asignar **empresas**: *Promotor, Constructor, Subcontratista,
Consultor, Proveedor, Otro*.
<div style="page-break-after: always;"></div>
---
# 6. Manual de uso por secciones
@@ -236,6 +271,8 @@ Consultor, Proveedor, Otro*.
Vista de inicio con el resumen: proyectos accesibles, progreso, incidencias abiertas/
críticas e incidencias recientes. Incluye accesos directos a las secciones.
📷 *Captura: dashboard principal.*
## 6.2 Proyectos
### Listado
@@ -243,6 +280,8 @@ críticas e incidencias recientes. Incluye accesos directos a las secciones.
acceso, con referencia, nombre, dirección, estado, progreso y fechas. Acciones por
fila: **Dashboard**, **Mapa** y **Editar**.
📷 *Captura: listado de proyectos.*
### Crear / Editar
El editor de proyecto está organizado en **pestañas**:
1. **Datos**: referencia, nombre, dirección, ubicación (lat/lng en mapa), fechas y estado.
@@ -250,6 +289,8 @@ El editor de proyecto está organizado en **pestañas**:
3. **Usuarios** (ver 6.11): asignar usuarios al proyecto con su rol.
4. **Empresas**: asignar empresas al proyecto con su rol.
📷 *Captura: editor de proyecto (pestaña Datos).*
## 6.3 Fases
Dentro del editor de proyecto, la pestaña **Fases** lista las fases en una tabla
(orden, nombre, progreso, fechas, color) y permite:
@@ -260,6 +301,8 @@ Dentro del editor de proyecto, la pestaña **Fases** lista las fases en una tabl
- **Eliminar**.
(Requiere el permiso *gestionar fases*.)
📷 *Captura: pestaña Fases con la tabla y el modal de crear/editar fase.*
## 6.4 Mapa del proyecto
*Proyectos → Mapa* abre el mapa interactivo (Leaflet) con pestañas/panel lateral:
- **Capas y elementos**: visualización por capas; selección de un elemento muestra su
@@ -269,6 +312,8 @@ Dentro del editor de proyecto, la pestaña **Fases** lista las fases en una tabl
- **Incidencias**: pestaña con las incidencias del proyecto; desde un elemento puedes
pulsar **“Incidencia”** para reportar una nueva ya vinculada a ese elemento.
📷 *Captura: mapa del proyecto con el panel de un elemento seleccionado.*
## 6.5 Capas y elementos
Gestión de capas por fase (importar/subir, editar, eliminar) y de los elementos que
contienen, con su geometría, estado y progreso.
@@ -280,6 +325,8 @@ contienen, con su geometría, estado y progreso.
- **Registrar inspección**: desde el mapa, sobre un elemento, seleccionando la plantilla
y rellenando sus campos (estado, resultado, notas).
📷 *Captura: formulario de inspección desde el mapa.*
## 6.7 Incidencias
Acceso desde *Proyectos → Incidencias* o la pestaña Incidencias del mapa.
@@ -288,6 +335,8 @@ Tabla (Rappasoft) con **filtros por estado, prioridad y tipo**, búsqueda, barra
progreso de tareas, contadores de comentarios/fotos y badge de tareas **vencidas**.
Cabecera con botones **Nueva incidencia** y **Plantillas** (de checklist).
📷 *Captura: listado de incidencias con filtros.*
### Crear / Editar
Páginas propias (no modal). Campos: título, descripción, **prioridad** (baja/media/
alta/crítica), **estado** (abierto/en revisión/resuelto/cerrado), **tipo** (defecto/
@@ -302,6 +351,8 @@ abre el **detalle**.
- **Verificación / workflow**: enviar a revisión (cuando las tareas están completas),
**validar y resolver**, cerrar, reabrir; con notas de resolución.
📷 *Captura: detalle de incidencia (checklist + comentarios + fotos).*
### Plantillas de checklist
*Incidencias → Plantillas*: crea listas de tareas reutilizables (para defectos
recurrentes) que luego se aplican a cualquier incidencia.
@@ -313,21 +364,29 @@ estado. El comando programado avisa de **tareas vencidas**.
## 6.8 Cronograma (Gantt)
*Proyectos → Gantt*: vista de planificación temporal de las fases del proyecto.
📷 *Captura: cronograma Gantt.*
## 6.9 Informes y exportaciones
*Informes* muestra un panel con métricas y permite **exportar a Excel**: proyectos,
fases e inspecciones. (Requiere permisos *ver/exportar informes*.)
📷 *Captura: panel de informes.*
## 6.10 Empresas
*Empresas*: tabla (Rappasoft) con búsqueda y filtros (tipo, estado). Permite crear,
ver y editar empresas (logo, NIF, contacto, dirección…). Las empresas se asignan a
proyectos con un rol desde la pestaña Empresas del proyecto.
📷 *Captura: listado de empresas.*
## 6.11 Usuarios
*Administración → Usuarios*: tabla (Rappasoft) de usuarios. Crear/editar usuario incluye
datos personales, empresa, estado y validez, **rol del sistema**, **idioma por defecto**
(con banderas) y notas. La asignación a proyectos (con rol) se hace desde la pestaña
Usuarios del proyecto.
📷 *Captura: formulario de crear/editar usuario (con el selector de idioma).*
## 6.12 Roles y permisos (administración)
*Administración → Roles*: tabla de roles; al crear/editar un rol se asignan permisos
mediante una **matriz** agrupada por sección. *Administración → Permisos* muestra el
@@ -341,6 +400,8 @@ centrado en consultar el avance de sus proyectos.
Cada proyecto y elemento dispone de un gestor de archivos (imágenes y documentos) con
subida, visor y eliminación, según permisos de *Archivos*.
<div style="page-break-after: always;"></div>
---
# 7. Flujos de trabajo típicos
@@ -365,6 +426,8 @@ subida, visor y eliminación, según permisos de *Archivos*.
2. Consulta el **Gantt** y el **Dashboard** del proyecto.
3. En **Informes**, exporta a Excel proyectos/fases/inspecciones para la entrega.
<div style="page-break-after: always;"></div>
---
# 8. API (app móvil)
@@ -403,6 +466,8 @@ token; el resto de llamadas usan `Authorization: Bearer <token>`.
> Detalle de operaciones, payloads y campos: ver `docs/MOBILE_APP_BRIEF.md`.
<div style="page-break-after: always;"></div>
---
# 9. Mantenimiento, copias de seguridad y actualización
@@ -424,6 +489,8 @@ El cron del planificador (3.8) debe estar activo para los avisos de tareas venci
- HTTPS forzado.
- Cambiar credenciales por defecto y revisar permisos de roles.
<div style="page-break-after: always;"></div>
---
# 10. Resolución de problemas (FAQ)
@@ -452,6 +519,8 @@ Usa PHP 8.3, o `composer install --no-dev --ignore-platform-reqs`.
**Los avisos de vencimiento no llegan.**
Falta el cron del planificador (3.8) o el correo/notificaciones no están configurados.
<div style="page-break-after: always;"></div>
---
# 11. Anexos
@@ -479,5 +548,6 @@ Falta el cron del planificador (3.8) o el correo/notificaciones no están config
## 11.2 Documentos relacionados
- `docs/openapi.yaml`, `docs/MOBILE_SYNC_PROTOCOL.md`, `docs/MOBILE_APP_BRIEF.md`.
## 11.3 Capturas de pantalla
> *(Reservado: insertar capturas de cada sección al pasar el manual a Word.)*
## 11.3 Índice de capturas
> Lista de huecos de captura marcados con “📷 Captura:” a lo largo del manual, para
> insertarlos al pasar el documento a Word.