From 6929fec5ec9aa633a2c9a17ef27e6bf48e40e5f9 Mon Sep 17 00:00:00 2001 From: sinergia Date: Wed, 9 Nov 2022 16:33:30 -0500 Subject: [PATCH] enviromental conditions in calibration --- locale/es.po | 32 +++++++++++++++++++++++++++++++ maintenance.py | 33 ++++++++++++++++++++++++++++++++ report/Calibration.fodt | 40 +++++++++++++++++++-------------------- view/maintenance_form.xml | 19 +++++++++++++++++++ 4 files changed, 104 insertions(+), 20 deletions(-) diff --git a/locale/es.po b/locale/es.po index 28c8d3e..e957e9b 100644 --- a/locale/es.po +++ b/locale/es.po @@ -659,6 +659,30 @@ msgctxt "field:optical_equipment.maintenance,description_activity:" msgid "Activity" msgstr "Descripción del Mantenimiento" +msgctxt "field:optical_equipment.maintenance,temperature_min:" +msgid "Temp Min" +msgstr "Temp Min" + +msgctxt "field:optical_equipment.maintenance,temperature_max:" +msgid "Temp Max" +msgstr "Temp Max" + +msgctxt "field:optical_equipment.maintenance,moisture_min:" +msgid "Moisture Min" +msgstr "Humedad Min" + +msgctxt "field:optical_equipment.maintenance,moisture_max:" +msgid "Moisture Max" +msgstr "Humedad Max" + +msgctxt "field:optical_equipment.maintenance,moisture_uom:" +msgid "Moisture UOM" +msgstr "Humedad UOM" + +msgctxt "field:optical_equipment.maintenance,temperature_uom:" +msgid "Temperature UOM" +msgstr "Temperatura UOM" + msgctxt "field:optical_equipment_maintenance.service,reference:" msgid "Reference" msgstr "Referencia" @@ -1031,6 +1055,14 @@ msgctxt "view:optical_equipment.maintenance:" msgid "Corrective" msgstr "Correctivo" +msgctxt "view:optical_equipment.maintenance:" +msgid "Enviromental Conditions" +msgstr "Condiciones Ambientales" + +msgctxt "view:optical_equipment.maintenance:" +msgid "Graph" +msgstr "Grafíca" + msgctxt "view:optical_equipment.maintenance:" msgid "Calibration" msgstr "Calibración" diff --git a/maintenance.py b/maintenance.py index 4970058..b06c8a4 100644 --- a/maintenance.py +++ b/maintenance.py @@ -220,6 +220,23 @@ class Maintenance(Workflow, ModelSQL, ModelView): description_activity = fields.Char('Activity') next_maintenance = fields.Function(fields.Date('Next Maintenance'), 'get_next_maintenance') + temperature_min = fields.Float("Temp Min", required=True) + temperature_max = fields.Float("Temp Max", required=True) + temperature_uom = fields.Many2One('product.uom', 'Temperature UOM',required=True, + domain=[('category', '=', Id('optical_equipment', "uom_cat_temperature"))], + states={'invisible': If(Eval('temperature_min') == None, True), + 'readonly' : (Eval('state') == 'finished')}, + depends=['itemperature_min'] + ) + moisture_min = fields.Float("Moisture Min", required=True) + moisture_max = fields.Float("Moisture Max", required=True) + moisture_uom = fields.Many2One('product.uom', "Moisture UOM", required=True, + domain=[('category', '=', Id('optical_equipment', 'uom_cat_relative_humedity'))], + states={'invisible' : If(Eval('moisture_min') == None, True), + 'readonly': Eval('state') == 'finished'}, + depends=['moisture_min'] + ) + graph_calibration = fields.Binary('Graphs') @@ -293,6 +310,22 @@ class Maintenance(Workflow, ModelSQL, ModelView): def default_check_calibration(self): return True + + @fields.depends('temperature_min', 'temperature_uom') + def on_change_temperature_min(self): + if self.temperature_min: + pool = Pool() + Measurements = pool.get('product.uom') + self.temperature_uom = Measurements.search(['name', '=', 'Celsius'])[0].id + + + @fields.depends('moisture_min', 'moisture_uom') + def on_change_moisture_min(self): + pool = Pool() + Measurements = pool.get('product.uom') + self.moisture_uom = Measurements.search(['name', '=', 'Relative Humedity'])[0].id + + def get_next_maintenance(self, action): next_maintenance = None if self.service_maintenance.estimated_agended: diff --git a/report/Calibration.fodt b/report/Calibration.fodt index d4ee040..d992b2f 100644 --- a/report/Calibration.fodt +++ b/report/Calibration.fodt @@ -1,24 +1,24 @@ - 2022-10-11T16:28:51.1019484802022-11-08T21:17:39.171982622PT4H7M49S47LibreOffice/7.3.6.2$Linux_X86_64 LibreOffice_project/30$Build-2 + 2022-10-11T16:28:51.1019484802022-11-09T16:09:59.035898686PT4H10M58S48LibreOffice/7.3.6.2$Linux_X86_64 LibreOffice_project/30$Build-2 - 34463 + 5290 0 34851 - 16028 + 15291 true false view2 - 17425 - 44390 + 19819 + 14568 0 - 34463 + 5290 34849 - 50490 + 20579 0 1 false @@ -88,7 +88,7 @@ true true - 4119373 + 4127259 true false @@ -159,7 +159,7 @@ - + @@ -301,16 +301,16 @@ - + $ - + - $ - + @@ -882,8 +882,8 @@ - - + + @@ -1660,7 +1660,7 @@ - Pagina 1 + Pagina 2 @@ -1746,13 +1746,13 @@ Temperatura Min - <str(maintenance.equipment.product.temperature_min) + str(maintenance.equipment.product.temperature_uom.symbol) if maintenance.equipment.product.temperature_min else ""> + <str(maintenance.temperature_min) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_min else ""> Humedad Min - <str(maintenance.equipment.product.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.equipment.product.moisture_min else ""> + <str(maintenance.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_min else ""> @@ -1760,13 +1760,13 @@ Temperatura Max - <str(maintenance.equipment.product.temperature_max) + str(maintenance.equipment.product.temperature_uom.symbol) if maintenance.equipment.product.temperature_max else ""> + <str(maintenance.temperature_max) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_max else ""> Humedad Max - <str(maintenance.equipment.product.moisture_max) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.equipment.product.moisture_max else ""> + <str(maintenance.moisture_max) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_max else ""> @@ -1861,7 +1861,6 @@ - <line.diopter> @@ -1879,6 +1878,7 @@ <line.state> + </for> diff --git a/view/maintenance_form.xml b/view/maintenance_form.xml index cef412f..bf10a6b 100644 --- a/view/maintenance_form.xml +++ b/view/maintenance_form.xml @@ -39,6 +39,25 @@ + + + +