From 9837b3cff31014627829e19c24587bdf6b7a8f26 Mon Sep 17 00:00:00 2001 From: Patrick Waweru Date: Mon, 22 Jul 2024 13:10:27 +0300 Subject: [PATCH] Added the two columns for total sites and their MFL codes --- .../builder/nupi/DuplicateNUPIReportBuilder.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/api/src/main/java/org/openmrs/module/kenyaemr/reporting/builder/nupi/DuplicateNUPIReportBuilder.java b/api/src/main/java/org/openmrs/module/kenyaemr/reporting/builder/nupi/DuplicateNUPIReportBuilder.java index eec9143db..511ebda54 100644 --- a/api/src/main/java/org/openmrs/module/kenyaemr/reporting/builder/nupi/DuplicateNUPIReportBuilder.java +++ b/api/src/main/java/org/openmrs/module/kenyaemr/reporting/builder/nupi/DuplicateNUPIReportBuilder.java @@ -10,7 +10,11 @@ package org.openmrs.module.kenyaemr.reporting.builder.nupi; +import javax.persistence.AttributeConverter; + import org.openmrs.PatientIdentifierType; +import org.openmrs.PersonAttributeType; +import org.openmrs.api.context.Context; import org.openmrs.module.kenyacore.report.CohortReportDescriptor; import org.openmrs.module.kenyacore.report.builder.Builds; import org.openmrs.module.kenyacore.report.builder.CalculationReportBuilder; @@ -30,6 +34,8 @@ import org.openmrs.module.reporting.data.converter.DateConverter; import org.openmrs.module.reporting.data.patient.definition.ConvertedPatientDataDefinition; import org.openmrs.module.reporting.data.patient.definition.PatientIdentifierDataDefinition; +import org.openmrs.module.reporting.data.person.definition.ConvertedPersonDataDefinition; +import org.openmrs.module.reporting.data.person.definition.PersonAttributeDataDefinition; import org.openmrs.module.reporting.dataset.definition.PatientDataSetDefinition; import org.springframework.stereotype.Component; @@ -45,10 +51,16 @@ protected void addColumns(CohortReportDescriptor report, PatientDataSetDefinitio DataDefinition cccIdentifierDef = new ConvertedPatientDataDefinition("identifier", new PatientIdentifierDataDefinition(upn.getName(), upn), new IdentifierConverter()); PatientIdentifierType nupiIdentifierType = MetadataUtils.existing(PatientIdentifierType.class, CommonMetadata._PatientIdentifierType.NATIONAL_UNIQUE_PATIENT_IDENTIFIER); DataDefinition nupiIdentifierDef = new ConvertedPatientDataDefinition("identifier", new PatientIdentifierDataDefinition(nupiIdentifierType.getName(), nupiIdentifierType), new IdentifierConverter()); + PersonAttributeType duplicateSitesPA = Context.getPersonService().getPersonAttributeTypeByUuid(CommonMetadata._PersonAttributeType.DUPLICATE_NUPI_SITES_WITH_NATIONAL_REGISTRY); + PersonAttributeType duplicateTotalSitesPA = Context.getPersonService().getPersonAttributeTypeByUuid(CommonMetadata._PersonAttributeType.DUPLICATE_NUPI_TOTALSITES_WITH_NATIONAL_REGISTRY); + DataDefinition duplicateSiteNamesDef = new ConvertedPersonDataDefinition("attribute", new PersonAttributeDataDefinition(duplicateSitesPA.getName(), duplicateSitesPA)); + DataDefinition duplicateTotalSitesDef = new ConvertedPersonDataDefinition("attribute", new PersonAttributeDataDefinition(duplicateTotalSitesPA.getName(), duplicateTotalSitesPA)); addStandardColumns(report, dsd); dsd.addColumn("CCC", cccIdentifierDef, ""); dsd.addColumn("NUPI", nupiIdentifierDef, ""); + dsd.addColumn("Active Facilities", duplicateSiteNamesDef, ""); + dsd.addColumn("Total Sites", duplicateTotalSitesDef, ""); dsd.addColumn("Enrollment Date", new CalculationDataDefinition("Enrollment Date", new DateOfEnrollmentArtCalculation()), "", new DateArtStartDateConverter()); dsd.addColumn("Art Start Date", new ETLArtStartDateDataDefinition(), "", new DateConverter(DATE_FORMAT)); dsd.addColumn("First Regimen", new ETLFirstRegimenDataDefinition(), "");