From 5047dbc85e90d5b227ecbead8253a1e8a1f23557 Mon Sep 17 00:00:00 2001
From: Youcef AOUAD <youcef.aouad@inrae.fr>
Date: Wed, 16 Oct 2024 11:15:27 +0200
Subject: [PATCH] tables load fixed

---
 src/Model/D90AdisTS/D90AdisTSSpec.py          | 45 +++++++------
 src/Model/DIFAdisTS/DIFAdisTSSpec.py          | 53 ++++++++-------
 .../InitialConditionsAdisTS.py                |  2 +-
 .../InitialConditionsAdisTSSpec.py            | 67 ++++++++++---------
 4 files changed, 85 insertions(+), 82 deletions(-)

diff --git a/src/Model/D90AdisTS/D90AdisTSSpec.py b/src/Model/D90AdisTS/D90AdisTSSpec.py
index 78992c67..da785398 100644
--- a/src/Model/D90AdisTS/D90AdisTSSpec.py
+++ b/src/Model/D90AdisTS/D90AdisTSSpec.py
@@ -89,28 +89,29 @@ class D90AdisTSSpec(SQLSubModel):
             f"WHERE d90_default = {data['d90_default_id']} "
         )
 
-        for row in table:
-            id            = row[0]
-            name          = row[2]
-            reach         = row[3]
-            start_rk      = row[4]
-            end_rk        = row[5]
-            d90 = row[6]
-            enabled       = (row[7] == 1)
-
-            new_spec = cls(
-                id=id,
-                name=name,
-                status=data['status']
-            )
-
-            new_spec.reach = reach
-            new_spec.start_rk = start_rk
-            new_spec.end_rk = end_rk
-            new_spec.d90 = d90
-            new_spec.enabled = enabled
-
-            new.append(new_spec)
+        if table is not None:
+            for row in table:
+                id            = row[0]
+                name          = row[2]
+                reach         = row[3]
+                start_rk      = row[4]
+                end_rk        = row[5]
+                d90 = row[6]
+                enabled       = (row[7] == 1)
+
+                new_spec = cls(
+                    id=id,
+                    name=name,
+                    status=data['status']
+                )
+
+                new_spec.reach = reach
+                new_spec.start_rk = start_rk
+                new_spec.end_rk = end_rk
+                new_spec.d90 = d90
+                new_spec.enabled = enabled
+
+                new.append(new_spec)
 
         return new
 
diff --git a/src/Model/DIFAdisTS/DIFAdisTSSpec.py b/src/Model/DIFAdisTS/DIFAdisTSSpec.py
index 306c12fc..f6c7e4c3 100644
--- a/src/Model/DIFAdisTS/DIFAdisTSSpec.py
+++ b/src/Model/DIFAdisTS/DIFAdisTSSpec.py
@@ -93,32 +93,33 @@ class DIFAdisTSSpec(SQLSubModel):
             f"WHERE dif_default = {data['dif_default_id']} "
         )
 
-        for row in table:
-            id            = row[0]
-            method          = row[2]
-            reach         = row[3]
-            start_rk      = row[4]
-            end_rk        = row[5]
-            dif = row[6]
-            b = row[7]
-            c = row[8]
-            enabled       = (row[9] == 1)
-
-            new_spec = cls(
-                id=id,
-                method=method,
-                status=data['status']
-            )
-
-            new_spec.reach = reach
-            new_spec.start_rk = start_rk
-            new_spec.end_rk = end_rk
-            new_spec.dif = dif
-            new_spec.b = b
-            new_spec.c = c
-            new_spec.enabled = enabled
-
-            new.append(new_spec)
+        if table is not None:
+            for row in table:
+                id            = row[0]
+                method          = row[2]
+                reach         = row[3]
+                start_rk      = row[4]
+                end_rk        = row[5]
+                dif = row[6]
+                b = row[7]
+                c = row[8]
+                enabled       = (row[9] == 1)
+
+                new_spec = cls(
+                    id=id,
+                    method=method,
+                    status=data['status']
+                )
+
+                new_spec.reach = reach
+                new_spec.start_rk = start_rk
+                new_spec.end_rk = end_rk
+                new_spec.dif = dif
+                new_spec.b = b
+                new_spec.c = c
+                new_spec.enabled = enabled
+
+                new.append(new_spec)
 
         return new
 
diff --git a/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTS.py b/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTS.py
index b8f3b7d0..bf720edf 100644
--- a/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTS.py
+++ b/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTS.py
@@ -80,7 +80,7 @@ class InitialConditionsAdisTS(SQLSubModel):
     @classmethod
     def _db_update(cls, execute, version):
         major, minor, release = version.strip().split(".")
-        if major == minor == "0":
+        if major == 0 and minor < 1:
             if int(release) < 6:
                 cls._db_create(execute)
 
diff --git a/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTSSpec.py b/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTSSpec.py
index b98815e6..3014c267 100644
--- a/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTSSpec.py
+++ b/src/Model/InitialConditionsAdisTS/InitialConditionsAdisTSSpec.py
@@ -80,7 +80,7 @@ class ICAdisTSSpec(SQLSubModel):
     @classmethod
     def _db_update(cls, execute, version):
         major, minor, release = version.strip().split(".")
-        if major == minor == "0":
+        if major == 0 and minor < 1:
             if int(release) < 6:
                 cls._db_create(execute)
 
@@ -97,38 +97,39 @@ class ICAdisTSSpec(SQLSubModel):
             f"WHERE ic_default = {data['ic_default_id']} "
         )
 
-        for row in table:
-            id            = row[0]
-            name          = row[2]
-            reach         = row[3]
-            start_rk      = row[4]
-            end_rk        = row[5]
-            concentration = row[6]
-            eg            = row[7]
-            em            = row[8]
-            ed            = row[9]
-            rate          = row[10]
-            enabled       = (row[11] == 1)
-
-            #new_spec = [name, reach, start_rk, end_rk, concentration, eg, em, ed, rate, enabled]
-
-            new_spec = cls(
-                id=id,
-                name=name,
-                status=data['status']
-            )
-
-            new_spec.reach = reach
-            new_spec.start_rk = start_rk
-            new_spec.end_rk = end_rk
-            new_spec.concentration = concentration
-            new_spec.eg = eg
-            new_spec.em = em
-            new_spec.ed = ed
-            new_spec.rate = rate
-            new_spec.enabled = enabled
-
-            new.append(new_spec)
+        if table is not None:
+            for row in table:
+                id            = row[0]
+                name          = row[2]
+                reach         = row[3]
+                start_rk      = row[4]
+                end_rk        = row[5]
+                concentration = row[6]
+                eg            = row[7]
+                em            = row[8]
+                ed            = row[9]
+                rate          = row[10]
+                enabled       = (row[11] == 1)
+
+                #new_spec = [name, reach, start_rk, end_rk, concentration, eg, em, ed, rate, enabled]
+
+                new_spec = cls(
+                    id=id,
+                    name=name,
+                    status=data['status']
+                )
+
+                new_spec.reach = reach
+                new_spec.start_rk = start_rk
+                new_spec.end_rk = end_rk
+                new_spec.concentration = concentration
+                new_spec.eg = eg
+                new_spec.em = em
+                new_spec.ed = ed
+                new_spec.rate = rate
+                new_spec.enabled = enabled
+
+                new.append(new_spec)
 
         return new
 
-- 
GitLab