Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The user adds a point (current behaviour)

  • The user opens the form (current behaviour)

  • The user long presses the location

  • Perform the following logic:

    • If the task status = “Ready”

      • A modal window pops up with the following:

        • Title: Mark Location Inactive

        • Text: Please confirm that this location should be marked inactive.

        • Options (Confirm or Cancel)

      • The user taps “Confirm”

        • If the user taps cancel, the modal is closed

      • The system performs the following business logic

        • Change the location.properties.status to “Inactive”

        • Loop through any tasks assigned to it change the status to “Cancelled”

    • If the task status != “Ready”

      • Display a toast message stating “You can not make this structure inactive because tasks are completed against it.

  • Note: If a task was assigned to that location and it was cancelled, the location will display as grey and the user will not be able to interact with it.

Workflow 2: Mark Location Ineligible for Register Family Task (status = Ready)

...

  • The user taps the yellow structure and the register family form displays (current behaviour)

  • The first question asks “Is this location eligible to register a family?” with the default value = Yes

    • All other fields are automatically displayed as is the current behaviour

  • The user changes the value to “No”, all fields hide.

    • Step 2 of the form is also hidden

    • The “Next” button in the top right changes to “Submit”

  • The user taps submit and the form is saved.

  • The user is redirected back to the map view

  • The user can tap on the location and a card displays with information that’s currently available if they tap on a different location type (PAOT, larval dipping, mosquito collection point)

  • The user can view the task in the task list view with a black button labeled “Ineligible”

Workflow 3: Mark Family Member Ineligible for Blood Screening Task

...

  1. Update every form to add eligibility skip logic to it. (i.e. “is this person eligible for _____?” default = yes)

    1. Register Family

    2. Add Family Member

    3. Update Family

    4. Update Family Member

    5. Bednet Distribution

    6. Blood Screening

    7. BCC

    8. Mosquito Collection

    9. Larval dipping

    10. PAOT

  2. Add logic to the post form save action to support ineligible skip logic in the forms Add Archive Family Member formdefined in 1 above

  3. Add a card view to the location when a register family task is marked as ineligible

    1. Make sure this button opens the register family form so that a user can register a family

  4. Add Archive Family Member to the option menu

    1. Add the loops that archive the family member as defined in Workflow 5 above

  5. Add Archive Family to the option menu

    1. Add the loops that archive the family as defined in Workflow 6 above

  6. Add support for displaying locations in black that have been marked as ineligible in the map view

  7. Add support for displaying buttons in black background with white text that have been marked as ineligible in the family module’s task list view and the task list view

  8. Update the family name that’s displayed in the task list view if the register family task is marked as ineligible.

    1. By default, it displays “Unenumerated structure” (current behaviour)

    2. If a family is registered, it says the name of the household (current behaviour)

    3. If marked as ineligible display “Ineligible Location”

  9. Add support for marking a location as Inactive as defined in Workflow 2

    1. long press interaction

    2. add a modal

    3. perform the business logic once made inactive as defined in workflow 2

  10. (Samuel Githengi , I’m not sure if this is already done) Create an archival process that:

    1. Marks the “Client” as archived (family or family member)

    2. Marks the task as archived

    3. Marks the event as archived

  11. Update the sync process to sync these archived items from the Android client to the server

  12. Update the server side sync process to exclude archived tasks, events and clients from syncing to new clients