Health
PlatformDomainAcademyDesign SystemFeedback
v1.0
v1.0
  • Introducing DIGIT Health Platform
    • Roadmap
  • Platform
    • Release Notes
      • Release Checklist
    • Platform Features
    • Architecture
      • Master Data Management Service (MDMS)
      • High Level Design
        • Health Campaign System High Level Design
        • Design Decision Log
      • Low Level Design
        • Registries
          • Individual
          • Household
          • Product
          • Facility
        • Services
          • Project
          • Stock
    • Technical Skillset & Pre-requisites
    • Installation
      • Setup Requirements
      • Supported Clouds
    • Configuration
      • Localisation Keys
    • Development Guide
    • Source Code
    • DHIS2 to DIGIT Integration
      • DHIS2-DIGIT Field Mapping
  • Products
    • Health Campaign Management
      • Frontline Worker's App
        • User Personas
        • Features
        • User Interface Design
          • User Management
          • Complaints Management
          • Supervision Flow
          • Beneficiary Registration
          • Service Delivery
          • Inventory Management
          • User Login
        • HCM App User Manual
          • Language Selection
          • Login
          • Forgot Password
          • Project Selection
          • Beneficiary Registration
          • Delivery Intervention
          • Stock Management
          • Checklist
        • Test Cases
        • Functional Specifications
        • Field App Architecture
        • Installation
          • APK Installation
        • Configuration
          • HCM Configuration
            • Individual Registry
            • Household Registry
            • Product Registry
            • Facility Registry
            • Stock & Inventory
            • Project Services
            • Complaints
              • QA Sign-Off
                • Test Cases
            • User Management
              • QA Sign-Off
          • HCM Master Promotion Guide
        • Release Notes
          • Success Metrics
        • Product Sign-off
        • Architect Sign-off
          • Health UAT API Execution Report
          • Performance Report
        • QA Sign-off
        • Products Requirement Documents (PRDs)
          • User Management
          • Complaints Management
          • Supervision Flow
          • Role Action Mapping
          • Beneficiary Registration
          • Service Delivery
          • Inventory Management
          • User Login
      • Campaign Management Dashboard
        • Features
        • User Stories
        • User Interface Design
        • Dashboard User Manual
        • Test Cases
        • Installation
        • Configuration
          • Dashboard UI Enhancements
          • HCM Dashboard Master Promotion Guide
        • Release Notes
          • UX Audit
          • PM Audit
        • Product Sign-Off
        • Architect Sign-Off
        • QA Sign-Off
        • Product Requirement Document (PRD)
  • Programme
    • Standard Operating Procedures (SOPs) and Plans
      • SOP for Helpdesk Support
      • User Management SOP
        • Master Data Collection Template
          • Boundary Hierarchy
          • Boundary Data Specs
          • System User Setup
          • Facility
          • Product
      • Master Data Management SOP
      • Training Plan
      • Field Test Plan
      • Programme Roll-Out Plan
      • Change Management Strategy
      • UAT Plan
        • UAT 1
          • UAT 1 Test Scenarios
          • UAT Test Cases
            • Registration & Distribution
            • Inventory Flow
            • Supervision
          • User Acceptance Test Report
            • Plan Dates
        • UAT 2
          • UAT 2 SOP
          • UAT 2 Test Scenarios
          • UAT Observations
            • Registration and Distribution
            • Inventory Flow
            • Supervision
            • General Feedback
          • UAT Feedback Form: SUS
          • UAT Feedform Form: Process
    • Monitoring and Evaluation (M&E) Tools
    • Implementation Checklist
    • DIGIT Pre-Training Tutorials
Powered by GitBook

https://creativecommons.org/licenses/by/4.0/

On this page
  • Overview
  • Pre-requisites
  • Functionalities
  • Setup details
  • API details
  • Configuration details

Was this helpful?

Export as PDF
  1. Products
  2. Health Campaign Management
  3. Frontline Worker's App
  4. Configuration
  5. HCM Configuration

Stock & Inventory

Overview

The stock service helps and provides APIs to manage stocks and reconciliation of stocks for the HCM. This document provides the configuration details for setting up the stock service.

Pre-requisites

  • Knowledge of Java/J2EE (preferably Java 8 version).

  • Knowledge of spring boot and spring-boot micro-services.

  • Knowledge of Git or any version control system.

  • Knowledge of RESTful web services.

  • Knowledge of the Lombok library is helpful.

  • Knowledge of eGov-mdms service, eGov-persister, eGov-idgen, eGov-indexer, and eGov-user will be helpful.

Functionalities

  1. Provides APIs to create, update, delete, and search stocks.

  2. Provides APIs to bulk create, bulk update, and bulk delete stocks

  3. Provides APIs to create, update, delete, and search reconciliation for the stocks.

  4. Provides APIs to bulk create, bulk update, and bulk delete reconciliation for the stocks.

Setup details

* In the case of IntelliJ, the plugin can be installed directly. For eclipse, the Lombok jar location has to be added in the eclipse.ini file in this format javaagent:lombok.jar.

API details

Application.properties file information:

Kafka topics persister configs for stock and inventory

stock.consumer.bulk.delete.topic=delete-stock-bulk-topic
stock.consumer.bulk.create.topic=create-stock-bulk-topic
stock.consumer.bulk.update.topic=update-stock-bulk-topic

stock.kafka.create.topic=save-stock-topic
stock.kafka.update.topic=update-stock-topic
stock.kafka.delete.topic=delete-stock-topic

stock.reconciliation.consumer.bulk.delete.topic=delete-stock-reconciliation-bulk-topic
stock.reconciliation.consumer.bulk.create.topic=create-stock-reconciliation-bulk-topic
stock.reconciliation.consumer.bulk.update.topic=update-stock-reconciliation-bulk-topic

stock.reconciliation.kafka.create.topic=save-stock-reconciliation-topic
stock.reconciliation.kafka.update.topic=update-stock-reconciliation-topic
stock.reconciliation.kafka.delete.topic=delete-stock-reconciliation-topic

URLs for the external API references:

Configuration details

Access MDMS configurations

Action test: URL actions adding

{
 "id": 1585,
 "name": "Stock Create",
 "url": "/stock/v1/_create",
 "displayName": "Stock Create",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1586,
 "name": "Stock Update",
 "url": "/stock/v1/_update",
 "displayName": "Stock Update",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1587,
 "name": "Stock Delete",
 "url": "/stock/v1/_delete",
 "displayName": "Stock Delete",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1588,
 "name": "Stock Bulk Create",
 "url": "/stock/v1/bulk/_create",
 "displayName": "Stock Bulk Create",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1589,
 "name": "Stock Bulk Update",
 "url": "/stock/v1/bulk/_update",
 "displayName": "Stock Bulk Update",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1590,
 "name": "Stock Bulk Delete",
 "url": "/stock/v1/bulk/_delete",
 "displayName": "Stock Bulk Delete",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
 "id": 1591,
 "name": "Stock Search",
 "url": "/stock/v1/_search",
 "displayName": "Stock Search",
 "orderNumber": 0,
 "parentModule": "",
 "enabled": false,
 "serviceCode": "stock",
 "code": "null",
 "path": ""
},
{
  "id": 1601,
  "name": "Stock Reconciliation Create",
  "url": "/stock/reconciliation/v1/_create",
  "displayName": "Stock Reconciliation Create",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1602,
  "name": "Stock Reconciliation Update",
  "url": "/stock/reconciliation/v1/_update",
  "displayName": "Stock Reconciliation Update",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1603,
  "name": "Stock Reconciliation Delete",
  "url": "/stock/reconciliation/v1/_delete",
  "displayName": "Stock Reconciliation Delete",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1604,
  "name": "Stock Reconciliation Bulk Create",
  "url": "/stock/reconciliation/v1/bulk/_create",
  "displayName": "Stock Reconciliation Bulk Create",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1605,
  "name": "Stock Reconciliation Bulk Update",
  "url": "/stock/reconciliation/v1/bulk/_update",
  "displayName": "Stock Reconciliation Bulk Update",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1606,
  "name": "Stock Reconciliation Bulk Delete",
  "url": "/stock/reconciliation/v1/bulk/_delete",
  "displayName": "Stock Reconciliation Bulk Delete",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},
{
  "id": 1607,
  "name": "Stock Reconciliation Search",
  "url": "/stock/reconciliation/v1/_search",
  "displayName": "Stock Reconciliation Search",
  "orderNumber": 0,
  "parentModule": "",
  "enabled": false,
  "serviceCode": "stock",
  "code": "null",
  "path": ""
},

Access to role-based actions

{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1585,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1586,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1587,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1588,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1589,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1590,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1591,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1585,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1586,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1587,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1588,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1589,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1590,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1591,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1601,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1602,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1603,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1604,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1605,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1606,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "SYSTEM_ADMINISTRATOR",
 "actionid": 1607,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1601,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1602,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1603,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1604,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1605,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1606,
 "actioncode": "",
 "tenantId": "default"
},
{
 "rolecode": "WAREHOUSE_MANAGER",
 "actionid": 1607,
 "actioncode": "",
 "tenantId": "default"
},

Persister configuration

Indexer configuration

Database schema

Postman collection

PreviousFacility RegistryNextProject Services

Last updated 2 years ago

Was this helpful?

The source code for the is present in the health-campaign-services Git repo. The spring boot application needs the Lombok* extension added to the IDE to load it. Once the application is up and running, the API requests can be posted to the URL and the IDs can be generated.

Refer to the Swagger API for YAML file details:

eGov -user service :-> egov.user.host =

eGov -idGen :-> egov.idgen.host =

eGov -project service :-> egov.project.facility.host =

eGov -product service :-> egov.product.host =

Stock
Stock.yaml
https://health-dev.digit.org/
https://health-dev.digit.org/
https://health-dev.digit.org/
https://health-dev.digit.org/
Action-test.json
Roleaction.json
Stock Persister Yaml
Stock Indexer Yaml
https://www.postman.com/lunar-resonance-126497/workspace/hcm/environment/24751924-61d3084a-c7bf-4591-8b7d-2ec5828d96b1