Feature/integration mcnotify
Overview Initial setup and integration of the notification-preferences-service within the Darvest ecosystem. This PR establishes the core service logic, security configurations, and a comprehensive set of endpoints for notification management across all platforms.
Key Technical Changes
Maven & Environment: Configured pom.xml with Feign Client dependencies and setup application.yml/application-local.yml (Keycloak, REST timeouts, and service discovery).
Connectivity: Established microservice communication using ${MC_NOTIFY_URL:http://localhost:3009}.
Implemented Features (Postman Collection validated)
User Management: Endpoints for listing notifications, unread counts, and marketing preferences (Opt-in/Opt-out).
Notification Interactions: Added functionality to mark as read, favorite, archive, and logical deletion.
Notification Triggers: Integrated system events for:
KYC: Approved / Rejected status.
Wallet: Deposits, withdrawals, and insufficient balance alerts.
Support: Ticket replies.
Onboarding: Welcome messages and property updates.
Admin & Push: Implemented broadcast system (ROLE_ADMIN) and Web Push token registration.
Cross-Service Impact This work aligns with the API Gateway routing, KYC Service event publishers, and Frontend Notification Center integration.