From 7d73b6141f6fe06052ee8164a4f945bbc98384a5 Mon Sep 17 00:00:00 2001 From: sinergia Date: Wed, 29 Nov 2023 06:38:28 -0500 Subject: [PATCH] =?UTF-8?q?fix:=20Se=20a=C3=B1ade=20firmas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- configuration.py | 1 + maintenance.py | 18 + report/Calibration.fodt | 706 ++++++++++++++++-------------- report/Calibrations.fodt | 351 +++++++++------ report/Maintenance_Service.fodt | 587 ++++++++++++++----------- report/Service.fodt | 481 +++++++++++--------- view/configuration_form.xml | 3 + view/maintenance_service_form.xml | 2 +- 8 files changed, 1209 insertions(+), 940 deletions(-) diff --git a/configuration.py b/configuration.py index 57d541f..1e741c7 100644 --- a/configuration.py +++ b/configuration.py @@ -12,6 +12,7 @@ class Configuration(ModelSingleton, ModelSQL, ModelView): invima = fields.Char('Invima', states={ 'required': Eval('technician_responsible', True) }) + technician_signature = fields.Binary('Technician Signature') equipment_sequence = fields.Many2One( 'ir.sequence', "Equipment Sequence", domain=[ ('sequence_type', '=', diff --git a/maintenance.py b/maintenance.py index 1e40407..a522d70 100644 --- a/maintenance.py +++ b/maintenance.py @@ -105,6 +105,7 @@ class MaintenanceService(Workflow, ModelSQL, ModelView): technician_responsible = fields.Char('Technician Responsible') invima = fields.Char('Invima') + technician_signature = fields.Binary('Technician Signature') @fields.depends('maintenance_type', 'code') def get_rec_name(self, name): @@ -221,6 +222,14 @@ class MaintenanceService(Workflow, ModelSQL, ModelView): if config.technician_responsible: return config.technician_responsible.invima + @classmethod + def default_technician_signature(cls): + pool = Pool() + ConfigurationEquipment = pool.get('optical_equipment.configuration') + config = ConfigurationEquipment(1) + if config.technician_signature: + return config.technician_signature + @classmethod def _get_origin(cls): 'Return list of Model names for origin Reference' @@ -373,6 +382,7 @@ class MaintenanceServiceLine(Workflow, ModelSQL, ModelView): technician_responsible = fields.Char('Technician Responsible') invima = fields.Char('Invima') + technician_signature = fields.Binary('Technician Signature') @classmethod def default_technician_responsible(cls): @@ -392,6 +402,14 @@ class MaintenanceServiceLine(Workflow, ModelSQL, ModelView): if config.technician_responsible: return config.technician_responsible.invima + @classmethod + def default_technician_signature(cls): + pool = Pool() + ConfigurationEquipment = pool.get('optical_equipment.configuration') + config = ConfigurationEquipment(1) + if config.technician_signature: + return config.technician_signature + @classmethod def __setup__(cls): super(MaintenanceServiceLine, cls).__setup__() diff --git a/report/Calibration.fodt b/report/Calibration.fodt index 77cd3cb..d0cc727 100644 --- a/report/Calibration.fodt +++ b/report/Calibration.fodt @@ -1,10 +1,10 @@ - 2022-10-11T16:28:51.1019484802023-09-24T21:21:08.221447105PT5H1M34S67LibreOffice/7.5.6.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-10-11T16:28:51.1019484802023-11-28T08:48:44.926878907PT5H2M20S68LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 59584 + 98725 0 24502 11499 @@ -14,11 +14,11 @@ view2 3455 - 103734 + 108315 0 - 59584 + 98725 24500 - 71081 + 110222 0 1 false @@ -73,7 +73,7 @@ true true false - 5156974 + 5278623 true false false @@ -164,8 +164,8 @@ - - + + @@ -267,10 +267,10 @@ - + - + @@ -327,16 +327,16 @@ - + $ - + - $ - + @@ -518,6 +518,18 @@ + + + + + + + + + + + + @@ -605,219 +617,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -825,10 +624,250 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1006,10 +1045,18 @@ + + + + + + + + @@ -1732,10 +1779,10 @@ - Fecha: <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', maintenance.company.timezone)> + Fecha: <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', maintenance.company.timezone)> - Consecutivo: <maintenance.code> + Consecutivo: <maintenance.code> @@ -1743,11 +1790,11 @@ - Señores: <maintenance.propietary.name> - Documento: <"NIT" if maintenance.propietary.tax_identifier.type=="31" else "CC"><maintenance.propietary.tax_identifier.code> - Ciudad: <maintenance.propietary_address.subdivision_municipality.name> - Dirección: <maintenance.propietary_address.street> - + Señores: <maintenance.propietary.name> + Documento: <"NIT" if maintenance.propietary.tax_identifier.type=="31" else "CC"><maintenance.propietary.tax_identifier.code> + Ciudad: <maintenance.propietary_address.subdivision_municipality.name> + Dirección: <maintenance.propietary_address.street> + @@ -1755,7 +1802,7 @@ - Asunto: Certificación de calibración + Asunto: Certificación de calibración @@ -1764,53 +1811,53 @@ - Método de calibración: Comparación - Rango de medición: <maintenance.equipment.product.measuring_range> - <choose test=""> - <when test="maintenance.equipment.product.use_pattern.id==1"> - Patrón utilizado: Ojo Esquemático - </when> - <when test="maintenance.equipment.product.use_pattern.id==2"> - Patrón utilizado: Lentes de Prueba - </when> - <when test="maintenance.equipment.product.use_pattern.id==3"> - Patrón utilizado: Pesas de Calibración - </when> - <when test="maintenance.equipment.product.use_pattern.id==4"> - Patrón utilizado: Esferas de Calibración - </when> - <otherwise test=""> - Patrón utilizado: Barras de Calibración - </otherwise> - </choose> - <choose test=""> - <when test="maintenance.equipment.use == 'medico'"> - Uso: Médico - </when> - <when test="maintenance.equipment.use == 'basico'"> - Uso: Básico - </when> - <when test="maintenance.equipment.use == 'apoyo'"> - Uso: Apoyo - </when> - <otherwise test=""> - Uso: n/a - </otherwise> - </choose> - División de escala: <"0.25D" if maintenance.equipment.product.measuring_range == "dioptria" else "1mmHg"> - Sitio de medición: Consultorio + Método de calibración: Comparación + Rango de medición: <maintenance.equipment.product.measuring_range> + <choose test=""> + <when test="maintenance.equipment.product.use_pattern.id==1"> + Patrón utilizado: Ojo Esquemático + </when> + <when test="maintenance.equipment.product.use_pattern.id==2"> + Patrón utilizado: Lentes de Prueba + </when> + <when test="maintenance.equipment.product.use_pattern.id==3"> + Patrón utilizado: Pesas de Calibración + </when> + <when test="maintenance.equipment.product.use_pattern.id==4"> + Patrón utilizado: Esferas de Calibración + </when> + <otherwise test=""> + Patrón utilizado: Barras de Calibración + </otherwise> + </choose> + <choose test=""> + <when test="maintenance.equipment.use == 'medico'"> + Uso: Médico + </when> + <when test="maintenance.equipment.use == 'basico'"> + Uso: Básico + </when> + <when test="maintenance.equipment.use == 'apoyo'"> + Uso: Apoyo + </when> + <otherwise test=""> + Uso: n/a + </otherwise> + </choose> + División de escala: <"0.25D" if maintenance.equipment.product.measuring_range == "dioptria" else "1mmHg"> + Sitio de medición: Consultorio - Equipo: <maintenance.equipment.product.name> - Marca: <maintenance.equipment.mark_category.name> - Modelo: <maintenance.equipment.model_category.name> - Referencia: <maintenance.equipment.reference_category.name> - Serie: <maintenance.equipment.serial> + Equipo: <maintenance.equipment.product.name> + Marca: <maintenance.equipment.mark_category.name> + Modelo: <maintenance.equipment.model_category.name> + Referencia: <maintenance.equipment.reference_category.name> + Serie: <maintenance.equipment.serial> - - + + @@ -1818,7 +1865,7 @@ - Condiciones Ambientales + Condiciones Ambientales @@ -1826,88 +1873,88 @@ - Temperatura Min + Temperatura Min - <str(maintenance.temperature_min) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_min else ""> + <str(maintenance.temperature_min) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_min else ""> - Humedad Min + Humedad Min - <str(maintenance.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_min else ""> + <str(maintenance.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_min else ""> - Temperatura Max + Temperatura Max - <str(maintenance.temperature_max) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_max else ""> + <str(maintenance.temperature_max) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_max else ""> - Humedad Max + Humedad Max - <str(maintenance.moisture_max) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_max else ""> + <str(maintenance.moisture_max) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_max else ""> - - + + - Medida Tomadas + Medida Tomadas - Patrón + Patrón - Valor en Equipo + Valor en Equipo - % Error + % Error - <for each="line in maintenance.lines_calibration"> + <for each="line in maintenance.lines_calibration"> - <line.value_patterns.pattern> + <line.value_patterns.pattern> - <line.value_equipment> + <line.value_equipment> - <line.mistake_rate>% + <line.mistake_rate>% - </for> + </for> - + Resultados de calibración: - La incertidumbre expandida de la medición se ha obtenido multiplicando la incertidumbre combinada por el factor de cobertura K calculado conforme a los grados de libertad y el factor de Student para una probabilidad del 95% - + La incertidumbre expandida de la medición se ha obtenido multiplicando la incertidumbre combinada por el factor de cobertura K calculado conforme a los grados de libertad y el factor de Student para una probabilidad del 95% + @@ -1916,52 +1963,52 @@ - <"Dioptría" if maintenance.equipment.product.measuring_range == "dioptria" else "mmHg"> + <"Dioptría" if maintenance.equipment.product.measuring_range == "dioptria" else "mmHg"> - Desviación estándar + Desviación estándar - Promedio + Promedio - Incertidumbre Expandida + Incertidumbre Expandida - Estado + Estado - <for each="line in maintenance.calibration_total"> + <for each="line in maintenance.calibration_total"> - + - <line.diopter> + <line.diopter> - <line.dev_std> + <line.dev_std> - <line.mean> + <line.mean> - <line.uncertain_expanded> + <line.uncertain_expanded> - <line.state> + <line.state> - </for> + </for> @@ -1970,7 +2017,7 @@ - Este certificado de calibración no podrá ser reproducido. + Este certificado de calibración no podrá ser reproducido. @@ -1978,18 +2025,33 @@ - + - + Texto 1: - Este certificado expresa fielmente el resultado de las mediciones realizadas. Los resultados contenidos en el presente certificado se refieren al momento y condiciones en que se realizaron las mediciones. No nos responsabilizamos de los perjuicios que pueden derivarse del uso inadecuado de los instrumentos calibrados. El usuario es responsable de la recalibración de sus instrumentos a intervalos apropiados. - - - <maintenance.technician_responsible> - INVIMA : <maintenance.invima> - </for> + Este certificado expresa fielmente el resultado de las mediciones realizadas. Los resultados contenidos en el presente certificado se refieren al momento y condiciones en que se realizaron las mediciones. No nos responsabilizamos de los perjuicios que pueden derivarse del uso inadecuado de los instrumentos calibrados. El usuario es responsable de la recalibración de sus instrumentos a intervalos apropiados. + + + + + + <if test="maintenance.technician_signature"> + + + + Texto 2: + + + </if> + <maintenance.technician_responsible> + INVIMA :<maintenance.invima> + + + + + </for> \ No newline at end of file diff --git a/report/Calibrations.fodt b/report/Calibrations.fodt index 5a18e72..2b06945 100644 --- a/report/Calibrations.fodt +++ b/report/Calibrations.fodt @@ -1,10 +1,10 @@ - 2022-10-11T16:28:51.1019484802023-09-24T21:38:02.659407388PT5H43M50S81LibreOffice/7.5.6.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-10-11T16:28:51.1019484802023-11-28T11:29:06.916953005PT5H49M30S83LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 92710 + 111014 0 49003 22994 @@ -14,11 +14,11 @@ view2 15706 - 104103 + 129817 0 - 92710 + 111014 49001 - 115702 + 134006 0 1 false @@ -73,7 +73,7 @@ true true false - 5372653 + 5446825 true false false @@ -267,10 +267,10 @@ - + - + @@ -327,16 +327,16 @@ - + $ - + - $ - + @@ -518,6 +518,18 @@ + + + + + + + + + + + + @@ -789,107 +801,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -897,9 +809,133 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1096,6 +1132,11 @@ + + + + + @@ -1799,7 +1840,7 @@ - Pagina 1 + Pagina 5 @@ -1814,7 +1855,7 @@ <for each="service in records"> <for each="maintenance in service.lines"> - <if test="maintenance.equipment.product.calibration"> + <if test="maintenance.equipment.product.calibration"> @@ -1867,15 +1908,15 @@ <when test="maintenance.equipment.product.use_pattern.id==4"> Patrón utilizado: Esferas de Calibración </when> - <otherwise test=""> + <otherwise test=""> Patrón utilizado: Barras de Calibración </otherwise> - </choose> + </choose> <choose test=""> <when test="maintenance.equipment.use == 'medico'"> Uso: Médico </when> - <when test="maintenance.equipment.use == 'basico'"> + <when test="maintenance.equipment.use == 'basico'"> Uso: Básico </when> <when test="maintenance.equipment.use == 'apoyo'"> @@ -1897,8 +1938,8 @@ - - + + @@ -1906,7 +1947,7 @@ - Condiciones Ambientales + Condiciones Ambientales @@ -1917,13 +1958,13 @@ Temperatura Min - <str(maintenance.temperature_min) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_min else ""> + <str(maintenance.temperature_min) + str(maintenance.temperature_uom.symbol) if maintenance.temperature_min else ""> Humedad Min - <str(maintenance.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_min else ""> + <str(maintenance.moisture_min) + str(maintenance.equipment.product.moisture_uom.symbol) if maintenance.moisture_min else ""> @@ -1941,15 +1982,15 @@ - - + + - Medida Tomadas + Medida Tomadas @@ -1967,7 +2008,7 @@ - <for each="line in maintenance.lines_calibration"> + <for each="line in maintenance.lines_calibration"> @@ -1983,6 +2024,7 @@ <line.mistake_rate>% + </for> @@ -1991,7 +2033,7 @@ - + Resultados de calibración: La incertidumbre expandida de la medición se ha obtenido multiplicando la incertidumbre combinada por el factor de cobertura K calculado conforme a los grados de libertad y el factor de Student para una probabilidad del 95% @@ -2004,19 +2046,19 @@ - <"Dioptría" if maintenance.equipment.product.measuring_range == "dioptria" else "mmHg"> + <"Dioptría" if maintenance.equipment.product.measuring_range == "dioptria" else "mmHg"> - Desviación estándar + Desviación estándar - Promedio + Promedio - Incertidumbre Expandida + Incertidumbre Expandida - Estado + Estado @@ -2058,7 +2100,7 @@ - Este certificado de calibración no podrá ser reproducido. + Este certificado de calibración no podrá ser reproducido. @@ -2066,21 +2108,38 @@ - + - + Texto 1: - - Este certificado expresa fielmente el resultado de las mediciones realizadas. Los resultados contenidos en el presente certificado se refieren al momento y condiciones en que se realizaron las mediciones. No nos responsabilizamos de los perjuicios que pueden derivarse del uso inadecuado de los instrumentos calibrados. El usuario es responsable de la recalibración de sus instrumentos a intervalos apropiados. - - - - <maintenance.technician_responsible> - INVIMA : <maintenance.invima> - - - </if> + + Este certificado expresa fielmente el resultado de las mediciones realizadas. Los resultados contenidos en el presente certificado se refieren al momento y condiciones en que se realizaron las mediciones. No nos responsabilizamos de los perjuicios que pueden derivarse del uso inadecuado de los instrumentos calibrados. El usuario es responsable de la recalibración de sus instrumentos a intervalos apropiados. + + + + + + + <if test="maintenance.technician_signature"> + + + + Texto 2: + + + </if> + <maintenance.technician_responsible> + INVIMA :<maintenance.invima> + + + + + </if> + + + + </for> </for> diff --git a/report/Maintenance_Service.fodt b/report/Maintenance_Service.fodt index 0d4e987..faab0fe 100644 --- a/report/Maintenance_Service.fodt +++ b/report/Maintenance_Service.fodt @@ -1,24 +1,24 @@ - 2022-11-03T17:09:30.5000787642023-11-28T07:51:36.432994205PT2H3M37S41LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-11-03T17:09:30.5000787642023-11-28T11:27:08.556904665PT2H19M47S49LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 52148 + 69393 0 35003 - 16425 + 15688 true false view2 - 8707 - 65952 + 21586 + 72498 0 - 52148 + 69393 35001 - 68571 + 85079 0 1 false @@ -73,7 +73,7 @@ true true false - 2443876 + 2638665 true false false @@ -160,7 +160,7 @@ - + @@ -437,16 +437,13 @@ - + - - + + - - - - + @@ -537,183 +534,232 @@ - - - - - - - - - - - - - - - - - + - + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -821,41 +867,55 @@ - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + @@ -1439,40 +1499,40 @@ <for each="maintenance in records"> - <choose test=""> - <when test="maintenance.maintenance_type == 'initial'"> - REGISTRO DE MANTENIMIENTO INICIAL - </when> - <when test="maintenance.maintenance_type == 'preventive'"> - REGISTRO DE MANTENIMIENTO PREVENTIVO - </when> - <when test="maintenance.maintenance_type == 'corrective'"> - REGISTRO DE MANTENIMIENTO CORRECTIVO - </when> - </choose> - Fecha <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', maintenance.company.timezone)> - Consecutivo <maintenance.code> - - INFORMACIÓN DEL PROPIETARIO + <choose test=""> + <when test="maintenance.maintenance_type == 'initial'"> + REGISTRO DE MANTENIMIENTO INICIAL + </when> + <when test="maintenance.maintenance_type == 'preventive'"> + REGISTRO DE MANTENIMIENTO PREVENTIVO + </when> + <when test="maintenance.maintenance_type == 'corrective'"> + REGISTRO DE MANTENIMIENTO CORRECTIVO + </when> + </choose> + Fecha <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', maintenance.company.timezone)> + Consecutivo <maintenance.code> + + INFORMACIÓN DEL PROPIETARIO - Nombre / Razón Social: <maintenance.propietary.name> - Ciudad: <maintenance.propietary_address.subdivision_municipality.name> - Teléfono: <maintenance.propietary.phone> - Movil: <maintenance.propietary.mobile> + Nombre / Razón Social: <maintenance.propietary.name> + Ciudad: <maintenance.propietary_address.subdivision_municipality.name> + Teléfono: <maintenance.propietary.phone> + Movil: <maintenance.propietary.mobile> - Tipo Documento: <"NIT" if maintenance.propietary.tax_identifier.type=="31" else "CC"> - Documento: <maintenance.propietary.tax_identifier.code> - Dirección: <maintenance.propietary_address.street> + Tipo Documento: <"NIT" if maintenance.propietary.tax_identifier.type=="31" else "CC"> + Documento: <maintenance.propietary.tax_identifier.code> + Dirección: <maintenance.propietary_address.street> - - INFORMACIÓN DEL DISPOSITIVO + + INFORMACIÓN DEL DISPOSITIVO @@ -1489,140 +1549,155 @@ - + - <choose test=""> - <when test="maintenance.maintenance_type == 'preventive'"> + <choose test=""> + <when test="maintenance.maintenance_type == 'preventive'"> Trabajo Realizado - 1. Verificación inicial de funcionamiento: + 1. Verificación inicial de funcionamiento: - <"X" if maintenance.initial_operation else ""> + <"X" if maintenance.initial_operation else ""> - 2. Revisión del Equipo: + 2. Revisión del Equipo: - <"X" if maintenance.check_equipment else ""> + <"X" if maintenance.check_equipment else ""> - 3. Revisión del sistema eléctrico: + 3. Revisión del sistema eléctrico: - <"X" if maintenance.check_electric_system else ""> + <"X" if maintenance.check_electric_system else ""> - 4. Limpieza interior y exterior: + 4. Limpieza interior y exterior: - <"X" if maintenance.clean_int_ext else ""> + <"X" if maintenance.clean_int_ext else ""> - 5. Limpieza de lentes y espejos: + 5. Limpieza de lentes y espejos: - <"X" if maintenance.clean_eyes else ""> + <"X" if maintenance.clean_eyes else ""> - 6. Verificar Calibración: + 6. Verificar Calibración: - <"X" if maintenance.check_calibration else ""> + <"X" if maintenance.check_calibration else ""> - </when> - <when test="maintenance.maintenance_type == 'corrective'"> - Trabajo Realizado + </when> + <when test="maintenance.maintenance_type == 'corrective'"> + Trabajo Realizado - Repuesto + Repuesto - Actividad de Mantenimiento + Actividad de Mantenimiento - Descripción + Descripción - <for each="line in maintenance.maintenance_lines"> + <for each="line in maintenance.maintenance_lines"> - <"X" if line.line_replace else ""> + <"X" if line.line_replace else ""> - <"X" if line.line_maintenance_activity else ""> + <"X" if line.line_maintenance_activity else ""> - <line.maintenance_activity.name if line.line_maintenance_activity else line.replacement.name> + <line.maintenance_activity.name if line.line_maintenance_activity else line.replacement.name> <if test="line.description"> <for each="description in line.description.split('\n')"> <description> </for> </if> - + - </for> + </for> - </when> - </choose> - <choose test=""> - <when test="maintenance.equipment.product.preventive_activities"> - Actividades Realizadas: - <for each="description in (maintenance.equipment.product.preventive_activities or '').split('\n')"> - <description> - </for> - </when> - </choose> + </when> + </choose> + <choose test=""> + <when test="maintenance.equipment.product.preventive_activities"> + Actividades Realizadas: + <for each="description in (maintenance.equipment.product.preventive_activities or '').split('\n')"> + <description> + </for> + </when> + </choose> Observaciones - <maintenance.description_activity> - - - Fecha del próximo mantenimiento <str(maintenance.next_maintenance)[0:11]> + <maintenance.description_activity> + + + Fecha del próximo mantenimiento <str(maintenance.next_maintenance)[0:11]> - - - - - <maintenance.technician_responsible> - INVIMA :<maintenance.invima> + + + + + + <if test="maintenance.technician_signature"> + + + + Texto 1: + + + </if> + <maintenance.technician_responsible> + INVIMA :<maintenance.invima> + + + + + Recibido a Satisfacción: + </for> - + diff --git a/report/Service.fodt b/report/Service.fodt index 56ffabe..aff5977 100644 --- a/report/Service.fodt +++ b/report/Service.fodt @@ -1,24 +1,24 @@ - 2022-11-03T17:09:30.5000787642023-11-28T07:41:00.422955630PT4H16M40S70LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-11-03T17:09:30.5000787642023-11-28T08:44:57.381710837PT4H28M54S78LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 43954 + 30379 0 35003 - 16425 + 15688 true false view2 - 8707 - 66784 + 12497 + 71221 0 - 43954 + 30379 35001 - 60378 + 46066 0 1 false @@ -73,7 +73,7 @@ true true false - 2756670 + 2955950 true false false @@ -437,6 +437,18 @@ + + + + + + + + + + + + @@ -533,164 +545,183 @@ - - - + + + - - - + + + - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + @@ -797,41 +828,49 @@ - + - + - + - + - + - + - + - + - + - + + + + + + + + + @@ -1416,40 +1455,40 @@ <for each="maintenance in records"> <for each="line in maintenance.lines"> - <choose test=""> - <when test="line.maintenance_type == 'initial'"> - REGISTRO DE MANTENIMIENTO INICIAL - </when> - <when test="line.maintenance_type == 'preventive'"> - REGISTRO DE MANTENIMIENTO PREVENTIVO - </when> - <when test="line.maintenance_type == 'corrective'"> - REGISTRO DE MANTENIMIENTO CORRECTIVO - </when> - </choose> - Fecha <maintenance.estimated_agended.date()> - Consecutivo <line.code> - - INFORMACIÓN DEL PROPIETARIO + <choose test=""> + <when test="line.maintenance_type == 'initial'"> + REGISTRO DE MANTENIMIENTO INICIAL + </when> + <when test="line.maintenance_type == 'preventive'"> + REGISTRO DE MANTENIMIENTO PREVENTIVO + </when> + <when test="line.maintenance_type == 'corrective'"> + REGISTRO DE MANTENIMIENTO CORRECTIVO + </when> + </choose> + Fecha <maintenance.estimated_agended.date()> + Consecutivo <line.code> + + INFORMACIÓN DEL PROPIETARIO - Nombre / Razón Social: <line.propietary.name> - Ciudad: <line.propietary_address.subdivision_municipality.name> - Teléfono: <line.propietary.phone> - Movil: <line.propietary.mobile> + Nombre / Razón Social: <line.propietary.name> + Ciudad: <line.propietary_address.subdivision_municipality.name> + Teléfono: <line.propietary.phone> + Movil: <line.propietary.mobile> - Tipo Documento: <"NIT" if line.propietary.tax_identifier.type=="31" else "CC"> - Documento: <line.propietary.tax_identifier.code> - Dirección: <line.propietary_address.street> + Tipo Documento: <"NIT" if line.propietary.tax_identifier.type=="31" else "CC"> + Documento: <line.propietary.tax_identifier.code> + Dirección: <line.propietary_address.street> - - INFORMACIÓN DEL DISPOSITIVO + + INFORMACIÓN DEL DISPOSITIVO @@ -1466,8 +1505,8 @@ - <choose test=""> - <when test="line.maintenance_type == 'preventive' or line.maintenance_type == 'initial'"> + <choose test=""> + <when test="line.maintenance_type == 'preventive' or line.maintenance_type == 'initial'"> Trabajo Realizado @@ -1475,118 +1514,130 @@ - 1. Verificación inicial de funcionamiento: + 1. Verificación inicial de funcionamiento: - <"X" if line.initial_operation else ""> + <"X" if line.initial_operation else ""> - 2. Revisión del Equipo: + 2. Revisión del Equipo: - <"X" if line.check_equipment else ""> + <"X" if line.check_equipment else ""> - 3. Revisión del sistema eléctrico: + 3. Revisión del sistema eléctrico: - <"X" if line.check_electric_system else ""> + <"X" if line.check_electric_system else ""> - 4. Limpieza interior y exterior: + 4. Limpieza interior y exterior: - <"X" if line.clean_int_ext else ""> + <"X" if line.clean_int_ext else ""> - 5. Limpieza de lentes y espejos: + 5. Limpieza de lentes y espejos: - <"X" if line.clean_eyes else ""> + <"X" if line.clean_eyes else ""> - 6. Verificar Calibración: + 6. Verificar Calibración: - <"X" if line.check_calibration else ""> + <"X" if line.check_calibration else ""> - - </when> - <when test="line.maintenance_type == 'corrective'"> - Trabajo Realizado + + </when> + <when test="line.maintenance_type == 'corrective'"> + Trabajo Realizado - Repuesto + Repuesto - Actividad de Mantenimiento + Actividad de Mantenimiento - Descripción + Descripción - <for each="line_maintenance in line.maintenance_lines"> + <for each="line_maintenance in line.maintenance_lines"> - <"X" if line_maintenance.line_replace else ""> + <"X" if line_maintenance.line_replace else ""> - <"X" if line_maintenance.line_maintenance_activity else ""> + <"X" if line_maintenance.line_maintenance_activity else ""> - <line_maintenance.maintenance_activity.name if line.line_maintenance_activity else line.replacement.name> + <line_maintenance.maintenance_activity.name if line.line_maintenance_activity else line.replacement.name> - </for> + </for> - </when> - </choose> - <choose test=""> - <when test="line.equipment.product.preventive_activities"> - Actividades Realizadas: - <for each="description in (line.equipment.product.preventive_activities or '').split('\n')"> - <description> - </for> </when> - </choose> + </choose> + <choose test=""> + <when test="line.equipment.product.preventive_activities"> + Actividades Realizadas: + <for each="description in (line.equipment.product.preventive_activities or '').split('\n')"> + <description> + </for> + </when> + </choose> Observaciones: - <line.description_activity> - - - Fecha del próximo mantenimiento <str(line.next_maintenance)[0:11]> - - <line.technician_responsible> - INVIMA : <line.invima> - + <line.description_activity> + Fecha del próximo mantenimiento <str(line.next_maintenance)[0:11]> + + + + + <if test="line.technician_signature"> + + + + Texto 1: + + + </if> + <line.technician_responsible> + INVIMA :<line.invima> + + + + </for> </for> diff --git a/view/configuration_form.xml b/view/configuration_form.xml index 94d338e..0d243cc 100644 --- a/view/configuration_form.xml +++ b/view/configuration_form.xml @@ -48,4 +48,7 @@ this repository contains the full copyright notices and license terms. -->