From 072840a18c8fa2df777a955fdf15a5f9b39670f9 Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby Date: Thu, 21 Aug 2025 13:47:14 +0200 Subject: [PATCH] Adists: Fix update. --- src/Model/D90AdisTS/D90AdisTS.py | 7 +++++-- src/Model/DIFAdisTS/DIFAdisTS.py | 5 ++++- .../LateralContributionAdisTS.py | 10 ++++++++-- src/Model/SedimentLayer/SedimentLayer.py | 3 +++ src/Model/Tools/PamhyrDB.py | 5 +++++ src/Model/Tools/PamhyrID.py | 3 +++ 6 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/Model/D90AdisTS/D90AdisTS.py b/src/Model/D90AdisTS/D90AdisTS.py index e83b44b9..13c4f33c 100644 --- a/src/Model/D90AdisTS/D90AdisTS.py +++ b/src/Model/D90AdisTS/D90AdisTS.py @@ -82,7 +82,10 @@ class D90AdisTS(SQLSubModel): if not created: cls._db_update_to_0_2_0(execute, data) - return cls._update_submodel(execute, version, data) + if not created: + return cls._update_submodel(execute, version, data) + + return True @classmethod def _db_update_to_0_2_0(cls, execute, data): @@ -184,7 +187,7 @@ class D90AdisTS(SQLSubModel): data['d90_default_id'] = self.id execute( - "DELETE FROM d90_spec " + + "DELETE FROM d90_adists_spec " + f"WHERE d90_default = {self.id} " + f"AND scenario = {self._status.scenario_id} " ) diff --git a/src/Model/DIFAdisTS/DIFAdisTS.py b/src/Model/DIFAdisTS/DIFAdisTS.py index 7365deea..524c986a 100644 --- a/src/Model/DIFAdisTS/DIFAdisTS.py +++ b/src/Model/DIFAdisTS/DIFAdisTS.py @@ -88,7 +88,10 @@ class DIFAdisTS(SQLSubModel): if not created: cls._db_update_to_0_2_0(execute, data) - return cls._update_submodel(execute, version, data) + if not created: + return cls._update_submodel(execute, version, data) + + return True @classmethod def _db_update_to_0_2_0(cls, execute, data): diff --git a/src/Model/LateralContributionsAdisTS/LateralContributionAdisTS.py b/src/Model/LateralContributionsAdisTS/LateralContributionAdisTS.py index 708cbd4d..17d36114 100644 --- a/src/Model/LateralContributionsAdisTS/LateralContributionAdisTS.py +++ b/src/Model/LateralContributionsAdisTS/LateralContributionAdisTS.py @@ -230,7 +230,10 @@ class LateralContributionAdisTS(SQLSubModel): ) """) - return True + if ext != "": + return True + + return cls._create_submodel(execute) @classmethod def _db_update(cls, execute, version, data=None): @@ -246,7 +249,10 @@ class LateralContributionAdisTS(SQLSubModel): if not created: cls._db_update_to_0_2_0(execute, data) - return cls._update_submodel(execute, version, data) + if not created: + return cls._update_submodel(execute, version, data) + + return True @classmethod def _db_update_to_0_2_0(cls, execute, data): diff --git a/src/Model/SedimentLayer/SedimentLayer.py b/src/Model/SedimentLayer/SedimentLayer.py index 52946832..44625039 100644 --- a/src/Model/SedimentLayer/SedimentLayer.py +++ b/src/Model/SedimentLayer/SedimentLayer.py @@ -171,6 +171,9 @@ class Layer(SQLSubModel): f"SELECT pamhyr_id, sl FROM {table}" ) + if els is None: + return True + for row in els: it = iter(row) pid = next(it) diff --git a/src/Model/Tools/PamhyrDB.py b/src/Model/Tools/PamhyrDB.py index c587dcd9..4dc7035e 100644 --- a/src/Model/Tools/PamhyrDB.py +++ b/src/Model/Tools/PamhyrDB.py @@ -303,6 +303,9 @@ class SQLSubModel(PamhyrID): f"SELECT pamhyr_id, reach FROM {table}" ) + if els is None: + return True + for row in els: it = iter(row) pid = next(it) @@ -317,6 +320,8 @@ class SQLSubModel(PamhyrID): f"WHERE pamhyr_id = {pid}" ) + return True + @classmethod def _db_update_to_0_1_1_assoc_section_from_rk( cls, execute, table, diff --git a/src/Model/Tools/PamhyrID.py b/src/Model/Tools/PamhyrID.py index 92c062ec..de94e1ec 100644 --- a/src/Model/Tools/PamhyrID.py +++ b/src/Model/Tools/PamhyrID.py @@ -64,6 +64,9 @@ class PamhyrID(object): id2pid = cls.update_db_add_pamhyr_id_init_id2pid(table, data) rows = execute(f"SELECT id FROM {table}") + if rows is None: + return True + for row in rows: id = row[0] pid = cls.get_new_pamhyr_id(-1)