...
- This service would handle requests from consumers–Requisition service for MVP, but other services in the future like stock management or informed push
- Input: a program data composite (facility, program, processingPeriod, and possibly isEmergency)
- Output: true/false depending on whether that program data is complete
- To answer these requests, it would make an external call to DHIS2 to get relevant data (integration piece)
- Authenticate with a DHIS2 "admin" user dedicated to OpenLMIS integration
- Call to DHIS2 APIs, probably /api/<version>/dataValueSets
- Input: a mapped program data composite (facility maps to orgUnit, program maps to program, processingPeriod maps to period)
- Output: dataValueSet result, with completeDate if program data is complete)
...