Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
As a part of the 1.5 release, we have extracted the features of the Frontline Worker's App as individual packages:
Closed HouseHold Package
This module will enable the health facility supervisors to track referrals made by on-field health workers to different health facilities digitally via the Digit HCM app.
To learn more about Referral Reconciliation, click here. Link to the Pub Package:
The referral reconciliation feature enables the user to track referrals made by on-field health workers to different health facilities digitally via the Digit HCM app capturing all the cases of:
Beneficiary being referred
Referral details of the beneficiary
Reason for referrals and their diagnosis
Based on the diagnosis, further details, if applicable
HEALTH_FACILITY_WORKER
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/referral_reconciliation_imports.dart.
This will automatically add the necessary imports, mapper initializers, route config, setting initial data, and repository initialization to the required files.
Make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
Install the application and you should have referral reconciliation integrated into your base app.
By following these steps, you can successfully integrate and use the Referral Reconciliation module within your application.
This package provides a way to register a household and individual members and deliver the resources to the registered households.
To learn more about Registration and Delivery, click here. Link to the pub package:
DISTRIBUTOR
Register new households and individuals.
Search existing households and individuals.
Update details for existing households and individuals.
Record service delivery of healthcare interventions to households and individuals for a single round campaign.
Auto-calculation of resources to be delivered to a household or individuals based on the configured rule.
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/registration_delivery_imports.dart.
This will automatically add the necessary imports, mapper initializers, route config, setting initial data, and repository initialization to the required files.
Make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
Install the application and you should have Registration and Delivery integrated into your base app.
By following these steps, you can successfully integrate and use the registration and delivery module within your application.
The below step is required as per your use case
During boundary selection, if you need to downsync registration-delivery-related data, include the below code in the project_beneficiaries_downsync
file:
Next, find this method in the same file networkManager.writeToEntityDb
and the below repositories:
With the above changes, you will enable the down sync of registration and delivery data.
When the user down sync's the data by passing project id and boundary code. Server will send responses which are created under that selected boundary.
Household
Individual
House Member
Case 1: Need to update the Entities related to project specific data.
Case 2: Create Project specific data - (Beneficiary - Mandatory. Task and other relative entities)
Registered
Un registered
Closed
Proximity enabled
Search by name
To get the search response we create a query build which is as shown below. It's an example for an individual based project.
Sequence diagram :
GPS accuracy - Household Location screen
No. of Pregnant Women and No. of Childs- Member screen - Both these field values persist in Additional fields Object of HH Member entity
Added a new screen to capture the structure of household structure
The structure data will be fetched from MDMS and rendered in card format and the selected value will be stored in Additional Details Object in Household Entity.
It’s been built as a new module (pub package)- closed_household and It will be a dependency of registration and delivery package.
For HH based flow we have introduced a flow to capture the reason for unsuccessful delivery
Sequence diagram
This enables the user to manage the stocks of a health campaign. The user can record the stocks received, issued, returned, damaged and lost.
To known more about Inventory Management,
Link to the Pub Package:
DISTRIBUTOR, WAREHOUSE_MANAGER
Manage Stocks: Receipt, issued, returned, damaged, and loss of stocks.
Stock Reconciliation: Reconcile the stock data.
View Reports: View the reports of the stocks.
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/inventory_management_imports.dart.
This will automatically add the necessary imports, mapper initializers, route config, setting initial data, and repository initialization to the required files.
Make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
Install the application and you should have Inventory Management integrated into your base app.
By following these steps, you can successfully integrate and use the Inventory Management module within your application.
It’s been built as a new module (pub package)- closed_household and It will be a dependency of registration and delivery package.
To learn more about Registration and Delivery, Link to the pub package:
DISTRIBUTOR
Create a closed household
Update task if closed household gets registered
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/closed_household_imports.dart.
This will automatically add the necessary imports, mapper initializers, route config, setting initial data, and repository initialization to the required files.
Make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
Install the application and you should have Registration and Delivery integrated into your base app.
By following these steps, you can successfully integrate and use the closed household module within your application.
Sequence Diagram
Link to the Pub Package:
The digit_data_model package is a comprehensive data modeling library for the project. It defines various classes, enums, and functions used throughout the project. The package is written in Dart and is primarily used in Flutter applications.
Data Models: The package provides a set of predefined data models like DataModel, EntityModel, EntitySearchModel, AdditionalFields, AdditionalField, ClientAuditDetails, AuditDetails, etc. These models are used to structure the data in the project.
Model Provider: The package includes a ModelProvider abstract class that can be implemented to provide a list of models. It also includes a ModelProviderRegistry class to register and retrieve all model providers.
Data Model Type Enum: The package defines a DataModelType enum that represents the different types of data models in the project.
Mapping Annotations: The package uses the dart_mappable package to generate mapping code for the classes. This helps in converting the data models to and from JSON.
Data Repositories: The package provides abstract classes for data repositories, DataRepository, RemoteRepository, and LocalRepository, which can be extended to create repositories for different data models. It also includes error handling with InvalidApiResponseException.
Sql Store: The package includes a SqlStore class that can be used to store data in a SQLite database.
Here are the key features it provides to other packages:
Database Connection: It provides a connection to the SQLite database. This connection is opened when the database is first accessed.
Table Definitions: It defines the tables in the database. These tables correspond to various entities in the project.
Database Operations: It provides methods for querying and manipulating the data in the tables. These methods can be used to perform CRUD (Create, Read, Update, Delete) operations on the data.
Schema Version: It provides the schema version of the database. This can be used to handle database migrations.
Drift Integration: It uses the Drift package for interacting with the SQLite database. This provides a reactive persistence library for Flutter and Dart.
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/digit_data_model_imports.dart.
This will automatically add the necessary imports, mapper initializers, and repository initializations to the required files.
Below are some examples of how you can use this package:
Extend the EntityModel or `EntitySearchModel class and implement the required methods:
Extend the `LocalRepository` class and implement the required methods:
Extend the `RemoteRepository` class and implement the required methods:
A scanner package used for scanning QR codes and GS1 barcodes.
Link to the Pub Package:
To use the digit_scanner package, add the following dependency to your pubspec.yaml file:
To initialise the DigitScannerBloc provider in your application, add the following code:
To clear the scanner state, use the following code:
To navigate to the Digit Scanner page, use this code snippet:
Wrap the DigitScannerListener or DigitScannerBuilder in your widget tree wherever you need to read the scanned codes from the scanner state:
Find out about usage at the example implementation.
The attendance management package is a comprehensive solution for managing attendance.
To learn more about Attendance Management,
Link to the Pub Package:
SUPERVISOR
Attendance Pages: The package includes several pages like mark_attendance.dart, manage_attendance.dart, and session_select.dart that provides the user interface for managing attendance.
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM application, run the main function located in health-campaign-field-worker-app/tools/attendance_management_imports.dart.
This will automatically add the necessary imports, mapper initializers, route config, setting initial data, and repository initialization to the required files.
Now make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
Navigate to the project bloc since we need to fetch registers and attendee data after login:
Next, navigate to the line where the project staff search is written, and add the below code in the try-catch where we check the role and fetch attendance data:
Make sure you are on the path apps/health_campaign_field_worker_app
and run the command:
This adds a package route to the main router.gr.dart
By following these steps, you'll successfully integrate and can use attendance module within your application.
Package published :
Link to the Pub Package:
digit_dss is a Flutter package designed to facilitate the seamless integration of dynamic dashboards into your mobile application. This package allows developers to configure and render various types of charts directly from a dashboard configuration, enabling a flexible and customizable approach to data visualization.
Dynamic charts configuration
Support for Metric Charts
Support for Table Charts
DISTRICT_SUPERVISOR
To use this package, add the following dependency to your pubspec.yaml file:
To integrate this package with the HCM Application, run the main function located in health-campaign-field-worker-app/tools/digit_dss_imports.dart.
This will automatically add the necessary imports, mapper initialisers, and repository initialisations to the required files.
Run the build runner command to add routes at your main app level:
This adds a package route to the main router.gr.dart
Install the application and you should have digit_dss
integrated into your base app.
By following these steps, you'll successfully integrate and navigate to the digit_dss dashboard module within your application.
dependencies:
digit_dss: ^latest
flutter packages run build_runner build --delete-conflicting-outputs
Link to the Pub Package:
The showcase widget is a wrapper widget that provides a way to highlight or showcase a widget. It is useful for highlighting a widget in a list of widgets or providing functionality to provide visual help to understand the widget's functionality.
Provides a showcase or highlight of the wrapped widget:
To use the digit_showcase package, add the following dependency to your pubspec.yaml file:
Wrap the top layer of your widget tree with the showcase widget:
Provide localisation for the showcase widget:
Now use .buildWith to build the showcase widget: