From 5da5d4470accf2d31825bdf0bd38f8083f099c59 Mon Sep 17 00:00:00 2001 From: Reham Muzzamil Date: Tue, 14 Dec 2021 17:06:44 +0500 Subject: [PATCH 1/6] Register Practitioner DEtails End-point classes Signed-off-by: Reham Muzzamil --- pom.xml | 5 +++++ .../ca/uhn/fhir/jpa/starter/JpaRestfulServer.java | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/pom.xml b/pom.xml index 20cb51976e0..235e7f2ce57 100755 --- a/pom.xml +++ b/pom.xml @@ -143,6 +143,11 @@ 0.0.3-SNAPSHOT + + org.smartregister.hapi-fhir-opensrp-extensions + practitioner + 0.0.3-SNAPSHOT + diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java index 8ae877d2043..7f6a9a5980d 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java @@ -4,6 +4,7 @@ import org.hl7.fhir.r4.model.Location; import org.smartregister.extension.model.*; import org.smartregister.extension.rest.LocationHierarchyResourceProvider; +import org.smartregister.extension.rest.PractitionerDetailsResourceProvider; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Import; @@ -28,6 +29,7 @@ protected void initialize() throws ServletException { // Add your own customization here registerLocationHierarchyTypes(); + registerPracitionerDetailsTypes(); } private void registerLocationHierarchyTypes() { @@ -45,4 +47,14 @@ private void registerLocationHierarchyTypes() { getFhirContext().registerCustomType(ChildTreeNode.class); } + private void registerPracitionerDetailsTypes() { +// IFhirResourceDao locationIFhirResourceDao = daoRegistry.getResourceDao(LOCATION); + PractitionerDetailsResourceProvider practitionerDetailsResourceProvider = new PractitionerDetailsResourceProvider(); + + registerProvider(practitionerDetailsResourceProvider); + getFhirContext().registerCustomType(PractitionerDetails.class); + getFhirContext().registerCustomType(KeycloakUserDetails.class); + getFhirContext().registerCustomType(UserBioData.class); + } + } From 0acf4e670eafecddcca139dcbe285e48d4807603 Mon Sep 17 00:00:00 2001 From: Reham Muzzamil Date: Mon, 3 Jan 2022 16:12:03 +0500 Subject: [PATCH 2/6] Register custom types for Practitioner Details Endpoint --- .../fhir/jpa/starter/JpaRestfulServer.java | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java index 7f6a9a5980d..4e3e29980cf 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java @@ -1,7 +1,7 @@ package ca.uhn.fhir.jpa.starter; import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; -import org.hl7.fhir.r4.model.Location; +import org.hl7.fhir.r4.model.*; import org.smartregister.extension.model.*; import org.smartregister.extension.rest.LocationHierarchyResourceProvider; import org.smartregister.extension.rest.PractitionerDetailsResourceProvider; @@ -47,14 +47,32 @@ private void registerLocationHierarchyTypes() { getFhirContext().registerCustomType(ChildTreeNode.class); } + private void registerPracitionerDetailsTypes() { -// IFhirResourceDao locationIFhirResourceDao = daoRegistry.getResourceDao(LOCATION); + IFhirResourceDao practitionerIFhirResourceDao = daoRegistry.getResourceDao("Practitioner"); + IFhirResourceDao practitionerRoleIFhirResourceDao = daoRegistry.getResourceDao("PractitionerRole"); + IFhirResourceDao careTeamIFhirResourceDao = daoRegistry.getResourceDao("CareTeam"); + IFhirResourceDao organizationAffiliationIFhirResourceDao = daoRegistry.getResourceDao("OrganizationAffiliation"); + IFhirResourceDao organizationIFhirResourceDao = daoRegistry.getResourceDao("Organization"); + IFhirResourceDao locationIFhirResourceDao = daoRegistry.getResourceDao(LOCATION); + LocationHierarchyResourceProvider locationHierarchyResourceProvider = new LocationHierarchyResourceProvider(); + locationHierarchyResourceProvider.setLocationIFhirResourceDao(locationIFhirResourceDao); PractitionerDetailsResourceProvider practitionerDetailsResourceProvider = new PractitionerDetailsResourceProvider(); + practitionerDetailsResourceProvider.setPractitionerIFhirResourceDao(practitionerIFhirResourceDao); + practitionerDetailsResourceProvider.setPractitionerRoleIFhirResourceDao(practitionerRoleIFhirResourceDao); + practitionerDetailsResourceProvider.setCareTeamIFhirResourceDao(careTeamIFhirResourceDao); + practitionerDetailsResourceProvider.setOrganizationAffiliationIFhirResourceDao(organizationAffiliationIFhirResourceDao); + practitionerDetailsResourceProvider.setLocationHierarchyResourceProvider(locationHierarchyResourceProvider); + practitionerDetailsResourceProvider.setOrganizationIFhirResourceDao(organizationIFhirResourceDao); + practitionerDetailsResourceProvider.setLocationIFhirResourceDao(locationIFhirResourceDao); registerProvider(practitionerDetailsResourceProvider); getFhirContext().registerCustomType(PractitionerDetails.class); getFhirContext().registerCustomType(KeycloakUserDetails.class); getFhirContext().registerCustomType(UserBioData.class); + getFhirContext().registerCustomType(FhirPractitionerDetails.class); + getFhirContext().registerCustomType(FhirCareTeamExtension.class); + getFhirContext().registerCustomType(FhirOrganizationExtension.class); } } From 00bca6ffcbe7207b098778b2c6afeb705ce3c184 Mon Sep 17 00:00:00 2001 From: Reham Muzzamil Date: Tue, 18 Jan 2022 23:38:27 +0500 Subject: [PATCH 3/6] Update imports --- src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java index 4e3e29980cf..b01531cb2f9 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/JpaRestfulServer.java @@ -2,14 +2,15 @@ import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; import org.hl7.fhir.r4.model.*; -import org.smartregister.extension.model.*; import org.smartregister.extension.rest.LocationHierarchyResourceProvider; import org.smartregister.extension.rest.PractitionerDetailsResourceProvider; +import org.smartregister.model.location.*; +import org.smartregister.model.practitioner.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Import; import javax.servlet.ServletException; -import static org.smartregister.extension.utils.Constants.LOCATION; +import static org.smartregister.utils.Constants.LOCATION; @Import(AppProperties.class) public class JpaRestfulServer extends BaseJpaRestfulServer { From b223f1977ddb08de239b763417d9765610f1085c Mon Sep 17 00:00:00 2001 From: Reham Muzzamil Date: Wed, 19 Jan 2022 00:02:09 +0500 Subject: [PATCH 4/6] Bump up versions --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 235e7f2ce57..f271c48acb9 100755 --- a/pom.xml +++ b/pom.xml @@ -133,20 +133,20 @@ org.smartregister hapi-fhir-keycloak - 0.0.3-SNAPSHOT + 0.0.6-SNAPSHOT org.smartregister.hapi-fhir-opensrp-extensions location - 0.0.3-SNAPSHOT + 0.0.4-SNAPSHOT org.smartregister.hapi-fhir-opensrp-extensions practitioner - 0.0.3-SNAPSHOT + 0.0.4-SNAPSHOT