1. Architecture Overview

Architecture Type: Three-tier (Controller → Service → Repository)
Multi-Tenant Isolation: providerServiceMapID scoping ensures data separation between providers and states
Session Management: Redis with JWT authentication
Soft Deletion Pattern: deleted flags used across entities for safe deletion
Current System ER Diagram: 








2. Core Entity Relationships

2.1 User Management Structure

Primary User Entity: M_User1

AttributeDescription
Basic profilefirstName, lastName, username, etc.
DesignationSingle designation per user
Demographics & LanguagesLinked via one-to-one relationships
Supervisor/Admin flagsSupports role-specific behavior

User-Service-Role Mapping: M_UserServiceRoleMapping2

FeatureDescription
Multi-role supportAssign multiple roles to a single user
Facility assignmentUses workingLocationID
Multi-village coverageStored as comma-separated villageidDb
Multi-tenant scopeScoped by providerServiceMapID

2.2 Multi-Tenant Provider Structure

Provider Service Mapping: M_ProviderServiceMapping

Geographic Hierarchy

State → District → Block → Village


3. User Creation and Management Flow

Creation Hierarchy:

  1. Provider Creation – Setup healthcare organization

  2. Provider-Service-State Mapping – Define operational scope

  3. User Creation – Basic profile in M_User1

  4. Role Assignment – Map users to services and facilities

Step-by-Step Process:

StepDescription
Step 1: Basic ProfilePersonal details, credentials, designation. Endpoint: /m/AddEmployee
Step 2: Demographics & AddressFamily info, present/permanent addresses, geographic mapping
Step 3: Language CapabilitiesMultiple languages with read/write/speak proficiency
Step 4: Role & Service AssignmentsMulti-role assignments, facility via workingLocationID, village coverage

4. Facility Management

4.1 Facility Structure

Entity: M_Facility

FeatureDescription
HierarchyTwo levels: Main Store / Sub Store
TypeInventory-focused via M_facilitytype
LocationBasic address info

4.2 Main/Sub Store Logic

Facility TypePurposeParent FacilityMapping
Main StoreCentral inventory hub, MMU parkingNone (mainFacilityID = null)Parking place assignment
Sub StoreDistribution point, MMU unitPoints to Main StoreVan assignment

UI Implications:

4.3 Healthcare Facility Hierarchy Integration

Current LogicHealthcare Logic
Main Store / Sub StoreDH → CHC → PHC → SC
Inventory focusHealthcare service focus



5. Geographic & Village Management


6. Role and Permission System


7. Services and UI Components NOT Affected

7.1 MMU/Van Services:

7.2 Inventory Management:

7.3 User Management:

7.4 Facility Types:

7.5 File Upload Systems:

Note: Healthcare fields are additive and nullable; zero disruption to current system.


8. User & Entity Mapping Architecture

Central Junction Table: M_UserServiceRoleMapping2

ColumnPurpose
userIDLinks to M_User1 profile
providerServiceMapIDProvider-Service-State mapping
workingLocationIDFacility assignment
roleIDUser role
blockIDGeographic block
villageidDbComma-separated villages

Connection Examples:

Data Flow Summary:


9. Multi-Role Assignment Architecture

Role TypeContext
Clinical (Doctor/Nurse)Facilities via workingLocationID, multiple roles, screen access via RoleScreenMapping
Field (ASHA/ANM)Subcenters, multi-village coverage (villageidDb)
Administrative (Supervisor)Multiple service lines, optional CTI integration

Key Features:

Note: Junction table pattern enables complex multi-role assignments; audit trails and soft deletion supported


10. Summary

The PSMRI/Admin-API provides: Comprehensive user and role management Geographic and service-line isolation Support for multi-village field workers and MMU operations Scalable three-tier architecture with audit trails Additive healthcare facility hierarchy without affecting existing systems



11. Proposed New Implementation – Healthcare Facility Hierarchy (To-Be)


11.1 Purpose of the New Implementation

The existing facility model is optimized for inventory and MMU operations using a Main Store / Sub Store structure.
However, healthcare delivery requires a clinical hierarchy aligned with public health systems.

This new implementation introduces a healthcare-focused hierarchy to support:


11.2 Design Principle

Separation of Concerns

AspectCurrent SystemNew Implementation
Hierarchy TypeInventory hierarchyHealthcare hierarchy
Primary GoalStock & MMU managementClinical & service delivery
Impact on Existing Logic❌ No impact
Data ModelM_Facility (store-based)New hierarchy layer
Backward Compatibility✅ Fully preserved

11.3 Enhanced M_Facility Entity (Additive Only)

The existing M_Facility table is extended, not modified.

Newly Added Nullable Fields

Why This Works

storeType and healthcareLevel operate independently


11.4 Hierarchy Coexistence Model

Both hierarchies exist in parallel, serving different purposes.

Inventory Logic (Existing)Healthcare Logic (New)
Main StoreDistrict Hospital (DH)
Sub StoreCHC / PHC / SC
Van & MMU focusReferral & care delivery
Stock flowPatient/service flow

11.5 API Enhancements (Non-Breaking)

Extended / New APIs

Important Note


11.7 UI Enhancements (Proposed)

Facility Creation Screen

Current UI

New UI (Additive)

Inventory UI behavior remains unchanged.


11.8 What Is NOT Changing (Reconfirmed)

The following remain 100% untouched: