Add explicit project device sync

This commit is contained in:
2026-07-22 19:38:21 +02:00
parent 9d07ed9856
commit 6f8b292b6b
15 changed files with 771 additions and 5 deletions
+12
View File
@@ -149,3 +149,15 @@ Request sketch:
- `DELETE /consumers/:consumerId`
These remain for migration/legacy views. New circuit-list interactions must use circuit-first endpoints above.
## Linked Project Device Review
- `GET /project-devices/projects/:projectId/:projectDeviceId/links`
- returns all linked circuit device rows with distribution-board/circuit context and field differences
- `POST /project-devices/projects/:projectId/:projectDeviceId/synchronize`
- applies only explicitly selected fields to explicitly selected linked rows
- `POST /project-devices/projects/:projectId/:projectDeviceId/disconnect`
- disconnects explicitly selected rows without changing their local values
`displayName` is included in the comparison but is not selected by default in the UI. Updating a
project device never triggers synchronization implicitly.
@@ -2,7 +2,6 @@
- Undo/redo history is session-local only.
- Undo/redo history is not persisted across reloads or between users.
- No linked project-device sync review dialog is implemented yet.
- No global cross-project device library workflow is implemented yet.
- Final electrical sizing logic is not implemented yet.
- No full norm-compliant voltage-drop and protection-dimensioning calculation flow yet.
@@ -10,3 +9,5 @@
- Sorting is view-only until users explicitly apply sorted order.
- Cross-section circuit drag-reorder is intentionally blocked.
- Legacy consumer and circuit-first paths coexist; migration is transitional and still requires operational discipline.
- Project-device synchronization and disconnect actions are explicit, but are not yet connected to an undo command.
- Multi-row project-device synchronization is sequential and not yet wrapped in one database transaction.