Health
PlatformDomainAcademyDesign SystemFeedback
v1.5
v1.5
  • 👋Introducing Health
    • Release Notes
      • HCM v1.5 Release Notes
        • Migration from v1.4 to v1.5
        • Service Build Updates
        • Release Checklist
      • HCM v1.4 Release Notes
        • Migration from v1.3 to v1.4
        • Service Build Updates
        • Release Checklist
      • v1.3 Release Notes
      • v1.3 Tech Release Summary
        • Master Data Management Service (MDMS) & Configuration Updates
        • Test Cases
        • Service Build Updates
      • v1.2 Release Notes
      • v1.0 Release Notes
  • Product Roadmap
  • 💙HEALTH CAMPAIGN MANAGEMENT
    • Understanding Health Campaign Management (HCM)
    • Value Proposition
  • 🎯HCM PRODUCT SUITE
    • Functional Specifications
      • Campaign Type Setup
      • Campaign Setup
      • Inventory
      • Boundary Hierarchy
      • Beneficiary
      • Boundary Data Specs
      • Draft System User Setup
      • Role Action Mapping
    • Building Blocks & Services
    • Health Products
      • DIGIT HCM App
        • User Manual
          • Single Round Campaigns
            • Registration & Delivery
              • Registration & Delivery: IRS
                • Product Requirement Document
          • Multi-Round Campaigns
            • Registration & Delivery
            • Download Beneficiary Data
          • Common Functions
            • User Management
            • 2D Voucher Scanning
            • Proximity-Based Search
            • Voucher-Based Registration and Distribution
            • Tracking Beneficiary Referrals
            • Tracking Side-Effects for Beneficiaries
            • Tracking Adverse Events
            • Health Facility Referral
            • Raising Complaints
            • Resolving Complaints
            • Inventory Management
              • User Manual
                • Stock Management
                • Stock Reconciliation
                • View Reports
                • Bale Scanning
            • Attendance Management
          • Support Functions
            • Language Selection
            • Login
            • Forgot Password
            • Project Selection
            • Hamburger Menu
            • Help
            • Sync
            • Checklist
      • Campaign Management Dashboard
        • User Manual
        • Configurations
          • MDMS Configurations and s3 assets
          • IRS Dashboard Chart Configurations
        • Kibana Dashboard Integration With DSS Module
          • Auth Proxy Setup and Configuration for Kibana
      • Microplanning
      • HCM Console
  • 🚀REFERENCE IMPLEMENTATIONs
    • Mozambique
      • LLIN Overview
      • Customisation
      • Rollout
  • 🧰TECHNOLOGY
    • Architecture
      • High Level Design
        • Health Campaign System High Level Design
        • Design Decision Log
      • Low Level Design
        • Registries
          • Individual
          • Household
          • Product
          • Facility
          • Attendance
        • Services
          • Project
          • Stock
          • Referral
      • Field App Architecture
        • UI Packages
          • Closed HouseHold package
          • Registration & Delivery Package
          • Referral Reconciliation Package
          • Inventory Management Package
          • Attendance Management Package
          • DIGIT Scanner Package
          • Digit Showcase Package
          • Digit Data Model Package
          • DIGIT DSS Package
    • Standards
    • Security
    • Interoperability
  • 🪝SETUP
    • Planning an HCM Implementation
    • Establish Project & Team
    • Gathering Requirements
    • Installation
      • Install Using GitHub Actions in AWS
      • System Data Setup
      • Project Data Setup
      • Setup Mobile App
      • Setup Kibana Dashboard
        • Create or Edit Existing Dashboards
      • Server Cleanup
    • Configuration
      • Configuring HCM to Campaign and Country Needs
      • Service Configuration
        • Individual Registry
        • Household Registry
        • Product Registry
        • Facility Registry
        • Stock & Inventory
        • Project Services
        • Referral Management
        • Attendance
        • Complaints
          • QA Sign-Off
            • Test Cases
        • User Management
          • QA Sign-Off
      • UI Configuration
        • Stock Management
        • Language Selection
        • Login
        • Forgot Password
        • Project Selection
        • Dashboard Configuration
          • Dashboard UI Enhancements
          • HCM Dashboard Master Promotion Guide
        • Attendance Management
          • Attendance Package Extraction and Interaction with HCM Application
    • Quality Assurance Testing
      • Regression Test cases
  • 🔵COMMUNITY
    • Source Code
    • Committee
      • Digital Product Advisory Committee Charter
      • Idea Management Process
      • Sessions
        • November 2023 Session
        • August 2024 Session
          • Minutes of the Meeting
Powered by GitBook

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

On this page
  • Overview
  • Key Functionalities
  • Setup Details
  • API Details
  • Configuration Details
  • Configuration Details
  • Persister Configuration
  • Indexer Configuration
  • Postman Collection

Was this helpful?

Export as PDF
  1. SETUP
  2. Configuration
  3. Service Configuration

Complaints

Overview

Complaint Management is a system that enables employees to raise complaints related to health campaigns. An employee can track the complaint, upload image related to the complaint, and re-open the complaint if he/she is not satisfied and rate the service. This document contains the details about how to set up the complaints module (pgr-service), and describes the functionalities it provides.

Pre-requisites

Before you proceed with the configuration, make sure the following pre-requisites are met:

  • Java 8.

  • Kafka server is up and running.

  • egov-persister service is running and has pgr-services persister config path added in it.

  • PSQL server is running and database is created to store complaint data.

  • (Optional) Indexer config for pgr-services is added in egov-indexer yaml paths to index. the generated data. The index are required for data visualisation in Kibana or in DSS.

  • (Optional) Report config for pgr-services is added in Report service config paths. Required if reports are to be provided to the user.

  • Following services should be up and running:

    • egov-user

    • egov-workflow-v2

    • egov-perister

    • egov-localization

    • egov-notification-sms

    • egov-mdms

    • egov-idgen

    • egov-url-shortening

    • egov-hrms

Key Functionalities

  • Citizen/employee can file, track and rate the complaint.

  • Citizen/employee can add image and comments related to the complaint.

  • Citizen/employee can re-open the complaint in certain given period of time after resolution.

  • Campaign supervisors can setup the complaint workflow according to their requirements and staff capacity.

  • Can track the SLA for resolving each complaint and can use it as a metric to streamline the process for resolving complaints.

  • Department-wise assignment of the complaint to the LME.

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 for eGov persister

pgr.kafka.create.topic=save-pgr-request
pgr.kafka.update.topic=update-pgr-request

Configuration Details

  1. Add the master data in MDMS service with module name as RAINMAKER-PGR. Following is a sample master data for the service:

{
  "tenantId": "default",
  "moduleName": "RAINMAKER-PGR",
  "ServiceDefs": [
    {
      "serviceCode": "SyncNotWorking",
      "name": "Sync Not Working",
      "keywords": "sync, not, working",
      "department": "TECH",
      "slaHours": 336,
      "menuPath": "Sync",
      "active": true,
      "order": 1
    },
    {
      "serviceCode": "NotEnoughStock",
      "name": "Not Enough Stock",
      "keywords": "not, enough, stock",
      "department": "WAREHOUSE",
      "slaHours": 336,
      "menuPath": "Sync",
      "active": true,
      "order": 1
    },
    {
      "serviceCode": "Other",
      "name": "Other",
      "keywords": "other",
      "department": "ADM",
      "slaHours": 336,
      "menuPath": "Sync",
      "active": true,
      "order": 1
    }
  ]
}
  1. Create businessService (workflow configuration) using the /businessservice/_create. Following is the product configuration for PGR:

{
  "RequestInfo": {
    "apiId": "Rainmaker",
    "action": "",
    "did": 1,
    "key": "",
    "msgId": "20170310130900|en_IN",
    "requesterId": "",
    "ts": 1513579888683,
    "ver": ".01",
    "authToken": "{{devAuth}}",
    "userInfo": {
      "id": 73,
      "userName": null,
      "name": null,
      "type": "EMPLOYEE",
      "mobileNumber": null,
      "emailId": null,
      "roles": [
        {
          "id": 2,
          "name": "Customer Support Representative",
          "code": null,
          "tenantId": null
        }
      ],
      "tenantId": null,
      "uuid": "uuid"
    }
  },
  "BusinessServices": [
   {
    "tenantId": "default",
    "businessService": "PGR",
    "business": "pgr-services",
    "businessServiceSla": 432000000,
    "states": [
      {
        "sla": null,
        "state": null,
        "applicationStatus": null,
        "docUploadRequired": false,
        "isStartState": true,
        "isTerminateState": false,
        "isStateUpdatable": true,
        "actions": [
          {
            "action": "CREATE",
            "nextState": "PENDING_ASSIGNMENT",
            "roles": [
              "REGISTRAR",
              "DISTRIBUTOR",
              "WAREHOUSE_MANAGER",
              "HELPDESK_USER",
              "SYSTEM_ADMINISTRATOR"
            ]
          }
        ]
      },
      {
        "sla": null,
        "state": "PENDING_ASSIGNMENT",
        "applicationStatus": "PENDING_ASSIGNMENT",
        "docUploadRequired": false,
        "isStartState": false,
        "isTerminateState": false,
        "isStateUpdatable": false,
        "actions": [
          {
            "action": "RESOLVE",
            "nextState": "RESOLVED",
            "roles": [
              "HELPDESK_USER",
              "L2_SUPPORT",
              "SYSTEM_ADMINISTRATOR"
            ]
          },
          {
            "action": "ASSIGN",
            "nextState": "PENDING_ASSIGNMENT",
            "roles": [
              "HELPDESK_USER",
              "L2_SUPPORT",
              "SYSTEM_ADMINISTRATOR"
            ]
          },
          {
            "action": "REJECT",
            "nextState": "REJECTED",
            "roles": [
              "HELPDESK_USER",
              "SYSTEM_ADMINISTRATOR"
            ]
          }
        ]
      },
      {
        "sla": null,
        "state": "RESOLVED",
        "applicationStatus": "RESOLVED",
        "isStateUpdatable": false,
        "docUploadRequired": false,
        "isStartState": false,
        "isTerminateState": true
      },
      {
        "sla": null,
        "state": "REJECTED",
        "applicationStatus": "REJECTED",
        "isStateUpdatable": false,
        "docUploadRequired": false,
        "isStartState": false,
        "isTerminateState": true
      }
    ]
  }
  ]
}

Configuration Details

Action test: URL actions adding

{
  {
      "id": {{ID_PLACEHOLDER}},
      "name": "Create PGR Request",
      "url": "/pgr-services/v2/request/_create",
      "parentModule": "",
      "displayName": "Create PGR Request",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "pgr-services",
      "code": "null",
      "path": ""
    },
    {
      "id": {{ID_PLACEHOLDER}},
      "name": "Update PGR Request",
      "url": "/pgr-services/v2/request/_update",
      "parentModule": "",
      "displayName": "Update PGR Request",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "pgr-services",
      "code": "null",
      "path": ""
    },
    {
      "id": {{ID_PLACEHOLDER}},
      "name": "Search PGR Request",
      "url": "/pgr-services/v2/request/_search",
      "parentModule": "",
      "displayName": "Search PGR Request",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "pgr-services",
      "code": "null",
      "path": ""
    },
    {
      "id": {{ID_PLACEHOLDER}},
      "name": "Search PGR Request",
      "url": "/pgr-services/v2/request/_count",
      "parentModule": "",
      "displayName": "Count PGR Request",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "pgr-services",
      "code": "null",
      "path": ""
    }

Persister Configuration

Indexer Configuration

Postman Collection

PreviousAttendanceNextQA Sign-Off

Was this helpful?

The source code for (pgr-service) 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:

Note: Complaints module is digits pgr-services. Refer to doc for more information

🪝
Complaints
Complaints.yaml
Action-test.json
Complaints Persister Config
Complaints Indexer Config
Click here
this