#!/bin/bash # Script para crear issues específicos sobre el ciclo de vida y automatización de muestras. # Issue 8: Implementar Ciclo de Vida para Muestras de Laboratorio tea issue create --title "feat: Implementar Ciclo de Vida para Muestras de Laboratorio" --labels "feature,enhancement" --description "$(cat <<'EOT' **Objetivo:** Implementar una máquina de estados para el modelo de muestra (`stock.lot`) que permita seguir su ciclo de vida desde la recolección hasta el descarte. **Tareas:** 1. **Modelo (`stock.lot`):** * Añadir un campo `state` de tipo `Selection` con los siguientes estados: - `collected` (Recolectada) - `received` (Recibida en Laboratorio) - `in_process` (En Proceso) - `analyzed` (Analizada) - `stored` (Almacenada) - `disposed` (Desechada) * Definir métodos para las transiciones de estado (ej. `action_receive`, `action_start_analysis`, etc.). 2. **Vistas (`stock_lot_views.xml`):** * Añadir un `statusbar` en la vista de formulario para visualizar y gestionar el estado. * Incorporar botones en el `header` para ejecutar las acciones de cambio de estado. * Mostrar el campo `state` en la vista de lista y añadirlo a los filtros. * Aplicar `readonly` a campos clave en función del estado para prevenir modificaciones no deseadas. EOT )" # Issue 9: Automatizar Creación de Muestras desde la Solicitud de Laboratorio tea issue create --title "feat: Automatizar Creación de Muestras desde la Solicitud" --labels "feature,automation" --description "$(cat <<'EOT' **Objetivo:** Automatizar la generación de registros de muestra (`stock.lot`) cuando una Solicitud de Laboratorio (`sale.order`) es confirmada. **Tareas:** 1. **Lógica de Negocio (`sale_order.py`):** * Heredar y extender el método `action_confirm` del modelo `sale.order`. * Dentro del método, añadir la lógica para crear un nuevo registro en `stock.lot` por cada tipo de muestra requerido en la solicitud. * Asociar la muestra creada con la solicitud (`request_id`) y el paciente (`patient_id`) correspondientes. * Asegurarse de que la muestra se cree en el estado inicial correcto (ej. 'Recolectada' o 'Pendiente de Recolección'). EOT )" echo "Script 'create_lifecycle_issues.sh' generado. Ejecútalo para crear los nuevos issues."