Data Model: hbf-notifications
Domain objects used by this service. Full schemas:
docs/domain-model.md
Objects This Service Uses
| Object | Access | Key Fields Used |
|---|---|---|
| Organization | reads via hbf-core-api | id, displayName |
Local Entities
| Entity | Table | DB | Key Fields |
|---|---|---|---|
| Notification | notification | MySQL | id (auto), userId, organizationId, message, notificationType (enum), navLink, iconUrl, createdDate, updatedDate |
| NotificationReadDetails | notification_read_details | MySQL | id (auto), userId, notification (FK, CASCADE), createdDate, updatedDate |
Key Constraints
IDX_userId_organizationIdindex on Notification(userId, organizationId).IDX_notification_userIdindex on NotificationReadDetails(notification, userId).- Unique constraint on NotificationReadDetails(userId, notification) prevents duplicate read records.
Notes
- Minimal interaction with hbf-core. Only reads Organization for context.
- Notification and NotificationReadDetails inherit from a shared AbstractEntity base class that provides id, createdDate, and updatedDate.
- NotificationReadDetails tracks per-user read status for each notification.
- Uses hbf-core-api
HBFCoreApiclient for Organization lookup.