From 0fa7e9f295d0babeb2f71fcaedf08902f6f1f647 Mon Sep 17 00:00:00 2001 From: sinergia Date: Wed, 6 Dec 2023 08:44:37 -0500 Subject: [PATCH] feat: Se actualizan los reportes --- report/CVS_Equipments.fodt | 901 +++++++++++++++++--------------- report/CV_Equipment.fodt | 795 ++++++++++++++-------------- report/Calibration.fodt | 207 +++++--- report/Maintenance_Service.fodt | 816 ++++++++++++++++------------- report/Service.fodt | 578 +++++++++++--------- 5 files changed, 1778 insertions(+), 1519 deletions(-) diff --git a/report/CVS_Equipments.fodt b/report/CVS_Equipments.fodt index 5f71db3..bf87f3a 100644 --- a/report/CVS_Equipments.fodt +++ b/report/CVS_Equipments.fodt @@ -1,24 +1,24 @@ - 2022-10-25T06:02:43.8293012812023-12-02T09:59:32.497770745PT8H10M27S148LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-10-25T06:02:43.8293012812023-12-05T17:32:47.132679035PT8H19M47S150LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 66081 + 76659 0 35003 - 15688 + 16425 true false view2 - 19925 - 71968 + 8707 + 87824 0 - 66081 + 76659 35001 - 81767 + 93082 0 1 false @@ -73,7 +73,7 @@ true true false - 3173986 + 3224279 true false false @@ -161,7 +161,7 @@ - + @@ -447,37 +447,37 @@ - + - - + + - - + + - - - - + - - + + - - + + - - + + - + + + + @@ -579,371 +579,400 @@ - - + + - - - - - + + + + + - + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + - - - - + + + + + + + + + + + + + + + + + + + + + + - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1126,9 +1155,6 @@ - - - @@ -1138,6 +1164,13 @@ + + + + + + + @@ -1150,7 +1183,7 @@ - + /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoM DAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsN FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAAR @@ -1701,6 +1734,7 @@ + @@ -1711,261 +1745,268 @@ - <for each="maintenance in records"> - <for each="equipment in maintenance.lines"> - HOJA DE VIDA DISPOSITIVOS BIOMEDICOS + <for each="maintenance in records"> + <for each="equipment in maintenance.lines"> + HOJA DE VIDA DISPOSITIVOS BIOMEDICOS - Fecha de generación: <maintenance.estimated_agended.date()> + Fecha de generación: <maintenance.estimated_agended.date()> - Código Equipo: <equipment.equipment.code> + Código Equipo: <equipment.equipment.code> - - INFORMACIÓN DEL PROPIETARIO + + INFORMACIÓN DEL PROPIETARIO - Nombre / Razón Social: <equipment.propietary.name> - Ciudad: <equipment.propietary_address.subdivision_municipality.name> - Teléfono: <equipment.propietary.phone> - Movil: <equipment.propietary.mobile> + Nombre / Razón Social: <equipment.propietary.name> + Ciudad: <equipment.propietary_address.subdivision_municipality.name> + Teléfono: <equipment.propietary.phone> + Movil: <equipment.propietary.mobile> - Tipo Documento: <"NIT" if equipment.propietary.tax_identifier.type=="31" else "CC"> - Documento: <equipment.propietary.tax_identifier.code> - Dirección: <equipment.propietary_address.street> + Tipo Documento: <"NIT" if equipment.propietary.tax_identifier.type=="31" else "CC"> + Documento: <equipment.propietary.tax_identifier.code> + Dirección: <equipment.propietary_address.street> - - INFORMACIÓN DEL DISPOSITIVO + + INFORMACIÓN DEL DISPOSITIVO - Nombre del Dispositivo: <equipment.equipment.product.name> - Restaurado: <"SI" if equipment.equipment.refurbish else "NO"> - Marca: <equipment.equipment.mark_category.name> - Modelo: <equipment.equipment.model_category.name> - Referencia: <equipment.equipment.reference_category.name> - País de Origen: <equipment.equipment.origin_country.name> - Registro Invima: <equipment.equipment.health_register> - Software Versión: <equipment.equipment.software_version if equipment.equipment.software_version != "" else "No Aplica"> + Nombre del Dispositivo: <equipment.equipment.product.name> + Restaurado: <"SI" if equipment.equipment.refurbish else "NO"> + Marca: <equipment.equipment.mark_category.name> + Modelo: <equipment.equipment.model_category.name> + Referencia: <equipment.equipment.reference_category.name> + País de Origen: <equipment.equipment.origin_country.name> + Registro Invima: <equipment.equipment.health_register> + Software Versión: <equipment.equipment.software_version if equipment.equipment.software_version != "" else "No Aplica"> - Serial: <equipment.equipment.serial> - <choose test=""> - <when test="equipment.equipment.product.risk == 'uno'"> - Clase de Riesgo: I - </when> - <when test="equipment.equipment.product.risk == 'dosA'"> - Clase de Riesgo: IIA - </when> - <when test="equipment.equipment.product.risk == 'dosB'"> - Clase de Riesgo: IIB - </when> - <otherwise test=""> - Clase de Riesgo: No Aplíca - </otherwise> - </choose> - Clase Biomédica: <equipment.equipment.biomedical_class> - <choose test=""> - <when test="equipment.equipment.equipment_type == 'mobiliario_optico'"> - Tipo: Mobiliario óptico - </when> - <when test="equipment.equipment.equipment_type == 'refraccion'"> - Tipo: Refracción - </when> - <when test="equipment.equipment.equipment_type == 'medicion'"> - Tipo: Medición - </when> - <when test="equipment.equipment.equipment_type == 'accesorios'"> - Tipo: Accesorios - </when> - <otherwise test=""> - Tipo: n/a - </otherwise> - </choose> - <choose test=""> - <when test="equipment.equipment.use == 'medico'"> - Uso: Médico - </when> - <when test="equipment.equipment.use == 'basico'"> - Uso: Básico - </when> - <when test="equipment.equipment.use == 'apoyo'"> - Uso: Apoyo - </when> - <otherwise test=""> - Uso: n/a - </otherwise> - </choose> - Garantía: <equipment.equipment.warranty>Meses - Vida Útil: <equipment.equipment.useful_life>Meses + Serial: <equipment.equipment.serial> + <choose test=""> + <when test="equipment.equipment.product.risk == 'uno'"> + Clase de Riesgo: I + </when> + <when test="equipment.equipment.product.risk == 'dosA'"> + Clase de Riesgo: IIA + </when> + <when test="equipment.equipment.product.risk == 'dosB'"> + Clase de Riesgo: IIB + </when> + <otherwise test=""> + Clase de Riesgo: No Aplíca + </otherwise> + </choose> + Clase Biomédica: <equipment.equipment.biomedical_class> + <choose test=""> + <when test="equipment.equipment.equipment_type == 'mobiliario_optico'"> + Tipo: Mobiliario óptico + </when> + <when test="equipment.equipment.equipment_type == 'refraccion'"> + Tipo: Refracción + </when> + <when test="equipment.equipment.equipment_type == 'medicion'"> + Tipo: Medición + </when> + <when test="equipment.equipment.equipment_type == 'accesorios'"> + Tipo: Accesorios + </when> + <otherwise test=""> + Tipo: n/a + </otherwise> + </choose> + <choose test=""> + <when test="equipment.equipment.use == 'medico'"> + Uso: Médico + </when> + <when test="equipment.equipment.use == 'basico'"> + Uso: Básico + </when> + <when test="equipment.equipment.use == 'apoyo'"> + Uso: Apoyo + </when> + <otherwise test=""> + Uso: n/a + </otherwise> + </choose> + Garantía: <equipment.equipment.warranty>Meses + Vida Útil: <equipment.equipment.useful_life>Meses - + - CARACTERÍSTICAS TÉCNICAS + CARACTERÍSTICAS TÉCNICAS - Características Físicas + Características Físicas - Peso + Peso - <str(equipment.equipment.product.weight) + " "+ equipment.equipment.product.weight_uom.symbol if equipment.equipment.product.weight else ""> + <str(equipment.equipment.product.weight) + " "+ equipment.equipment.product.weight_uom.symbol if equipment.equipment.product.weight else ""> - Medidas + Medidas - <"Longitud:" +str(equipment.equipment.product.length) + " "+ equipment.equipment.product.length_uom.symbol+" Altura: "+str(equipment.equipment.product.height) + " "+ equipment.equipment.product.height_uom.symbol + " Ancho: "+str(equipment.equipment.product.width) + " "+ equipment.equipment.product.width_uom.symbol if equipment.equipment.product.width else ""> + <"Longitud:" +str(equipment.equipment.product.length) + " "+ equipment.equipment.product.length_uom.symbol+" Altura: "+str(equipment.equipment.product.height) + " "+ equipment.equipment.product.height_uom.symbol + " Ancho: "+str(equipment.equipment.product.width) + " "+ equipment.equipment.product.width_uom.symbol if equipment.equipment.product.width else ""> - Características Eléctricas + Características Eléctricas - Voltaje (VAC) + Voltaje (VAC) - <str(equipment.equipment.product.voltageAC) + " "+ equipment.equipment.product.voltageAC_uom.symbol if equipment.equipment.product.voltageAC else "No Aplica"> + <str(equipment.equipment.product.voltageAC) + " "+ equipment.equipment.product.voltageAC_uom.symbol if equipment.equipment.product.voltageAC else "No Aplica"> - Voltaje (VDC) + Voltaje (VDC) - <str(equipment.equipment.product.voltageDC) + " "+ equipment.equipment.product.voltageDC_uom.symbol if equipment.equipment.product.voltageDC else "No Aplica"> + <str(equipment.equipment.product.voltageDC) + " "+ equipment.equipment.product.voltageDC_uom.symbol if equipment.equipment.product.voltageDC else "No Aplica"> - Condiciones Ambientales + Condiciones Ambientales - Tem Min Uso + Tem Min Uso - <str(equipment.equipment.product.temperature_min) + " "+ equipment.equipment.product.temperature_uom.symbol if equipment.equipment.product.temperature_min else ""> + <str(equipment.equipment.product.temperature_min) + " "+ equipment.equipment.product.temperature_uom.symbol if equipment.equipment.product.temperature_min else ""> - Tem Max Uso + Tem Max Uso - <str(equipment.equipment.product.temperature_max) + " "+ equipment.equipment.product.temperature_uom.symbol if equipment.equipment.product.temperature_max else ""> + <str(equipment.equipment.product.temperature_max) + " "+ equipment.equipment.product.temperature_uom.symbol if equipment.equipment.product.temperature_max else ""> - Hum Min Uso + Hum Min Uso - <str(equipment.equipment.product.moisture_min) + " "+ equipment.equipment.product.moisture_uom.symbol if equipment.equipment.product.moisture_min else ""> + <str(equipment.equipment.product.moisture_min) + " "+ equipment.equipment.product.moisture_uom.symbol if equipment.equipment.product.moisture_min else ""> - Hum Max Uso + Hum Max Uso - <str(equipment.equipment.product.moisture_max) + " "+ equipment.equipment.product.moisture_uom.symbol if equipment.equipment.product.moisture_max else ""> + <str(equipment.equipment.product.moisture_max) + " "+ equipment.equipment.product.moisture_uom.symbol if equipment.equipment.product.moisture_max else ""> - Requiere Calibración + Requiere Calibración - <"SI" if equipment.equipment.calibration else "NO"> + <"SI" if equipment.equipment.calibration else "NO"> - Frecuencia de Mantenimiento Preventivo y calibración (Sí aplíca) + Frecuencia de Mantenimiento Preventivo y calibración (Sí aplíca) - <equipment.equipment.maintenance_frequency>Meses + <equipment.equipment.maintenance_frequency>Meses - + - + Texto 1: El equipo funciona cumpliendo los parámetros establecidos por el fabricante - - - + + - - <if test="equipment.technician_signature"> - + + <if test="equipment.technician_signature"> + - + Texto 2: - - </if> - <equipment.technician_responsible> - INVIMA : <equipment.invima> + + </if> - - - Recibido a Satisfacción - - - - - + + + + + + + <equipment.technician_responsible> + + + RECIBIDO A SATISFACCIÓN + + + + + INVIMA : <equipment.invima> + + + NOMBRE: - + - - </for> - </for> + + </for> + </for> \ No newline at end of file diff --git a/report/CV_Equipment.fodt b/report/CV_Equipment.fodt index 952d240..5f5a5d3 100644 --- a/report/CV_Equipment.fodt +++ b/report/CV_Equipment.fodt @@ -1,24 +1,24 @@ - 2022-10-25T06:02:43.8293012812023-11-29T07:33:59.868040329PT6H35M2S82LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-10-25T06:02:43.8293012812023-12-05T17:36:27.946420947PT6H37M38S83LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 69400 + 68190 0 35003 - 15688 + 16425 true false view2 - 11691 - 79042 + 7507 + 82993 0 - 69400 + 68190 35001 - 85086 + 84614 0 1 false @@ -73,7 +73,7 @@ true true false - 2792312 + 2914870 true false false @@ -161,7 +161,7 @@ - + @@ -262,10 +262,10 @@ - + - + @@ -449,15 +449,18 @@ - + - - + + - + + + + @@ -539,263 +542,279 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + + + + + - + + + + + - + - + - + - + - - - - - - - - - - - - - - - - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1545,271 +1564,287 @@ <for each="equipment in records"> - HOJA DE VIDA DISPOSITIVOS BIOMEDICOS + HOJA DE VIDA DISPOSITIVOS BIOMEDICOS - Fecha de generación: <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', equipment.company.timezone)> + Fecha de generación: <format_datetime(datetime.datetime.now(),user.language, '%b/%d/%Y', equipment.company.timezone)> - Código Equipo: <equipment.code> + Código Equipo: <equipment.code> - - INFORMACIÓN DEL PROPIETARIO + + INFORMACIÓN DEL PROPIETARIO - Nombre / Razón Social: <equipment.propietary.name> - Ciudad: <equipment.propietary_address.subdivision_municipality.name> - Teléfono: <equipment.propietary.phone> - Movil: <equipment.propietary.mobile> + Nombre / Razón Social: <equipment.propietary.name> + Ciudad: <equipment.propietary_address.subdivision_municipality.name> + Teléfono: <equipment.propietary.phone> + Movil: <equipment.propietary.mobile> - Tipo Documento: <"NIT" if equipment.propietary.tax_identifier.type=="31" else "CC"> - Documento: <equipment.propietary.tax_identifier.code> - Dirección: <equipment.propietary_address.street> + Tipo Documento: <"NIT" if equipment.propietary.tax_identifier.type=="31" else "CC"> + Documento: <equipment.propietary.tax_identifier.code> + Dirección: <equipment.propietary_address.street> - - INFORMACIÓN DEL DISPOSITIVO + + INFORMACIÓN DEL DISPOSITIVO - Nombre del Dispositivo: <equipment.product.name> - Restaurado: <"SI" if equipment.refurbish else "NO"> - Marca: <equipment.mark_category.name> - Modelo: <equipment.model_category.name> - Referencia: <equipment.reference_category.name> - País de Origen: <equipment.origin_country.name> - Registro Invima: <equipment.health_register> - Software Versión: <equipment.software_version if equipment.software_version != "" else "No Aplica"> + Nombre del Dispositivo: <equipment.product.name> + Restaurado: <"SI" if equipment.refurbish else "NO"> + Marca: <equipment.mark_category.name> + Modelo: <equipment.model_category.name> + Referencia: <equipment.reference_category.name> + País de Origen: <equipment.origin_country.name> + Registro Invima: <equipment.health_register> + Software Versión: <equipment.software_version if equipment.software_version != "" else "No Aplica"> - Serial: <equipment.serial> - <choose test=""> - <when test="equipment.product.risk == 'uno'"> - Clase de Riesgo: I - </when> - <when test="equipment.product.risk == 'dosA'"> - Clase de Riesgo: IIA - </when> - <when test="equipment.product.risk == 'dosB'"> - Clase de Riesgo: IIB - </when> - <otherwise test=""> - Clase de Riesgo: No Aplíca - </otherwise> - </choose> - <choose test=""> - <when test="equipment.use == 'medico'"> - Uso: Médico - </when> - <when test="equipment.use == 'basico'"> - Uso: Básico - </when> - <when test="equipment.use == 'apoyo'"> - Uso: Apoyo - </when> - <otherwise test=""> - Uso: n/a - </otherwise> - </choose> - Clase Biomédica: <equipment.biomedical_class> - <choose test=""> - <when test="equipment.equipment_type == 'mobiliario_optico'"> - Tipo: Mobiliario óptico - </when> - <when test="equipment.equipment_type == 'refraccion'"> - Tipo: Refracción - </when> - <when test="equipment.equipment_type == 'medicion'"> - Tipo: Medición - </when> - <when test="equipment.equipment_type == 'accesorios'"> - Tipo: Accesorios - </when> - <otherwise test=""> - Tipo: n/a - </otherwise> + Serial: <equipment.serial> + <choose test=""> + <when test="equipment.product.risk == 'uno'"> + Clase de Riesgo: I + </when> + <when test="equipment.product.risk == 'dosA'"> + Clase de Riesgo: IIA + </when> + <when test="equipment.product.risk == 'dosB'"> + Clase de Riesgo: IIB + </when> + <otherwise test=""> + Clase de Riesgo: No Aplíca + </otherwise> + </choose> + <choose test=""> + <when test="equipment.use == 'medico'"> + Uso: Médico + </when> + <when test="equipment.use == 'basico'"> + Uso: Básico + </when> + <when test="equipment.use == 'apoyo'"> + Uso: Apoyo + </when> + <otherwise test=""> + Uso: n/a + </otherwise> </choose> - <choose test=""> - <when test="equipment.use == 'medico'"> - Uso: Médico - </when> - <when test="equipment.use == 'basico'"> - Uso: Básico - </when> - <when test="equipment.use == 'apoyo'"> - Uso: Apoyo - </when> - <otherwise test=""> - Uso: n/a - </otherwise> - </choose> - Garantía: <equipment.warranty>Meses - Vida Útil: <equipment.useful_life>Meses + Clase Biomédica: <equipment.biomedical_class> + <choose test=""> + <when test="equipment.equipment_type == 'mobiliario_optico'"> + Tipo: Mobiliario óptico + </when> + <when test="equipment.equipment_type == 'refraccion'"> + Tipo: Refracción + </when> + <when test="equipment.equipment_type == 'medicion'"> + Tipo: Medición + </when> + <when test="equipment.equipment_type == 'accesorios'"> + Tipo: Accesorios + </when> + <otherwise test=""> + Tipo: n/a + </otherwise> + </choose> + <choose test=""> + <when test="equipment.use == 'medico'"> + Uso: Médico + </when> + <when test="equipment.use == 'basico'"> + Uso: Básico + </when> + <when test="equipment.use == 'apoyo'"> + Uso: Apoyo + </when> + <otherwise test=""> + Uso: n/a + </otherwise> + </choose> + Garantía: <equipment.warranty>Meses + Vida Útil: <equipment.useful_life>Meses - + - CARACTERÍSTICAS TÉCNICAS + CARACTERÍSTICAS TÉCNICAS - Características Físicas + Características Físicas - Peso + Peso - <str(equipment.product.weight) + " "+ equipment.product.weight_uom.symbol if equipment.product.weight else ""> + <str(equipment.product.weight) + " "+ equipment.product.weight_uom.symbol if equipment.product.weight else ""> - Medidas + Medidas - <"Longitud:" +str(equipment.product.length) + " "+ equipment.product.length_uom.symbol+" Altura: "+str(equipment.product.height) + " "+ equipment.product.height_uom.symbol + " Ancho: "+str(equipment.product.width) + " "+ equipment.product.width_uom.symbol if equipment.product.width else ""> + <"Longitud:" +str(equipment.product.length) + " "+ equipment.product.length_uom.symbol+" Altura: "+str(equipment.product.height) + " "+ equipment.product.height_uom.symbol + " Ancho: "+str(equipment.product.width) + " "+ equipment.product.width_uom.symbol if equipment.product.width else ""> - Características Eléctricas + Características Eléctricas - Voltaje (VAC) + Voltaje (VAC) - <str(equipment.product.voltageAC) + " "+ equipment.product.voltageAC_uom.symbol if equipment.product.voltageAC else "No Aplica"> + <str(equipment.product.voltageAC) + " "+ equipment.product.voltageAC_uom.symbol if equipment.product.voltageAC else "No Aplica"> - Voltaje (VDC) + Voltaje (VDC) - <str(equipment.product.voltageDC) + " "+ equipment.product.voltageDC_uom.symbol if equipment.product.voltageDC else "No Aplica"> + <str(equipment.product.voltageDC) + " "+ equipment.product.voltageDC_uom.symbol if equipment.product.voltageDC else "No Aplica"> - Condiciones Ambientales + Condiciones Ambientales - Tem Min Uso + Tem Min Uso - <str(equipment.product.temperature_min) + " "+ equipment.product.temperature_uom.symbol if equipment.product.temperature_min else ""> + <str(equipment.product.temperature_min) + " "+ equipment.product.temperature_uom.symbol if equipment.product.temperature_min else ""> - Tem Max Uso + Tem Max Uso - <str(equipment.product.temperature_max) + " "+ equipment.product.temperature_uom.symbol if equipment.product.temperature_max else ""> + <str(equipment.product.temperature_max) + " "+ equipment.product.temperature_uom.symbol if equipment.product.temperature_max else ""> - Hum Min Uso + Hum Min Uso - <str(equipment.product.moisture_min) + " "+ equipment.product.moisture_uom.symbol if equipment.product.moisture_min else ""> + <str(equipment.product.moisture_min) + " "+ equipment.product.moisture_uom.symbol if equipment.product.moisture_min else ""> - Hum Max Uso + Hum Max Uso - <str(equipment.product.moisture_max) + " "+ equipment.product.moisture_uom.symbol if equipment.product.moisture_max else ""> + <str(equipment.product.moisture_max) + " "+ equipment.product.moisture_uom.symbol if equipment.product.moisture_max else ""> - Requiere Calibración + Requiere Calibración - <"SI" if equipment.calibration else "NO"> + <"SI" if equipment.calibration else "NO"> - Frecuencia de Mantenimiento Preventivo y calibración (Sí aplíca) + Frecuencia de Mantenimiento Preventivo y calibración (Sí aplíca) - <equipment.maintenance_frequency>Meses + <equipment.maintenance_frequency>Meses - + - + Texto 1: - - - - - - - - - El equipo funciona cumpliendo los parámetros establecidos por el fabricante + + + + + + + + + El equipo funciona cumpliendo los parámetros establecidos por el fabricante - - - + + + - - <if test="equipment.get_technician_signature()"> - + + <if test="equipment.get_technician_signature()"> + - - Texto 2: + + Texto 2: - </if> - <equipment.technician_responsible> - INVIMA : <equipment.invima> + </if> + + + + + + + + <equipment.technician_responsible> + + + RECIBIDO A SATISFACCION + + + + + INVIMA : <equipment.invima> + + + NOMBRE - - </for> + </for> \ No newline at end of file diff --git a/report/Calibration.fodt b/report/Calibration.fodt index bd4b53a..821db51 100644 --- a/report/Calibration.fodt +++ b/report/Calibration.fodt @@ -1,10 +1,10 @@ - 2022-10-11T16:28:51.1019484802023-11-28T08:48:44.926878907PT5H2M20S68LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-10-11T16:28:51.1019484802023-12-05T17:39:32.873820744PT5H5M69LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 100436 + 98852 0 24502 11499 @@ -13,12 +13,12 @@ view2 - 3455 - 8892 + 21047 + 111398 0 - 100436 + 98852 24500 - 111933 + 110349 0 1 false @@ -73,7 +73,7 @@ true true false - 5344526 + 5371631 true false false @@ -165,7 +165,7 @@ - + @@ -518,18 +518,18 @@ - - + + - - + + - - - - + + + + @@ -766,108 +766,139 @@ + + + + - + - + - + - + - - - - + + + + - + - + - + - - - - - + - + - + + - + + + + - + - + - + - + - + - + - + - - - - + + + + - + - + - + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1053,7 +1084,7 @@ - + @@ -1761,7 +1792,7 @@ - Pagina 3 + Pagina 4 @@ -1830,7 +1861,7 @@ <otherwise test=""> Patrón utilizado: Barras de Calibración </otherwise> - </choose> + </choose> <choose test=""> <when test="maintenance.equipment.use == 'medico'"> Uso: Médico @@ -1857,8 +1888,8 @@ - + @@ -1866,7 +1897,7 @@ - Condiciones Ambientales + Condiciones Ambientales @@ -1901,15 +1932,15 @@ - - + + - Medida Tomadas + Medida Tomadas @@ -1927,7 +1958,7 @@ - <for each="line in maintenance.lines_calibration"> + <for each="line in maintenance.lines_calibration"> @@ -1951,7 +1982,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% @@ -1964,19 +1995,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 @@ -2018,7 +2049,7 @@ - Este certificado de calibración no podrá ser reproducido. + Este certificado de calibración no podrá ser reproducido. @@ -2026,32 +2057,48 @@ - + - + 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. - - - - - - <if test="maintenance.technician_signature"> - + + + + + + <if test="maintenance.technician_signature"> + - + Texto 2: - </if> - <maintenance.technician_responsible> - INVIMA :<maintenance.invima> + </if> + + + + + + + + <maintenance.technician_responsible> + + + RECIBIDO A SATISFACCION + + + + + INVIMA :<maintenance.invima> + + + NOMBRE - </for> diff --git a/report/Maintenance_Service.fodt b/report/Maintenance_Service.fodt index 554021b..0b08248 100644 --- a/report/Maintenance_Service.fodt +++ b/report/Maintenance_Service.fodt @@ -1,24 +1,24 @@ - 2022-11-03T17:09:30.5000787642023-11-29T09:48:35.588917072PT2H22M38S52LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-11-03T17:09:30.5000787642023-12-05T17:09:07.778130624PT2H37M43S61LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 60928 + 68038 0 35003 - 15688 + 16425 true false view2 - 19828 - 71781 + 9788 + 77881 0 - 60928 + 68038 35001 - 76615 + 84462 0 1 false @@ -73,7 +73,7 @@ true true false - 2963215 + 3195059 true false false @@ -437,18 +437,18 @@ - + - + - - - - + + + + @@ -513,260 +513,308 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -868,50 +916,59 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + @@ -920,9 +977,6 @@ - - - @@ -1506,205 +1560,213 @@ <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 - Nombre del Dispositivo: <maintenance.equipment.product.name> - Marca: <maintenance.equipment.mark_category.name> - Serial: <maintenance.equipment.serial> + Nombre del Dispositivo: <maintenance.equipment.product.name> + Marca: <maintenance.equipment.mark_category.name> + Serial: <maintenance.equipment.serial> - Modelo: <maintenance.equipment.model_category.name> - Referencia: <maintenance.equipment.reference_category.name> - Registro Invima: <maintenance.equipment.health_register> + Modelo: <maintenance.equipment.model_category.name> + Referencia: <maintenance.equipment.reference_category.name> + Registro Invima: <maintenance.equipment.health_register> - - - <choose test=""> - <when test="maintenance.maintenance_type == 'preventive' or maintenance.maintenance_type == 'initial'"> + + + <choose test=""> + <when test="maintenance.maintenance_type == 'preventive' or maintenance.maintenance_type == 'initial'"> - 1. Verificación inicial de funcionamiento: + 1. Verificación inicial de funcionamiento: - <"X" if maintenance.initial_operation else ""> + <"SI APLICA" if maintenance.initial_operation else "NO APLICA"> - 2. Revisión del Equipo: + 2. Revisión del Equipo: - <"X" if maintenance.check_equipment else ""> + <"SI APLICA" if maintenance.check_equipment else "NO APLICA"> - 3. Revisión del sistema eléctrico: + 3. Revisión del sistema eléctrico: - <"X" if maintenance.check_electric_system else ""> + <"SI APLICA" if maintenance.check_electric_system else "NO APLICA"> - 4. Limpieza interior y exterior: + 4. Limpieza interior y exterior: - <"X" if maintenance.clean_int_ext else ""> + <"SI APLICA" if maintenance.clean_int_ext else "NO APLICA"> - 5. Limpieza de lentes y espejos: + 5. Limpieza de lentes y espejos: - <"X" if maintenance.clean_eyes else ""> + <"SI APLICA" if maintenance.clean_eyes else "NO APLICA"> - 6. Verificar Calibración: + 6. Verificar Calibración: - <"X" if maintenance.check_calibration else ""> + <"SI APLICA" if maintenance.check_calibration else "NO APLICA"> - </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> - <if test="line.description"> - <for each="description in line.description.split('\n')"> - <description> - </for> - </if> - + <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> - Observaciones - <maintenance.description_activity> - - - Fecha del próximo mantenimiento <str(maintenance.next_maintenance)[0:11]> - - - - - + </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]> + + + + - - <if test="maintenance.technician_signature"> - + + <if test="maintenance.technician_signature"> + - + Texto 1: - - </if> - <maintenance.technician_responsible> - INVIMA :<maintenance.invima> + </if> - - - - Recibido a Satisfacción: + + + + + + + <maintenance.technician_responsible> + + + RECIBIDO A SATISFACCIÓN + + + + + INVIMA :<maintenance.invima> + + + NOMBRE: - </for> - - + </for> \ No newline at end of file diff --git a/report/Service.fodt b/report/Service.fodt index bdc7b3b..190ef90 100644 --- a/report/Service.fodt +++ b/report/Service.fodt @@ -1,24 +1,24 @@ - 2022-11-03T17:09:30.5000787642023-11-29T09:52:29.829370691PT4H32M46S81LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 + 2022-11-03T17:09:30.5000787642023-12-05T18:28:47.895632483PT5H2M48S99LibreOffice/7.5.8.2$Linux_X86_64 LibreOffice_project/50$Build-2 - 64871 + 7 0 35003 - 15688 + 16425 true false view2 - 17597 - 67389 + 8707 + 9070 0 - 64871 + 7 35001 - 80557 + 16431 0 1 false @@ -73,7 +73,7 @@ true true false - 3238251 + 3434607 true false false @@ -160,7 +160,7 @@ - + @@ -437,18 +437,21 @@ - + - + - + - + + + + @@ -521,252 +524,305 @@ - + - + - + - + - + - + - + + + + + + + + + - + + + + + - + - + - + + + + + + + + + + + + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + + + + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + + - - + + - - + + - - - + + + - - - + + + - - + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -909,6 +965,9 @@ + + + @@ -917,9 +976,6 @@ - - - @@ -929,6 +985,13 @@ + + + + + + + @@ -1492,6 +1555,7 @@ + @@ -1504,40 +1568,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 @@ -1554,150 +1618,160 @@ - <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'"> - Verificación inicial de funcionamiento: + Verificación inicial de funcionamiento: - <"X" if line.initial_operation else ""> + <"SI APLICA" if line.initial_operation else "NO APLICA"> - Revisión del Equipo: + Revisión del Equipo: - <"X" if line.check_equipment else ""> + <"SI APLICA" if line.check_equipment else "NO APLICA"> - Revisión del sistema eléctrico: + Revisión del sistema eléctrico: - <"X" if line.check_electric_system else ""> + <"SI APLICA" if line.check_electric_system else "NO APLICA"> - Limpieza interior y exterior: + Limpieza interior y exterior: - <"X" if line.clean_int_ext else ""> + <"SI APLICA" if line.clean_int_ext else "NO APLICA"> - Limpieza de lentes y espejos: + Limpieza de lentes y espejos: - <"X" if line.clean_eyes else ""> + <"SI APLICA" if line.clean_eyes else "NO APLICA"> - Verificar Calibración: + Verificar Calibración: - <"X" if line.check_calibration else ""> + <"SI APLICA" if line.check_calibration else "NO APLICA"> - - </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"> + </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> - Observaciones: - <line.description_activity> - Fecha del próximo mantenimiento <str(line.next_maintenance)[0:11]> - - - - + <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]> + + + + + - - <if test="line.technician_signature"> - + + <if test="line.technician_signature"> + - + Texto 1: - </if> - <line.technician_responsible> - INVIMA :<line.invima> + </if> - - Recibido a Satisfacción: - - - - + + + + + + + <line.technician_responsible> + + + RECIBIDO A SATISFACCION + + + + + INVIMA :<line.invima> + + + NOMBRE - - - </for> - </for> - + </for> + </for> + + \ No newline at end of file