diff --git a/locale/es.po b/locale/es.po index f2712ea..43e5331 100644 --- a/locale/es.po +++ b/locale/es.po @@ -22,9 +22,9 @@ msgctxt "field:product.template,equipment:" msgid "It is equipment" msgstr "Es equipo" -msgctxt "field:product.template,equipment:" -msgid "It is equipment" -msgstr "Es equipo" +msgctxt "field:product.template,electrical_equipment:" +msgid "Electrical Equipment" +msgstr "Equipo Eléctrico" msgctxt "field:product.template,maintenance_activity:" msgid "Maintenance Activity" diff --git a/product.py b/product.py index fbe6848..53d9021 100644 --- a/product.py +++ b/product.py @@ -101,11 +101,12 @@ class Template(metaclass=PoolMeta): # for manage of class 'product.template' - temperature = fields.Float("Temperature") + temperature_init = fields.Float("Ti") + temperature_end = fields.Float("Tf") temperature_uom = fields.Many2One('product.uom', 'Temperature UOM', domain=[('category', '=', Id('optical_equipment', "uom_cat_temperature"))], - states={'invisible' : If(Eval('temperature') == None, True)}, - depends=['temperature'] + states={'invisible' : If(Eval('temperature_init') == None, True)}, + depends=['itemperature_init'] ) frequency = fields.Float("Frequency") frequency_uom = fields.Many2One('product.uom', "Frequency UOM", @@ -113,19 +114,30 @@ class Template(metaclass=PoolMeta): states={'invisible' : If(Eval('frequency') == None, True)}, depends=['frequency'] ) - moisture = fields.Float("Moisture") + moisture_init = fields.Float("Mi") + moisture_end = fields.Float("Mf") moisture_uom = fields.Many2One('product.uom', "Moisture UOM", domain=[('category', '=', Id('optical_equipment', 'uom_cat_relative_humedity'))], - states={'invisible' : If(Eval('moisture') == None, True)}, - depends=['moisture'] + states={'invisible' : If(Eval('moisture_init') == None, True)}, + depends=['moisture_init'] ) - voltageAC = fields.Float("Voltage AC") + electrical_equipment = fields.Boolean("Electrical Equipment") + frequency = fields.Float("Frequency", + states={'invisible': ~Bool(Eval('electrical_equipment'))}) + frequency_uom = fields.Many2One('product.uom', "Frequency UOM", + domain=[('category', '=', Id('optical_equipment', 'uom_cat_frequency'))], + states={'invisible' : If(Eval('frequency') == None, True)}, + depends=['frequency'] + ) + voltageAC = fields.Float("Voltage AC", + states={'invisible': ~Bool(Eval('electrical_equipment'))}) voltageAC_uom = fields.Many2One('product.uom', "Voltage AC UOM", domain=[('category', '=', Id('optical_equipment', 'uom_cat_electrical_tension'))], states={'invisible' : If(Eval('voltageAC') == None, True)}, depends=['voltageAC'] ) - voltageDC = fields.Float("Voltage DC") + voltageDC = fields.Float("Voltage DC", + states={'invisible': ~Bool(Eval('electrical_equipment'))}) voltageDC_uom = fields.Many2One('product.uom', "Voltage DC UOM", domain=[('category', '=', Id('optical_equipment', 'uom_cat_electrical_tension'))], states={'invisible' : If(Eval('voltageDC') == None, True)}, @@ -204,6 +216,7 @@ class Template(metaclass=PoolMeta): def default_refurbish(): return False + @fields.depends('equipment', 'replacement') def on_change_equipment(self): if self.equipment: @@ -220,6 +233,13 @@ class Template(metaclass=PoolMeta): def on_change_model_category(self): if not self.model_category: self.reference_category = None + + @fields.depends('electrical_equipment') + def on_change_electrical_equipment(self): + if self.electrical_equipment: + self.voltageAC = None + self.voltageDC = None + self.frequency = None @classmethod def view_attributes(cls): @@ -227,6 +247,13 @@ class Template(metaclass=PoolMeta): ('//page[@id="features"]', 'states', { 'invisible': ~Eval('equipment'), })] + + @classmethod + def view_attributes(cls): + return super(Template, cls).view_attributes() + [ + ('//page[@id="calibration"]', 'states', { + 'invisible': ~Eval('calibration'), + })] class Product(metaclass=PoolMeta): __name__ = 'product.product' diff --git a/view/template_form.xml b/view/template_form.xml index c9b1e7c..490af71 100644 --- a/view/template_form.xml +++ b/view/template_form.xml @@ -42,6 +42,13 @@ this repository contains the full copyright notices and license terms. --> + + + + + @@ -49,16 +56,25 @@ this repository contains the full copyright notices and license terms. --> expr="/form/notebook/page[@id='measurements']" position="inside"> -