Purpose:
This screen allows Campaign Supervisors to:
Filter attendance registers based on boundaries (Country, Province, and District) tied to the selected project and aggregation level.
View the list of registers within the selected boundary.
Generate bills for the selected boundary if all registers are approved.
Filters Section
no of levels will vary based on the aggregation level selection:
Country: Dropdown menu to select the country (e.g., Mbazi Highlands).
Mandatory Field: Must be selected before applying filters.
Province: Dropdown menu to select the province (e.g., Nampula).
Mandatory Field: Must be selected before applying filters.
District: Dropdown menu to select the district (e.g., Murrupula).
Mandatory Field: Must be selected before applying filters.
Apply Button: Triggers the filter to display attendance registers for the selected boundary.
Register Inbox
Project Name: Displays the selected project name .
Aggregation Level: Displays the selected aggregation level (e.g., District level).
Register Status Summary:
Approved Registers: Shows the count of approved registers (e.g., 18).
Pending Registers: Shows the count of pending registers (e.g., 0).
Registers Table
Displays a tabular list of attendance registers for the filtered boundary, with the following columns:
Register ID
Unique identifier for each attendance register
Boundary
Indicates the boundary associated with the register
Supervisor Name
Displays the name of the supervisor associated with the register
Number of Workers
Displays the total number of workers in the register
Action Section
Generate Bill Button:
Enabled State: If all registers are approved, this button becomes active, allowing users to trigger the bill generation process and bill is not already generated.
Disabled State: If any registers are pending approval, the button remains inactive.
User Actions Flow:
Filter Attendance Registers:
Mandatory Filters: The user must select a Country, Province, and District before clicking "Apply".
After clicking Apply, the attendance registers for the selected boundary are displayed.
View Attendance Registers:
The filtered registers are shown in a tabular format.
Generate Bill:
The Generate Bill button is enabled only if all the registers within the selected boundary are approved and bill is not generated already.
Clicking Generate Bill triggers the bill generation process:
A confirmation pop-up appears with the warning.
Buttons:
Cancel: Returns to the register list.
Proceed: Starts the bill generation process.
A toast message will be shown whether bill generation started or failed. and a info message will be displayed with same.
All If all registers within the selected boundary are approved Approved:
The Generate Bill button is enabled.
Upon clicking Generate Bill, an info message is displayed: "Bill generation in progress. Please wait."
Bill Already Generated:
If all registers within the selected boundary are approved but a bill has already been generated:
An info message is displayed: "Bill has already been generated for this boundary."
Pending Registers:
If some registers within the selected boundary are still pending approval:
An info message is displayed: "Bill cannot be generated until all the registers are approved."
Boundary Selection:
All three boundary levels (Country, Province, and District) are mandatory for filtering attendance registers.
Error toast massage if you click on apply without selecting all mandatory boundaries.
The system verifies the approval status of all registers in the selected boundary before enabling the Generate Bill button.
/health-attendance/v1/_search
Retrieve attendance registers by boundary
/health-expense/bill/v1/_search
Checks if bill is already generated or not
/health-expense-calculator/v1/_calculate
Trigger bill generation for selected boundary
This is the initial screen where the user selects:
Project: The specific project they are managing.
Bill Aggregation Level: The boundary level at which the bill should be generated (Country, Province, or District).
Users cannot proceed without filling out these fields.
Interface Elements:
Project Selection
Dropdown menu to select the project.
Bill Aggregation Level
Dropdown menu to select the aggregation level (Country, Province, District).
Action Buttons
- Back: Navigate to the previous screen. - Next: Proceed to view registers mapped to the selected project.
User Actions Flow:
Use the dropdown menu to select the project.
Select one of the available aggregation levels (Country, Province, or District) from the dropdown.
Click the "Next" button to navigate to the register filtering screen.
Validations:
Both fields are mandatory:
If either the Project or Bill Aggregation Level is not selected, an error toast message is displayed if you try to proceed.
The Campaign Supervisor Flow is designed to streamline the management of attendance registers and bill generation processes for supervisors overseeing specific projects and boundaries. This flow ensures efficient selection, filtering, and approval of registers and simplifies the generation and tracking of bills. It focuses on clear workflows, actionable feedback, and validation mechanisms to enhance usability and accuracy.
Project and Bill Aggregation Selection: Supervisors select a project and boundary aggregation level to narrow down the scope for attendance registers and billing.
Registers Filtering and Bill Generation: Enables supervisors to filter registers based on boundaries, view attendance data, and generate bills only when all registers are approved.
Bill Management (My Bills): Provides a centralised view of all generated bills, with tools for searching, filtering, and downloading them in preferred formats.
CAMPAIGN_SUPERVISOR
aggregate the bill generation, based on district, province or country and download it for further process
This structured approach empowers supervisors to manage attendance registers and related billing tasks with ease while adhering to necessary validations and role-based permissions.
The "My Bills" section serves as a centralised dashboard for campaign supervisors to view and manage all bills associated with their assigned projects. By default, the dashboard displays all bills related to the projects under their supervision. Supervisors can search for specific bills or filter them using date ranges or by bill id.
Interface Elements:
Search Filters
Bill ID: Enter a specific Bill ID.
Date Range: Select a start and end date to filter bills within a specific time frame.
Action Buttons:
Search: Filters the results based on the provided criteria.
Clear Search: Resets the filters and shows all assigned bills.
Bill List
A table format displays the bills with the following columns:
Bill ID
A unique identifier assigned to each bill (e.g., WB-YYYY-MM-DD-XXXXX).
Date
The creation date of the bill.
Boundary
The geographic boundary associated with the bill (e.g., District, Province).
Project Name
The name of the project for which the bill was generated.
Workers
The total number of workers covered under the bill.
No of Registers
The total number of registers associated with the bill
Status
The current status of the bill (e.g., Generated, In Progress, Failed).
Status Descriptions
Generated: The bill has been successfully generated. The user can download it in PDF or Excel format.
In Progress: The report is still being generated. The user should wait for completion.
Failed: The report generation failed. The user can:
Retry the process.
Contact support if the issue persists.
API Endpoints:
/health-expense/bills/v1/_search
Search bills by project id
/filestore/v1/files/{id}
Download details of a specific bill