The Akros team has requested that we develop a feature to support verification of IRS activities that took place during the VectorLink campaign. This verification process is meant to run for a week and will include a subset of people going to the field, door to door and filling out a simple survey stating whether the structure was sprayed. (Epic Link https://smartregister.atlassian.net/browse/RVL-685)
Assumptions
(CONFIRMED) We will implement this as part of a new plan. This feature will not be integrated with an existing plan
(CONFIRMED) The IRS Verification action will be the only action in the plan. This assumption can be relaxed in the future.
(CONFIRMED) We do not need in app reporting for this
(CONFIRMED) We do not need dashboards for this feature
We do not need the ability to edit these forms once they are saved the first time (Christina Riley , please confirm)
Workflow
We expect the workflow to be similar to the IRS workflow, but an IRS Verification form is opened when a user taps a form.
...
The user opens the operational area
All structures are yellow
The user visits a structure
The user taps the structure and opens the IRS verification form
The user completes the form and taps save
The structure turns from yellow to green because the submission was complete
The user can tap the structure to view the card that displays the same information that’s available on the IRS card without the button to edit the information
Feature Requests
Support a new plan action labeled “IRS Verification”
Sample
Code Block language json { "goal": [ { "id": "IRS_Verification", "description": "Verify structures were sprayed in the operational area", "priority": "medium-priority", "target": [ { "measure": "Percent of structures verified", "detail": { "detailQuantity": { "value": 90, "comparator": ">=", "unit": "Percent" } }, "due": "2019-12-15" } ] } ], "action": [ { "identifier": "7d25ffdd-e5c7-5d7b-b764-9af9e3eaf227", "prefix": 1, "title": "IRS Verification", "description": "Visit each structure in the operational area and verify status", "code": "IRS Verification", "timingPeriod": { "start": "2019-11-20", "end": "2019-12-15" }, "reason": "Routine", "goalId": "IRS_Verification", "subjectCodableConcept": { "text": "Residential_Structure" }, "taskTemplate": "IRS_Verification" } ] }
Add a new form labeled zambia_irs_verification
Christina Riley INSERT LINK TO DATA DICTIONARY
Business Status (Christina Riley , please verify this is correct)
Yellow = Not Visited
Green = Complete
Add a new code to the Android client Labeled “IRS Verification” that performs the following business logic
When you tap a structure that is yellow, the new zambia_irs_verification form displays
When you tap a structure that is green, a card view pops up
Card View
When you tap a structure that is not yellow, display a card view with the following fields
CRAIG FILL THIS OUTthat includes the same information that’s available on the card view when a user taps it for IRS.
DO NOT INCLUDE the ability to edit the form.
Task Auto Generation Logic
The target is to visit locations that are marked as residential structures. Therefore, we need to develop the following logic when generating tasks
Only generate tasks for residential structures. Do not generate tasks for structures that have been marked as “ineligible” during the VectorLink IRS campaign
Annie Martin and Christina Riley , please confirm if this is critical or nice to have.
Sample Task Template
Key | Description |
---|---|
| The id of the plan that’s selected in the drop-down of the hamburger menu |
| The id of the operational area that’s selected in the drop down of the hamburger menu |
| This should be taken from the plan action.code (i.e. IRS Verification) |
| This is the description of the action from the action in the plan that was selected in the hamburger menu of the drop-down. It could also be hard coded for the MVP |
| This is the identifier from the plan action.identifier |
| This is the location Id from the residential structure that is targeted for the task |
| This is the start timing period and can be hard coded to now() |
| This is the end time period and can be hard coded to now() + 30 days |
| This is the username of the user who generated the task |
Code Block |
---|
{
"identifier": "${UUID()}",
"planIdentifier": "${planIdentifier}",
"groupIdentifier": "${location.properties.parentId}",
"status": "Ready",
"businessStatus": "Not Visited",
"priority": 3,
"code": "${planActionCode}",
"description": "${planActionDescription}",
"focus": "${planActionIdentifier}",
"for": "${locationId}",
"executionStartDate": "${planActionTimingPeriodStart}",
"executionEndDate": "${planActionTimingPeriodEnd}",
"owner": "${taskOwner}",
"note": null
} |
Reporting
As stated in the assumptions, we do not need to develop a web view for this MVP. Akros has requested that we deliver a data export in tabular format with all of the structure ids and the information that’s collected in the form. This will ultimately be a table in the datawarehouse that’s accessed through superset.
Christina Riley , we need this to be scoped.