Implement database-backed notification settings that persist across restarts:
Backend changes:
- Updated DashboardService to read/write notification settings from database
- Added 6 notification settings keys to dbSettingsMap:
* enable_email_notifications (boolean)
* enable_push_notifications (boolean)
* admin_notifications (boolean)
* error_alerts (boolean)
* new_user_alerts (boolean)
* system_health_alerts (boolean)
- Settings are now retrieved from database with fallback defaults
Database:
- Seeded 6 default notification settings in settings table
- All notification toggles default to 'true'
- Settings persist across server restarts
Frontend:
- Admin settings page at /settings already configured
- Notifications tab contains all 6 toggle switches
- Settings are loaded from GET /api/v1/admin/dashboard/settings
- Settings are saved via POST /api/v1/admin/dashboard/settings
API Endpoints (already existed, now enhanced):
- GET /api/v1/admin/dashboard/settings - Returns all settings including notifications
- POST /api/v1/admin/dashboard/settings - Persists notification settings to database
Files modified:
- maternal-app-backend/src/modules/admin/dashboard/dashboard.service.ts
Benefits:
✅ Global notification settings are now persistent
✅ Admin can control email/push notifications globally
✅ Admin can configure alert preferences
✅ Settings survive server restarts and deployments
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>