Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ jobs:
env:
PGDATABASE: farmer_registry
COVERAGE_FILE: ".coverage-farmer"
EXCLUDE: "fastapi,g2p_auth_id_oidc,g2p_auth_oidc,g2p_bank,g2p_bank_rest_api,g2p_change_log,g2p_disable_password_login,g2p_encryption,g2p_encryption_keymanager,g2p_encryption_rest_api,g2p_entitlement_differential,g2p_entitlement_in_kind,g2p_entitlement_voucher,g2p_enumerator,g2p_formio,g2p_mis_importer,g2p_mts,g2p_notifications_base,g2p_notifications_fast2sms,g2p_notifications_voucher,g2p_notifications_wiserv,g2p_odk_importer,g2p_odk_importer_program,g2p_odk_user_mapping,g2p_openid_vci,g2p_openid_vci_programs,g2p_openid_vci_rest_api,g2p_payment_cash,g2p_payment_files,g2p_payment_g2p_connect,g2p_payment_interop_layer,g2p_payment_phee,g2p_payment_simple_mpesa,g2p_portal_auth,g2p_profile_image,g2p_program_approval,g2p_program_assessment,g2p_program_autoenrol,g2p_program_cycleless,g2p_program_documents,g2p_program_registrant_info,g2p_program_reimbursement,g2p_programs,g2p_proxy_means_test,g2p_registry_addl_info,g2p_registry_base,g2p_registry_encryption,g2p_registry_group,g2p_registry_individual,g2p_registry_membership,g2p_registry_rest_api,g2p_service_provider_beneficiary_management,g2p_service_provider_portal_base,g2p_social_registry_importer,g2p_superset_dashboard,g2p_theme,mts_connector,muk_product,muk_web_appsbar,muk_web_chatter,muk_web_colors,muk_web_dialog,muk_web_theme,spp_user_roles,spp_base_spmis,spp_base_social_registry,spp_mis_demo,spp_registrant_import,spp_change_request_add_children_demo,spp_manual_entitlement,spp_change_request_create_group"
EXCLUDE: "fastapi,g2p_auth_id_oidc,g2p_auth_oidc,g2p_bank,g2p_bank_rest_api,g2p_change_log,g2p_disable_password_login,g2p_encryption,g2p_encryption_keymanager,g2p_encryption_rest_api,g2p_entitlement_differential,g2p_entitlement_in_kind,g2p_entitlement_voucher,g2p_enumerator,g2p_formio,g2p_mis_importer,g2p_mts,g2p_notifications_base,g2p_notifications_fast2sms,g2p_notifications_voucher,g2p_notifications_wiserv,g2p_odk_importer,g2p_odk_importer_program,g2p_odk_user_mapping,g2p_openid_vci,g2p_openid_vci_programs,g2p_openid_vci_rest_api,g2p_payment_cash,g2p_payment_files,g2p_payment_g2p_connect,g2p_payment_interop_layer,g2p_payment_phee,g2p_payment_simple_mpesa,g2p_portal_auth,g2p_profile_image,g2p_program_approval,g2p_program_assessment,g2p_program_autoenrol,g2p_program_cycleless,g2p_program_documents,g2p_program_registrant_info,g2p_program_reimbursement,g2p_programs,g2p_proxy_means_test,g2p_registry_addl_info,g2p_registry_base,g2p_registry_encryption,g2p_registry_group,g2p_registry_individual,g2p_registry_membership,g2p_registry_rest_api,g2p_service_provider_beneficiary_management,g2p_service_provider_portal_base,g2p_social_registry_importer,g2p_superset_dashboard,g2p_theme,mts_connector,muk_product,muk_web_appsbar,muk_web_chatter,muk_web_colors,muk_web_dialog,muk_web_theme,spp_user_roles,spp_base_spmis,spp_base_social_registry,spp_mis_demo,spp_registrant_import,spp_change_request_add_children_demo,spp_manual_entitlement,spp_change_request_create_group,spp_base_spmis_demo"
run: oca_run_tests
- name: Initialize social_registry db
env:
Expand All @@ -203,7 +203,7 @@ jobs:
env:
PGDATABASE: social_registry
COVERAGE_FILE: ".coverage-social"
EXCLUDE: "fastapi,g2p_auth_id_oidc,g2p_auth_oidc,g2p_bank,g2p_bank_rest_api,g2p_change_log,g2p_disable_password_login,g2p_encryption,g2p_encryption_keymanager,g2p_encryption_rest_api,g2p_entitlement_differential,g2p_entitlement_in_kind,g2p_entitlement_voucher,g2p_enumerator,g2p_formio,g2p_mis_importer,g2p_mts,g2p_notifications_base,g2p_notifications_fast2sms,g2p_notifications_voucher,g2p_notifications_wiserv,g2p_odk_importer,g2p_odk_importer_program,g2p_odk_user_mapping,g2p_openid_vci,g2p_openid_vci_programs,g2p_openid_vci_rest_api,g2p_payment_cash,g2p_payment_files,g2p_payment_g2p_connect,g2p_payment_interop_layer,g2p_payment_phee,g2p_payment_simple_mpesa,g2p_portal_auth,g2p_profile_image,g2p_program_approval,g2p_program_assessment,g2p_program_autoenrol,g2p_program_cycleless,g2p_program_documents,g2p_program_registrant_info,g2p_program_reimbursement,g2p_programs,g2p_proxy_means_test,g2p_registry_addl_info,g2p_registry_base,g2p_registry_encryption,g2p_registry_group,g2p_registry_individual,g2p_registry_membership,g2p_registry_rest_api,g2p_service_provider_beneficiary_management,g2p_service_provider_portal_base,g2p_social_registry_importer,g2p_superset_dashboard,g2p_theme,mts_connector,muk_product,muk_web_appsbar,muk_web_chatter,muk_web_colors,muk_web_dialog,muk_web_theme,spp_user_roles,spp_change_request_add_farmer,spp_base_farmer_registry,spp_base_spmis,spp_farmer_registry_dashboard,spp_farmer_registry_default_ui,spp_farmer_registry_demo,spp_custom_filter_farmer_registry,spp_registrant_import,spp_manual_entitlement,spp_change_request_create_farm,spp_change_request_edit_farmer,spp_change_request_edit_farm,spp_mis_demo,spp_registrant_import,spp_change_request_add_children_demo,spp_manual_entitlement,spp_change_request_create_group,spp_base_farmer_registry_demo"
EXCLUDE: "fastapi,g2p_auth_id_oidc,g2p_auth_oidc,g2p_bank,g2p_bank_rest_api,g2p_change_log,g2p_disable_password_login,g2p_encryption,g2p_encryption_keymanager,g2p_encryption_rest_api,g2p_entitlement_differential,g2p_entitlement_in_kind,g2p_entitlement_voucher,g2p_enumerator,g2p_formio,g2p_mis_importer,g2p_mts,g2p_notifications_base,g2p_notifications_fast2sms,g2p_notifications_voucher,g2p_notifications_wiserv,g2p_odk_importer,g2p_odk_importer_program,g2p_odk_user_mapping,g2p_openid_vci,g2p_openid_vci_programs,g2p_openid_vci_rest_api,g2p_payment_cash,g2p_payment_files,g2p_payment_g2p_connect,g2p_payment_interop_layer,g2p_payment_phee,g2p_payment_simple_mpesa,g2p_portal_auth,g2p_profile_image,g2p_program_approval,g2p_program_assessment,g2p_program_autoenrol,g2p_program_cycleless,g2p_program_documents,g2p_program_registrant_info,g2p_program_reimbursement,g2p_programs,g2p_proxy_means_test,g2p_registry_addl_info,g2p_registry_base,g2p_registry_encryption,g2p_registry_group,g2p_registry_individual,g2p_registry_membership,g2p_registry_rest_api,g2p_service_provider_beneficiary_management,g2p_service_provider_portal_base,g2p_social_registry_importer,g2p_superset_dashboard,g2p_theme,mts_connector,muk_product,muk_web_appsbar,muk_web_chatter,muk_web_colors,muk_web_dialog,muk_web_theme,spp_user_roles,spp_change_request_add_farmer,spp_base_farmer_registry,spp_base_spmis,spp_farmer_registry_dashboard,spp_farmer_registry_default_ui,spp_farmer_registry_demo,spp_custom_filter_farmer_registry,spp_registrant_import,spp_manual_entitlement,spp_change_request_create_farm,spp_change_request_edit_farmer,spp_change_request_edit_farm,spp_mis_demo,spp_registrant_import,spp_change_request_add_children_demo,spp_manual_entitlement,spp_change_request_create_group,spp_base_farmer_registry_demo,spp_base_spmis_demo"
run: oca_run_tests
- name: Combine coverage data
run: coverage combine .coverage-mis .coverage-farmer .coverage-social
Expand Down
2 changes: 1 addition & 1 deletion spp_base_farmer_registry_demo/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"license": "LGPL-3",
"development_status": "Production/Stable",
"external_dependencies": {"python": ["faker"]},
"maintainers": ["jeremi", "gonzalesedwin1123", "reichie020212"],
"maintainers": ["jeremi", "gonzalesedwin1123", "emjay0921"],
"depends": [
"base",
"g2p_registry_base",
Expand Down
162 changes: 162 additions & 0 deletions spp_base_spmis_demo/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
============================
OpenSPP SPMIS Demo
============================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:eccedea606c9a761d0cbd0031d2cb447564601925a78c0afd042d1bc7037897e
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OpenSPP%2Fopenspp--modules-lightgray.png?logo=github
:target: https://github.com/OpenSPP/openspp-modules/tree/17.0/spp_base_spmis_demo
:alt: OpenSPP/openspp-modules

|badge1| |badge2| |badge3|

OpenSPP SPMIS Demo
============================

Overview
--------

The `spp_base_spmis_demo <spp_base_spmis_demo>`__ module is a
demonstration module for OpenSPP that provides pre-populated data for
the SPMIS base registry. It builds upon the
`spp_base_spmis <spp_base_spmis>`__ module and its
dependencies to showcase the functionalities of the SPMIS registry with
realistic sample data.

Purpose
-------

This module aims to:

- Populate the SPMIS registry with sample data, including registrants,
groups, and social protection information.
- Provide a starting point for users to explore the SPMIS registry and
its various features.
- Demonstrate how different modules, such as
`g2p_registry_membership <g2p_registry_membership>`__,
`queue_job <queue_job>`__, and `spp_base_demo <spp_base_demo>`__,
integrate to create a comprehensive SPMIS system.

Module Dependencies and Integration
-----------------------------------

- `spp_base_spmis <spp_base_spmis>`__\ **:** This
module depends heavily on
`spp_base_spmis <spp_base_spmis>`__, inheriting
its models and views to extend them with demo data generation
capabilities.
- `g2p_registry_membership <g2p_registry_membership>`__\ **:**
Leverages `g2p_registry_membership <g2p_registry_membership>`__ for
creating group memberships between individual registrants and groups.
- `queue_job <queue_job>`__\ **:** Uses `queue_job <queue_job>`__ to
handle the generation of large datasets in the background, improving
performance and user experience.
- `g2p_registry_base <g2p_registry_base>`__\ **:** Depends on
`g2p_registry_base <g2p_registry_base>`__ for the basic registrant
models and functionalities.
- `g2p_registry_group <g2p_registry_group>`__\ **:** Uses
`g2p_registry_group <g2p_registry_group>`__ for creating and managing
groups as registrants.
- `spp_base_demo <spp_base_demo>`__\ **:** Inherits from
`spp_base_demo <spp_base_demo>`__ to include basic demo data, such as
genders.
- `g2p_registry_individual <g2p_registry_individual>`__\ **:** Utilizes
`g2p_registry_individual <g2p_registry_individual>`__ for creating
individual registrants.

Additional Functionality
------------------------

The `spp_base_spmis_demo <spp_base_spmis_demo>`__ module
introduces the following key functionalities:

- **Sample Data Generation:** The module includes capabilities for
generating sample SPMIS data. This allows users to specify:

- The number of groups to generate.
- The locale for generating realistic data based on specific
regions.
- Once the data generation is triggered, the module creates a queue
job that populates the database with realistic SPMIS data,
including:

- Groups: Groups of registrants with detailed information like
family name, national ID, contact details, and education level.
- Individual Registrants: Members of groups with personal
information and links to their respective groups.
- Social Protection Data: Comprehensive information about
registrants' social protection status and program participation.

- **Data Realism:** The module utilizes external libraries like
``faker`` to generate realistic and region-specific data for names,
contact details, and other attributes. This ensures that the sample
data reflects real-world scenarios.

Conclusion
----------

The `spp_base_spmis_demo <spp_base_spmis_demo>`__ module
provides a valuable tool for understanding and demonstrating the
functionalities of the OpenSPP SPMIS system. By populating the
database with realistic sample data, it allows users to explore the
system, understand its data structures, and test its various features
without having to manually create large datasets. This module simplifies
the process of getting started with OpenSPP and showcases the platform's
capabilities for managing comprehensive and detailed SPMIS registries.

**Table of contents**

.. contents::
:local:

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OpenSPP/openspp-modules/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OpenSPP/openspp-modules/issues/new?body=module:%20spp_base_spmis_demo%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* OpenSPP.org

Maintainers
-----------

.. |maintainer-jeremi| image:: https://github.com/jeremi.png?size=40px
:target: https://github.com/jeremi
:alt: jeremi
.. |maintainer-gonzalesedwin1123| image:: https://github.com/gonzalesedwin1123.png?size=40px
:target: https://github.com/gonzalesedwin1123
:alt: gonzalesedwin1123
.. |maintainer-reichie020212| image:: https://github.com/reichie020212.png?size=40px
:target: https://github.com/reichie020212
:alt: reichie020212

Current maintainers:

|maintainer-jeremi| |maintainer-gonzalesedwin1123| |maintainer-reichie020212|

This module is part of the `OpenSPP/openspp-modules <https://github.com/OpenSPP/openspp-modules/tree/17.0/spp_base_spmis_demo>`_ project on GitHub.

You are welcome to contribute.

1 change: 1 addition & 0 deletions spp_base_spmis_demo/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Part of OpenSPP. See LICENSE file for full copyright and licensing details.
36 changes: 36 additions & 0 deletions spp_base_spmis_demo/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Part of OpenSPP. See LICENSE file for full copyright and licensing details.


{
"name": "OpenSPP SPMIS Demo",
"summary": "Generates and populates the OpenSPP SPMIS Base with comprehensive, realistic sample data. It integrates with core registry models to provide diverse registrant profiles and social protection data, facilitating system exploration, training, and testing.",
"category": "OpenSPP",
"version": "17.0.1.3.1",
"sequence": 1,
"author": "OpenSPP.org",
"website": "https://github.com/OpenSPP/openspp-modules",
"license": "LGPL-3",
"development_status": "Production/Stable",
"external_dependencies": {"python": ["faker"]},
"maintainers": ["jeremi", "gonzalesedwin1123", "emjay0921"],
"depends": [
"base",
"g2p_registry_base",
"spp_base_spmis",
"spp_demo_common",
"queue_job",
],
"excludes": [
"spp_base_farmer_registry",
"spp_base_social_registry",
],
"data": [
"security/ir.model.access.csv",
],
"assets": {},
"demo": [],
"images": [],
"application": True,
"installable": True,
"auto_install": False,
}
1 change: 1 addition & 0 deletions spp_base_spmis_demo/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Part of OpenSPP. See LICENSE file for full copyright and licensing details.
3 changes: 3 additions & 0 deletions spp_base_spmis_demo/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[build-system]
requires = ["whool"]
build-backend = "whool.buildapi"
1 change: 1 addition & 0 deletions spp_base_spmis_demo/security/ir.model.access.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
Binary file added spp_base_spmis_demo/static/description/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions spp_base_spmis_demo/tests/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Part of OpenSPP. See LICENSE file for full copyright and licensing details.
Loading