leistungsbilanz-ts/src/domain/models
Grovy311 cd89c4a499 Add buildings above floors and a building structure page
Projects with several buildings could not be structured: floors and rooms
hung directly off the project. Floors can now belong to a building
(migration 0009: table buildings, nullable floors.building_id). Rooms and
distribution boards keep their floor; their building follows from it.
Existing floors stay without a building.

Buildings use the location-structure command store with
project-building.insert/.update/.delete, inverses and persistent Undo/Redo;
deleting a building with assigned floors is rejected. Floor commands carry
buildingId since command version 2. Version 1 floor commands from existing
history predate buildings and are upgraded with buildingId = null before
they are executed and persisted, so forward and inverse keep one version.

Project snapshot schema 7 stores buildings and floor.buildingId; versions
1-6 are upgraded without buildings. Restore and portable transfer include
buildings, and the transfer remaps building ids.

Buildings, floors and rooms move from the project overview to their own
page /projects/:id/struktur with three columns (Gebäude -> Etagen -> Räume)
that filter each other, and a sidebar entry. Floor selects in the board and
room dialogs are grouped by building. Unchanged dialogs close without a
command. Details in docs/building-structure.md; see issue #6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 12:52:34 +02:00
..
circuit-device-row-move-project-command.model.ts Add placeholder move history 2026-07-23 22:39:59 +02:00
circuit-device-row-project-command.model.ts Fix code-review findings across domain, persistence, server and frontend 2026-08-06 21:31:16 +02:00
circuit-device-row-structure-project-command.model.ts Fix code-review findings across domain, persistence, server and frontend 2026-08-06 21:31:16 +02:00
circuit-group-move-project-command.model.ts Persist circuit group moves 2026-07-30 20:03:11 +02:00
circuit-group-renumber-project-command.model.ts Persist circuit group renumbering 2026-07-30 19:56:59 +02:00
circuit-group-structure-project-command.model.ts Add circuit group reordering 2026-07-30 19:49:27 +02:00
circuit-group-subtree-project-command.model.ts Persist populated group deletion 2026-07-30 20:10:10 +02:00
circuit-group-subtree-snapshot.model.ts Define circuit group subtrees 2026-07-30 20:06:09 +02:00
circuit-project-command.model.ts Create clean release database baseline 2026-07-31 14:07:26 +02:00
circuit-protection-project-command.model.ts Fix code-review findings across domain, persistence, server and frontend 2026-08-06 21:31:16 +02:00
circuit-section-renumber-project-command.model.ts Add section renumber history 2026-07-24 08:34:31 +02:00
circuit-section-reorder-project-command.model.ts Add circuit reorder history 2026-07-24 08:21:32 +02:00
circuit-sections-reorder-project-command.model.ts Persist circuit reorders 2026-07-25 21:22:10 +02:00
circuit-structure-project-command.model.ts Create clean release database baseline 2026-07-31 14:07:26 +02:00
circuit-tree.model.ts Add external row quantity foundation 2026-08-02 18:26:22 +02:00
distribution-board-component-structure-project-command.model.ts Add component update commands 2026-07-30 19:42:09 +02:00
distribution-board-project-command.model.ts Add print view, board info card and document logo upload 2026-09-26 10:38:59 +02:00
distribution-board-structure-project-command.model.ts Create clean release database baseline 2026-07-31 14:07:26 +02:00
distribution-board-subtree-project-command.model.ts Model complete distribution board subtrees 2026-07-31 11:51:46 +02:00
distribution-board-subtree-snapshot.model.ts Add print view, board info card and document logo upload 2026-09-26 10:38:59 +02:00
external-csv-configuration-project-command.model.ts Persist Revit CSV configuration 2026-08-02 16:33:18 +02:00
external-initial-import-project-command.model.ts Add atomic Revit initial import 2026-08-02 17:33:32 +02:00
external-object-new-circuit-project-command.model.ts Add external object new circuit command 2026-08-02 18:55:57 +02:00
external-object-new-row-project-command.model.ts Add external object new row command 2026-08-02 18:44:46 +02:00
external-object-row-assignment-project-command.model.ts Add external object row assignment command 2026-08-02 18:38:38 +02:00
project-command.model.ts Add atomic circuit update commands 2026-07-23 21:32:25 +02:00
project-device-project-command.model.ts Add project device structure history 2026-07-24 09:09:59 +02:00
project-device-row-sync-project-command.model.ts Add project device sync history 2026-07-24 08:47:25 +02:00
project-device-structure-project-command.model.ts Add project device structure history 2026-07-24 09:09:59 +02:00
project-location-structure-project-command.model.ts Add buildings above floors and a building structure page 2026-09-26 12:52:34 +02:00
project-settings-project-command.model.ts Add print cover fields and office profile 2026-09-26 10:39:18 +02:00
project-snapshot-policy.model.ts Add automatic project snapshots 2026-07-25 23:27:51 +02:00
project-state-restore-command.model.ts Restore named project snapshots 2026-07-25 22:41:24 +02:00
project-state-snapshot.model.ts Add buildings above floors and a building structure page 2026-09-26 12:52:34 +02:00
project-transfer.model.ts Add buildings above floors and a building structure page 2026-09-26 12:52:34 +02:00
protection-device.model.ts Add protection domain foundation 2026-07-30 19:03:36 +02:00