wg-verwaltung/backend
bernd a6fb15cd41 Add tenant move-out with permanent archive instead of deletion
Landlords can now remove a tenant from their room via a "Mieter
ausziehen lassen" button on the contract card. This never deletes
anything: POST /contracts/:id/move-out sets Contract.isActive=false
(with an endDate), frees the room (User.roomId=null,
Room.status=VACANT) so it can be re-assigned via the existing invite
flow, and leaves the contract row — along with every linked payment,
ticket, rating, handover protocol, and contract document — untouched
and permanently queryable.

GET /contracts/documents now only lists active contracts; the new
GET /contracts/archive (landlord/admin only) lists deactivated ones,
rendered in a new "Archiv — ausgezogene Mieter" section on the
Verträge-page with their historical documents still downloadable.
2026-08-13 10:59:16 +00:00
..
prisma Seed: skip if DB already has data instead of wiping it 2026-08-13 07:18:13 +00:00
scripts Add Homematic IP smart lock integration (Access Point + App setup) 2026-08-13 08:21:19 +00:00
src Add tenant move-out with permanent archive instead of deletion 2026-08-13 10:59:16 +00:00
Dockerfile add backend/Dockerfile 2026-08-12 16:26:09 +00:00
package-lock.json Add 1-click PDF export for tickets (craftsman handoff) 2026-08-13 07:27:01 +00:00
package.json Sync trash calendar from official Nackenheim/KAW waste collection API 2026-08-13 08:58:21 +00:00
tsconfig.json add backend/tsconfig.json 2026-08-12 16:26:09 +00:00