\"docs(#5): A¤adir tarea para crear datos de demostraci¢n\"
This commit is contained in:
parent
042261c302
commit
46b564eaae
|
@ -3,45 +3,57 @@
|
|||
## TODO
|
||||
|
||||
- [x] **Extender el Modelo de Productos (`product.template`):**
|
||||
- [x] Crear `lims_management/models/product.py`.
|
||||
- [x] Heredar de `product.template`.
|
||||
- [x] Añadir campo booleano `is_analysis`.
|
||||
- [x] Añadir campo de selección `analysis_type`.
|
||||
- [x] Añadir campo de texto `technical_specifications`.
|
||||
- [x] Crear campo `value_range` (One2many) que enlace al nuevo modelo `lims.analysis.range`.
|
||||
|
||||
- [x] Crear `lims_management/models/product.py`.
|
||||
- [x] Heredar de `product.template`.
|
||||
- [x] Añadir campo booleano `is_analysis`.
|
||||
- [x] Añadir campo de selección `analysis_type`.
|
||||
- [x] Añadir campo de texto `technical_specifications`.
|
||||
- [x] Crear campo `value_range` (One2many) que enlace al nuevo modelo `lims.analysis.range`.
|
||||
|
||||
- [x] **Crear el Modelo para Rangos de Referencia (`lims.analysis.range`):**
|
||||
- [x] Crear `lims_management/models/analysis_range.py`.
|
||||
- [x] Definir campos: `analysis_id` (Many2one), `gender`, `age_min`, `age_max`, `min_value`, `max_value`, `unit_of_measure`.
|
||||
|
||||
- [x] Crear `lims_management/models/analysis_range.py`.
|
||||
- [x] Definir campos: `analysis_id` (Many2one), `gender`, `age_min`, `age_max`, `min_value`, `max_value`, `unit_of_measure`.
|
||||
|
||||
- [x] **Definir Permisos de Seguridad:**
|
||||
- [x] Modificar `lims_management/security/ir.model.access.csv`.
|
||||
- [x] Añadir permisos para el modelo `lims.analysis.range`.
|
||||
|
||||
- [x] Modificar `lims_management/security/ir.model.access.csv`.
|
||||
- [x] Añadir permisos para el modelo `lims.analysis.range`.
|
||||
|
||||
- [x] **Crear las Vistas para el Catálogo de Análisis:**
|
||||
- [x] Crear `lims_management/views/analysis_views.xml`.
|
||||
- [x] Crear vista de lista/Kanban para análisis clínicos.
|
||||
- [x] Heredar de la vista de formulario de productos para añadir la pestaña "Configuración de Análisis".
|
||||
- [x] Mostrar campos condicionalmente (`is_analysis = True`).
|
||||
- [x] Crear una vista de árbol independiente para los rangos de referencia (`lims.analysis.range`).
|
||||
- [x] En la vista de formulario del producto, referenciar la nueva vista de árbol para el campo `value_range_ids`.
|
||||
- [ ] **(Nuevo)** Modificar las etiquetas en la acción de ventana para que se muestre "Análisis" en lugar de "Producto".
|
||||
|
||||
- [x] Crear `lims_management/views/analysis_views.xml`.
|
||||
- [x] Crear vista de lista/Kanban para análisis clínicos.
|
||||
- [x] Heredar de la vista de formulario de productos para añadir la pestaña "Configuración de Análisis".
|
||||
- [x] Mostrar campos condicionalmente (`is_analysis = True`).
|
||||
- [x] Crear una vista de árbol independiente para los rangos de referencia (`lims.analysis.range`).
|
||||
- [x] En la vista de formulario del producto, referenciar la nueva vista de árbol para el campo `value_range_ids`.
|
||||
- [ ] **(Nuevo)** Modificar las etiquetas en la acción de ventana para que se muestre "Análisis Clinico" en lugar de "Producto".
|
||||
|
||||
- [x] **Crear el Menú "Catálogo de Análisis":**
|
||||
- [x] Modificar `lims_management/views/menus.xml`.
|
||||
- [x] Crear una nueva acción de ventana (`ir.actions.act_window`).
|
||||
- [ ] **(Nuevo)** Definir valores por defecto en el `context` de la acción para: `type`, `purchase_ok`, `categ_id`.
|
||||
- [ ] **(Nuevo)** Crear la categoría de producto "Análisis Clínico" mediante un archivo de datos.
|
||||
- [x] Crear un `menuitem` para "Catálogo de Análisis".
|
||||
|
||||
- [x] Modificar `lims_management/views/menus.xml`.
|
||||
- [x] Crear una nueva acción de ventana (`ir.actions.act_window`).
|
||||
- [ ] **(Nuevo)** Definir valores por defecto en el `context` de la acción para: `type`, `purchase_ok`, `categ_id`.
|
||||
- [ ] **(Nuevo)** Crear la categoría de producto "Análisis Clínico" mediante un archivo de datos.
|
||||
- [x] Crear un `menuitem` para "Catálogo de Análisis".
|
||||
|
||||
- [x] **Actualizar el Manifiesto (`__manifest__.py`):**
|
||||
- [x] Añadir los nuevos modelos al `__init__.py` de la carpeta `models`.
|
||||
- [x] Añadir el nuevo archivo de vistas a la lista `data` en `__manifest__.py`.
|
||||
|
||||
- [x] Añadir los nuevos modelos al `__init__.py` de la carpeta `models`.
|
||||
- [x] Añadir el nuevo archivo de vistas a la lista `data` en `__manifest__.py`.
|
||||
|
||||
- [x] **Verificación Final:**
|
||||
- [x] Reiniciar la instancia de Odoo (`docker-compose down -v` y `docker-compose up -d`).
|
||||
- [x] Revisar logs de `odoo_init`.
|
||||
- [x] Verificar la funcionalidad en la interfaz de Odoo.
|
||||
- [x] Reiniciar la instancia de Odoo (`docker-compose down -v` y `docker-compose up -d`).
|
||||
- [x] Revisar logs de `odoo_init`.
|
||||
- [x] Verificar la funcionalidad en la interfaz de Odoo.
|
||||
|
||||
- [ ] **(Nuevo) Crear Datos de Demostración:**
|
||||
- [ ] Crear el archivo `demo/analysis_demo.xml`.
|
||||
- [ ] Definir registros de ejemplo para análisis clínicos (Hemograma, Perfil Lipídico, etc.).
|
||||
- [ ] Asegurarse de que los datos de demostración incluyan la configuración de los rangos de referencia.
|
||||
- [ ] Añadir el archivo `analysis_demo.xml` a la clave `demo` en `__manifest__.py`.
|
||||
|
||||
---
|
||||
|
||||
|
@ -54,19 +66,19 @@ Para mejorar la experiencia de usuario y asegurar la consistencia de los datos,
|
|||
- **Análisis del Modelo `product.template`:** La revisión del modelo base de productos en Odoo 18 revel<65><6C> campos clave que definen el comportamiento de un producto en el sistema, tales como `type`, `sale_ok`, `purchase_ok`, y `categ_id`. Estos campos son fundamentales para que un producto se integre correctamente con los módulos de Ventas, Compras e Inventario.
|
||||
|
||||
- **Relación con los Requerimientos y Diseño Técnico:**
|
||||
- El documento `RequerimientoInicial.md` especifica que los análisis clínicos deben ser considerados **servicios facturables**. Esto justifica la necesidad de configurar los análisis como productos de tipo "Servicio" (`type='service'`) que se puedan vender (`sale_ok=True`).
|
||||
- El documento `ToBeDesing.md` enfatiza la importancia de **categorizar** la información para mantener el sistema organizado y facilitar los filtros. Esto respalda la creación de una categoría de producto específica, "Análisis Clínico", para agrupar todos estos servicios y separarlos de otros productos que la empresa pueda manejar.
|
||||
- Ambos documentos dejan claro que el laboratorio presta estos servicios, pero no los compra. Por lo tanto, deshabilitar la opción de compra (`purchase_ok=False`) es coherente con el flujo de negocio, evitando que los análisis aparezcan en contextos de compra.
|
||||
- El documento `RequerimientoInicial.md` especifica que los análisis clínicos deben ser considerados **servicios facturables**. Esto justifica la necesidad de configurar los análisis como productos de tipo "Servicio" (`type='service'`) que se puedan vender (`sale_ok=True`).
|
||||
- El documento `ToBeDesing.md` enfatiza la importancia de **categorizar** la información para mantener el sistema organizado y facilitar los filtros. Esto respalda la creación de una categoría de producto específica, "Análisis Clínico", para agrupar todos estos servicios y separarlos de otros productos que la empresa pueda manejar.
|
||||
- Ambos documentos dejan claro que el laboratorio presta estos servicios, pero no los compra. Por lo tanto, deshabilitar la opción de compra (`purchase_ok=False`) es coherente con el flujo de negocio, evitando que los análisis aparezcan en contextos de compra.
|
||||
|
||||
### 2. Propuesta de Valores por Defecto
|
||||
|
||||
Basado en el análisis anterior, se implementarán los siguientes valores por defecto al crear un nuevo análisis clínico desde su menú correspondiente:
|
||||
|
||||
| Campo en `product.template` | Valor por Defecto Recomendado | Justificación |
|
||||
| :--- | :--- | :--- |
|
||||
| **`type` (Tipo de Producto)** | `'service'` (Servicio) | Un análisis es un servicio prestado, no un bien físico. Esto evita que Odoo intente gestionar su stock. |
|
||||
| **`purchase_ok` (Se puede Comprar)** | `False` (Falso) | El laboratorio vende análisis, no los compra. Esto limpia la interfaz en los flujos de compra. |
|
||||
| **`categ_id` (Categoría de Producto)** | `Análisis Clínico` | Permite agrupar, filtrar y aplicar reglas contables específicas a todos los análisis clínicos. |
|
||||
| **`sale_ok` (Se puede Vender)** | `True` (Verdadero) | Esencial para que los análisis puedan ser añadidos a las órdenes de laboratorio (órdenes de venta). |
|
||||
| Campo en `product.template` | Valor por Defecto Recomendado | Justificación |
|
||||
| :------------------------------------- | :---------------------------- | :------------------------------------------------------------------------------------------------------ |
|
||||
| **`type` (Tipo de Producto)** | `'service'` (Servicio) | Un análisis es un servicio prestado, no un bien físico. Esto evita que Odoo intente gestionar su stock. |
|
||||
| **`purchase_ok` (Se puede Comprar)** | `False` (Falso) | El laboratorio vende análisis, no los compra. Esto limpia la interfaz en los flujos de compra. |
|
||||
| **`categ_id` (Categoría de Producto)** | `Análisis Clínico` | Permite agrupar, filtrar y aplicar reglas contables específicas a todos los análisis clínicos. |
|
||||
| **`sale_ok` (Se puede Vender)** | `True` (Verdadero) | Esencial para que los análisis puedan ser añadidos a las órdenes de laboratorio (órdenes de venta). |
|
||||
|
||||
Estos valores se configurarán en el `context` de la acción de ventana (`ir.actions.act_window`) que gestiona la creación de nuevos análisis, asegurando que cada nuevo registro se cree con la configuración correcta de forma automática.
|
||||
|
|
Loading…
Reference in New Issue
Block a user