Plan Service

Overview

The Plan Service is a solution for managing plan configurations and microplans, enabling the creation, updating, validation, and processing of these plans and their associated components. This service supports data management for microplanning, including resource estimation, activity sequencing, and output generation. It can function as a standalone tool for microplanning or be integrated with HCM Console for campaign execution, monitoring, and reporting.

Pre-requisites

  • Knowledge of SpringBoot.

  • Knowledge of Git or any version control system.

  • Knowledge of RESTful web services.

  • Knowledge of the Kafka and Postgres.

  • Knowledge of eGov-mdms service and eGov-persister will be helpful.

Key Features of Plan Service

1. Data Upload and Configuration

  • Data Upload for Microplanning: Upload population, facility, and census data in formats like .xlsx (Excel), Shapefiles, and GeoJSON. Location coordinates are optional for microplanning.

  • Assumptions Configuration: Set up assumptions for estimation processes, including demographics, resource availability, and operational constraints.

  • Formula Configuration: Define formulas to calculate human resources, commodities, and budgets for accurate planning.

2. Activity and Resource Management

  • Activity Management: Define and manage activity sequences and dependencies for campaign execution.

  • Resource Estimation: Estimate and save the required resources for each activity, ensuring proper planning for materials and personnel.

  • Condition Monitoring: Set and monitor prerequisites for activities, ensuring necessary conditions are met before proceeding.

  • Target Setting and Tracking: Define and track performance metrics to ensure campaign goals are achieved.

  • Output Generation: Generate, save, and print microplans, ensuring comprehensive documentation for the campaign.

3. Employee Assignment

  • Employee Assignment: Assign roles based on hierarchy levels (Province, District, Village) and define employee roles (e.g., PLAN_ESTIMATION_APPROVER).

  • Jurisdiction Mapping: Link employees to specific jurisdictions, clarifying roles and geographical responsibilities.

4. Facility Assignment

  • Facility Assignment and Mapping: Associate facilities with specific plans, linking resources and operations to microplanning requirements.

  • Facility Details and Boundaries: Define facility IDs, residing and service boundaries, and metadata (e.g., facility type, capacity, and operational status).

  • Custom Metadata: Capture detailed information about each facility, such as fixed post status, population served, and resource capacities.

Service Dependencies

  • MDMS service

  • Persister service

  • Census service

  • Facility service

  • Project factory

  • User service

  • Workflow service

Base URL

/plan-service

API Specification

Microplan:

Plan Configuration:

Producer Details

Topic

Description

plan-config-create-topic

Create plan configuration with assumption, operations, uploaded files.

plan-config-update-topic

Updates a plan configuration.

save-plan

Creates a microplan for a locality with provided resources, activities, or targets.

update-plan

Updates a microplan.

Consumer Details

Topic

Description

resource-microplan-create-topic

Triggers microplan creation after resource estimation.

resource-plan-config-update-topic

Updates plan configuration from resource generator service.

Configurations and Helm Chart Details

API EndPoints
Roles

Plan APIs

/plan-service/plan/_create

SYSTEM

/plan-service/plan/_search

ROOT_RESOURCE_ESTIMATION_APPROVER, RESOURCE_ESTIMATION_APPROVER

/plan-service/plan/_update

ROOT_RESOURCE_ESTIMATION_APPROVER, RESOURCE_ESTIMATION_APPROVER

/plan-service/plan/bulk/_update

ROOT_RESOURCE_ESTIMATION_APPROVER, RESOURCE_ESTIMATION_APPROVER

Plan configuration APIs

/plan-service/config/_create

MICROPLAN_ADMIN

/plan-service/config/_search

MICROPLAN_ADMIN

/plan-service/config/_update

MICROPLAN_ADMIN

Plan facility catchment APIs

/plan-service/facility/_create

SYSTEM

/plan-service/facility/_search

ROOT_FACILITY_CATCHMENT_MAPPER, FACILITY_CATCHMENT_MAPPER

/plan-service/facility/_update

ROOT_FACILITY_CATCHMENT_MAPPER, FACILITY_CATCHMENT_MAPPER

Plan employee assignment APIs

/plan-service/employee/_create

MICROPLAN_ADMIN

/plan-service/employee/_search

MICROPLAN_ADMIN

/plan-service/employee/_update

MICROPLAN_ADMIN

Environment Variable Details

Below are the variables that should be configured before deployment of the plan service build image:

  • Add the value of plan service-related environment variables like the way it is done in the unified-uat environment yaml file and unified-health-uat environment yaml file (search for plan-service).

  • Add these ‘db-host’,’db-name’,’db-url’,’domain’, and all the digit core platform services configurations (persister, filestore, etc.) in the respective environments.

  • Make sure to add the DB (Postgres and Fyway) username and password in the respective environment secret yaml file the way it is done here.

  • Make sure to add the DIGIT core services-related secrets that are configured in the respective environment secret file the way it is done here.

  • Localisation details here.

MDMS Details

Configure all the MDMS data for plan service as done in the QA environment. Data to configure:

  • UOM config

  • Metric config

  • Hypothesis’ assumptions config

  • Input rules config

  • Output rules config

  • Campaign Based Schema

  • Microplan status config

  • Map layers config

  • Map filters config

  • Preview Aggregates config

  • UI configs

  • Upload Config

Refer to the following: https://github.com/egovernments/egov-mdms-data/tree/UNIFIED-QA/data/mz/health/hcm-microplanning

Reference Docs

Title

Link

MDMS Technical Document

Persister Technical Document

Census Service Technical Document

Facility Service Technical Document

Facility Service

Project Factory Technical Document

User Service Technical Document

Workflow Service Technical Document

API Contract

Postman Collection

Last updated

All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.