clinical_laboratory/documents/plans/ISSUE7_PLAN.md
Luis Ernesto Portillo Zaldivar 45af1771fa feat(#7): Anadir campo de recolector a muestras
- Anadido el campo 'collector_id' al modelo stock.lot.
- Actualizadas las vistas de lista y formulario para incluir el nuevo campo.
- Actualizados los datos de demostracion para asignar un recolector.
- Actualizado el plan de desarrollo.
2025-07-14 09:39:58 -06:00

57 lines
2.9 KiB
Markdown

# Plan de Actividades: Issue #7 - Gestión de Muestras de Laboratorio
## Objetivo
Extender el modelo de Lotes/Números de Serie de Odoo (`stock.lot`) para representar y gestionar las **Muestras de Laboratorio**. Esto permitirá la trazabilidad completa de la muestra desde su recolección hasta el análisis.
## TODO
- [x] **Extender el Modelo de Lote/Número de Serie (`stock.lot`):**
- [x] Crear el archivo `lims_management/models/stock_lot.py`.
- [x] Heredar del modelo `stock.lot`.
- [x] Añadir campos: `is_lab_sample`, `patient_id`, `request_id`, `collection_date`, `container_type`.
- [ ] **(Nuevo)** Añadir campo `collector_id` (Many2one a `res.users`) para registrar quién tomó la muestra.
- [x] **Adaptar las Vistas de Lote/Número de Serie:**
- [x] Crear el archivo `lims_management/views/stock_lot_views.xml`.
- [x] Crear vistas de lista y formulario para las muestras.
- [x] Crear un producto de servicio por defecto para las muestras.
- [ ] **(Nuevo)** Añadir el campo `collector_id` a las vistas de lista y formulario.
- [x] **Crear el Menú "Gestión de Muestras":**
- [x] Modificar `lims_management/views/menus.xml`.
- [x] Crear acción de ventana y `menuitem` para `stock.lot` con el dominio y contexto adecuados.
- [x] **Establecer Permisos y Reglas de Dominio:**
- [x] Modificar `lims_management/security/ir.model.access.csv` para dar permisos sobre `stock.lot`.
- [x] Añadir dominios en las vistas para los campos relacionales.
- [x] **Actualizar el Manifiesto (`__manifest__.py`):**
- [x] Añadir nuevos archivos de modelos, vistas y datos al manifiesto.
- [x] **Verificación Final:**
- [x] Reiniciar y verificar la instancia de Odoo.
- [x] **Mejorar Modelo de Productos para Tipos de Muestra:**
- [x] Añadir un campo booleano `is_sample_type` al modelo `product.template`.
- [x] **Crear Menú para "Tipos de Muestra":**
- [x] Añadir acción de ventana y `menuitem` para los tipos de muestra.
- [x] **Actualizar Vista de Muestras (`stock.lot`):**
- [x] Hacer visible y aplicar dominio al campo `product_id` (Tipo de Muestra).
- [x] Eliminar el producto genérico y su referencia en el contexto.
- [x] **Crear Datos de Demostración:**
- [x] Crear archivo `demo/z_sample_demo.xml` con tipos de muestra y muestras de ejemplo.
- [x] Añadir el archivo de demostración al manifiesto.
- [ ] **(Nuevo)** Actualizar los datos de demostración para incluir el `collector_id`.
- [x] **Verificación Final (con Demo):**
- [x] Validar la funcionalidad completa con los datos de demostración.
---
## Consideraciones Futuras (Siguientes Issues)
- **Ciclo de Vida de la Muestra:** Implementar un campo de estado (`state`) con su lógica de transiciones (ej. 'Recolectada' -> 'Recibida' -> 'En Proceso' -> 'Completada' -> 'Almacenada').
- **Informes de Muestras:** Crear informes en PDF o vistas dinámicas sobre el estado y trazabilidad de las muestras.