diff --git a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/BaseRouteIntegrationTest.java b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/BaseRouteIntegrationTest.java index c435d1c..8b53c6d 100644 --- a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/BaseRouteIntegrationTest.java +++ b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/BaseRouteIntegrationTest.java @@ -88,17 +88,11 @@ public abstract class BaseRouteIntegrationTest { private static final String odooCustomerDobField = "x_customer_dob"; - protected static final List orderDefaultAttributes = asList( - "id", - "client_order_ref", - "partner_id", - "state", - "order_line", - odooCustomerWeightField, - odooCustomerDobField); + protected static final List orderDefaultAttributes = + asList("id", "client_order_ref", "partner_id", "state", "order_line"); protected static final List partnerDefaultAttributes = - asList("id", "name", "ref", "street", "street2", "city", "zip", "active", "comment", odooCustomerDobField); + asList("id", "name", "ref", "street", "street2", "city", "zip", "active", "comment"); protected WireMockServer wireMockServer = new WireMockServer(8080); diff --git a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/MedicationRequestToSaleOrderIntegrationTest.java b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/MedicationRequestToSaleOrderIntegrationTest.java index 3499d0a..bef6d55 100644 --- a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/MedicationRequestToSaleOrderIntegrationTest.java +++ b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/MedicationRequestToSaleOrderIntegrationTest.java @@ -121,8 +121,8 @@ public void shouldCreateSaleOrderInOdooGivenMedicationRequestBundle() { assertNotNull(createdSaleOrder); assertEquals(ENCOUNTER_PART_OF_UUID, createdSaleOrder.getOrderClientOrderRef()); assertEquals("draft", createdSaleOrder.getOrderState()); - assertEquals("77.0 kg", createdSaleOrder.getPartnerWeight()); - assertEquals("1984-01-01", createdSaleOrder.getPartnerBirthDate()); + // assertEquals("77.0 kg", createdSaleOrder.getPartnerWeight()); + // assertEquals("1984-01-01", createdSaleOrder.getPartnerBirthDate()); // verify sale order has sale order line assertFalse(createdSaleOrder.getOrderLine().isEmpty()); @@ -191,7 +191,7 @@ public void shouldCreateSaleOrderWithoutPatientWeightInOdooGivenMedicationReques assertNotNull(createdSaleOrder); assertEquals(ENCOUNTER_PART_OF_UUID, createdSaleOrder.getOrderClientOrderRef()); assertEquals("draft", createdSaleOrder.getOrderState()); - assertEquals("false", createdSaleOrder.getPartnerWeight()); + // assertEquals("false", createdSaleOrder.getPartnerWeight()); // verify sale order has sale order line assertFalse(createdSaleOrder.getOrderLine().isEmpty()); diff --git a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/PatientToPartnerIntegrationTest.java b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/PatientToPartnerIntegrationTest.java index 4db52ac..0afacf0 100644 --- a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/PatientToPartnerIntegrationTest.java +++ b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/PatientToPartnerIntegrationTest.java @@ -92,7 +92,7 @@ public void shouldCreatePartnerInOdooGivenFhirPatient() { assertEquals(PATIENT_1_UUID, createdPartner.getPartnerRef()); assertEquals("City2062", createdPartner.getPartnerCity()); assertEquals(PATIENT_IDENTIFIER_1_VALUE, createdPartner.getPartnerComment()); - assertEquals("1939-02-14", createdPartner.getPartnerBirthDate()); + // assertEquals("1939-02-14", createdPartner.getPartnerBirthDate()); } @Test @@ -139,7 +139,7 @@ public void shouldUpdatePartnerInOdooGivenFhirPatient() { assertEquals(PATIENT_2_UUID, updatedPartner.getPartnerRef()); assertEquals("Nairobi", updatedPartner.getPartnerCity()); assertEquals(PATIENT_IDENTIFIER_2_VALUE, updatedPartner.getPartnerComment()); - assertEquals("2019-09-25", updatedPartner.getPartnerBirthDate()); + // assertEquals("2019-09-25", updatedPartner.getPartnerBirthDate()); } @Test diff --git a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/ServiceRequestToSaleOrderIntegrationTest.java b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/ServiceRequestToSaleOrderIntegrationTest.java index 248b2bb..f47c584 100644 --- a/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/ServiceRequestToSaleOrderIntegrationTest.java +++ b/integration-tests/src/test/java/com/ozonehis/eip/odoo/openmrs/ServiceRequestToSaleOrderIntegrationTest.java @@ -122,8 +122,8 @@ public void shouldCreateSaleOrderInOdooGivenServiceRequestBundle() { assertNotNull(createdSaleOrder); assertEquals(ENCOUNTER_PART_OF_UUID, createdSaleOrder.getOrderClientOrderRef()); assertEquals("draft", createdSaleOrder.getOrderState()); - assertEquals("77.0 kg", createdSaleOrder.getPartnerWeight()); - assertEquals("1984-01-01", createdSaleOrder.getPartnerBirthDate()); + // assertEquals("77.0 kg", createdSaleOrder.getPartnerWeight()); + // assertEquals("1984-01-01", createdSaleOrder.getPartnerBirthDate()); // verify sale order has sale order line assertFalse(createdSaleOrder.getOrderLine().isEmpty()); @@ -192,7 +192,7 @@ public void shouldCreateSaleOrderWithoutPatientWeightInOdooGivenServiceRequestBu assertNotNull(createdSaleOrder); assertEquals(ENCOUNTER_PART_OF_UUID, createdSaleOrder.getOrderClientOrderRef()); assertEquals("draft", createdSaleOrder.getOrderState()); - assertEquals("false", createdSaleOrder.getPartnerWeight()); + // assertEquals("false", createdSaleOrder.getPartnerWeight()); // verify sale order has sale order line assertFalse(createdSaleOrder.getOrderLine().isEmpty()); diff --git a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/client/OdooUtils.java b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/client/OdooUtils.java index 7d835a0..dedd0d8 100644 --- a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/client/OdooUtils.java +++ b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/client/OdooUtils.java @@ -7,6 +7,7 @@ */ package com.ozonehis.eip.odoo.openmrs.client; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.ObjectMapper; import java.lang.reflect.Field; @@ -36,7 +37,7 @@ public T convertToObject(Map data, Class objectClass) { T obj = mapper.convertValue(data, objectClass); for (Field field : obj.getClass().getDeclaredFields()) { - if (field.isAnnotationPresent(JsonProperty.class)) { + if (field.isAnnotationPresent(JsonProperty.class) && !field.isAnnotationPresent(JsonIgnore.class)) { JsonProperty jsonProperty = field.getAnnotation(JsonProperty.class); String propertyValue = environment.getProperty(jsonProperty.value()); if (propertyValue != null && data.containsKey(propertyValue)) { @@ -59,7 +60,7 @@ public Map convertObjectToMap(Object object) throws Exception { for (Field field : fields) { field.setAccessible(true); - if (field.isAnnotationPresent(JsonProperty.class)) { + if (field.isAnnotationPresent(JsonProperty.class) && !field.isAnnotationPresent(JsonIgnore.class)) { JsonProperty jsonProperty = field.getAnnotation(JsonProperty.class); String propertyValue = environment.getProperty(jsonProperty.value()); String key = propertyValue == null ? jsonProperty.value() : propertyValue; diff --git a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/PartnerHandler.java b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/PartnerHandler.java index d985d9b..4a35c63 100644 --- a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/PartnerHandler.java +++ b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/PartnerHandler.java @@ -46,8 +46,7 @@ public class PartnerHandler { public List partnerDefaultAttributes; public Partner getPartnerByID(String partnerRefID) { - partnerDefaultAttributes = asList( - "id", "name", "ref", "street", "street2", "city", "zip", "active", "comment", odooCustomerDobField); + partnerDefaultAttributes = asList("id", "name", "ref", "street", "street2", "city", "zip", "active", "comment"); Object[] records = odooClient.searchAndRead( Constants.PARTNER_MODEL, List.of(asList("ref", "=", partnerRefID)), partnerDefaultAttributes); if (records == null) { diff --git a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/SaleOrderHandler.java b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/SaleOrderHandler.java index 4559f00..fcc5723 100644 --- a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/SaleOrderHandler.java +++ b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/handlers/odoo/SaleOrderHandler.java @@ -67,14 +67,7 @@ public class SaleOrderHandler { public List orderDefaultAttributes; public SaleOrder getDraftSaleOrderIfExistsByVisitId(String visitId) { - orderDefaultAttributes = asList( - "id", - "client_order_ref", - "partner_id", - "state", - "order_line", - odooCustomerWeightField, - odooCustomerDobField); + orderDefaultAttributes = asList("id", "client_order_ref", "partner_id", "state", "order_line"); Object[] records = odooClient.searchAndRead( Constants.SALE_ORDER_MODEL, List.of(asList("client_order_ref", "=", visitId), asList("state", "=", "draft")), diff --git a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/Partner.java b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/Partner.java index 57b1d15..2e1d223 100644 --- a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/Partner.java +++ b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/Partner.java @@ -7,6 +7,7 @@ */ package com.ozonehis.eip.odoo.openmrs.model; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; @@ -56,5 +57,6 @@ public class Partner implements OdooResource { private String partnerComment; // Stores Patient Identifier @JsonProperty("odoo.customer.dob.field") + @JsonIgnore private String partnerBirthDate; } diff --git a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/SaleOrder.java b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/SaleOrder.java index 62b3e34..7dc54f9 100644 --- a/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/SaleOrder.java +++ b/odoo-openmrs/src/main/java/com/ozonehis/eip/odoo/openmrs/model/SaleOrder.java @@ -7,6 +7,7 @@ */ package com.ozonehis.eip.odoo.openmrs.model; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import java.util.List; @@ -39,8 +40,10 @@ public class SaleOrder implements OdooResource { private String orderTypeName; @JsonProperty("odoo.customer.weight.field") + @JsonIgnore private String partnerWeight; @JsonProperty("odoo.customer.dob.field") + @JsonIgnore private String partnerBirthDate; } diff --git a/pom.xml b/pom.xml index fdeb324..4c7ff94 100644 --- a/pom.xml +++ b/pom.xml @@ -64,7 +64,7 @@ 7.0.0 4.0.0-SNAPSHOT 1.19.3 - 1.0.0-SNAPSHOT + 1.0.0-alpha.11 false ${skipTests} ${skipTests}