diff --git a/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/EnrollmentRegistrationEntry.types.js b/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/EnrollmentRegistrationEntry.types.js index d58a42aff2..3e4ea25e82 100644 --- a/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/EnrollmentRegistrationEntry.types.js +++ b/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/EnrollmentRegistrationEntry.types.js @@ -8,11 +8,17 @@ import type { ExistingUniqueValueDialogActionsComponent } from '../withErrorMess import type { InputAttribute } from './hooks/useFormValues'; import { RenderFoundation, ProgramStage } from '../../../metaData'; +type TrackedEntityAttributes = Array<{ + attribute: string, + value: any, +}>; + export type EnrollmentPayload = {| trackedEntity: string, trackedEntityType: string, orgUnit: string, geometry: any, + attributes: TrackedEntityAttributes, enrollments: [ {| occurredAt: string, @@ -23,10 +29,7 @@ export type EnrollmentPayload = {| events: Array<{ orgUnit: string, }>, - attributes: Array<{ - attribute: string, - value: any, - }>, + attributes: TrackedEntityAttributes, |} ] |} diff --git a/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/hooks/useBuildEnrollmentPayload.js b/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/hooks/useBuildEnrollmentPayload.js index 95778162b0..d6ae0f8adf 100644 --- a/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/hooks/useBuildEnrollmentPayload.js +++ b/src/core_modules/capture-core/components/DataEntries/EnrollmentRegistrationEntry/hooks/useBuildEnrollmentPayload.js @@ -156,13 +156,15 @@ export const useBuildEnrollmentPayload = ({ ? [firstStageDuringRegistrationEvent, ...autoGenerateEvents] : autoGenerateEvents; + const attributes = deriveAttributesFromFormValues(formServerValues); + const enrollment = { program: programId, status: 'ACTIVE', orgUnit: orgUnitId, occurredAt, enrolledAt, - attributes: deriveAttributesFromFormValues(formServerValues), + attributes, events: allEventsToBeCreated, }; @@ -177,6 +179,7 @@ export const useBuildEnrollmentPayload = ({ trackedEntity: teiId || generateUID(), orgUnit: orgUnitId, trackedEntityType: trackedEntityTypeId, + attributes, geometry, enrollments: [enrollment], };