Skip to main content

Shift Assignment

Audience

Developers, QA engineers, support engineers, security engineers, solution architects, and implementation partners.

Reference Content

This page records source-verified technical behavior and boundaries for the workforce-scheduling capability.

Summary

An assignment links one tenant employee record to one shift for an inclusive date interval. The end date is optional, making the assignment open-ended. Active state is independent of the date range.

Invariants and behavior

Employee, shift, and tenant identifiers must be positive. An end date cannot precede its start. Domain methods support setting a related user, ending a range, deactivation, and overlap checks.

The exposed command creates assignments only. No verified command edits, ends, reactivates, or deactivates a single assignment. Queries list assignments, optionally for one employee, and enrich them with shift names.

Concurrency limitation

Overlap prevention is a read-before-write application check. The persistence model has lookup indexes but no exclusion or uniqueness constraint for date-range overlap.

Source References

  • microservices/src/attendance-service/Domain/TimeOffice/EmployeeShiftAssignment.cs
  • microservices/src/attendance-service/Application/Services/ShiftPolicyCommands.cs
  • microservices/src/attendance-service/Application/Services/ShiftPolicyQueries.cs

See Also

Keywords

  • Workforce scheduling
  • Shift policy
  • Attendance integration

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-20
  • Next review: 2026-10-20