feat(#10): Implementar etiquetas de muestras con código de barras #57

Merged
luis_portillo merged 6 commits from feature/10-sample-barcode-labels into dev 2025-07-16 04:05:27 +00:00

Descripción

Implementación del sistema de etiquetas con código de barras para las muestras de laboratorio.

Cambios realizados

Funcionalidad principal

  • Creado reporte QWeb para imprimir etiquetas de muestras (100x50mm)
  • Implementado botón 'Imprimir Etiquetas' en órdenes de laboratorio
  • Las etiquetas incluyen:
    • Información del paciente
    • Código de muestra y orden
    • Tipo de contenedor
    • Fecha de recolección
    • Código de barras Code128
    • Lista de análisis a realizar

Correcciones técnicas

  • Código de barras: Corregido problema de visualización usando widget nativo de Odoo 18
  • Caracteres especiales: Solucionado problema de codificación UTF-8 con referencias numéricas
  • Layout: Ajustado diseño para mostrar múltiples etiquetas por página sin solapamiento
  • Espaciado: Optimizado el tamaño y posición del código de barras

Testing

  • Probado con órdenes que tienen múltiples muestras
  • Verificado que los códigos de barras se generen y visualicen correctamente
  • Confirmado que los caracteres en español (tildes, ñ) se muestren bien
  • Validado que no hay solapamiento entre etiquetas

Capturas

  • Los códigos de barras ahora se visualizan correctamente
  • Las etiquetas respetan el formato 100x50mm
  • Múltiples etiquetas por página sin problemas de diseño
## Descripción Implementación del sistema de etiquetas con código de barras para las muestras de laboratorio. ## Cambios realizados ### Funcionalidad principal - Creado reporte QWeb para imprimir etiquetas de muestras (100x50mm) - Implementado botón 'Imprimir Etiquetas' en órdenes de laboratorio - Las etiquetas incluyen: - Información del paciente - Código de muestra y orden - Tipo de contenedor - Fecha de recolección - Código de barras Code128 - Lista de análisis a realizar ### Correcciones técnicas - **Código de barras**: Corregido problema de visualización usando widget nativo de Odoo 18 - **Caracteres especiales**: Solucionado problema de codificación UTF-8 con referencias numéricas - **Layout**: Ajustado diseño para mostrar múltiples etiquetas por página sin solapamiento - **Espaciado**: Optimizado el tamaño y posición del código de barras ## Testing - Probado con órdenes que tienen múltiples muestras - Verificado que los códigos de barras se generen y visualicen correctamente - Confirmado que los caracteres en español (tildes, ñ) se muestren bien - Validado que no hay solapamiento entre etiquetas ## Capturas - Los códigos de barras ahora se visualizan correctamente - Las etiquetas respetan el formato 100x50mm - Múltiples etiquetas por página sin problemas de diseño
luis_portillo added 6 commits 2025-07-16 04:05:12 +00:00
- Crear plantilla QWeb para etiquetas de 100x50mm
- Incluir datos del paciente, orden y tipo de muestra
- Generar código de barras Code128 usando campo existente
- Agregar botón 'Imprimir Etiquetas' en órdenes confirmadas
- Formato optimizado para impresoras de etiquetas

Co-Authored-By: Claude <noreply@anthropic.com>
- Mover paperformat antes del action report para evitar error de referencia
- Asegurar que los IDs se definan en el orden correcto

Co-Authored-By: Claude <noreply@anthropic.com>
- Agregar método _ensure_barcode() para generar códigos faltantes
- Llamar _ensure_barcode() antes de imprimir etiquetas
- Usar name del lote como fallback si no hay barcode
- Manejar casos donde el campo barcode está vacío

Co-Authored-By: Claude <noreply@anthropic.com>
- Cambiar sintaxis de % a t-attf-src para mejor compatibilidad
- Agregar el número del código debajo de la imagen
- Verificado que las muestras tienen barcode en BD
- Simplificar la lógica del template

Co-Authored-By: Claude <noreply@anthropic.com>
- Cambiar sintaxis de generación de código de barras a widget de Odoo 18
- Usar t-field con t-options para renderizar correctamente
- El código de barras ahora se muestra correctamente en el PDF
- Corregir codificación UTF-8 usando referencias numéricas de caracteres
- Ajustar espaciado entre etiquetas para evitar solapamiento
- Reducir tamaño de código de barras para mejor ajuste
- Agregar contenedores con overflow para controlar el contenido
- Cambiar de web.html_container a web.basic_layout para mejor renderizado PDF
luis_portillo merged commit 36a9772a07 into dev 2025-07-16 04:05:27 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Grupo-Consiti/clinical_laboratory#57
No description provided.