Pamhyr2: Create new generic methode '_data_traversal' for scenario duplicattion.

This commit is contained in:
parouby committed 2025-09-12 10:52:41 +02:00
1 parent 591cd8950c
commit 8173eb8de9
5 files changed
+57 -24

No files matched your search

+15
View File
@@ -502,3 +502,18 @@ class Study(SQLModel):
self.status.set_as_read_only()
else:
self.status.set_as_editable()
def duplicate_current_scenario(self):
source = self.status.scenario_id
new = self.scenarios.new(
self.status.scenario.parent
)
self.river._data_traversal(
predicate=lambda obj: obj._owner_scenario == source,
execute=lambda obj: obj.set_owner_scenario(),
data={}
)
self.status.set_as_editable()
return new