Commit Graph
9 Commits
Author SHA1 Message Date
Robert van DiestandClaude Sonnet 4.6 106acedce8 refactor(domain): introduce ReservationFactory for reconstitution
Replace the Reconstitute static method on Reservation with a dedicated
ReservationFactory class. The reconstitution constructor is now internal,
restricting direct instantiation to within the domain assembly while
keeping the factory as the explicit entry point for rehydrating from storage.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-27 16:49:28 +01:00
Robert van DiestandClaude Sonnet 4.6 649c11b21a refactor(persistence): separate storage models from domain entities
Introduce dedicated *Record POCOs (ReservationRecord, UserRecord,
WorkplaceRecord) as EF Core targets, keeping domain entities free of
persistence concerns. Static mapper classes handle conversion between
layers, and repositories track (domain, record) pairs to sync mutations
back before saving. Domain entities gain Reconstitute() factory methods
to bypass validation when rehydrating from storage.

Also fixes GetByEmployeeAsync to exclude past reservations (Date >= today).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-27 16:45:20 +01:00
Robert van Diest 55a72ba55f Don't reseed on non empty database 2026-03-25 20:02:28 +01:00
Robert van Diest 8bf20aa0f2 Fix broken project reference 2026-03-25 19:47:01 +01:00
Robert van Diest 4fcd0d60f4 Add integration tests 2026-03-25 19:44:53 +01:00
Robert van Diest ac37afdcee Move test project to its own directory 2026-03-25 19:33:15 +01:00
Robert van Diest ed293a57be Add unittests 2026-03-25 19:22:25 +01:00
Robert van Diest 3219b3a14d Allow deletion of admins 2026-03-25 19:14:02 +01:00
Robert van Diest 1301a01d6d Initial commit 2026-03-24 20:13:07 +01:00