From 2416d27f162f32270cf1c5c6964b86b56745ec65 Mon Sep 17 00:00:00 2001 From: Babatunde Adeyemi Date: Wed, 13 May 2026 15:19:28 +0100 Subject: [PATCH] feat: Add categoryCombo field to DataApprovalWorkflow model --- src/main/java/org/hisp/dhis/api/ApiFields.java | 4 +++- src/main/java/org/hisp/dhis/model/DataApprovalWorkflow.java | 2 ++ .../java/org/hisp/dhis/model/DataApprovalWorkflowTest.java | 3 +++ src/test/resources/metadata/data-approval-workflow.json | 4 ++++ 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/hisp/dhis/api/ApiFields.java b/src/main/java/org/hisp/dhis/api/ApiFields.java index 9f0a6bec..cbab85a2 100644 --- a/src/main/java/org/hisp/dhis/api/ApiFields.java +++ b/src/main/java/org/hisp/dhis/api/ApiFields.java @@ -241,7 +241,9 @@ public class ApiFields { /** Data approval workflow fields. */ public static final String DATA_APPROVAL_WORKFLOW_FIELDS = - String.format("%s,periodType,dataSets[%s]", NAME_EXT_FIELDS, NAME_FIELDS); + String.format( + "%s,periodType,categoryCombo[%s],dataSets[%s]", + NAME_EXT_FIELDS, NAME_FIELDS, NAME_FIELDS); /** Data entry form fields. */ public static final String DATA_ENTRY_FORM_FIELDS = diff --git a/src/main/java/org/hisp/dhis/model/DataApprovalWorkflow.java b/src/main/java/org/hisp/dhis/model/DataApprovalWorkflow.java index ad2880bb..79cecb2d 100644 --- a/src/main/java/org/hisp/dhis/model/DataApprovalWorkflow.java +++ b/src/main/java/org/hisp/dhis/model/DataApprovalWorkflow.java @@ -40,5 +40,7 @@ public class DataApprovalWorkflow extends NameableObject { @JsonProperty private String periodType; + @JsonProperty private CategoryCombo categoryCombo; + @JsonProperty private List dataSets = new ArrayList<>(); } diff --git a/src/test/java/org/hisp/dhis/model/DataApprovalWorkflowTest.java b/src/test/java/org/hisp/dhis/model/DataApprovalWorkflowTest.java index efce9584..dbdbcdd3 100644 --- a/src/test/java/org/hisp/dhis/model/DataApprovalWorkflowTest.java +++ b/src/test/java/org/hisp/dhis/model/DataApprovalWorkflowTest.java @@ -48,6 +48,9 @@ void testDeserialize() { assertEquals("wkn0K4gtVHo", workflow.getId()); assertEquals("Malaria Approval Workflow", workflow.getName()); assertEquals("Monthly", workflow.getPeriodType()); + assertNotNull(workflow.getCategoryCombo()); + assertEquals("bjDvmb4bfuf", workflow.getCategoryCombo().getId()); + assertEquals("default", workflow.getCategoryCombo().getName()); assertSize(3, workflow.getDataSets()); assertEquals("pBOMPrpg1QX", workflow.getDataSets().get(0).getId()); assertEquals("VTdjfLXXmoi", workflow.getDataSets().get(1).getId()); diff --git a/src/test/resources/metadata/data-approval-workflow.json b/src/test/resources/metadata/data-approval-workflow.json index 63130a4a..8f7040f7 100644 --- a/src/test/resources/metadata/data-approval-workflow.json +++ b/src/test/resources/metadata/data-approval-workflow.json @@ -3,6 +3,10 @@ "code": "MALARIA_WORKFLOW", "name": "Malaria Approval Workflow", "periodType": "Monthly", + "categoryCombo": { + "id": "bjDvmb4bfuf", + "name": "default" + }, "dataSets": [ { "id": "pBOMPrpg1QX",