Transect - User history
Als API-Konsument möchte ich in der Lage sein, Änderungen am Transekt zu verfolgen.
Orte, an denen TransectUserHistory aktualisiert wird:
- Zuweisung eines Transekts an den Benutzer (bei Transekterstellung und -aktualisierung) - fügen wir neue Einträge in TansectUserHistory hinzu - einen Einträge für jede Rolle, die der Benutzer hat. Das Feld
allocated_end
in diesen Einträge ist null - der Eintrag ist offen.
- für die Rolle SpeciesSpecialist: neue offene Einträge werden zu TransectUserHistory hinzugefügt, ein Eintrag für jede Art, die SpeciesSpecialist zugewiesen ist.
- für die Rolle LandCoordinator: neue offene Einträge werden zu TransectUserHistory hinzugefügt, ein Eintrag für jedes Land, das LandCoordinator zugewiesen ist
-
Ändern der Benutzerrolle - Finden Sie alle offenen Einträge für das Benutzer - Transekt und schließen Sie es (setzen Sie allocated_end auf das aktuelle Datum). Dann fügen Sie neue Einträge hinzu, wie unter Punkt 1 beschrieben
-
Transekt dem Benutzer nicht mehr zuweisen - finden Sie alle offenen Einträge für den Benutzer - Transekt und schließen Sie ihn
Jira story: https://ufz-jira.scolution.de/browse/MWB-269
Akzeptanzkriterien
-
Entität TransectUserHistory mit Beziehungen zu Benutzer und Transekt wird erstellt: https://confluence.digitalearth-hgf.de/pages/viewpage.action?pageId=16716827 -
Änderungen werden in diese Tabelle geschrieben, wenn ein Benutzer einem Transekt zugewiesen / nicht zugewiesen wird. - Hint: spezifisch DataPersister kann verwendet werden, um zusätzliche Daten auf der persistierenden Transect Entität zu speichern. Transect Zuweisung könnte von mehrere Stellen passieren (von transect und user Bearbeitung), deswegen sollte das durch Event listener umgesetzt und Event gefeuert in jede Stelle wo die Änderung passiert (zB in verschiedene DataPersisters).
-
TransectUserHistory ist bei Admin und Project Lead lesbar -
Tests
Überprüfung
-
Entität TransectUserHistory mit Beziehungen zu Benutzer und Transekt wird erstellt: https://confluence.digitalearth-hgf.de/pages/viewpage.action?pageId=16716827 - Änderungen werden in diese Tabelle geschrieben, wenn ein Benutzer einem Transekt zugewiesen / nicht zugewiesen wird (spezifisch DataPersister kann verwendet werden, um zusätzliche Daten auf der persistierenden Transekt-Entität zu speichern)
-
TransectUserHistory ist bei Admin und Project Lead lesbar -
Tests
Edited by Michael Voigt