Commit Graph

65 Commits

Author SHA1 Message Date
651aa138cf Backend v1.0.73:
- Implementado sistema de reordenamiento de preguntas
- Nuevo endpoint PATCH /api/checklists/{id}/questions/reorder
- Schema QuestionReorder para validar datos de reorden
- Actualización en lote de campo 'order' en preguntas
- Auditoría automática de cambios de orden
- Validación de permisos y existencia de checklist

Frontend v1.0.71:
- Agregada funcionalidad de reordenamiento de preguntas
- Botones ▲ ▼ para mover preguntas arriba/abajo
- Función moveQuestion() para gestionar reordenamiento
- Interfaz visual mejorada con separadores
- Tooltips descriptivos en botones de orden
- Recarga automática tras reordenar
2025-11-27 16:15:20 -03:00
ed3f513075 Backend v1.0.71:
- Implementado soft delete para preguntas
- Nuevas columnas: is_deleted (boolean), updated_at (timestamp)
- Migración SQL: add_soft_delete_to_questions.sql
- Endpoint DELETE marca preguntas como eliminadas en lugar de borrarlas
- GET /api/checklists/{id} filtra preguntas eliminadas (is_deleted=false)
- Validación de subpreguntas activas antes de eliminar
- Índices agregados para optimizar queries
- Mantiene integridad de respuestas históricas y PDFs generados
- Permite limpiar checklists sin afectar inspecciones completadas
2025-11-27 15:32:56 -03:00
027f22551c Frontend v1.0.69:
- Agregado debug logging para investigar problema de carga de ai_prompt al editar preguntas
- Console.log muestra el objeto de pregunta completo y el campo ai_prompt específico

Backend v1.0.69:
- Sincronización de versión con frontend
- Schema ya incluye ai_prompt en QuestionBase y Question
2025-11-27 11:39:25 -03:00
0117ba34f8 Frontend v1.0.68:
- Agregada funcionalidad de edición de checklists
- Nuevo modal para editar nombre, descripción, modo IA y scoring
- Botón "✏️ Editar" en cada checklist (solo admins)
- Mejora en la gestión de checklists en el panel de administración

Backend v1.0.68:
- Actualización de versión para sincronizar con frontend
- Endpoint PUT /api/checklists/{id} ya soportaba la funcionalidad
2025-11-27 11:19:48 -03:00
efbf57e6bc v1.0.67 Backend / v1.0.67 Frontend - Ordenamiento consistente de checklists e inspecciones
Frontend (1.0.67):
- 🔧 Checklists e inspecciones se ordenan por ID descendente (más recientes primero)
- Mantiene posición de elementos después de editar/actualizar
- Ya no se mueven al final de la lista tras modificaciones
- Orden consistente en todas las recargas de datos
- Mejora UX al preservar contexto visual del usuario

Backend (1.0.67):
- Sin cambios (mantiene versión actual)
2025-11-27 03:01:06 -03:00
afe57fba1d v1.0.67 Backend / v1.0.66 Frontend - Filtro de usuarios incluye administradores en Informes
Frontend (1.0.66):
- 🔧 Filtro de usuarios ahora incluye admin además de mechanic/mecanico
- Los administradores aparecen en el filtro ya que también pueden hacer inspecciones
- Formato mejorado: "{full_name || username} ({role})"
- Mayor visibilidad de todas las inspecciones realizadas por cualquier usuario autorizado

Backend (1.0.67):
- Sin cambios (mantiene versión actual)
2025-11-27 02:56:55 -03:00
409cbd437a v1.0.67 Backend / v1.0.65 Frontend - Mejora en filtro de mecánicos en pestaña Informes
Frontend (1.0.65):
- 🔧 Filtro de mecánicos muestra nombre completo con rol
- Formato: "{full_name || username} ({role})"
- Ejemplo: "Ron 1 Admin (admin)" en lugar de solo "Ron 1"
- Fallback a username si full_name no está disponible
- Mayor claridad para identificar usuarios en reportes

Backend (1.0.67):
- Sin cambios (mantiene versión actual)
2025-11-27 02:51:57 -03:00
ef9c37dcdd v1.0.67 Backend / v1.0.64 Frontend - Paginación de 10 elementos en todas las pestañas
Frontend (1.0.64):
- 📄 Paginación en InspectionsTab (10 inspecciones/página)
- 📄 Paginación en ChecklistsTab (10 checklists/página)
- 📊 Paginación en ReportsTab (10 informes/página)
- Auto-reset a página 1 cuando cambian filtros de búsqueda
- Navegación inteligente con puntos suspensivos para rangos grandes
- Muestra primera, última y páginas cercanas (actual ± 1)
- Contador 'Mostrando X-Y de Z' en cada pestaña
- Botones Anterior/Siguiente con estados deshabilitados
- useEffect para sincronizar currentPage con filtros

Mejoras de UX:
- Navegación directa por número de página
- Diseño consistente en las 3 pestañas
- Controles responsive con hover states
- Indicadores visuales claros de página actual

Backend (1.0.67):
- Sin cambios (mantiene versión actual)

Documentación:
- 📝 Agregada sección 'Control de Versiones' en README.md
- Instrucciones detalladas para commits con versiones
- Formato estándar para mensajes de commit
- Tipos de commit (feat, fix, refactor, etc.)
- Reglas de Semantic Versioning
- Ubicación de archivos de versión"
2025-11-27 02:31:20 -03:00
e3ac1c84d7 Listo! Logs eliminados. Frontend v1.0.63. 2025-11-27 02:22:06 -03:00
aa35c8f2eb v1.0.67 Backend / v1.0.61 Frontend - Fix 422: ai_analysis ahora acepta lista
Backend (1.0.67):
- 🐛 Fix: ai_analysis cambió de dict a list en schemas
- Soporta múltiples análisis de IA (una por cada imagen)
- AnswerCreate.ai_analysis: Optional[list] = None
- Answer.ai_analysis: Optional[list] = None
- Compatible con campo JSON en base de datos

Frontend (1.0.61):
- Sin cambios (ya enviaba ai_analysis como array)
- Formato: [{ success, analysis, raw_response, model, provider, imageIndex, fileName }]

Causa del error 422:
- Frontend enviaba: ai_analysis: [{ imageIndex: 1, ... }]
- Backend esperaba: ai_analysis: { ... } (dict)
- Ahora backend acepta: ai_analysis: [{ ... }, { ... }] (list)

Beneficio:
- Ahora se almacenan TODOS los análisis de múltiples imágenes
- Cada elemento del array tiene imageIndex para identificación
- Mantiene trazabilidad completa del análisis IA
2025-11-27 02:11:56 -03:00
d1b4d10257 v1.0.66 Backend / v1.0.60 Frontend - Fix error 422 en análisis IA sin respuesta
Backend (1.0.66):
- 🐛 Fix: answer_value ahora es Optional en AnswerBase schema
- Permite guardar respuestas con solo análisis IA y fotos
- Permite guardar observaciones sin answer_value
- Ya no rechaza con 422 cuando answer_value es null/vacío

Frontend (1.0.60):
- 🐛 Fix: saveAnswer ahora permite guardar si hay:
  * Valor de respuesta, O
  * Observaciones de IA, O
  * Fotos cargadas
- Mejorada lógica de determinación de status
- Solo calcula status si hay answer.value
- Permite guardar análisis IA antes de seleccionar respuesta

Flujo mejorado:
1. Usuario sube fotos
2. Click "Analizar con IA" → genera observaciones
3. Puede avanzar sin seleccionar respuesta (guardará solo observaciones)
4. O puede seleccionar respuesta después → actualiza el record

Causa del error 422:
- answer_value era required en schema
- Al analizar fotos sin seleccionar respuesta se enviaba answer_value=""
- Backend rechazaba con 422 Unprocessable Entity
- Ahora answer_value es opcional y acepta null/vacío
2025-11-27 02:07:17 -03:00
7fb2e40a1e v1.0.65 Backend / v1.0.59 Frontend - Fix client_name + Mejoras en carga de fotos
Backend (1.0.65):
- Fix: Todas las referencias client_name cambiadas a order_number
- Actualizado webhook n8n: "cliente" → "pedido"
- Actualizado contexto IA: "Cliente" → "Nº Pedido"
- PDF ahora muestra "Nº de Pedido" en lugar de "Cliente"

Frontend (1.0.59):
- 📸 NUEVO: Vista previa de fotos cargadas (grid 3 columnas con thumbnails)
- 📸 NUEVO: Botón "✕" para eliminar fotos individuales
- 📸 NUEVO: Botón manual "🤖 Analizar con IA" (no auto-análisis)
- 📸 MEJORA: Permite cargar múltiples fotos respetando max_photos
- 📸 MEJORA: Input file solo required si no hay fotos cargadas
- 📸 MEJORA: Muestra contador "X foto(s) cargada(s)"
- 🔧 Fix: Ya no analiza automáticamente al subir (espera click en botón)
- 🔧 Fix: Permite re-cargar fotos eliminando las anteriores
- 🔧 Fix: Previene exceder max_photos mostrando alerta

UX Improvements:
- Usuario sube 1-3 fotos y las ve en preview
- Puede eliminar individualmente con hover + click en ✕
- Click en "Analizar con IA" procesa todas las fotos juntas
- Análisis secuencial con summary multi-imagen

Nota: No requiere migración (ya ejecutada en v1.0.64)
2025-11-27 01:58:08 -03:00
fdad7b10ad v1.0.64 Backend / v1.0.58 Frontend - Renombrar cliente a N° de Pedido
Backend (1.0.64):
- Renombrado campo client_name a order_number en modelo Inspection
- Actualizado InspectionBase schema con nuevo campo order_number
- Comentario descriptivo: "Número de pedido asociado a la inspección"

Frontend (1.0.58):
- Renombrado client_name a order_number en toda la aplicación
- Actualizado label: "Nombre del Cliente" → "Nº de Pedido"
- Actualizado placeholder: "Juan Pérez" → "PED-12345"
- Actualizado título sección: "Información del Cliente" → "Información del Pedido"
- Actualizado filtro de búsqueda para incluir número de pedido
- Actualizado texto de búsqueda: "cliente" → "Nº pedido"

Database:
- Script de migración: rename_client_name_to_order_number.sql
- Comando: ALTER TABLE inspections RENAME COLUMN client_name TO order_number

Nota: Ejecutar migración SQL antes de usar esta versión
2025-11-27 01:49:42 -03:00
cdd1b3507b v1.0.63 Backend / v1.0.57 Frontend - Edición y auditoría de preguntas 2025-11-27 01:26:15 -03:00
6f3a6d40f4 Edicion de preguntas 2025-11-27 01:14:21 -03:00
f4b33ce014 Actualizar resultado de analisis de imagenes con ia 2025-11-26 18:17:45 -03:00
822615d2ba Refactorizacion de logica de analisis de las preguntas con la IA y que acepte y respete las reglas de imagenes 2025-11-26 17:58:15 -03:00
16a25799e9 trabajar por logos para checklists 2025-11-26 17:42:06 -03:00
637b21d85f Se borraron los archivos temporales de los favicons y tambien se re configuro el logo y la configuracion del logo 2025-11-26 17:31:38 -03:00
aa2b196b53 Se agregaron los favIcons 2025-11-26 17:27:58 -03:00
ac53303930 agregar fiiltros de busqueda en el front 2025-11-26 17:02:26 -03:00
5b82418f0a Agregar en el Modal campo de Nro Operario back y front 2025-11-26 01:35:03 -03:00
822ab5a1cb Actualziacion de analisis de ia con las imagenes y se agrega el campo de cod operario en el front y en el back 2025-11-26 01:20:26 -03:00
cbfab59222 De nuevo actulizar configuraciones con los modelos 2025-11-26 00:31:25 -03:00
83e76f02a2 Corregir modelos de ia en configuraciones 2025-11-26 00:29:05 -03:00
b867f11450 custom promtp no esstaba funcionando 2025-11-26 00:13:32 -03:00
98f0d94564 Atualizar campo de IA obseervaciones back 1.0.43 y front 1.0.41 2025-11-25 23:55:34 -03:00
683e260c79 IA va a tener Contexto de la primera plantilal de las Inspecciones backend 1.0.42 frontend 1.0.40 2025-11-25 23:45:20 -03:00
773a9336ef Ajuste de mensajes de notificaciones y resolucion de notificaciones duplicadas backend 1.0.40 2025-11-25 23:19:16 -03:00
4c8938a24e back 1.0.38 y front 1.0.39 cambios en condicionales de sub preguntas, solo boleanos 2025-11-25 22:43:14 -03:00
1ef07ad2c5 Cambios Grandes, editro nuevo de preguntas, logica nueva con mas opciones de pregutnas con preguntas hijos hasta 5 niveles 2025-11-25 22:23:21 -03:00
99f0952378 Actualizacion del Syntria por Ayutec en SideBar 2025-11-25 21:25:48 -03:00
195143b7ab ACtualizacion de Variable para cambiar dominio y dejar referenciado igual que en las variables de entorno de la Stack en Portainer 2025-11-25 21:23:58 -03:00
e8d3e7ef7b backend y front trabajar por version de historial de cambios 2025-11-25 09:55:21 -03:00
1b31007eef backend y front estables ses creo modal para permisos de checklist backend 1.0.31 y frontend 1.0.33 2025-11-25 09:45:31 -03:00
eb94d8ccfc backend crear endpoitns para permisos de checklist por mecanico, 1.0.30 2025-11-25 09:22:38 -03:00
ad59152cce Corregir notificaicon check 2025-11-25 08:43:54 -03:00
14073db2d9 Logo feature 1.0.27r 2025-11-25 05:55:45 -03:00
33b134e838 Agregar paginacion al FrontEnd de preguntas con flechitas si hay mas de 8 v1.0.28 2025-11-24 22:03:00 -03:00
bfe542159d Agregar paginacion al FrontEnd de preguntas v1.0.27 2025-11-24 21:58:01 -03:00
4234b71e17 Refactorizacion de PDFs y cambio de biblioteca backend 1.0.22-
-Funcional Usuarios, exportar Pdfs front v1.0.25
2025-11-24 21:10:18 -03:00
9c55f45c8a feat: Miniaturas en visualización de inspección - frontend v1.0.23
- Muestra miniaturas de fotos en cada pregunta usando media_files y photos
- Permite abrir imagen en grande al hacer click
- Actualización de docker-compose
2025-11-21 17:44:45 -03:00
ac7b582d8a fix: Ocultar campo AI Prompt cuando checklist no usa IA - frontend v1.0.22
- Campo AI Prompt solo visible cuando checklist.ai_mode !== 'off'
- Evita confusión en checklists sin IA habilitada
2025-11-21 02:53:54 -03:00
2b5424790a feat: AI prompts personalizados por pregunta - backend v1.0.13, frontend v1.0.21
Backend:
- Agregar campo ai_prompt a tabla questions
- Endpoint analyze-image recibe custom_prompt
- Validación de imagen apropiada (sugiere cambiar foto si no corresponde)
- Script de migración migrate_ai_prompt.py

Frontend:
- Campo de texto para configurar prompt de IA en editor de preguntas
- Envía custom_prompt al endpoint de análisis
- UI con fondo morado para sección de IA

La IA ahora analiza fotos según el contexto específico de cada pregunta
y sugiere cambiar la imagen si no corresponde al componente solicitado.
2025-11-21 02:41:50 -03:00
678a8cd24b fix: Corregir lógica de preguntas condicionales - frontend v1.0.20
- Sin valor por defecto en respuestas (usuario debe elegir)
- setAnswers funcional para evitar condiciones de carrera
- visibleQuestions actualizado en tiempo real
- Sub-preguntas se muestran/ocultan dinámicamente según respuesta padre
2025-11-21 02:28:27 -03:00
b730c4f7c2 feat: Editor de preguntas condicionales - frontend v1.0.19 2025-11-21 02:15:45 -03:00
45086e8922 feat: Implement non-blocking inspection flow with conditional questions - WIP 2025-11-21 00:51:19 -03:00
a65bfa1a9d feat: Add asesor role to user management forms - v1.0.17 2025-11-20 17:54:12 -03:00
570cdb6739 feat: Add asesor role with reports-only access - backend v1.0.10, frontend v1.0.16 2025-11-20 16:23:52 -03:00
9dd2e2598b fix: Date filter now sends both start_date and end_date to filter single day - v1.0.15 2025-11-20 15:06:58 -03:00