clinical_laboratory/lims_management/views/analysis_views.xml
Luis Ernesto Portillo Zaldivar 92f8894164 feat(#51): Task 2 completada - Crear modelo product.template.parameter
- Creado modelo product.template.parameter para asociar parámetros a análisis
- Campos: sequence, required, instructions
- Relación Many2one con analysis.parameter y product.template
- Agregadas vistas embebidas en product.template
- Actualizado analysis.parameter con relación One2many
- Configurados permisos de seguridad

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-15 11:29:41 -06:00

105 lines
5.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<!-- Vista de Lista para Rangos de Referencia -->
<record id="view_lims_analysis_range_tree" model="ir.ui.view">
<field name="name">lims.analysis.range.tree</field>
<field name="model">lims.analysis.range</field>
<field name="arch" type="xml">
<list string="Rangos de Referencia" editable="bottom">
<field name="gender"/>
<field name="age_min"/>
<field name="age_max"/>
<field name="min_value"/>
<field name="max_value"/>
<field name="unit_of_measure"/>
</list>
</field>
</record>
<!-- Hereda la vista de formulario de producto para añadir la pestaña de Análisis -->
<record id="view_product_template_form_lims" model="ir.ui.view">
<field name="name">product.template.form.lims</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_form_view"/>
<field name="arch" type="xml">
<xpath expr="//notebook" position="inside">
<page string="Configuración de Análisis" name="analysis_config"
invisible="not is_analysis">
<group>
<group>
<field name="analysis_type"/>
<field name="required_sample_type_id"/>
<field name="sample_volume_ml" invisible="not required_sample_type_id"/>
</group>
<group>
<field name="technical_specifications"/>
</group>
</group>
<separator string="Rangos de Referencia"/>
<field name="value_range_ids"
view_id="lims_management.view_lims_analysis_range_tree"/>
<separator string="Parámetros del Análisis"/>
<field name="parameter_ids"
context="{'default_product_tmpl_id': id}">
<list editable="bottom">
<field name="sequence" widget="handle"/>
<field name="parameter_id"
options="{'no_create': True}"
domain="[('active', '=', True)]"/>
<field name="parameter_code"/>
<field name="parameter_value_type"/>
<field name="parameter_unit"/>
<field name="required"/>
<field name="instructions" optional="show"/>
</list>
</field>
</page>
</xpath>
<!-- Añade el campo is_analysis cerca del nombre del producto para fácil acceso -->
<xpath expr="//field[@name='name']" position="after">
<field name="is_analysis"/>
</xpath>
</field>
</record>
<!-- Vista de Lista para Productos de Análisis -->
<record id="view_product_template_analysis_list" model="ir.ui.view">
<field name="name">product.template.analysis.list</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_tree_view"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='categ_id']" position="after">
<field name="is_analysis" optional="show"/>
<field name="analysis_type" optional="hide"/>
<field name="required_sample_type_id" optional="show"/>
</xpath>
</field>
</record>
<!-- Vista de Lista para Productos tipo Muestra -->
<record id="view_product_template_sample_list" model="ir.ui.view">
<field name="name">product.template.sample.list</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_tree_view"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='categ_id']" position="after">
<field name="is_sample_type" optional="show"/>
</xpath>
</field>
</record>
<!-- Añadir is_sample_type al formulario de producto -->
<record id="view_product_template_form_sample_type" model="ir.ui.view">
<field name="name">product.template.form.sample.type</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_form_view"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='is_analysis']" position="after">
<field name="is_sample_type"/>
</xpath>
</field>
</record>
</data>
</odoo>