Enable the integration of country-level population data into the system

Description

Enable the management of catchment population data at all geographic levels in SELV, with automatic aggregation implemented for SELV-specific needs and manual editing supported by the core functionality.

Key Features:

  1. Population Management:

    1. Use a feature flag (CATCHMENT_POPULATION_CALC_AUTO) to control aggregation behavior:

      • True (SELV): Automatically aggregate population data from the lowest level to higher levels (district, province, country). Modifying other levels than the lowest one NOT POSSIBLE.

      • False (Core): Allow manual editing of population data at higher levels.

  2. Data Visualization:

    1. Provide a "Visualize Population" button to display population data for child geographic zones and aggregate totals for parent zones in a user-friendly modal.

  3. Geographic Zones Table Enhancements:

    1. Add a Catchment Population column to show aggregated or manually entered values.

    2. Update the Actions Column:

      • Replace View with an Edit button for health areas (or all levels if the feature flag is false).

      • Include a Visualize Population button for all geographic zones (except the lowest level).

    3. Extend filters to include geographic code and level.

  4. Edit Modal:

    1. Allow editing of catchment population data with input validation for numeric, positive values.

    2. Display existing zone details (e.g., name, code, coordinates) as read-only.

  5. Import Functionality:

    1. Enable bulk import of population data via CSV in the "Data Import" section.

    2. Validate file structure and provide feedback on success or errors.

LINK TO THE SELV TICKET:

HLD:

Attachments

2

Checklists

Activity

Show:

Aleksandra Ciesińska March 10, 2025 at 9:39 AM
Edited

I added one small point to the Catchment Population import, besides, the documentation and test cases will seem understandable to the user who is not familiar with this functionality.

cc:

Artur Lebiedziński March 5, 2025 at 11:46 AM

I believe it should go through someone’s review - maybe there are other enhancements/fixed that we missed. Can someone assist you here?

Maciej Grochalski March 4, 2025 at 6:04 PM
Edited

  • Import naming has been changed to Population:

  • Export for Population has been added:

  • The documentation has been updated

 

I believe these were are steps to cover, should we move the ticket to To Be Released status?

Artur Lebiedziński February 4, 2025 at 2:39 PM

please also ensure that user documentation contains the logic of this functionality so Implementations can understand how data is being updated in different scenarios

Artur Lebiedziński February 4, 2025 at 2:31 PM

There are several things that need to be adjusted to make this feature complete for core. Please find the liste below:

  1. Geo zones export - since Import works only for population data update based for Geo Zones that are already in the system, we need to allow users to easily export file which contain all geo zones so they can add population data and import the file afterwards

  2. Change import naming from “Geographic Zones” to “Population data” - functionality doesn’t allow to import geo zones but only to update population data. Thus, current naming is not accurate

  3. Changes in user documentation - once 1 and 2 are done, we need to update user documentation

Can you make sure that Team will create tickets accordingly? We can create subtasks to this User Story to keep the adjustments to this feature in one place
cc:

Unresolved
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Original estimate

Time tracking

3h logged5h remaining

Priority

Time Assistant

Created December 6, 2024 at 7:30 AM
Updated April 1, 2025 at 2:50 PM