Commit Graph

10 Commits

Author SHA1 Message Date
Luis Ernesto Portillo Zaldivar
d51d3b5d69 feat(#71): Implementar dashboards para administrador del laboratorio
- Dashboard de Estado de Órdenes: Vista gráfica y pivot de órdenes por estado
- Dashboard de Productividad de Técnicos: Análisis de pruebas por técnico
- Dashboard de Muestras: Estado y distribución de muestras por tipo
- Dashboard de Parámetros Fuera de Rango: Identificación de resultados críticos
- Dashboard de Análisis Más Solicitados: Top de análisis por período
- Dashboard de Distribución Demográfica: Tests por género y rango de edad
- Agregar campos computed age_range, patient_gender y patient_age_range
- Configurar menú de Dashboards solo para administradores

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-17 11:17:26 -06:00
Luis Ernesto Portillo Zaldivar
34f3b0aa14 fix(#67): Incluir value_selection en validación de resultados ingresados
- La validación de action_enter_results no estaba verificando el campo value_selection
- Esto causaba falso positivo de 'parámetros sin resultados ingresados'
- Agregar value_selection a la condición del filtro
2025-07-17 02:19:19 -06:00
Luis Ernesto Portillo Zaldivar
f8be847777 feat(#67): Implementar autocompletado inteligente para campos de selección
- Agregar método _onchange_value_selection() que autocompleta al escribir
- Agregar método _validate_and_autocomplete_selection() para validación
- Override create() y write() para autocompletar antes de guardar
- Búsqueda flexible: acepta iniciales, mayúsculas/minúsculas, coincidencias parciales
- Generar instrucciones automáticas en campo notes al crear resultados
- Las instrucciones muestran opciones disponibles y ejemplos de uso
2025-07-17 02:06:04 -06:00
Luis Ernesto Portillo Zaldivar
aa8a0571fc feat(#11): Implementar informe PDF de resultados de laboratorio
- Agregar QWeb template para generar PDF profesional con:
  - Encabezado con datos del laboratorio y logo
  - Información completa del paciente y orden
  - Tabla de resultados con indicadores visuales para valores fuera de rango
  - Sección de observaciones y notas
  - Información del validador y fecha de validación

- Agregar campo computado reference_text en parameter_range para mostrar rangos formateados
- Agregar botón "Imprimir Informe de Resultados" en vista de órdenes (solo visible cuando hay pruebas validadas)
- Agregar campo lab_notes en sale.order para observaciones generales
- Reorganizar vista de lims.test con pestañas para mejor UX
- Corregir manejo de employee_ids en el reporte para casos donde no existe el módulo HR
- Incluir scripts de prueba para generar datos de demostración

El informe resalta valores críticos y fuera de rango con colores distintivos,
facilitando la interpretación rápida de los resultados por parte del médico.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-16 18:03:06 -06:00
Luis Ernesto Portillo Zaldivar
0d09e1819a feat(#63): Implementar redirección a vistas personalizadas de muestras
- Agregar contexto de vistas personalizadas en todos los campos que referencian muestras
- Modificar sale_order_views.xml: campo all_sample_ids con redirección
- Modificar lims_test_views.xml: campo sample_id con redirección
- Modificar lims_result_bulk_entry_views.xml: campo sample_id con redirección
- Modificar stock_lot_views.xml: campos parent_sample_id y child_sample_ids
- Agregar muestra y estado a vista de resultados con filtros y agrupación
- Corregir estado 'in_analysis' por 'in_process' en action_start_process
- Corregir validación de resultados críticos para usar campo correcto

Ahora todas las referencias a muestras en el módulo LIMS abren la vista personalizada del laboratorio en lugar de la vista estándar de stock.lot.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-16 12:30:13 -06:00
Luis Ernesto Portillo Zaldivar
58e1648493 feat(#9): Implementar flujo de validación y seguridad
- Ajustar permisos base: recepcionistas solo lectura, técnicos sin eliminar
- Crear reglas de registro para control granular por estado
- Implementar verificación de permisos en todas las transiciones
- Agregar mail.thread a stock.lot para trazabilidad completa
- Validar transiciones de estado y muestras asociadas
- Actualizar vistas con restricciones según grupos de usuario
- Mejorar mensajes del chatter con más contexto

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-15 19:19:51 -06:00
Luis Ernesto Portillo Zaldivar
79373a01a1 feat(#51): Task 6 completada - Actualizar generación automática de resultados
- Implementado método _generate_test_results() en lims.test
- Genera automáticamente líneas de lims.result basadas en product.template.parameter
- Se ejecuta al crear una nueva prueba
- Respeta el orden (sequence) y las instrucciones de cada parámetro
- Agregado action_regenerate_results() para regenerar manualmente
- Botón en la vista con confirmación para regenerar resultados
- Logging de información sobre resultados generados

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-15 12:40:44 -06:00
Luis Ernesto Portillo Zaldivar
820c05ffa9 fix: Implementar generación automática de pruebas y mejorar selección de muestras
- Agregar método _generate_lab_tests() en sale.order para crear pruebas automáticamente al confirmar orden
- Agregar método _find_sample_for_analysis() para asociar muestras con análisis según tipo
- Mejorar dominio de sample_id en lims.test para filtrar por paciente y estado (collected/in_analysis)
- Agregar método _onchange_sale_order_line() para actualizar dominio de muestra dinámicamente
- Las pruebas ahora se crean automáticamente con la muestra correcta asignada

Esto resuelve el problema reportado donde las órdenes aprobadas no generaban pruebas
y las muestras no estaban disponibles para selección manual.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-15 01:17:37 -06:00
Luis Ernesto Portillo Zaldivar
619c6a3afa feat(#8): Task 5 completada - Configuración de validación opcional
- Modelo res.config.settings con parámetro lims_require_validation
- Método _compute_require_validation usa la configuración
- Auto-validación cuando no se requiere validación manual
- Vista de configuración en Laboratorio > Configuración > Ajustes
- Instancia validada sin errores
2025-07-15 00:59:52 -06:00
Luis Ernesto Portillo Zaldivar
a1b8f7b1de feat(#8): Task 1 y 2 completadas - Crear modelos lims.test y lims.result
- Modelo lims.test con todos los campos especificados
- Modelo lims.result con soporte para múltiples tipos de valor
- Secuencia automática para códigos de prueba
- Flujo de estados: draft -> in_process -> result_entered -> validated
- Validación de un solo tipo de valor por resultado
- Permisos de seguridad configurados
2025-07-15 00:36:58 -06:00