Service Layer medium complexity backend
1
Dependencies
2
Dependents
9
Entities
0
Integrations

Description

Backend service handling CRUD operations for organization-level settings including contact details, logo management, and feature toggle flags stored as JSONB. Validates toggle configurations against a known schema to prevent invalid states and exposes endpoints consumed by both the admin panel and the mobile app at login time.

Feature: Organization Settings & Terminology Configuration

organization-settings-service

Responsibilities

  • Retrieve and update organization settings and feature toggle flags
  • Validate JSONB feature flag payloads against the known settings schema
  • Manage logo asset upload and storage reference
  • Serve organization settings to mobile clients at login and organization-switch events

Interfaces

getOrganizationSettings(orgId)
updateOrganizationSettings(orgId, payload)
getFeatureToggles(orgId)
updateFeatureToggles(orgId, toggles)
validateToggleSchema(toggles)
uploadOrganizationLogo(orgId, file)
deleteOrganizationLogo(orgId)
getSettingsForMobileClient(orgId)

Relationships

Dependencies (1)

Components this component depends on

Dependents (2)

Components that depend on this component

Sub-Components (1)

Organization Labels Provider
component low

Riverpod provider on the Flutter side that manages the labels state map loaded at login. Exposes a resolve helper method that maps label keys to localized strings for the active organization, with cache invalidation on organization switch.

  • Load label map from backend at login and organization-switch
  • Expose resolveLabelKey() helper for all UI widgets
  • Invalidate and refresh cache on organization switch