Skip to main content

Organization Events and Integrations

Summary

Employee Service maps significant employee aggregate changes to shared integration-event contracts through a transactional outbox. Dedicated department/designation master-data events and confirmed downstream consumers for organization reassignment were not found.

Audience

  • Implementation partners
  • Developers, QA engineers, DevOps engineers, and solution architects

Purpose

This inventory distinguishes events that exist from integrations that are proven to consume them.

Architecture

Reference Content

EventProducerConfirmed purposeConfirmed consumerStatus
EmployeeCreatedEmployee aggregate / Employee Service outboxAnnounce a new employee with organization contextNotification resolverImplemented
EmployeeUpdatedEmployee aggregate / outboxAnnounce core employee changes including organization referencesNone confirmed in reviewed sourceFoundation
DepartmentChangedEmployee department-change command / outboxAnnounce previous and new department referencesNone confirmed in reviewed sourceFoundation
ManagerChangedEmployee manager-change command / outboxAnnounce previous and new manager referencesNone confirmed in reviewed sourceFoundation
EmploymentStatusChangedEmployee status command / outboxAnnounce workforce status and current organization contextNone confirmed in reviewed sourceFoundation
EmployeeDeletedEmployee soft-delete behavior / outboxAnnounce employee removal/termination contextNone confirmed in reviewed sourceFoundation
EmployeeTimelineEventRecordedEmployee timeline behavior / outboxAnnounce an externally or internally recorded lifecycle entryNone confirmed in reviewed sourceFoundation
Department/designation master changedNo dedicated contract confirmedMaster-data synchronizationNot implementedNot implemented

Business concepts

The persistence context translates queued domain events to versioned shared contracts and writes them to the outbox in the same save operation. Publication occurs separately, so request success is not equivalent to confirmed downstream processing.

Consumers should use event identity/idempotency handling where implemented by their messaging foundation. Reviewed organization source proves unique event identity and outbox retry state, but it does not prove idempotent processing in every potential consumer.

Technical implementation

Compatibility and monolith paths may continue to share data or invoke direct controllers without emitting the same extracted-service events. This is Transitional. Read-model refresh, reporting projection, approval reassignment, and downstream notification after organization changes all Require confirmation unless a specific consumer is added and verified.

Source References

  • microservices/src/employee-service/Domain/Employees/Employee.cs
  • microservices/src/employee-service/Infrastructure/EmployeeDbContext.cs
  • microservices/src/employee-service/Infrastructure/Persistence.cs
  • microservices/src/contracts/Events/EmployeeCreatedEvent.cs
  • microservices/src/contracts/Events/EmployeeUpdatedEvent.cs
  • microservices/src/contracts/Events/DepartmentChangedEvent.cs
  • microservices/src/contracts/Events/ManagerChangedEvent.cs
  • microservices/src/contracts/Events/EmploymentStatusChangedEvent.cs
  • microservices/src/notification-service/Application/EventNotificationResolver.cs
  • microservices/src/shared-kernel/Outbox/

See Also

Keywords

  • Employee integration event
  • Transactional outbox
  • Downstream consumer

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly